|
ATLAS Offline Software
|
Go to the documentation of this file.
5 #ifndef TRIGNAVSTRUCTURE_ComboIterator_H
6 #define TRIGNAVSTRUCTURE_ComboIterator_H
14 typedef std::vector<HLT::TriggerElement*>
TEVec;
122 const TEVec& teVec,
int idx = -1)
const;
ComboIterator & operator++()
Pre increment operator.
void print() const
Debug dump to std::cout.
void invalidate()
Method used to invalidate the current combination.
const TrigNavStructure * m_nav
Pointer to the navigation service.
TEVec & combination()
Accessor method for the current combination.
TEVec m_comb
Current combination of TEs.
bool incrementByOne(int pos, bool &ok)
Private increment method.
std::vector< ALFA_RawDataCollection_p1 > t1
bool reset(int pos)
Private reset method.
ComboIteratorTopo(const std::vector< TEVec > &tes, const TrigNavStructure *nav, HLT::te_id_type topoSpan)
virtual TEVec & operator*()=0
Unary * operator, used to recover the current combination.
virtual ~ComboIteratorBase()
Destructor.
bool increment(int pos)
Private increment method.
virtual bool isValid() const =0
Validity check for the iterator.
It used to be useful piece of code for replacing actual SG with other store of similar functionality ...
void traverseUntilSeedsTopo(const TriggerElement *start, std::set< const TriggerElement * > &topos) const
TriggerElement is the basic ingreedient of the interface between HLT algorithms and the navigation It...
ComboIteratorBase()
Constructor.
virtual bool overlaps(const TriggerElement *t1, const TriggerElement *t2) const
Method used to test overlaps between two TEs.
Iterator used to loop over multi-particle combinations.
virtual ComboIteratorBase & operator++(int)=0
Post increment operator.
std::vector< HLT::TriggerElement * > TEVec
TEVec & operator*()
Unary * operator, used to recover the current combination.
virtual bool overlaps(const TriggerElement *t1, const TriggerElement *t2) const
Method used to test overlaps between two TEs.
virtual ComboIteratorBase & operator++()=0
Pre increment operator.
std::vector< ALFA_RawDataContainer_p1 > t2
std::vector< TEVec > m_tes
Vector of vectors of TEs to be combined.
bool m_valid
Validity status variable.
ComboIterator(const std::vector< TEVec > &tes, const TrigNavStructure *nav)
Constructor; gets a vector of TE vectors and a pointer to Navigation as arguments.
std::vector< int > m_idx
Vector of indexes keeping track of the loop over combinations.
virtual bool rewind()=0
Rewind method, resetting the iterator to the first element.
ComboIterator & operator++(int)
Post increment operator.
virtual TEVec & combination()=0
Accessor method for the current combination.
bool rewind()
Rewind method, resetting the iterator to the first element.
bool isValid() const
Validity check for the iterator.
Base class for iterator used to loop over multi-particle combinations.