#include <DataFormats/L1CSCTrackFinder/interface/CSCTriggerContainer.h>
Public Member Functions | |
void | clear () |
CSCTriggerContainer (const std::vector< T > &) | |
CSCTriggerContainer (const CSCTriggerContainer &cpy) | |
CSCTriggerContainer () | |
std::vector< T > | get (const int &BX) const |
std::vector< T > | get (const unsigned &endcap, const unsigned §or) const |
For objects which span multiple stations. | |
std::vector< T > | get (const unsigned &endcap, const unsigned §or, const int &BX) const |
std::vector< T > | get (const unsigned &endcap, const unsigned &station, const unsigned &tsector, const unsigned &tsubsector, const int &BX) const |
For a specific chamber. | |
std::vector< T > | get (const unsigned &endcap, const unsigned &station, const unsigned &tsector, const unsigned &tsubsector, const unsigned &cscid, const int &BX) const |
std::vector< T > | get () const |
CSCTriggerContainer & | operator= (const std::vector< T > &) |
CSCTriggerContainer & | operator= (const CSCTriggerContainer &) |
void | push_back (const T data) |
void | push_many (const CSCTriggerContainer< T > data) |
void | push_many (const std::vector< T > data) |
Private Attributes | |
std::vector< T > | _objs |
Gray
A container class to make things more manageable for a Trigger Processor. DigiCollections make per-BX processing complicated, this class makes it easier.
Any class T must have the following functions: // inherit from base class! T(const T&) operator= station() sector() subsector() BX()
Definition at line 23 of file CSCTriggerContainer.h.
CSCTriggerContainer< T >::CSCTriggerContainer | ( | ) | [inline] |
CSCTriggerContainer< T >::CSCTriggerContainer | ( | const CSCTriggerContainer< T > & | cpy | ) | [inline] |
CSCTriggerContainer< T >::CSCTriggerContainer | ( | const std::vector< T > & | parent | ) | [inline] |
void CSCTriggerContainer< T >::clear | ( | void | ) | [inline] |
Definition at line 47 of file CSCTriggerContainer.h.
Referenced by CSCMuonPortCard::clear(), CSCTFDTReceiver::CSCTFDTReceiver(), CSCTFDTReceiver::process(), CSCTFSectorProcessor::run(), and CSCTFSPCoreLogic::run().
00047 { _objs.clear(); }
std::vector< T > CSCTriggerContainer< T >::get | ( | const int & | BX | ) | const [inline] |
Definition at line 141 of file CSCTriggerContainer.h.
References CSCTriggerContainer< T >::_objs, i, and HLT_VtxMuL3::result.
00142 { 00143 std::vector<T> result; 00144 00145 for(unsigned i = 0; i < _objs.size(); ++i) 00146 if(_objs[i].BX() == BX) result.push_back(_objs[i]); 00147 00148 return result; 00149 }
std::vector< T > CSCTriggerContainer< T >::get | ( | const unsigned & | endcap, | |
const unsigned & | sector | |||
) | const [inline] |
For objects which span multiple stations.
Definition at line 129 of file CSCTriggerContainer.h.
References CSCTriggerContainer< T >::_objs, GeomDetEnumerators::endcap, i, and HLT_VtxMuL3::result.
00130 { 00131 std::vector<T> result; 00132 00133 for(unsigned i = 0; i < _objs.size(); ++i) 00134 if(_objs[i].endcap() == endcap && _objs[i].sector() == sector) 00135 result.push_back(_objs[i]); 00136 00137 return result; 00138 }
std::vector< T > CSCTriggerContainer< T >::get | ( | const unsigned & | endcap, | |
const unsigned & | sector, | |||
const int & | BX | |||
) | const [inline] |
Definition at line 116 of file CSCTriggerContainer.h.
References CSCTriggerContainer< T >::_objs, GeomDetEnumerators::endcap, i, and HLT_VtxMuL3::result.
00118 { 00119 std::vector<T> result; 00120 00121 for(unsigned i = 0; i < _objs.size(); ++i) 00122 if(_objs[i].endcap() == endcap && _objs[i].sector() == sector && _objs[i].BX() == BX) 00123 result.push_back(_objs[i]); 00124 00125 return result; 00126 }
std::vector< T > CSCTriggerContainer< T >::get | ( | const unsigned & | endcap, | |
const unsigned & | station, | |||
const unsigned & | tsector, | |||
const unsigned & | tsubsector, | |||
const int & | BX | |||
) | const [inline] |
For a specific chamber.
in a station.
tsubsector | For a specific station in a sector. |
Definition at line 100 of file CSCTriggerContainer.h.
References CSCTriggerContainer< T >::_objs, GeomDetEnumerators::endcap, i, and HLT_VtxMuL3::result.
00103 { 00104 std::vector<T> result; 00105 00106 for(unsigned i = 0; i < _objs.size(); ++i) 00107 if(_objs[i].endcap() == endcap && _objs[i].station() == station && 00108 _objs[i].sector() == tsector && (station != 1 || _objs[i].subsector() == tsubsector) 00109 && _objs[i].BX() == BX) 00110 result.push_back(_objs[i]); 00111 00112 return result; 00113 }
std::vector< T > CSCTriggerContainer< T >::get | ( | const unsigned & | endcap, | |
const unsigned & | station, | |||
const unsigned & | tsector, | |||
const unsigned & | tsubsector, | |||
const unsigned & | cscid, | |||
const int & | BX | |||
) | const [inline] |
Definition at line 84 of file CSCTriggerContainer.h.
References CSCTriggerContainer< T >::_objs, GeomDetEnumerators::endcap, i, and HLT_VtxMuL3::result.
00087 { 00088 std::vector<T> result; 00089 00090 for(unsigned i = 0; i < _objs.size(); i++) 00091 if(_objs[i].endcap() == endcap && _objs[i].station() == station && 00092 _objs[i].sector() == tsector && (station != 1 || _objs[i].subsector() == tsubsector) && 00093 _objs[i].cscid() == cscid && _objs[i].BX() == BX) 00094 result.push_back(_objs[i]); 00095 00096 return result; 00097 }
std::vector< T > CSCTriggerContainer< T >::get | ( | void | ) | const [inline] |
Definition at line 78 of file CSCTriggerContainer.h.
References CSCTriggerContainer< T >::_objs.
Referenced by CSCTFTrackBuilder::buildTracks(), CSCTFSPCoreLogic::loadData(), CSCTriggerContainer< csc::L1Track >::push_many(), CSCTFSectorProcessor::run(), CSCTFMuonSorter::run(), and CSCMuonPortCard::sort().
00079 { 00080 return _objs; 00081 }
CSCTriggerContainer< T > & CSCTriggerContainer< T >::operator= | ( | const std::vector< T > & | rhs | ) | [inline] |
Definition at line 71 of file CSCTriggerContainer.h.
References CSCTriggerContainer< T >::_objs.
00072 { 00073 _objs = rhs; 00074 return *this; 00075 }
CSCTriggerContainer< T > & CSCTriggerContainer< T >::operator= | ( | const CSCTriggerContainer< T > & | rhs | ) | [inline] |
void CSCTriggerContainer< T >::push_back | ( | const T | data | ) | [inline] |
Definition at line 44 of file CSCTriggerContainer.h.
Referenced by CSCTFCandidateBuilder::buildCandidates(), CSCTFTrackBuilder::buildTracks(), CSCMuonPortCard::loadDigis(), CSCTFDTReceiver::process(), CSCTFSectorProcessor::run(), and CSCTFSPCoreLogic::run().
void CSCTriggerContainer< T >::push_many | ( | const CSCTriggerContainer< T > | data | ) | [inline] |
void CSCTriggerContainer< T >::push_many | ( | const std::vector< T > | data | ) | [inline] |
Definition at line 45 of file CSCTriggerContainer.h.
Referenced by CSCTFTrackBuilder::buildTracks(), and CSCTFSectorProcessor::run().
std::vector<T> CSCTriggerContainer< T >::_objs [private] |
Definition at line 51 of file CSCTriggerContainer.h.
Referenced by CSCTriggerContainer< csc::L1Track >::clear(), CSCTriggerContainer< csc::L1Track >::CSCTriggerContainer(), CSCTriggerContainer< T >::CSCTriggerContainer(), CSCTriggerContainer< T >::get(), CSCTriggerContainer< T >::operator=(), CSCTriggerContainer< csc::L1Track >::push_back(), and CSCTriggerContainer< csc::L1Track >::push_many().