ATLAS Offline Software
|
#include <IPartCombItr.h>
Public Types | |
using | VecLInfo_t = std::vector< LinkInfo< xAOD::IParticleContainer > > |
using | LInfoItr_t = VecLInfo_t::const_iterator |
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. More... | |
IPartCombItr (const std::vector< std::tuple< std::size_t, LInfoItr_t, LInfoItr_t >> &pieces, std::function< bool(const VecLInfo_t &)> filter) | |
The direct constructor. More... | |
IPartCombItr (const std::vector< std::tuple< std::size_t, LInfoItr_t, LInfoItr_t >> &pieces, FilterType filter=FilterType::UniqueObjects) | |
The direct constructor. More... | |
std::size_t | size () const |
The size of each combination. More... | |
std::size_t | nLegs () const |
The number of legs. More... | |
void | reset () |
Reset the iterator to its starting point. More... | |
bool | exhausted () const |
True if this iterator is past the end. More... | |
reference | operator* () const |
Dereference. More... | |
pointer | operator-> () const |
IPartCombItr & | operator++ () |
Pre-increment operator. More... | |
IPartCombItr | operator++ (int) |
Post-increment operator. More... | |
bool | operator== (const IPartCombItr &other) const |
Iterator comparison functions. More... | |
bool | operator!= (const IPartCombItr &other) const |
Private Member Functions | |
void | readCurrent () |
Private Attributes | |
std::function< bool(const VecLInfo_t &)> | m_filter |
std::vector< LInfoItr_t > | m_linkInfoItrs |
ProductItr< KFromNItr > | m_idxItr |
VecLInfo_t | m_current |
Definition at line 41 of file IPartCombItr.h.
using TrigCompositeUtils::IPartCombItr::difference_type = std::ptrdiff_t |
Definition at line 51 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 45 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 44 of file IPartCombItr.h.
TrigCompositeUtils::IPartCombItr::IPartCombItr | ( | ) |
A default constructed iterator acts as a past-the-end iterator.
Definition at line 85 of file IPartCombItr.cxx.
TrigCompositeUtils::IPartCombItr::IPartCombItr | ( | const std::vector< std::tuple< std::size_t, LInfoItr_t, LInfoItr_t >> & | pieces, |
std::function< bool(const VecLInfo_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 87 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 110 of file IPartCombItr.cxx.
bool TrigCompositeUtils::IPartCombItr::exhausted | ( | ) | const |
True if this iterator is past the end.
Definition at line 124 of file IPartCombItr.cxx.
|
inline |
bool TrigCompositeUtils::IPartCombItr::operator!= | ( | const IPartCombItr & | other | ) | const |
Definition at line 168 of file IPartCombItr.cxx.
IPartCombItr::reference TrigCompositeUtils::IPartCombItr::operator* | ( | ) | const |
Dereference.
Definition at line 129 of file IPartCombItr.cxx.
IPartCombItr & TrigCompositeUtils::IPartCombItr::operator++ | ( | ) |
IPartCombItr TrigCompositeUtils::IPartCombItr::operator++ | ( | int | ) |
Post-increment operator.
Definition at line 153 of file IPartCombItr.cxx.
IPartCombItr::pointer TrigCompositeUtils::IPartCombItr::operator-> | ( | ) | const |
Definition at line 136 of file IPartCombItr.cxx.
bool TrigCompositeUtils::IPartCombItr::operator== | ( | const IPartCombItr & | other | ) | const |
Iterator comparison functions.
Definition at line 160 of file IPartCombItr.cxx.
|
private |
Definition at line 173 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 117 of file IPartCombItr.cxx.
|
inline |
|
private |
Definition at line 119 of file IPartCombItr.h.
|
private |
Definition at line 115 of file IPartCombItr.h.
|
private |
Definition at line 117 of file IPartCombItr.h.
|
private |
Definition at line 116 of file IPartCombItr.h.