![]() |
ATLAS Offline Software
|
#include <IPartCombItr.h>
Public Types | |
| using | VecLInfo_t = std::vector<LinkInfo<xAOD::IParticleContainer>> |
| using | LInfoItr_t = VecLInfo_t::const_iterator |
| using | FilterFunc_t = std::function<bool(const IPartCombItr::VecLInfo_t &)> |
| using | iterator_category = std::input_iterator_tag |
| using | value_type = VecLInfo_t |
| using | reference = const value_type & |
| using | pointer = const value_type * |
| using | difference_type = std::ptrdiff_t |
Public Member Functions | |
| IPartCombItr () | |
| A default constructed iterator acts as a past-the-end iterator. | |
| IPartCombItr (const std::vector< std::tuple< std::size_t, LInfoItr_t, LInfoItr_t > > &pieces, FilterFunc_t filter) | |
| The direct constructor. | |
| IPartCombItr (const std::vector< std::tuple< std::size_t, LInfoItr_t, LInfoItr_t > > &pieces, FilterType filter=FilterType::UniqueObjects) | |
| The direct constructor. | |
| std::size_t | size () const |
| The size of each combination. | |
| std::size_t | nLegs () const |
| The number of legs. | |
| void | reset () |
| Reset the iterator to its starting point. | |
| bool | exhausted () const |
| True if this iterator is past the end. | |
| reference | operator* () const |
| Dereference. | |
| pointer | operator-> () const |
| IPartCombItr & | operator++ () |
| Pre-increment operator. | |
| IPartCombItr | operator++ (int) |
| Post-increment operator. | |
| bool | operator== (const IPartCombItr &other) const |
| Iterator comparison functions. | |
| bool | operator!= (const IPartCombItr &other) const |
Static Public Member Functions | |
| static FilterFunc_t | getFilter (FilterType filter) |
| Get a function corresponding to the specified FilterType enum. | |
Private Member Functions | |
| void | readCurrent () |
Private Attributes | |
| FilterFunc_t | m_filter |
| std::vector< LInfoItr_t > | m_linkInfoItrs |
| ProductItr< KFromNItr > | m_idxItr |
| VecLInfo_t | m_current |
Definition at line 40 of file IPartCombItr.h.
| using TrigCompositeUtils::IPartCombItr::difference_type = std::ptrdiff_t |
Definition at line 51 of file IPartCombItr.h.
| using TrigCompositeUtils::IPartCombItr::FilterFunc_t = std::function<bool(const IPartCombItr::VecLInfo_t &)> |
Definition at line 45 of file IPartCombItr.h.
| using TrigCompositeUtils::IPartCombItr::iterator_category = std::input_iterator_tag |
Definition at line 47 of file IPartCombItr.h.
| using TrigCompositeUtils::IPartCombItr::LInfoItr_t = VecLInfo_t::const_iterator |
Definition at line 44 of file IPartCombItr.h.
Definition at line 50 of file IPartCombItr.h.
Definition at line 49 of file IPartCombItr.h.
Definition at line 48 of file IPartCombItr.h.
| using TrigCompositeUtils::IPartCombItr::VecLInfo_t = std::vector<LinkInfo<xAOD::IParticleContainer>> |
Definition at line 43 of file IPartCombItr.h.
| TrigCompositeUtils::IPartCombItr::IPartCombItr | ( | ) |
A default constructed iterator acts as a past-the-end iterator.
Definition at line 88 of file IPartCombItr.cxx.
| TrigCompositeUtils::IPartCombItr::IPartCombItr | ( | const std::vector< std::tuple< std::size_t, LInfoItr_t, LInfoItr_t > > & | pieces, |
| FilterFunc_t | filter ) |
The direct constructor.
Takes a vector of tuples. The last two elements of each tuple are start and end iterators describing ranges of IParticleContainer LinkInfos. The first element describes how many particles from this range are used in the output combinations
Definition at line 90 of file IPartCombItr.cxx.
| TrigCompositeUtils::IPartCombItr::IPartCombItr | ( | const std::vector< std::tuple< std::size_t, LInfoItr_t, LInfoItr_t > > & | pieces, |
| FilterType | filter = FilterType::UniqueObjects ) |
The direct constructor.
Takes a vector of tuples. The last two elements of each tuple are start and end iterators describing ranges of IParticleContainer LinkInfos. The first element describes how many particles from this range are used in the output combinations
Definition at line 113 of file IPartCombItr.cxx.
| bool TrigCompositeUtils::IPartCombItr::exhausted | ( | ) | const |
True if this iterator is past the end.
Definition at line 127 of file IPartCombItr.cxx.
|
static |
Get a function corresponding to the specified FilterType enum.
Definition at line 74 of file IPartCombItr.cxx.
|
inline |
| bool TrigCompositeUtils::IPartCombItr::operator!= | ( | const IPartCombItr & | other | ) | const |
Definition at line 171 of file IPartCombItr.cxx.
| IPartCombItr::reference TrigCompositeUtils::IPartCombItr::operator* | ( | ) | const |
Dereference.
Definition at line 132 of file IPartCombItr.cxx.
| IPartCombItr & TrigCompositeUtils::IPartCombItr::operator++ | ( | ) |
Pre-increment operator.
Definition at line 146 of file IPartCombItr.cxx.
| IPartCombItr TrigCompositeUtils::IPartCombItr::operator++ | ( | int | ) |
Post-increment operator.
Definition at line 156 of file IPartCombItr.cxx.
| IPartCombItr::pointer TrigCompositeUtils::IPartCombItr::operator-> | ( | ) | const |
Definition at line 139 of file IPartCombItr.cxx.
| bool TrigCompositeUtils::IPartCombItr::operator== | ( | const IPartCombItr & | other | ) | const |
Iterator comparison functions.
Definition at line 163 of file IPartCombItr.cxx.
|
private |
Definition at line 176 of file IPartCombItr.cxx.
| void TrigCompositeUtils::IPartCombItr::reset | ( | ) |
Reset the iterator to its starting point.
Note that this resets all component iterators, so it will not reset this object to its starting point if any of the iterators passed to it were not initially in their starting positions
Definition at line 120 of file IPartCombItr.cxx.
|
inline |
|
private |
Definition at line 122 of file IPartCombItr.h.
|
private |
Definition at line 118 of file IPartCombItr.h.
|
private |
Definition at line 120 of file IPartCombItr.h.
|
private |
Definition at line 119 of file IPartCombItr.h.