![]() |
ATLAS Offline Software
|
A MultiRange combines several Ranges. More...
#include <MultiRange.h>
Classes | |
| class | const_identifier_factory |
| class | identifier_factory |
| This factory is able to generate all possible identifiers, from a fully bounded Range. More... | |
Public Types | |
| using | range_vector = std::vector<Range> |
| using | element_type = ExpandedIdentifier::element_type |
| using | size_type = ExpandedIdentifier::size_type |
| using | const_iterator = range_vector::const_iterator |
Public Member Functions | |
| MultiRange ()=default | |
| MultiRange (const Range &r, const Range &s) | |
| Construct a non-overlapping MultiRange from two overlapping ones. | |
| void | clear () |
| void | add (const Range &range) |
| void | add (Range &&range) |
| Add with move semantics. | |
| void | add (const ExpandedIdentifier &id) |
| Add a Range made from a single ExpandedIdentifier. | |
| void | remove_range (const ExpandedIdentifier &id) |
| Remove a Range made from a single ExpandedIdentifier. | |
| Range & | back () |
| Get the last entered Range. | |
| int | match (const ExpandedIdentifier &id) const |
| Match an identifier. | |
| const Range & | operator[] (size_type index) const |
| Accessors. | |
| size_type | size () const |
| const_iterator | begin () const |
| const_iterator | end () const |
| size_type | cardinality () const |
| Computes a possible cardinality from all ranges. | |
| size_type | cardinalityUpTo (const ExpandedIdentifier &id) const |
| bool | has_overlap () const |
| Check if there are overlaps between any couple of Ranges. | |
| identifier_factory | factory_begin () |
| const_identifier_factory | factory_begin () const |
| identifier_factory | factory_end () |
| const_identifier_factory | factory_end () const |
| void | show () const |
| void | show (std::ostream &s) const |
| operator std::string () const | |
| Generate a textual representation of the multirange using the input format. | |
Private Types | |
| using | id_vec = std::vector<ExpandedIdentifier> |
Private Attributes | |
| range_vector | m_ranges |
Friends | |
| class | identifier_factory |
| class | const_identifier_factory |
A MultiRange combines several Ranges.
Definition at line 17 of file MultiRange.h.
| using MultiRange::const_iterator = range_vector::const_iterator |
Definition at line 22 of file MultiRange.h.
Definition at line 20 of file MultiRange.h.
|
private |
Definition at line 130 of file MultiRange.h.
| using MultiRange::range_vector = std::vector<Range> |
Definition at line 19 of file MultiRange.h.
Definition at line 21 of file MultiRange.h.
|
default |
Construct a non-overlapping MultiRange from two overlapping ones.
Definition at line 11 of file MultiRange.cxx.
| void MultiRange::add | ( | const ExpandedIdentifier & | id | ) |
Add a Range made from a single ExpandedIdentifier.
Definition at line 38 of file MultiRange.cxx.
| void MultiRange::add | ( | const Range & | range | ) |
Definition at line 22 of file MultiRange.cxx.
| void MultiRange::add | ( | Range && | range | ) |
Add with move semantics.
Definition at line 30 of file MultiRange.cxx.
| Range & MultiRange::back | ( | ) |
Get the last entered Range.
Definition at line 52 of file MultiRange.cxx.
| MultiRange::const_iterator MultiRange::begin | ( | ) | const |
Definition at line 74 of file MultiRange.cxx.
| MultiRange::size_type MultiRange::cardinality | ( | ) | const |
Computes a possible cardinality from all ranges.
Definition at line 82 of file MultiRange.cxx.
| MultiRange::size_type MultiRange::cardinalityUpTo | ( | const ExpandedIdentifier & | id | ) | const |
| void MultiRange::clear | ( | ) |
Definition at line 17 of file MultiRange.cxx.
| MultiRange::const_iterator MultiRange::end | ( | ) | const |
Definition at line 78 of file MultiRange.cxx.
| MultiRange::identifier_factory MultiRange::factory_begin | ( | ) |
Definition at line 112 of file MultiRange.cxx.
| MultiRange::const_identifier_factory MultiRange::factory_begin | ( | ) | const |
Definition at line 118 of file MultiRange.cxx.
| MultiRange::identifier_factory MultiRange::factory_end | ( | ) |
Definition at line 124 of file MultiRange.cxx.
| MultiRange::const_identifier_factory MultiRange::factory_end | ( | ) | const |
Definition at line 130 of file MultiRange.cxx.
| bool MultiRange::has_overlap | ( | ) | const |
Check if there are overlaps between any couple of Ranges.
Definition at line 98 of file MultiRange.cxx.
| int MultiRange::match | ( | const ExpandedIdentifier & | id | ) | const |
| MultiRange::operator std::string | ( | ) | const |
Generate a textual representation of the multirange using the input format.
Definition at line 251 of file MultiRange.cxx.
| const Range & MultiRange::operator[] | ( | MultiRange::size_type | index | ) | const |
Accessors.
Definition at line 63 of file MultiRange.cxx.
| void MultiRange::remove_range | ( | const ExpandedIdentifier & | id | ) |
Remove a Range made from a single ExpandedIdentifier.
Definition at line 43 of file MultiRange.cxx.
| void MultiRange::show | ( | ) | const |
Definition at line 237 of file MultiRange.cxx.
| void MultiRange::show | ( | std::ostream & | s | ) | const |
| MultiRange::size_type MultiRange::size | ( | ) | const |
Definition at line 70 of file MultiRange.cxx.
|
friend |
Definition at line 129 of file MultiRange.h.
|
friend |
Definition at line 128 of file MultiRange.h.
|
private |
Definition at line 131 of file MultiRange.h.