\( \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 5.0.1 - dD Range and Segment Trees
CGAL::tree_point_traits< Data, Window, Key, Data_func, Window_left_func, Window_right_func, Compare > Class Template Reference

#include <CGAL/Tree_traits.h>

Definition

tree_point_traits is a template class that provides an interface to data items.

Types

typedef unspecified_type Data
 the container Data - defines the Data type. More...
 
typedef unspecified_type Window
 the container Window - defines the type of the query rectangle. More...
 
typedef unspecified_type Key
 the type Key of the data slot this traits class provides access to.
 
typedef unspecified_type Data_func
 Data_func is a function object providing an operator() that takes an argument of type Data and returns a component of type Key.
 
typedef unspecified_type Window_left_func
 Window_left_func is a function objects that allow to access the left data slot of container Window which has type Key
 
typedef unspecified_type Window_right_func
 Window_right_func is a function objects that allow to access the right data slot of container Window which has type Key
 
typedef unspecified_type Compare
 defines a comparison relation which must define a strict ordering of the objects of type Key. More...
 

Operations

Key get_key (Data d)
 The data slot of the data item of d of type Key is accessed by function object Data_func.
 
Key get_left (Window w)
 The data slot of the data item of w of type Key is accessed by function object Window_left_func.
 
Key get_right (Window w)
 The data slot of the data item of w of type Key is accessed by function object Window_right_func.
 
static bool comp (Key &key1, Key &key2)
 returns Compare(key1, key2).
 
static bool key_comp (Data &data1, Data &data2)
 returns Compare(get_key(data1), get_key(data2)).
 

Member Typedef Documentation

◆ Compare

template<typename Data , typename Window , typename Key , typename Data_func , typename Window_left_func , typename Window_right_func , typename Compare >
typedef unspecified_type CGAL::tree_point_traits< Data, Window, Key, Data_func, Window_left_func, Window_right_func, Compare >::Compare

defines a comparison relation which must define a strict ordering of the objects of type Key.

If defined, less<Key> is sufficient.

◆ Data

template<typename Data , typename Window , typename Key , typename Data_func , typename Window_left_func , typename Window_right_func , typename Compare >
typedef unspecified_type CGAL::tree_point_traits< Data, Window, Key, Data_func, Window_left_func, Window_right_func, Compare >::Data

the container Data - defines the Data type.

It may consist of several data slots. One of these data slots has to be of type Key.

◆ Window

template<typename Data , typename Window , typename Key , typename Data_func , typename Window_left_func , typename Window_right_func , typename Compare >
typedef unspecified_type CGAL::tree_point_traits< Data, Window, Key, Data_func, Window_left_func, Window_right_func, Compare >::Window

the container Window - defines the type of the query rectangle.

It may consist of several data slots. Two of these data slots has to be of type Key