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 |
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.
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 |
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 |
void MultiRange::remove_range | ( | const ExpandedIdentifier & | id | ) |
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.