\( \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.14 - Combinatorial Maps
CellAttribute Concept Reference

Definition

The concept CellAttribute represents a non void attribute associated with a cell of a generic map. It can keep a handle to one dart of its associated cell, and can contain any information.

Has Models:
CGAL::Cell_attribute<Map,Info_,Tag,OnMerge,OnSplit>
See also
GenericMap
GenericMapItems

Types

typedef unspecified_type Dart_handle
 Dart handle type.
 
typedef unspecified_type Dart_const_handle
 Dart const handle type.
 
typedef unspecified_type Info
 Type of the information contained in the attribute. More...
 
typedef unspecified_type Supports_cell_dart
 Equals to Tag_true to enable the storage of a Dart_handle of the associated cell, Tag_false otherwise.
 
typedef unspecified_type On_merge
 Functor called before merging two attributes. More...
 
typedef unspecified_type On_split
 Functor called after an attribute was split in two. More...
 

Creation

 CellAttribute ()
 
 Cell_attribute (const Info &info)
 Constructor initializing the information of this attribute by the copy constructor Info(info). More...
 

Access Member Functions

Dart_handle dart ()
 Returns one dart of the cell associated to this attribute. More...
 
Dart_const_handle dart () const
 Returns one dart of the cell associated to this attribute, when it is const. More...
 
void set_dart (Dart_handle ahandle)
 Sets the dart of the cell associated to this attribute to ahandle, if Supports_cell_dart is equal to Tag_true. More...
 
Infoinfo ()
 Returns the information of this attribute. More...
 
const Infoinfo () const
 Returns the information of this attribute, when it is const. More...
 

Member Typedef Documentation

◆ Info

Type of the information contained in the attribute.

If void, the cell attribute does not have any information.

◆ On_merge

Functor called before merging two attributes.

It must be a binary functor taking as argument two references to a model of CellAttribute.

◆ On_split

Functor called after an attribute was split in two.

It must be a binary functor taking as argument two references to a model of CellAttribute.

Member Function Documentation

◆ Cell_attribute()

CellAttribute::Cell_attribute ( const Info info)

Constructor initializing the information of this attribute by the copy constructor Info(info).

Defined only if Info is different from void.

◆ dart() [1/2]

Dart_handle CellAttribute::dart ( )

Returns one dart of the cell associated to this attribute.

NULL if Supports_cell_dart is equal to Tag_false.

◆ dart() [2/2]

Dart_const_handle CellAttribute::dart ( ) const

Returns one dart of the cell associated to this attribute, when it is const.

NULL if Supports_cell_dart is equal to Tag_false.

◆ info() [1/2]

Info& CellAttribute::info ( )

Returns the information of this attribute.

Defined only if Info is different from void.

◆ info() [2/2]

const Info& CellAttribute::info ( ) const

Returns the information of this attribute, when it is const.

Defined only if Info is different from void.

◆ set_dart()

void CellAttribute::set_dart ( Dart_handle  ahandle)

Sets the dart of the cell associated to this attribute to ahandle, if Supports_cell_dart is equal to Tag_true.

Otherwise, this method does nothing.

Precondition
ahandle belongs to the cell associated to this attribute.