CGAL 5.1 - STL Extensions for CGAL
CGAL::Compact_container_traits< T > Struct Template Reference

#include <CGAL/Compact_container.h>


The traits class Compact_container_traits provides the way to access the internal pointer required for T to be used in a Compact_container<T, Allocator>.

Note that this pointer needs to be accessible even when the object is not constructed, which means it has to reside in the same memory place as T.

You can specialize this class for your own type T if the default template is not suitable.

You can also use Compact_container_base as base class for your own types T to make them usable with the default Compact_container_traits.


T is any type providing the following member functions:

void * t.for_compact_container() const;

void t.for_compact_container(void *);.


static void * pointer (const T &t)
 Returns the pointer held by t. More...
static void set_pointer (T &t, void *p)
 Sets the pointer held by t to p. More...

Member Function Documentation

◆ pointer()

template<typename T >
static void* CGAL::Compact_container_traits< T >::pointer ( const T &  t)

Returns the pointer held by t.

The template version defines this function as: return t.for_compact_container();

◆ set_pointer()

template<typename T >
static void CGAL::Compact_container_traits< T >::set_pointer ( T &  t,
void *  p 

Sets the pointer held by t to p.

The template version defines this function as: t.for_compact_container(p);