boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc > Class Template Reference

Implements a set as a set of intervals (base class). More...

Inheritance diagram for boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >:
boost::icl::interval_set< DomainT, Compare, Interval, Alloc >

List of all members.

Public Types

typedef Alloc< interval_type > allocator_type
 The allocator type of the set.
typedef ICL_IMPL_SPACE::set
< DomainT, domain_compare,
Alloc< DomainT > > 
atomized_type
 The atomized type representing the corresponding container of elements.
typedef DomainT codomain_type
 The codomaintype is the same as domain_type.
typedef ImplSetT::const_iterator const_iterator
 const_iterator for iteration over intervals
typedef ImplSetT::const_pointer const_pointer
 const pointer type
typedef ImplSetT::const_reference const_reference
 const reference type
typedef
ImplSetT::const_reverse_iterator 
const_reverse_iterator
 const_iterator for iteration over intervals
typedef ImplSetT::key_type data_type
 data type of the implementing container
typedef difference_type_of
< domain_type >::type 
difference_type
 The difference type of an interval which is sometimes different form the data_type.
typedef Alloc< DomainT > domain_allocator_type
 allocator type of the corresponding element set
typedef DomainT domain_type
 The domain type of the set.
typedef
boost::icl::element_iterator
< const_iterator
element_const_iterator
 element const iterator: Depreciated, see documentation.
typedef
boost::icl::element_iterator
< const_reverse_iterator
element_const_reverse_iterator
 element const reverse iterator: Depreciated, see documentation.
typedef
boost::icl::element_iterator
< iterator
element_iterator
 element iterator: Depreciated, see documentation.
typedef
boost::icl::element_iterator
< reverse_iterator
element_reverse_iterator
 element reverse iterator: Depreciated, see documentation.
typedef DomainT element_type
 The element type of the set.
typedef ICL_IMPL_SPACE::set
< interval_type, key_compare,
allocator_type
ImplSetT
 Container type for the implementation.
typedef exclusive_less_than
< interval_type > 
interval_compare
 Comparison functor for intervals.
typedef ImplSetT::iterator iterator
 iterator for iteration over intervals
typedef exclusive_less_than
< interval_type > 
key_compare
 Comparison functor for keys.
typedef ImplSetT::key_type key_type
 key type of the implementing container
typedef type overloadable_type
 Auxilliary type for overloadresolution.
typedef ImplSetT::pointer pointer
 pointer type
typedef ImplSetT::reference reference
 reference type
typedef ImplSetT::reverse_iterator reverse_iterator
 iterator for reverse iteration over intervals
typedef interval_type segment_type
 The segment type of the set.
typedef size_type_of
< domain_type >::type 
size_type
 The size type of an interval which is mostly std::size_t.
typedef SubType sub_type
 The designated derived or sub_type of this base class.
typedef ImplSetT::value_type value_type
 value type of the implementing container

Public Member Functions

iterator add (iterator prior_, const segment_type &inter_val)
SubType & add (const segment_type &inter_val)
SubType & add (const element_type &key)
void clear ()
bool empty () const
void erase (iterator first, iterator past)
void erase (iterator position)
SubType & erase (const segment_type &inter_val)
SubType & erase (const element_type &key)
const_iterator find (const element_type &key) const
SubType & flip (const segment_type &inter_val)
SubType & flip (const element_type &key)
typedef ICL_COMPARE_DOMAIN (Compare, DomainT) domain_compare
 Comparison functor for domain values.
typedef ICL_INTERVAL_TYPE (Interval, DomainT, Compare) interval_type
 The interval type of the set.
iterator insert (iterator prior_, const segment_type &inter_val)
SubType & insert (const segment_type &inter_val)
SubType & insert (const element_type &key)
 interval_base_set (const interval_base_set &src)
 interval_base_set ()
std::size_t iterative_size () const
interval_base_setoperator= (const interval_base_set &src)
size_type size () const
SubType & subtract (const segment_type &inter_val)
SubType & subtract (const element_type &key)
void swap (interval_base_set &operand)

Detailed Description

template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
class boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >

Implements a set as a set of intervals (base class).


Member Typedef Documentation

template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
typedef SubType boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::sub_type

The designated derived or sub_type of this base class.

template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
typedef type boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::overloadable_type
template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
typedef DomainT boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::domain_type
template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
typedef DomainT boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::codomain_type
template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
typedef DomainT boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::element_type
template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
typedef interval_type boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::segment_type
template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
typedef difference_type_of<domain_type>::type boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::difference_type

The difference type of an interval which is sometimes different form the data_type.

template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
typedef size_type_of<domain_type>::type boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::size_type

The size type of an interval which is mostly std::size_t.

template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
typedef exclusive_less_than<interval_type> boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::interval_compare
template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
typedef exclusive_less_than<interval_type> boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::key_compare
template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
typedef ICL_IMPL_SPACE::set<DomainT,domain_compare,Alloc<DomainT> > boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::atomized_type
template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
typedef Alloc<interval_type> boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::allocator_type
template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
typedef Alloc<DomainT> boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::domain_allocator_type
template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
typedef ICL_IMPL_SPACE::set<interval_type,key_compare,allocator_type> boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::ImplSetT
template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
typedef ImplSetT::key_type boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::key_type
template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
typedef ImplSetT::key_type boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::data_type
template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
typedef ImplSetT::value_type boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::value_type
template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
typedef ImplSetT::pointer boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::pointer

