|
ATLAS Offline Software
|
#include <ComboIterator.h>
Definition at line 173 of file ComboIterator.h.
◆ ComboIteratorTopo()
◆ combination()
TEVec& HLT::ComboIterator::combination |
( |
| ) |
|
|
inlinevirtualinherited |
◆ increment()
bool HLT::ComboIterator::increment |
( |
int |
pos | ) |
|
|
protectedinherited |
◆ incrementByOne()
bool HLT::ComboIterator::incrementByOne |
( |
int |
pos, |
|
|
bool & |
ok |
|
) |
| |
|
protectedinherited |
◆ invalidate()
void HLT::ComboIterator::invalidate |
( |
| ) |
|
|
protectedinherited |
Method used to invalidate the current combination.
Definition at line 189 of file ComboIterator.cxx.
◆ isValid()
bool HLT::ComboIterator::isValid |
( |
| ) |
const |
|
inlinevirtualinherited |
Validity check for the iterator.
- Returns
- result of the validity check; returns false if iterator is at end, true otherwise.
Implements HLT::ComboIteratorBase.
Definition at line 95 of file ComboIterator.h.
◆ operator*()
TEVec& HLT::ComboIterator::operator* |
( |
| ) |
|
|
inlinevirtualinherited |
◆ operator++() [1/2]
◆ operator++() [2/2]
◆ overlaps() [1/2]
Method used to test overlaps between a TE and a vector of TEs.
- Returns
- result of the overlap test; returns true if the TE corresponds to the same RoI as one of the TEs in the vector, false otherwise.
- Parameters
-
t1 | TE to check. |
teVec | TE vector to check. |
idx | optional integer parameter, limiting the check over the 0..idx-1 range of the vector. |
Definition at line 146 of file ComboIterator.cxx.
149 if (
idx < 0)
idx = teVec.size();
151 for (
int i = 0;
i <
idx;
i++) {
152 if (!teVec[
i])
return false;
153 if (
overlaps(te1, teVec[
i]))
return true;
◆ overlaps() [2/2]
Method used to test overlaps between two TEs.
- Returns
- result of the overlap test; returns true if the two TEs correspond to the same RoI, false otherwise.
- Parameters
-
t1 | first TE to check. |
t2 | second TE to check. |
Reimplemented from HLT::ComboIterator.
Definition at line 228 of file ComboIterator.cxx.
234 std::set<const TriggerElement*> te1span;
236 if ( te1span.empty() )
239 std::set<const TriggerElement*> te2span;
241 if ( te2span.empty() )
◆ print()
void HLT::ComboIterator::print |
( |
| ) |
const |
|
protectedinherited |
Debug dump to std::cout.
Definition at line 170 of file ComboIterator.cxx.
173 cout <<
"TEs:" << endl;
175 for (
unsigned int i = 0;
i <
m_tes.size();
i++) {
177 for (
unsigned int j = 0; j <
m_tes[
i].size(); j++) cout <<
m_tes[
i][j] <<
" ";
180 cout <<
"}" << endl << endl <<
"Comb = [ ";
182 cout <<
"]" << endl <<
"Idxs = [ ";
183 for (
unsigned int i = 0;
i <
m_idx.size();
i++) cout <<
m_idx[
i] <<
" ";
185 cout << (
isValid() ?
"Valid" :
"Invalid") << endl << endl;
◆ reset()
bool HLT::ComboIterator::reset |
( |
int |
pos | ) |
|
|
protectedinherited |
Private reset method.
Definition at line 117 of file ComboIterator.cxx.
130 for (
unsigned int j =
pos; j > 0; j--) {
132 if (!
m_comb[j - 1])
continue;
◆ rewind()
bool HLT::ComboIterator::rewind |
( |
| ) |
|
|
virtualinherited |
◆ traverseUntilSeedsTopo()
Definition at line 206 of file ComboIterator.cxx.
209 for (
auto successor : successors ) {
210 if ( successor->getActiveState() ==
true and successor->getId() ==
m_spanId ) {
211 topos.insert(successor);
214 if ( not topos.empty() )
219 for (
auto predecessor : predecessors ) {
223 if ( not topos.empty() )
◆ m_comb
TEVec HLT::ComboIterator::m_comb |
|
protectedinherited |
◆ m_idx
std::vector<int> HLT::ComboIterator::m_idx |
|
protectedinherited |
Vector of indexes keeping track of the loop over combinations.
Definition at line 143 of file ComboIterator.h.
◆ m_nav
◆ m_spanId
◆ m_tes
std::vector<TEVec> HLT::ComboIterator::m_tes |
|
protectedinherited |
◆ m_valid
bool HLT::ComboIterator::m_valid |
|
protectedinherited |
The documentation for this class was generated from the following files:
ComboIterator & operator++()
Pre increment operator.
void invalidate()
Method used to invalidate the current combination.
TEVec & combination()
Accessor method for the current combination.
TEVec m_comb
Current combination of TEs.
std::vector< ALFA_RawDataCollection_p1 > t1
bool incrementByOne(int pos, bool &ok)
Private increment method.
bool reset(int pos)
Private reset method.
std::vector< std::string > intersection(std::vector< std::string > &v1, std::vector< std::string > &v2)
static const std::vector< TriggerElement * > & getDirectSuccessors(const TriggerElement *te)
returns list of direct predecessors (nodes I seed)
bool increment(int pos)
Private increment method.
static const std::vector< TriggerElement * > & getDirectPredecessors(const TriggerElement *te)
returns list of direct predecessors (nodes seeding me)
void traverseUntilSeedsTopo(const TriggerElement *start, std::set< const TriggerElement * > &topos) const
virtual bool overlaps(const TriggerElement *t1, const TriggerElement *t2) const
Method used to test overlaps between two TEs.
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.
Set * set_intersection(Set *set1, Set *set2)
Perform an intersection of two sets.
bool rewind()
Rewind method, resetting the iterator to the first element.
bool isValid() const
Validity check for the iterator.