#include <yat/utility/SegmentMap.h>
Public Types | |
typedef Tp | mapped_type |
mapped type | |
typedef std::map< Segment< T, Compare >, Tp, SegmentCompare < T, Compare > >::key_type | key_type |
key type | |
typedef std::map< Segment< T, Compare >, Tp, SegmentCompare < T, Compare > >::value_type | value_type |
value type | |
typedef key_type::value_type | element_type |
element type | |
typedef std::map< Segment< T, Compare >, Tp, SegmentCompare < T, Compare > >::key_compare | key_compare |
key compare | |
typedef std::map< Segment< T, Compare >, Tp, SegmentCompare < T, Compare > >::value_compare | value_compare |
calue compare | |
typedef Compare | element_compare |
element compare | |
typedef std::map< Segment< T, Compare >, Tp, SegmentCompare < T, Compare > >::pointer | pointer |
pointer | |
typedef std::map< Segment< T, Compare >, Tp, SegmentCompare < T, Compare > >::reference | reference |
reference | |
typedef std::map< Segment< T, Compare >, Tp, SegmentCompare < T, Compare > >::const_reference | const_reference |
const reference | |
typedef std::map< Segment< T, Compare >, Tp, SegmentCompare < T, Compare > >::size_type | size_type |
size_type | |
typedef std::map< Segment< T, Compare >, Tp, SegmentCompare < T, Compare > >::difference_type | difference_type |
difference_type | |
typedef std::map< Segment< T, Compare >, Tp, SegmentCompare < T, Compare > >::iterator | iterator |
iterator | |
typedef std::map< Segment< T, Compare >, Tp, SegmentCompare < T, Compare > >::const_iterator | const_iterator |
const_iterator | |
Public Member Functions | |
SegmentMap (void) | |
creates a set with no segments | |
const_iterator | begin (void) const |
iterator | begin (void) |
void | clear (void) |
erases all segments | |
size_type | count (const element_type &element) const |
bool | empty (void) const |
const_iterator | end (void) const |
iterator | end (void) |
const_iterator | find (const element_type &vt) const |
std::pair< iterator, bool > | insert (const value_type &segment) |
insert value | |
key_compare | key_comp (void) const |
iterator | lower_bound (const element_type &element) |
const_iterator | lower_bound (const element_type &element) const |
size_type | size (void) const |
iterator | upper_bound (const element_type &element) |
const_iterator | upper_bound (const element_type &element) const |
value_compare | value_comp (void) const |
Protected Member Functions | |
std::pair< iterator, iterator > | overlap_range (const key_type &segment) |
Protected Attributes | |
std::map< Segment< T, Compare > , Tp, SegmentCompare< T, Compare > > | container_ |
underlying container |
A map with key Segment. The Segments cannot overlap.
iterator theplu::yat::utility::SegmentTree< std::map< Segment< T, Compare >, Tp, SegmentCompare< T, Compare > > , Compare , PairFirst< const std::pair< const Segment< T, Compare >, Tp > > >::begin | ( | void | ) | [inline, inherited] |
const_iterator theplu::yat::utility::SegmentTree< std::map< Segment< T, Compare >, Tp, SegmentCompare< T, Compare > > , Compare , PairFirst< const std::pair< const Segment< T, Compare >, Tp > > >::begin | ( | void | ) | const [inline, inherited] |
size_type theplu::yat::utility::SegmentTree< std::map< Segment< T, Compare >, Tp, SegmentCompare< T, Compare > > , Compare , PairFirst< const std::pair< const Segment< T, Compare >, Tp > > >::count | ( | const element_type & | element | ) | const [inherited] |
bool theplu::yat::utility::SegmentTree< std::map< Segment< T, Compare >, Tp, SegmentCompare< T, Compare > > , Compare , PairFirst< const std::pair< const Segment< T, Compare >, Tp > > >::empty | ( | void | ) | const [inline, inherited] |
true
iterator theplu::yat::utility::SegmentTree< std::map< Segment< T, Compare >, Tp, SegmentCompare< T, Compare > > , Compare , PairFirst< const std::pair< const Segment< T, Compare >, Tp > > >::end | ( | void | ) | [inline, inherited] |
const_iterator theplu::yat::utility::SegmentTree< std::map< Segment< T, Compare >, Tp, SegmentCompare< T, Compare > > , Compare , PairFirst< const std::pair< const Segment< T, Compare >, Tp > > >::end | ( | void | ) | const [inline, inherited] |
const_iterator theplu::yat::utility::SegmentTree< std::map< Segment< T, Compare >, Tp, SegmentCompare< T, Compare > > , Compare , PairFirst< const std::pair< const Segment< T, Compare >, Tp > > >::find | ( | const element_type & | vt | ) | const [inherited] |
std::pair<iterator, bool> theplu::yat::utility::SegmentTree< std::map< Segment< T, Compare >, Tp, SegmentCompare< T, Compare > > , Compare , PairFirst< const std::pair< const Segment< T, Compare >, Tp > > >::insert | ( | const value_type & | segment | ) | [inherited] |
insert value
if segment does not overlap with any segment in set, insert segment; otherwise do nothing.
key_compare theplu::yat::utility::SegmentTree< std::map< Segment< T, Compare >, Tp, SegmentCompare< T, Compare > > , Compare , PairFirst< const std::pair< const Segment< T, Compare >, Tp > > >::key_comp | ( | void | ) | const [inline, inherited] |
const_iterator theplu::yat::utility::SegmentTree< std::map< Segment< T, Compare >, Tp, SegmentCompare< T, Compare > > , Compare , PairFirst< const std::pair< const Segment< T, Compare >, Tp > > >::lower_bound | ( | const element_type & | element | ) | const [inherited] |
iterator theplu::yat::utility::SegmentTree< std::map< Segment< T, Compare >, Tp, SegmentCompare< T, Compare > > , Compare , PairFirst< const std::pair< const Segment< T, Compare >, Tp > > >::lower_bound | ( | const element_type & | element | ) | [inherited] |
std::pair<iterator, iterator> theplu::yat::utility::SegmentTree< std::map< Segment< T, Compare >, Tp, SegmentCompare< T, Compare > > , Compare , PairFirst< const std::pair< const Segment< T, Compare >, Tp > > >::overlap_range | ( | const key_type & | segment | ) | [inline, protected, inherited] |
pair.first first (smallest) segment that overlaps with segment and pair.second first (smallest) segment that does not overlap with segment.
size_type theplu::yat::utility::SegmentTree< std::map< Segment< T, Compare >, Tp, SegmentCompare< T, Compare > > , Compare , PairFirst< const std::pair< const Segment< T, Compare >, Tp > > >::size | ( | void | ) | const [inline, inherited] |
const_iterator theplu::yat::utility::SegmentTree< std::map< Segment< T, Compare >, Tp, SegmentCompare< T, Compare > > , Compare , PairFirst< const std::pair< const Segment< T, Compare >, Tp > > >::upper_bound | ( | const element_type & | element | ) | const [inherited] |
iterator theplu::yat::utility::SegmentTree< std::map< Segment< T, Compare >, Tp, SegmentCompare< T, Compare > > , Compare , PairFirst< const std::pair< const Segment< T, Compare >, Tp > > >::upper_bound | ( | const element_type & | element | ) | [inherited] |
value_compare theplu::yat::utility::SegmentTree< std::map< Segment< T, Compare >, Tp, SegmentCompare< T, Compare > > , Compare , PairFirst< const std::pair< const Segment< T, Compare >, Tp > > >::value_comp | ( | void | ) | const [inline, inherited] |