\( \newcommand{\E}{\mathrm{E}} \) \( \newcommand{\A}{\mathrm{A}} \) \( \newcommand{\R}{\mathrm{R}} \) \( \newcommand{\N}{\mathrm{N}} \) \( \newcommand{\Q}{\mathrm{Q}} \) \( \newcommand{\Z}{\mathrm{Z}} \) \( \def\ccSum #1#2#3{ \sum_{#1}^{#2}{#3} } \def\ccProd #1#2#3{ \sum_{#1}^{#2}{#3} }\)
CGAL 4.11 - STL Extensions for CGAL
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
CGAL::Compact_container_traits< T > Class Template Reference

#include <CGAL/Compact_container.h>

Definition

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.

Parameters

T is any type providing the following member functions:

void * t.for_compact_container() const;

void *& t.for_compact_container();.

Operations

static void * pointer (const T &t)
 Returns the pointer held by t. More...
 
static void *& pointer (T &t)
 Returns a reference to the pointer held by t. More...
 

Member Function Documentation

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

Returns the pointer held by t.

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

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

Returns a reference to the pointer held by t.

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