BWAPI
Classes | Defines | Functions
SPAR/AIModule/BWTA/vendors/CGAL/CGAL/circulator.h File Reference
#include <CGAL/basic.h>
#include <cstddef>
#include <functional>
#include <iterator>
#include <CGAL/circulator_bases.h>
Include dependency graph for circulator.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  I_Circulator_traits< C >
struct  I_Circulator_traits< Forward_circulator_tag >
struct  I_Circulator_traits< Bidirectional_circulator_tag >
struct  I_Circulator_traits< Random_access_circulator_tag >
struct  I_Circulator_size_traits< Tag, IC >
struct  I_Circulator_size_traits< Forward_circulator_tag, C >
struct  I_Circulator_size_traits< Bidirectional_circulator_tag, C >
struct  I_Circulator_size_traits< Random_access_circulator_tag, C >
struct  I_Iterator_from_circulator_traits< CCtg >
struct  I_Iterator_from_circulator_traits< Forward_circulator_tag >
struct  I_Iterator_from_circulator_traits< Bidirectional_circulator_tag >
struct  I_Iterator_from_circulator_traits< Random_access_circulator_tag >
struct  I_Circulator_from_iterator_traits< ICtg >
struct  I_Circulator_from_iterator_traits< std::forward_iterator_tag >
struct  I_Circulator_from_iterator_traits< std::bidirectional_iterator_tag >
struct  I_Circulator_from_iterator_traits< std::random_access_iterator_tag >
struct  Circulator_traits< C >
struct  I_Assert_tag_class< Base >
struct  Circulator_or_iterator_tag
class  Iterator_from_circulator< C, Ref, Ptr >
class  Container_from_circulator< C >
class  Circulator_from_container< Ctnr >
class  Const_circulator_from_container< Ctnr >
class  Circulator_from_iterator< I, Tt, Ss, Dd >

Defines

#define Forward_container_from_circulator   Container_from_circulator
#define Bidirectional_container_from_circulator   Container_from_circulator
#define Random_access_container_from_circulator   Container_from_circulator
#define Forward_circulator_from_iterator   Circulator_from_iterator
#define Forward_const_circulator_from_iterator   Circulator_from_iterator
#define Bidirectional_circulator_from_iterator   Circulator_from_iterator
#define Bidirectional_const_circulator_from_iterator   Circulator_from_iterator
#define Random_access_circulator_from_iterator   Circulator_from_iterator
#define Random_access_const_circulator_from_iterator   Circulator_from_iterator
#define Forward_circulator_from_container   Circulator_from_container
#define Bidirectional_circulator_from_container   Circulator_from_container
#define Random_access_circulator_from_container   Circulator_from_container
#define Forward_const_circulator_from_container   Const_circulator_from_container
#define Bidirectional_const_circulator_from_container   Const_circulator_from_container
#define Random_access_const_circulator_from_container   Const_circulator_from_container
#define CGAL_ASSERT_COMPILE_TIME_TAG   1
#define CGAL_For_all(ic1, ic2)
#define CGAL_For_all_backwards(ic1, ic2)

Functions

