50 l1t::RegionalMuonCand(),
52 m_name(
"L1MuBMTrack"),
68 l1t::RegionalMuonCand(),
70 m_name(
"L1MuBMTrack"),
85 l1t::RegionalMuonCand(
id),
90 m_addArray(
id.m_addArray),
91 m_tsphiList(
id.m_tsphiList),
92 m_tsetaList(
id.m_tsetaList) {}
148 if (!tsList.empty()) {
149 vector<const L1MuBMTrackSegPhi*>::const_iterator iter;
150 for (iter = tsList.begin(); iter != tsList.end(); iter++) {
161 if (!tsList.empty()) {
162 vector<const L1MuBMTrackSegEta*>::const_iterator iter;
163 for (iter = tsList.begin(); iter != tsList.end(); iter++) {
174 if (
this != &
track) {
251 cout.setf(ios::showpoint);
252 cout.setf(ios::right, ios::adjustfield);
255 <<
"pt = " << setw(3) <<
hwPt() <<
" " 256 <<
"charge = " << setw(2) <<
hwSign() <<
" " 257 <<
"eta = " << setw(2)
260 <<
"phi = " << setw(3) <<
hwPhi() <<
" " 261 <<
"quality = " << setw(1) <<
hwQual() <<
'\t' <<
"class = " <<
tc() <<
" " 262 <<
"bx = " << setw(2) <<
bx() << endl;
263 cout <<
" found in " <<
m_spid <<
" with phi track segments :" << endl;
264 vector<L1MuBMTrackSegPhi>::const_iterator iter;
266 cout <<
" " << (*iter) << endl;
276 s << setiosflags(ios::showpoint |
ios::fixed) <<
"pt = " << setw(3) <<
id.hwPt() <<
" " 277 <<
"charge = " << setw(2) <<
id.hwSign() <<
" " 278 <<
"eta = " << setw(2)
281 <<
"phi = " << setw(3) <<
id.hwPhi() <<
" " 282 <<
"quality = " << setw(1) <<
id.hwQual() <<
'\t' <<
"bx = " << setw(2) <<
id.bx();
const int hwPhi() const
Get compressed local phi (returned int * 2*pi/576 = local phi in rad)
ostream & operator<<(ostream &s, const L1MuBMTrack &id)
unsigned int pt() const
get pt-code (5 bits)
L1MuBMTrack & operator=(const L1MuBMTrack &)
assignment operator
TrackClass tc() const
get track-class
const L1MuBMTrackSegEta & getEndTSeta() const
return end eta track segment of muon candidate
const L1MuBMTrackSegPhi & getStartTSphi() const
return start phi track segment of muon candidate
bool operator==(const L1MuBMTrack &) const
equal operator
std::vector< L1MuBMTrackSegEta > m_tsetaList
const int hwPt() const
Get compressed pT (returned int * 0.5 = pT (GeV))
bool fineEtaBit() const
get fine eta bit
const int hwQual() const
Get quality code.
const int hwEta() const
Get compressed eta (returned int * 0.010875 = eta)
const L1MuBMTrackSegEta & getStartTSeta() const
return start eta track segment of muon candidate
unsigned int quality() const
get quality
int bx() const
get the bunch crossing for this muon candidate
int charge() const
get charge (1 bit)
void print() const
print parameters of muon candidate
void setTSphi(const std::vector< const L1MuBMTrackSegPhi *> &tsList)
set phi track segments used to form the muon candidate
void setHwHF(bool bit)
Set HF (halo / fine eta) bit (EMTF: halo -> 1; BMTF: fine eta -> 1)
void setBx(int bx)
set charge of muon candidate
void setTSeta(const std::vector< const L1MuBMTrackSegEta *> &tsList)
set eta track segments used to form the muon candidate
const int hwSign() const
Get charge sign bit (charge = (-1)^(sign))
void setHwEta(int bits)
Set compressed eta as transmitted by hardware LSB = 0.010875 (9 bits)
const L1MuBMTrackSegPhi & getEndTSphi() const
return end phi track segment of muon candidate
void reset()
reset address array
void reset()
reset muon candidate
void setEta(int eta)
set eta-code of muon candidate
void setHwSignValid(int bits)
Set whether charge measurement is valid (0 for high pT muons)
std::vector< L1MuBMTrackSegPhi > m_tsphiList
unsigned int phi() const
get phi-code (8 bits)
~L1MuBMTrack() override
destructor
bool empty() const
is it an empty muon candidate?
bool operator!=(const L1MuBMTrack &) const
unequal operator
int eta() const
get eta-code (6 bits)
L1MuBMAddressArray m_addArray
L1MuBMTrack()
default constructor