50 l1t::RegionalMuonCand(),
53 m_addArray(), m_tsphiList(), m_tsetaList() {
67 l1t::RegionalMuonCand(),
68 m_spid(spid), m_name(
"L1MuBMTrack"), m_empty(
true),
70 m_addArray(), m_tsphiList(), m_tsetaList() {
83 l1t::RegionalMuonCand(id),
84 m_spid(id.m_spid), m_name(id.m_name), m_empty(id.m_empty),
86 m_addArray(id.m_addArray),
87 m_tsphiList(id.m_tsphiList), m_tsetaList(id.m_tsetaList) {}
173 if ( !tsList.empty() ) {
174 vector<const L1MuBMTrackSegPhi*>::const_iterator iter;
175 for ( iter = tsList.begin(); iter != tsList.end(); iter++ ) {
188 if ( !tsList.empty() ) {
189 vector<const L1MuBMTrackSegEta*>::const_iterator iter;
190 for ( iter = tsList.begin(); iter != tsList.end(); iter++ ) {
210 return (
unsigned int)0.5;
219 if (
this != &track ) {
242 if (
m_tc != track.
m_tc )
return false;
243 if (
bx() != track.
bx() )
return false;
244 if (
phi() != track.
phi() )
return false;
245 if (
eta() != track.
eta() )
return false;
247 if (
pt() != track.
pt() )
return false;
263 if (
m_tc != track.
m_tc )
return true;
264 if (
bx() != track.
bx() )
return true;
265 if (
phi() != track.
phi() )
return true;
266 if (
eta() != track.
eta() )
return true;
268 if (
pt() != track.
pt() )
return true;
283 cout.setf(ios::showpoint);
284 cout.setf(ios::right,ios::adjustfield);
285 cout << setiosflags(ios::showpoint | ios::fixed);
287 <<
"pt = " << setw(3) <<
hwPt() <<
" "
288 <<
"charge = " << setw(2) <<
hwSign() <<
" "
289 <<
"eta = " << setw(2) <<
hwEta()
291 <<
"phi = " << setw(3) <<
hwPhi() <<
" "
292 <<
"quality = " << setw(1) <<
hwQual() <<
'\t'
293 <<
"class = " <<
tc() <<
" "
294 <<
"bx = " << setw(2) <<
bx() << endl;
295 cout <<
" found in " <<
m_spid <<
" with phi track segments :" << endl;
296 vector<L1MuBMTrackSegPhi>::const_iterator iter;
298 cout <<
" " << (*iter) << endl;
311 s << setiosflags(ios::showpoint | ios::fixed)
312 <<
"pt = " << setw(3) <<
id.hwPt() <<
" "
313 <<
"charge = " << setw(2) <<
id.hwSign() <<
" "
314 <<
"eta = " << setw(2) <<
id.hwEta()
316 <<
"phi = " << setw(3) <<
id.hwPhi() <<
" "
317 <<
"quality = " << setw(1) <<
id.hwQual() <<
'\t'
318 <<
"bx = " << setw(2) <<
id.bx();
unsigned int pt() const
get pt-code (5 bits)
bool operator!=(const L1MuBMTrack &) const
unequal operator
L1MuBMTrack & operator=(const L1MuBMTrack &)
assignment operator
const L1MuBMTrackSegPhi & getStartTSphi() const
return start phi track segment of muon candidate
const L1MuBMTrackSegEta & getEndTSeta() const
return end eta track segment of muon candidate
std::ostream & operator<<(std::ostream &out, const ALILine &li)
std::vector< L1MuBMTrackSegEta > m_tsetaList
int charge() const
get charge (1 bit)
const int hwQual() const
Get quality code.
TrackClass tc() const
get track-class
unsigned int triggerScale(float value, const edm::EventSetup &c) const
convert pt value in GeV to pt code
void setTSeta(const std::vector< const L1MuBMTrackSegEta * > &tsList)
set eta track segments used to form the muon candidate
virtual ~L1MuBMTrack()
destructor
unsigned int phi() const
get phi-code (8 bits)
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
const int hwEta() const
Get compressed eta (returned int * 0.010875 = eta)
const int hwPhi() const
Get compressed local phi (returned int * 2*pi/576 = local phi in rad)
int bx() const
get the bunch crossing for this muon candidate
unsigned int quality() const
get quality
void setHwEta(int bits)
Set compressed eta as transmitted by hardware LSB = 0.010875 (9 bits)
void setTSphi(const std::vector< const L1MuBMTrackSegPhi * > &tsList)
set phi track segments used to form the muon candidate
void reset()
reset address array
void reset()
reset muon candidate
void setEta(int eta)
set eta-code of muon candidate
const L1MuBMTrackSegPhi & getEndTSphi() const
return end phi track segment of muon candidate
const int hwPt() const
Get compressed pT (returned int * 0.5 = pT (GeV))
const int hwSign() const
Get charge sign bit (charge = (-1)^(sign))
void setHwSignValid(int bits)
Set whether charge measurement is valid (0 for high pT muons)
bool operator==(const L1MuBMTrack &) const
equal operator
int eta() const
get eta-code (6 bits)
std::vector< L1MuBMTrackSegPhi > m_tsphiList
void print() const
print parameters of muon candidate
bool fineEtaBit() const
get fine eta bit
bool empty() const
is it an empty muon candidate?
const L1MuBMTrackSegEta & getStartTSeta() const
return start eta track segment of muon candidate
L1MuBMAddressArray m_addArray
L1MuBMTrack()
default constructor