template<class C >
Circulator_traits< C >::category query_circulator_or_iterator (const C &)
template<class Tag , class Derived >
void Assert_compile_time_tag (const Tag &, const Derived &b)
template<class C >
void Assert_circulator (const C &)
template<class I >
void Assert_iterator (const I &)
template<class I >
void Assert_input_category (const I &)
template<class I >
void Assert_output_category (const I &)
template<class IC >
void Assert_forward_category (const IC &)
template<class IC >
void Assert_bidirectional_category (const IC &)
template<class IC >
void Assert_random_access_category (const IC &)
void I_Has_to_be_at_least (std::input_iterator_tag, std::input_iterator_tag)
void I_Has_to_be_at_least (std::input_iterator_tag, std::forward_iterator_tag)
void I_Has_to_be_at_least (std::input_iterator_tag, std::bidirectional_iterator_tag)
void I_Has_to_be_at_least (std::input_iterator_tag, std::random_access_iterator_tag)
void I_Has_to_be_at_least (std::output_iterator_tag, std::output_iterator_tag)
void I_Has_to_be_at_least (std::output_iterator_tag, std::forward_iterator_tag)
void I_Has_to_be_at_least (std::output_iterator_tag, std::bidirectional_iterator_tag)
void I_Has_to_be_at_least (std::output_iterator_tag, std::random_access_iterator_tag)
void I_Has_to_be_at_least (std::forward_iterator_tag, std::forward_iterator_tag)
void I_Has_to_be_at_least (std::forward_iterator_tag, std::bidirectional_iterator_tag)
void I_Has_to_be_at_least (std::forward_iterator_tag, std::random_access_iterator_tag)
void I_Has_to_be_at_least (std::bidirectional_iterator_tag, std::bidirectional_iterator_tag)
void I_Has_to_be_at_least (std::bidirectional_iterator_tag, std::random_access_iterator_tag)
void I_Has_to_be_at_least (std::random_access_iterator_tag, std::random_access_iterator_tag)
template<class I >
void Assert_is_at_least_input_category (const I &)
template<class I >
void Assert_is_at_least_output_category (const I &)
template<class IC >
void Assert_is_at_least_forward_category (const IC &)
template<class IC >
void Assert_is_at_least_bidirectional_category (const IC &)
template<class IC >
void Assert_is_at_least_random_access_category (const IC &)
template<class C >
bool I_is_empty_range (const C &c1, const C &, Circulator_tag)
template<class I >
bool I_is_empty_range (const I &i1, const I &i2, Iterator_tag)
template<class IC >
bool is_empty_range (const IC &ic1, const IC &ic2)
Circulator_or_iterator_tag check_circulator_or_iterator (Circulator_tag)
Circulator_or_iterator_tag check_circulator_or_iterator (Iterator_tag)
template<class IC >
void Assert_circulator_or_iterator (const IC &)
template<class C >
C::size_type I_min_circulator_size (const C &c)
template<class C >
C::size_type I_circulator_size (const C &c, Forward_circulator_tag)
template<class C >
C::size_type I_circulator_size (const C &c, Bidirectional_circulator_tag)
template<class C >
C::size_type I_circulator_size (const C &c, Random_access_circulator_tag)
template<class C >
C::size_type circulator_size (const C &c)
template<class C >
C::difference_type I_circulator_distance (C c, const C &d, Forward_circulator_tag)
template<class C >
C::difference_type I_circulator_distance (const C &c, const C &d, Bidirectional_circulator_tag)
template<class C >
C::difference_type I_circulator_distance (const C &c, const C &d, Random_access_circulator_tag)
template<class C >
C::difference_type circulator_distance (const C &c, const C &d)
template<class C >
std::iterator_traits< C >
::difference_type 
I_iterator_distance (const C &c1, const C &c2, Circulator_tag)
template<class I >
std::iterator_traits< I >
::difference_type 
I_iterator_distance (const I &i1, const I &i2, Iterator_tag)
template<class IC >
std::iterator_traits< IC >
::difference_type 
iterator_distance (const IC &ic1, const IC &ic2)
template<class C >
I_get_min_circulator (C c, Forward_circulator_tag)
template<class C >
I_get_min_circulator (C c, Bidirectional_circulator_tag)
template<class C >
I_get_min_circulator (C c, Random_access_circulator_tag)
template<class C >
get_min_circulator (C c)
template<class I , class U >
non_negative_mod (I n, U m)
template<class Dist , class C , class Ref , class Ptr >
Iterator_from_circulator< C,
Ref, Ptr > 
operator+ (Dist n, const Iterator_from_circulator< C, Ref, Ptr > &circ)
template<class Ctnr >
Circulator_from_container< Ctnr > operator+ (typename Circulator_from_container< Ctnr >::difference_type n, const Circulator_from_container< Ctnr > &c)
template<class Ctnr >
Const_circulator_from_container
< Ctnr > 
operator+ (typename Const_circulator_from_container< Ctnr >::difference_type n, const Const_circulator_from_container< Ctnr > &c)
template<class D , class I , class T , class Size , class Dist >
Circulator_from_iterator< I, T,
Size, Dist > 
operator+ (D n, const Circulator_from_iterator< I, T, Size, Dist > &circ)

