CGAL 5.1 - STL Extensions for CGAL
CGAL::Random_access_adaptor< IC > Class Template Reference

#include <CGAL/iterator.h>

Definition

template<typename IC>
class CGAL::Random_access_adaptor< IC >

The class Random_access_adaptor provides a random access for data structures. Either the data structure supports random access iterators or circulators where this class maps function calls to the iterator or circulator, or a STL std::vector is used to provide the random access. The iterator or circulator of the data structure are of type IC.

See also
CGAL::Inverse_index<IC>
CGAL::Random_access_value_adaptor<IC,T>

Types

typedef unspecified_type size_type
 size type of the STL std::vector. More...
 

Creation

 Random_access_adaptor ()
 invalid index. More...
 
 Random_access_adaptor (const IC &i)
 empty random access index initialized to start at i. More...
 
 Random_access_adaptor (const IC &i, const IC &j)
 random access index initialized to the range [i,j). More...
 
void reserve (size_type r)
 reserve r entries, if a std::vector is used internally. More...
 

Operations

IC operator[] (size_type n)
 returns iterator or circulator to the n-th item. More...
 
void push_back (const IC &k)
 adds k at the end of the indices. More...
 

Member Typedef Documentation

◆ size_type

template<typename IC >
typedef unspecified_type CGAL::Random_access_adaptor< IC >::size_type

size type of the STL std::vector.

Constructor & Destructor Documentation

◆ Random_access_adaptor() [1/3]

template<typename IC >
CGAL::Random_access_adaptor< IC >::Random_access_adaptor ( )

invalid index.

◆ Random_access_adaptor() [2/3]

template<typename IC >
CGAL::Random_access_adaptor< IC >::Random_access_adaptor ( const IC &  i)

empty random access index initialized to start at i.

◆ Random_access_adaptor() [3/3]

template<typename IC >
CGAL::Random_access_adaptor< IC >::Random_access_adaptor ( const IC &  i,
const IC &  j 
)

random access index initialized to the range [i,j).

Member Function Documentation

◆ operator[]()

template<typename IC >
IC CGAL::Random_access_adaptor< IC >::operator[] ( size_type  n)

returns iterator or circulator to the n-th item.

Precondition
n < number of items in the data-structure.

◆ push_back()

template<typename IC >
void CGAL::Random_access_adaptor< IC >::push_back ( const IC &  k)

adds k at the end of the indices.

◆ reserve()

template<typename IC >
void CGAL::Random_access_adaptor< IC >::reserve ( size_type  r)

reserve r entries, if a std::vector is used internally.