pointer type

template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
typedef ImplSetT::const_pointer boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::const_pointer

const pointer type

template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
typedef ImplSetT::reference boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::reference

reference type

template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
typedef ImplSetT::const_reference boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::const_reference

const reference type

template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
typedef ImplSetT::iterator boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::iterator
template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
typedef ImplSetT::const_iterator boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::const_iterator
template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
typedef ImplSetT::reverse_iterator boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::reverse_iterator

iterator for reverse iteration over intervals

template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
typedef ImplSetT::const_reverse_iterator boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::const_reverse_iterator

const_iterator for iteration over intervals

template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
typedef boost::icl::element_iterator<iterator> boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::element_iterator

element iterator: Depreciated, see documentation.

template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
typedef boost::icl::element_iterator<const_iterator> boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::element_const_iterator

element const iterator: Depreciated, see documentation.

template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
typedef boost::icl::element_iterator<reverse_iterator> boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::element_reverse_iterator

element reverse iterator: Depreciated, see documentation.

template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
typedef boost::icl::element_iterator<const_reverse_iterator> boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::element_const_reverse_iterator

element const reverse iterator: Depreciated, see documentation.


Constructor & Destructor Documentation

template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::interval_base_set (  )  [inline]

Default constructor for the empty object

template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::interval_base_set ( const interval_base_set< SubType, DomainT, Compare, Interval, Alloc > &  src  )  [inline]

Copy constructor


Member Function Documentation

template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
typedef boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::ICL_INTERVAL_TYPE ( Interval  ,
DomainT  ,
Compare   
)
template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
typedef boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::ICL_COMPARE_DOMAIN ( Compare  ,
DomainT   
)
template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
interval_base_set& boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::operator= ( const interval_base_set< SubType, DomainT, Compare, Interval, Alloc > &  src  )  [inline]
template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
void boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::swap ( interval_base_set< SubType, DomainT, Compare, Interval, Alloc > &  operand  )  [inline]

swap the content of containers

template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
void boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::clear (  )  [inline]

sets the container empty

template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
bool boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::empty (  )  const [inline]

is the container empty?

template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
size_type boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::size (  )  const [inline]

An interval set's size is it's cardinality

template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
std::size_t boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::iterative_size (  )  const [inline]

Size of the iteration over this container

template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
const_iterator boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::find ( const element_type key  )  const [inline]

Find the interval value pair, that contains element key

template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
SubType& boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::add ( const element_type key  )  [inline]

Add a single element key to the set

template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
SubType& boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::add ( const segment_type inter_val  )  [inline]

Add an interval of elements inter_val to the set

template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
iterator boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::add ( iterator  prior_,
const segment_type inter_val 
) [inline]

Add an interval of elements inter_val to the set. Iterator prior_ is a hint to the position inter_val can be inserted after.

template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
SubType& boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::subtract ( const element_type key  )  [inline]

Subtract a single element key from the set

template<class SubType , class DomainT , ICL_COMPARE Compare, ICL_INTERVAL(ICL_COMPARE) Interval, ICL_ALLOC Alloc>
SubType & boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::subtract ( const segment_type inter_val  )  [inline]

Subtract an interval of elements inter_val from the set

template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
SubType& boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::insert ( const element_type key  )  [inline]

Insert an element key into the set

template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
SubType& boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::insert ( const segment_type inter_val  )  [inline]

Insert an interval of elements inter_val to the set

template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
iterator boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::insert ( iterator  prior_,
const segment_type inter_val 
) [inline]

Insert an interval of elements inter_val to the set. Iterator prior_ is a hint to the position inter_val can be inserted after.

template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
SubType& boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::erase ( const element_type key  )  [inline]

Erase an element key from the set

template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
SubType& boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::erase ( const segment_type inter_val  )  [inline]

Erase an interval of elements inter_val from the set

template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
void boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::erase ( iterator  position  )  [inline]

Erase the interval that iterator position points to.

template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
void boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::erase ( iterator  first,
iterator  past 
) [inline]

Erase all intervals in the range [first,past) of iterators.

template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
SubType& boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::flip ( const element_type key  )  [inline]

If *this set contains key it is erased, otherwise it is added.

template<typename SubType, typename DomainT, ICL_COMPARE Compare = ICL_COMPARE_INSTANCE(std::less, DomainT), ICL_INTERVAL(ICL_COMPARE) Interval = ICL_INTERVAL_INSTANCE(ICL_INTERVAL_DEFAULT, DomainT, Compare), ICL_ALLOC Alloc = std::allocator>
SubType& boost::icl::interval_base_set< SubType, DomainT, Compare, Interval, Alloc >::flip ( const segment_type inter_val  )  [inline]

If *this set contains inter_val it is erased, otherwise it is added.


The documentation for this class was generated from the following file:

Generated by  doxygen 1.6.2