Define Documentation

#define CGAL_For_all (   ic1,
  ic2 
)
Value:
for ( bool _circ_loop_flag = ! ::CGAL::is_empty_range( ic1, ic2); \
          _circ_loop_flag; \
          _circ_loop_flag = ((++ic1) != (ic2)) )
#define CGAL_For_all_backwards (   ic1,
  ic2 
)
Value:
for ( bool _circ_loop_flag = ! ::CGAL::is_empty_range( ic1, ic2); \
          _circ_loop_flag; \
          _circ_loop_flag = ((ic1) != (--ic2)) )

Function Documentation

template<class IC >
void Assert_bidirectional_category ( const IC &  ) [inline]

Here is the call graph for this function:

template<class C >
void Assert_circulator ( const C &  ) [inline]

Here is the call graph for this function:

Here is the caller graph for this function:

template<class IC >
void Assert_circulator_or_iterator ( const IC &  ) [inline]

Here is the call graph for this function:

template<class Tag , class Derived >
void Assert_compile_time_tag ( const Tag &  ,
const Derived &  b 
) [inline]

Here is the call graph for this function:

Here is the caller graph for this function:

template<class IC >
void Assert_forward_category ( const IC &  ) [inline]

Here is the call graph for this function:

template<class I >
void Assert_input_category ( const I &  ) [inline]

Here is the call graph for this function:

template<class IC >
void Assert_is_at_least_bidirectional_category ( const IC &  ) [inline]

Here is the call graph for this function:

template<class IC >
void Assert_is_at_least_forward_category ( const IC &  ) [inline]

Here is the call graph for this function:

template<class I >
void Assert_is_at_least_input_category ( const I &  ) [inline]

Here is the call graph for this function:

template<class I >
void Assert_is_at_least_output_category ( const I &  ) [inline]

Here is the call graph for this function:

template<class IC >
void Assert_is_at_least_random_access_category ( const IC &  ) [inline]

Here is the call graph for this function:

template<class I >
void Assert_iterator ( const I &  ) [inline]

Here is the call graph for this function:

template<class I >
void Assert_output_category ( const I &  ) [inline]

Here is the call graph for this function:

template<class IC >
void Assert_random_access_category ( const IC &  ) [inline]

Here is the call graph for this function:

Here is the caller graph for this function:

Here is the caller graph for this function:

template<class C >
C::difference_type circulator_distance ( const C &  c,
const C &  d 
) [inline]

Here is the call graph for this function:

Here is the caller graph for this function:

template<class C >
C::size_type circulator_size ( const C &  c) [inline]

Here is the call graph for this function:

Here is the caller graph for this function:

template<class C >
C get_min_circulator ( c) [inline]

Here is the call graph for this function:

template<class C >
C::difference_type I_circulator_distance ( c,
const C &  d,
Forward_circulator_tag   
)

Here is the caller graph for this function:

template<class C >
C::difference_type I_circulator_distance ( const C &  c,
const C &  d,
Bidirectional_circulator_tag   
) [inline]

Here is the call graph for this function:

template<class C >
C::difference_type I_circulator_distance ( const C &  c,
const C &  d,
Random_access_circulator_tag   
) [inline]

Here is the call graph for this function:

template<class C >
C::size_type I_circulator_size ( const C &  c,
Forward_circulator_tag   
)

Here is the caller graph for this function:

template<class C >
C::size_type I_circulator_size ( const C &  c,
Bidirectional_circulator_tag   
) [inline]

Here is the call graph for this function:

template<class C >
C::size_type I_circulator_size ( const C &  c,
Random_access_circulator_tag   
) [inline]

Here is the call graph for this function:

template<class C >
C I_get_min_circulator ( c,
Forward_circulator_tag   
) [inline]

Here is the caller graph for this function:

template<class C >
C I_get_min_circulator ( c,
Bidirectional_circulator_tag   
) [inline]
template<class C >
C I_get_min_circulator ( c,
Random_access_circulator_tag   
) [inline]
void I_Has_to_be_at_least ( std::input_iterator_tag  ,
std::input_iterator_tag   
) [inline]

