|
OpenDDS
Snapshot(2023/04/28-20:55)
|
#include <DisjointSequence.h>
Public Types | |
| typedef std::pair< T, T > | TPair |
| typedef bool(* | Compare) (const TPair &, const TPair &) |
| typedef Container::size_type | size_type |
| typedef Container::const_iterator | const_iterator |
| typedef const_iterator | iterator |
| typedef Container::const_reverse_iterator | const_reverse_iterator |
| typedef const_reverse_iterator | reverse_iterator |
Public Member Functions | |
| typedef | OPENDDS_SET_CMP (TPair, Compare) Container |
| OrderedRanges () | |
| const_iterator | begin () const |
| const_iterator | cbegin () const |
| const_iterator | end () const |
| const_iterator | cend () const |
| const_reverse_iterator | rbegin () const |
| const_reverse_iterator | crbegin () const |
| const_reverse_iterator | rend () const |
| const_reverse_iterator | crend () const |
| bool | empty () const |
| size_type | size () const |
| void | clear () |
| void | add (T lower, T upper) |
| void | add (T value) |
| void | remove (T value) |
| T | pop_front () |
| bool | has (T lower, T upper) const |
| bool | has (const TPair &range) const |
| bool | has (T value) const |
| bool | has_any (T lower, T upper) const |
| bool | has_any (const TPair &range) const |
Static Public Member Functions | |
| static bool | range_less (const TPair &lhs, const TPair &rhs) |
Private Member Functions | |
| const_iterator | lower_bound (const TPair &p) const |
| const_iterator | lower_bound (T t) const |
| Container::iterator | lower_bound_i (T t) |
| const_iterator | upper_bound (const TPair &p) const |
| const_iterator | upper_bound (T t) const |
| void | remove_i (typename Container::iterator iter, T value) |
Private Attributes | |
| Container | ranges_ |
Friends | |
| class | DisjointSequence |
| template<typename Type > | |
| bool | operator== (const OrderedRanges< Type > &a, const OrderedRanges< Type > &b) |
Core data structure of DisjointSequence: Use a balanced binary tree (std::set) to store a list of ranges (std::pair of T). Maintain invariants (in addition to those from std::set):
Definition at line 125 of file DisjointSequence.h.
| typedef bool(* OpenDDS::DCPS::DisjointSequence::OrderedRanges< T >::Compare) (const TPair &, const TPair &) |
Definition at line 128 of file DisjointSequence.h.
| typedef Container::const_iterator OpenDDS::DCPS::DisjointSequence::OrderedRanges< T >::const_iterator |
Definition at line 131 of file DisjointSequence.h.
| typedef Container::const_reverse_iterator OpenDDS::DCPS::DisjointSequence::OrderedRanges< T >::const_reverse_iterator |
Definition at line 133 of file DisjointSequence.h.
| typedef const_iterator OpenDDS::DCPS::DisjointSequence::OrderedRanges< T >::iterator |
Definition at line 132 of file DisjointSequence.h.
| typedef const_reverse_iterator OpenDDS::DCPS::DisjointSequence::OrderedRanges< T >::reverse_iterator |
Definition at line 134 of file DisjointSequence.h.
| typedef Container::size_type OpenDDS::DCPS::DisjointSequence::OrderedRanges< T >::size_type |
Definition at line 130 of file DisjointSequence.h.
| typedef std::pair<T, T> OpenDDS::DCPS::DisjointSequence::OrderedRanges< T >::TPair |
Definition at line 127 of file DisjointSequence.h.
|
inline |
Definition at line 141 of file DisjointSequence.h.
|
inline |
Definition at line 161 of file DisjointSequence.h.
Referenced by OpenDDS::XTypes::DynamicDataImpl::insert_valid_discriminator(), OpenDDS::Security::XmlUtils::parse_domain_id_set(), and OpenDDS::DCPS::DomainParticipantImpl::return_handle().
|
inline |
Definition at line 180 of file DisjointSequence.h.
|
inline |
Definition at line 145 of file DisjointSequence.h.
Referenced by OpenDDS::DCPS::DisjointSequence::cumulative_ack(), OpenDDS::DCPS::DisjointSequence::dump(), OpenDDS::DCPS::DisjointSequence::fill_bitmap_range(), OpenDDS::DCPS::DisjointSequence::insert_filtered(), OpenDDS::XTypes::DynamicDataImpl::insert_valid_discriminator(), OpenDDS::DCPS::DisjointSequence::low(), and OpenDDS::DCPS::DisjointSequence::to_bitmap().
|
inline |
Definition at line 146 of file DisjointSequence.h.
|
inline |
Definition at line 149 of file DisjointSequence.h.
|
inline |
Definition at line 159 of file DisjointSequence.h.
Referenced by OpenDDS::DCPS::DisjointSequence::reset().
|
inline |
Definition at line 152 of file DisjointSequence.h.
|
inline |
Definition at line 155 of file DisjointSequence.h.
|
inline |
Definition at line 157 of file DisjointSequence.h.
Referenced by OpenDDS::DCPS::DomainParticipantImpl::assign_handle(), OpenDDS::DCPS::DisjointSequence::cumulative_ack(), OpenDDS::DCPS::DisjointSequence::empty(), OpenDDS::DCPS::DisjointSequence::insert_bitmap_range(), OpenDDS::XTypes::DynamicDataImpl::insert_valid_discriminator(), OpenDDS::DCPS::DisjointSequence::last_ack(), and OpenDDS::Security::XmlUtils::parse_domain_id_set().
|
inline |
Definition at line 148 of file DisjointSequence.h.
Referenced by OpenDDS::DCPS::DisjointSequence::dump(), OpenDDS::DCPS::DisjointSequence::fill_bitmap_range(), OpenDDS::DCPS::DisjointSequence::insert_filtered(), and OpenDDS::DCPS::DisjointSequence::to_bitmap().
|
inline |
Definition at line 201 of file DisjointSequence.h.
Referenced by OpenDDS::DCPS::DisjointSequence::insert_filtered().
|
inline |
Definition at line 207 of file DisjointSequence.h.
|
inline |
Definition at line 212 of file DisjointSequence.h.
|
inline |
Definition at line 217 of file DisjointSequence.h.
Referenced by OpenDDS::DCPS::DisjointSequence::insert_filtered().
|
inline |
Definition at line 223 of file DisjointSequence.h.
|
inlineprivate |
Definition at line 232 of file DisjointSequence.h.
|
inlineprivate |
Definition at line 234 of file DisjointSequence.h.
|
inlineprivate |
Definition at line 240 of file DisjointSequence.h.
| typedef OpenDDS::DCPS::DisjointSequence::OrderedRanges< T >::OPENDDS_SET_CMP | ( | TPair | , |
| Compare | |||
| ) |
|
inline |
Definition at line 194 of file DisjointSequence.h.
Referenced by OpenDDS::DCPS::DomainParticipantImpl::assign_handle().
|
inlinestatic |
Definition at line 136 of file DisjointSequence.h.
|
inline |
Definition at line 151 of file DisjointSequence.h.
Referenced by OpenDDS::DCPS::DisjointSequence::high(), and OpenDDS::DCPS::DisjointSequence::last_ack().
|
inline |
Definition at line 185 of file DisjointSequence.h.
|
inlineprivate |
Definition at line 253 of file DisjointSequence.h.
|
inline |
Definition at line 154 of file DisjointSequence.h.
|
inline |
Definition at line 158 of file DisjointSequence.h.
Referenced by OpenDDS::DCPS::DisjointSequence::disjoint().
|
inlineprivate |
Definition at line 245 of file DisjointSequence.h.
|
inlineprivate |
Definition at line 247 of file DisjointSequence.h.
|
friend |
Definition at line 269 of file DisjointSequence.h.
|
friend |
|
private |
Definition at line 270 of file DisjointSequence.h.
Referenced by OpenDDS::DCPS::DisjointSequence::erase(), OpenDDS::DCPS::DisjointSequence::insert(), OpenDDS::DCPS::DisjointSequence::insert_bitmap_range(), OpenDDS::DCPS::DisjointSequence::insert_i(), and OpenDDS::DCPS::operator==().
1.8.13