Here is the caller graph for this function:

void I_Has_to_be_at_least ( std::input_iterator_tag  ,
std::forward_iterator_tag   
) [inline]
void I_Has_to_be_at_least ( std::input_iterator_tag  ,
std::bidirectional_iterator_tag   
) [inline]
void I_Has_to_be_at_least ( std::input_iterator_tag  ,
std::random_access_iterator_tag   
) [inline]
void I_Has_to_be_at_least ( std::output_iterator_tag  ,
std::output_iterator_tag   
) [inline]
void I_Has_to_be_at_least ( std::output_iterator_tag  ,
std::forward_iterator_tag   
) [inline]
void I_Has_to_be_at_least ( std::output_iterator_tag  ,
std::bidirectional_iterator_tag   
) [inline]
void I_Has_to_be_at_least ( std::output_iterator_tag  ,
std::random_access_iterator_tag   
) [inline]
void I_Has_to_be_at_least ( std::forward_iterator_tag  ,
std::forward_iterator_tag   
) [inline]
void I_Has_to_be_at_least ( std::forward_iterator_tag  ,
std::bidirectional_iterator_tag   
) [inline]
void I_Has_to_be_at_least ( std::forward_iterator_tag  ,
std::random_access_iterator_tag   
) [inline]
void I_Has_to_be_at_least ( std::bidirectional_iterator_tag  ,
std::bidirectional_iterator_tag   
) [inline]
void I_Has_to_be_at_least ( std::bidirectional_iterator_tag  ,
std::random_access_iterator_tag   
) [inline]
void I_Has_to_be_at_least ( std::random_access_iterator_tag  ,
std::random_access_iterator_tag   
) [inline]
template<class C >
bool I_is_empty_range ( const C &  c1,
const C &  ,
Circulator_tag   
) [inline]

Here is the caller graph for this function:

template<class I >
bool I_is_empty_range ( const I &  i1,
const I &  i2,
Iterator_tag   
) [inline]
template<class C >
std::iterator_traits<C>::difference_type I_iterator_distance ( const C &  c1,
const C &  c2,
Circulator_tag   
) [inline]

Here is the call graph for this function:

Here is the caller graph for this function:

template<class I >
std::iterator_traits<I>::difference_type I_iterator_distance ( const I &  i1,
const I &  i2,
Iterator_tag   
) [inline]

Here is the call graph for this function:

template<class C >
C::size_type I_min_circulator_size ( const C &  c) [inline]

Here is the call graph for this function:

Here is the caller graph for this function:

template<class IC >
bool is_empty_range ( const IC &  ic1,
const IC &  ic2 
) [inline]

Here is the call graph for this function:

Here is the caller graph for this function:

template<class IC >
std::iterator_traits<IC>::difference_type iterator_distance ( const IC &  ic1,
const IC &  ic2 
) [inline]

Here is the call graph for this function:

Here is the caller graph for this function:

template<class I , class U >
I non_negative_mod ( n,
m 
) [inline]

Here is the caller graph for this function:

template<class Dist , class C , class Ref , class Ptr >
Iterator_from_circulator<C,Ref,Ptr> operator+ ( Dist  n,
const Iterator_from_circulator< C, Ref, Ptr > &  circ 
)
template<class Ctnr >
Circulator_from_container<Ctnr> operator+ ( typename Circulator_from_container< Ctnr >::difference_type  n,
const Circulator_from_container< Ctnr > &  c 
) [inline]
template<class Ctnr >
Const_circulator_from_container<Ctnr> operator+ ( typename Const_circulator_from_container< Ctnr >::difference_type  n,
const Const_circulator_from_container< Ctnr > &  c 
) [inline]
template<class D , class I , class T , class Size , class Dist >
Circulator_from_iterator< I, T, Size, Dist> operator+ ( n,
const Circulator_from_iterator< I, T, Size, Dist > &  circ 
) [inline]
template<class C >
Circulator_traits<C>::category query_circulator_or_iterator ( const C &  )
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines