CMS 3D CMS Logo

List of all members | Public Member Functions | Static Public Member Functions | Private Attributes | Friends
csc::L1Track Class Reference

#include <L1Track.h>

Inheritance diagram for csc::L1Track:
L1MuRegionalCand

Public Member Functions

unsigned addressEta (void) const
 
bool bc0 (void) const
 
int BX () const
 
bool bx0 (void) const
 
unsigned cscid () const
 
unsigned deltaPhi12 (void) const
 
unsigned deltaPhi23 (void) const
 
unsigned endcap () const
 
unsigned front_rear () const
 
 L1Track ()
 
 L1Track (const csc::L1TrackId &)
 
 L1Track (const csc::L1Track &)
 
unsigned localPhi () const
 
unsigned mb1ID () const
 
unsigned mb1Tbin (void) const
 
unsigned me1ID () const
 
unsigned me1Tbin (void) const
 
unsigned me2ID () const
 
unsigned me2Tbin (void) const
 
unsigned me3ID () const
 
unsigned me3Tbin (void) const
 
unsigned me4ID () const
 
unsigned me4Tbin (void) const
 
unsigned mode (void) const
 
unsigned modeExtended (void) const
 
bool operator!= (const csc::L1Track &) const
 
bool operator< (const csc::L1Track &) const
 
bool operator<= (const csc::L1Track &) const
 
const csc::L1Trackoperator= (const csc::L1Track &)
 
bool operator== (const csc::L1Track &) const
 
bool operator> (const csc::L1Track &) const
 
bool operator>= (const csc::L1Track &) const
 
unsigned outputLink () const
 
void Print () const
 
unsigned ptLUTAddress () const
 
unsigned rank () const
 
unsigned sector () const
 
void set_front_rear (unsigned fr)
 
void setBits (unsigned se, unsigned bx0, unsigned bc0)
 
void setLocalPhi (const unsigned &lphi)
 
void setOutputLink (unsigned oPL)
 
void setPtLUTAddress (const unsigned &adr)
 
void setRank (const unsigned &rank)
 
void setStationIds (const unsigned &me1, const unsigned &me2, const unsigned &me3, const unsigned &me4, const unsigned &mb1)
 
void setTbins (unsigned me1, unsigned me2, unsigned me3, unsigned me4, unsigned mb)
 
bool sign (void) const
 
unsigned station () const
 
unsigned subsector () const
 
bool synch_err (void) const
 
bool winner () const
 
 ~L1Track () override
 
- Public Member Functions inherited from L1MuRegionalCand
int bx () const
 return bunch crossing identifier More...
 
unsigned charge_packed () const
 return charge packed as in hardware (0=pos, 1=neg) More...
 
unsigned charge_valid_packed () const
 return charge valid packed as in hardware (1=valid, 0=not valid) More...
 
bool chargeValid () const
 is the charge valid ? More...
 
int chargeValue () const
 get charge More...
 
virtual bool empty () const
 return empty flag More...
 
unsigned eta_packed () const
 return eta packed as in hardware More...
 
float etaValue () const
 get eta-value of muon candidate More...
 
unsigned finehalo_packed () const
 return eta-fine (for DT) / halo (for CSC) bit More...
 
unsigned getDataWord () const
 return data word More...
 
bool isFineHalo () const
 is it fine (DT) / halo (CSC) ? More...
 
 L1MuRegionalCand (unsigned dataword=0, int bx=0)
 constructor from data word More...
 
 L1MuRegionalCand (unsigned type_idx, unsigned phi, unsigned eta, unsigned pt, unsigned charge, unsigned ch_valid, unsigned finehalo, unsigned quality, int bx)
 constructor from packed members More...
 
unsigned phi_packed () const
 return phi packed as in hardware More...
 
float phiValue () const
 get phi-value of muon candidate in radians (low edge of bin) More...
 
virtual void print () const
 print candidate More...
 
unsigned pt_packed () const
 return pt packed as in hardware More...
 
float ptValue () const
 get pt-value of muon candidate in GeV More...
 
unsigned int quality () const
 return quality More...
 
unsigned int quality_packed () const
 return quality packed as in hardware More...
 
virtual void reset ()
 reset More...
 
void setBx (int bx)
 Set Bunch Crossing. More...
 
void setChargePacked (unsigned ch)
 Set Charge (0=pos, 1=neg) More...
 
void setChargeValid (bool valid)
 Set Charge Valid. More...
 
void setChargeValidPacked (unsigned valid)
 Set Charge Valid. More...
 
void setChargeValue (int charge)
 Set Charge Value: -1, 1. More...
 
void setDataWord (unsigned dataword)
 Set data word. More...
 
void setEtaPacked (unsigned eta)
 Set Eta: 6-bit code. More...
 
void setEtaValue (float etaVal)
 Set Eta Value (need to set type, first) More...
 
void setFineHalo (bool fh)
 Set Fine / Halo. More...
 
void setFineHaloPacked (unsigned fh)
 Set Fine / Halo. More...
 
void setPhiPacked (unsigned phi)
 Set Phi: 0..143. More...
 
void setPhiValue (float phiVal)
 Set Phi Value. More...
 
void setPtPacked (unsigned pt)
 Set Pt: 0..31. More...
 
void setPtValue (float ptVal)
 Set Pt Value. More...
 
void setQualityPacked (unsigned qual)
 Set Quality: 0..7. More...
 
void setType (unsigned type)
 Set Type: 0 DT, 1 bRPC, 2 CSC, 3 fRPC. More...
 
unsigned type_idx () const
 return type: 0 DT, 1 bRPC, 2 CSC, 3 fRPC More...
 
virtual ~L1MuRegionalCand ()
 destructor More...
 

Static Public Member Functions

static void decodeRank (const unsigned &rank, unsigned &pt, unsigned &quality)
 
static unsigned encodeRank (const unsigned &pt, const unsigned &quality)
 

Private Attributes

bool m_bc0
 
bool m_bx0
 
bool m_empty
 
unsigned m_endcap
 
unsigned m_fr
 
unsigned m_lphi
 
unsigned m_mbTbin
 
unsigned m_me1Tbin
 
unsigned m_me2Tbin
 
unsigned m_me3Tbin
 
unsigned m_me4Tbin
 
std::string m_name
 
unsigned m_output_link
 
unsigned m_ptAddress
 
unsigned m_rank
 
bool m_se
 
unsigned m_sector
 
bool m_winner
 
unsigned mb1_id
 
unsigned me1_id
 
unsigned me2_id
 
unsigned me3_id
 
unsigned me4_id
 

Friends

class ::CSCTFSPCoreLogic
 
class ::CSCTFUnpacker
 
class CSCTFSectorProcessor
 

Additional Inherited Members

- Public Types inherited from L1MuRegionalCand
enum  { PHI_START = 0 }
 
enum  { PHI_LENGTH = 8 }
 
enum  { PT_START = 8 }
 
enum  { PT_LENGTH = 5 }
 
enum  { QUAL_START = 13 }
 
enum  { QUAL_LENGTH = 3 }
 
enum  { ETA_START = 16 }
 
enum  { ETA_LENGTH = 6 }
 
enum  { FINEHALO_START = 22 }
 
enum  { FINEHALO_LENGTH = 1 }
 
enum  { CHARGE_START = 23 }
 
enum  { CHARGE_LENGTH = 1 }
 
enum  { CHVALID_START = 24 }
 
enum  { CHVALID_LENGTH = 1 }
 
enum  { TYPE_START = 30 }
 
enum  { TYPE_LENGTH = 2 }
 

Detailed Description

Definition at line 21 of file L1Track.h.

Constructor & Destructor Documentation

csc::L1Track::L1Track ( )
inline

Definition at line 23 of file L1Track.h.

References operator=(), rank(), L1MuRegionalCand::setPtPacked(), L1MuRegionalCand::setType(), and ~L1Track().

23  : L1MuRegionalCand(), m_name("csc::L1Track") {
24  setType(2);
25  setPtPacked(0);
26  }
std::string m_name
Definition: L1Track.h:118
L1MuRegionalCand(unsigned dataword=0, int bx=0)
constructor from data word
void setType(unsigned type)
Set Type: 0 DT, 1 bRPC, 2 CSC, 3 fRPC.
void setPtPacked(unsigned pt)
Set Pt: 0..31.
L1Track::L1Track ( const csc::L1TrackId id)

Definition at line 6 of file L1Track.cc.

References m_bc0, m_bx0, m_empty, m_endcap, m_fr, m_lphi, m_mbTbin, m_me1Tbin, m_me2Tbin, m_me3Tbin, m_me4Tbin, m_output_link, m_ptAddress, m_rank, m_se, m_sector, m_winner, mb1_id, me1_id, me2_id, me3_id, me4_id, L1MuRegionalCand::setPtPacked(), and L1MuRegionalCand::setType().

6  : m_name("csc::L1Track") {
7  m_endcap = id.endcap();
8  m_sector = id.sector();
9  m_lphi = 0;
10  m_ptAddress = 0;
11  m_empty = true;
12  setType(2);
13  setPtPacked(0);
14  m_rank = 0;
15  me1_id = 0;
16  me2_id = 0;
17  me3_id = 0;
18  me4_id = 0;
19  mb1_id = 0;
20  m_me1Tbin = 0;
21  m_me2Tbin = 0;
22  m_me3Tbin = 0;
23  m_me4Tbin = 0;
24  m_mbTbin = 0;
25  m_output_link = 0;
26  m_winner = false;
27  m_fr = 0;
28  m_se = true;
29  m_bx0 = true;
30  m_bc0 = true;
31  }
unsigned m_me2Tbin
Definition: L1Track.h:133
std::string m_name
Definition: L1Track.h:118
unsigned m_ptAddress
Definition: L1Track.h:123
bool m_bc0
Definition: L1Track.h:132
unsigned m_me3Tbin
Definition: L1Track.h:133
unsigned me3_id
Definition: L1Track.h:125
bool m_se
Definition: L1Track.h:132
unsigned m_mbTbin
Definition: L1Track.h:133
unsigned mb1_id
Definition: L1Track.h:125
unsigned m_me1Tbin
Definition: L1Track.h:133
unsigned me2_id
Definition: L1Track.h:125
unsigned me1_id
Definition: L1Track.h:125
unsigned m_sector
Definition: L1Track.h:120
unsigned m_output_link
Definition: L1Track.h:127
unsigned m_me4Tbin
Definition: L1Track.h:133
unsigned m_rank
Definition: L1Track.h:126
void setType(unsigned type)
Set Type: 0 DT, 1 bRPC, 2 CSC, 3 fRPC.
unsigned m_fr
Definition: L1Track.h:124
void setPtPacked(unsigned pt)
Set Pt: 0..31.
unsigned m_lphi
Definition: L1Track.h:122
unsigned me4_id
Definition: L1Track.h:125
bool m_bx0
Definition: L1Track.h:132
unsigned m_endcap
Definition: L1Track.h:120
bool m_winner
Definition: L1Track.h:129
bool m_empty
Definition: L1Track.h:128
L1Track::L1Track ( const csc::L1Track rhs)

Definition at line 33 of file L1Track.cc.

References L1MuRegionalCand::bx(), L1MuRegionalCand::charge_packed(), L1MuRegionalCand::charge_valid_packed(), L1MuRegionalCand::eta_packed(), L1MuRegionalCand::finehalo_packed(), L1MuRegionalCand::getDataWord(), m_bc0, m_bx0, m_empty, m_endcap, m_fr, m_lphi, m_mbTbin, m_me1Tbin, m_me2Tbin, m_me3Tbin, m_me4Tbin, m_name, m_output_link, m_ptAddress, m_rank, m_se, m_sector, m_winner, mb1_id, me1_id, me2_id, me3_id, me4_id, L1MuRegionalCand::phi_packed(), L1MuRegionalCand::pt_packed(), L1MuRegionalCand::quality_packed(), L1MuRegionalCand::setBx(), L1MuRegionalCand::setChargePacked(), L1MuRegionalCand::setChargeValidPacked(), L1MuRegionalCand::setDataWord(), L1MuRegionalCand::setEtaPacked(), L1MuRegionalCand::setFineHaloPacked(), L1MuRegionalCand::setPhiPacked(), L1MuRegionalCand::setPtPacked(), L1MuRegionalCand::setQualityPacked(), L1MuRegionalCand::setType(), and L1MuRegionalCand::type_idx().

34  : L1MuRegionalCand(rhs.type_idx(),
35  rhs.phi_packed(),
36  rhs.eta_packed(),
37  rhs.pt_packed(),
38  rhs.charge_packed(),
39  rhs.charge_valid_packed(),
40  rhs.finehalo_packed(),
41  rhs.quality_packed(),
42  rhs.bx()),
43  m_name(rhs.m_name) {
44  this->setBx(rhs.bx());
45  this->setDataWord(rhs.getDataWord());
46  m_name = rhs.m_name;
47  this->setType(rhs.type_idx());
48  this->setPhiPacked(rhs.phi_packed());
49  this->setEtaPacked(rhs.eta_packed());
50  this->setPtPacked(rhs.pt_packed());
51  this->setChargePacked(rhs.charge_packed());
54  this->setQualityPacked(rhs.quality_packed());
55  m_empty = rhs.m_empty;
56  m_lphi = rhs.m_lphi;
57  m_endcap = rhs.m_endcap;
58  m_sector = rhs.m_sector;
60  m_rank = rhs.m_rank;
61  me1_id = rhs.me1_id;
62  me2_id = rhs.me2_id;
63  me3_id = rhs.me3_id;
64  me4_id = rhs.me4_id;
65  mb1_id = rhs.mb1_id;
66  m_me1Tbin = rhs.m_me1Tbin;
67  m_me2Tbin = rhs.m_me2Tbin;
68  m_me3Tbin = rhs.m_me3Tbin;
69  m_me4Tbin = rhs.m_me4Tbin;
70  m_mbTbin = rhs.m_mbTbin;
72  m_winner = rhs.m_winner;
73  m_fr = rhs.m_fr;
74  m_se = rhs.m_se;
75  m_bx0 = rhs.m_bx0;
76  m_bc0 = rhs.m_bc0;
77  }
unsigned m_me2Tbin
Definition: L1Track.h:133
unsigned charge_valid_packed() const
return charge valid packed as in hardware (1=valid, 0=not valid)
std::string m_name
Definition: L1Track.h:118
unsigned m_ptAddress
Definition: L1Track.h:123
bool m_bc0
Definition: L1Track.h:132
unsigned m_me3Tbin
Definition: L1Track.h:133
unsigned charge_packed() const
return charge packed as in hardware (0=pos, 1=neg)
unsigned me3_id
Definition: L1Track.h:125
bool m_se
Definition: L1Track.h:132
L1MuRegionalCand(unsigned dataword=0, int bx=0)
constructor from data word
unsigned m_mbTbin
Definition: L1Track.h:133
unsigned mb1_id
Definition: L1Track.h:125
void setChargeValidPacked(unsigned valid)
Set Charge Valid.
void setBx(int bx)
Set Bunch Crossing.
unsigned m_me1Tbin
Definition: L1Track.h:133
unsigned me2_id
Definition: L1Track.h:125
unsigned me1_id
Definition: L1Track.h:125
unsigned m_sector
Definition: L1Track.h:120
void setDataWord(unsigned dataword)
Set data word.
unsigned getDataWord() const
return data word
unsigned m_output_link
Definition: L1Track.h:127
unsigned m_me4Tbin
Definition: L1Track.h:133
unsigned m_rank
Definition: L1Track.h:126
unsigned eta_packed() const
return eta packed as in hardware
void setType(unsigned type)
Set Type: 0 DT, 1 bRPC, 2 CSC, 3 fRPC.
unsigned finehalo_packed() const
return eta-fine (for DT) / halo (for CSC) bit
void setChargePacked(unsigned ch)
Set Charge (0=pos, 1=neg)
unsigned m_fr
Definition: L1Track.h:124
void setPtPacked(unsigned pt)
Set Pt: 0..31.
unsigned m_lphi
Definition: L1Track.h:122
unsigned me4_id
Definition: L1Track.h:125
void setPhiPacked(unsigned phi)
Set Phi: 0..143.
bool m_bx0
Definition: L1Track.h:132
unsigned int quality_packed() const
return quality packed as in hardware
int bx() const
return bunch crossing identifier
void setQualityPacked(unsigned qual)
Set Quality: 0..7.
void setEtaPacked(unsigned eta)
Set Eta: 6-bit code.
void setFineHaloPacked(unsigned fh)
Set Fine / Halo.
unsigned m_endcap
Definition: L1Track.h:120
unsigned pt_packed() const
return pt packed as in hardware
unsigned type_idx() const
return type: 0 DT, 1 bRPC, 2 CSC, 3 fRPC
bool m_winner
Definition: L1Track.h:129
bool m_empty
Definition: L1Track.h:128
unsigned phi_packed() const
return phi packed as in hardware
L1Track::~L1Track ( )
override

Definition at line 79 of file L1Track.cc.

Referenced by L1Track().

79 {}

Member Function Documentation

unsigned csc::L1Track::addressEta ( void  ) const
inline

Definition at line 89 of file L1Track.h.

References m_ptAddress.

89 { return (m_ptAddress >> 12) & 0xF; }
unsigned m_ptAddress
Definition: L1Track.h:123
bool csc::L1Track::bc0 ( void  ) const
inline

Definition at line 94 of file L1Track.h.

References m_bc0.

Referenced by setBits().

94 { return m_bc0; }
bool m_bc0
Definition: L1Track.h:132
int csc::L1Track::BX ( ) const
inline

Definition at line 53 of file L1Track.h.

References L1MuRegionalCand::bx(), decodeRank(), encodeRank(), DiDispStaMuonMonitor_cfi::pt, and L1MuRegionalCand::quality().

Referenced by CSCTFanalyzer::analyze(), and Print().

53 { return bx(); }
int bx() const
return bunch crossing identifier
bool csc::L1Track::bx0 ( void  ) const
inline

Definition at line 93 of file L1Track.h.

References m_bx0.

Referenced by setBits().

93 { return m_bx0; }
bool m_bx0
Definition: L1Track.h:132
unsigned csc::L1Track::cscid ( ) const
inline

Definition at line 51 of file L1Track.h.

51 { return 0; }
void L1Track::decodeRank ( const unsigned &  rank,
unsigned &  pt,
unsigned &  quality 
)
static

Definition at line 137 of file L1Track.cc.

References L1MuRegionalCand::PT_LENGTH.

Referenced by BX().

137  {
138  if (rank == 0) {
139  quality = 0;
140  pt = 0;
141  } else {
143  pt = rank & ((1 << L1MuRegionalCand::PT_LENGTH) - 1);
144  }
145  }
unsigned rank() const
Definition: L1Track.cc:120
unsigned int quality() const
return quality
unsigned csc::L1Track::deltaPhi12 ( void  ) const
inline

Definition at line 87 of file L1Track.h.

References m_ptAddress.

87 { return m_ptAddress & 0xFF; }
unsigned m_ptAddress
Definition: L1Track.h:123
unsigned csc::L1Track::deltaPhi23 ( void  ) const
inline

Definition at line 88 of file L1Track.h.

References m_ptAddress.

88 { return (m_ptAddress >> 8) & 0xF; }
unsigned m_ptAddress
Definition: L1Track.h:123
unsigned L1Track::encodeRank ( const unsigned &  pt,
const unsigned &  quality 
)
static

Definition at line 131 of file L1Track.cc.

References L1MuRegionalCand::PT_LENGTH.

Referenced by BX().

131  {
132  if (pt == 0)
133  return 0;
134  return pt | (quality << L1MuRegionalCand::PT_LENGTH);
135  }
unsigned int quality() const
return quality
unsigned csc::L1Track::endcap ( ) const
inline

Definition at line 46 of file L1Track.h.

References m_endcap.

Referenced by CSCTFanalyzer::analyze(), geometryXMLparser.CSCAlignable::index(), and Print().

46 { return m_endcap; }
unsigned m_endcap
Definition: L1Track.h:120
unsigned csc::L1Track::front_rear ( ) const
inline

Definition at line 59 of file L1Track.h.

References m_fr.

59 { return m_fr; }
unsigned m_fr
Definition: L1Track.h:124
unsigned csc::L1Track::localPhi ( ) const
inline

Definition at line 37 of file L1Track.h.

References m_lphi.

Referenced by CSCTFanalyzer::analyze().

37 { return m_lphi; }
unsigned m_lphi
Definition: L1Track.h:122
unsigned csc::L1Track::mb1ID ( ) const
inline

Definition at line 44 of file L1Track.h.

References mb1_id.

Referenced by CSCTFanalyzer::analyze().

44 { return mb1_id; }
unsigned mb1_id
Definition: L1Track.h:125
unsigned csc::L1Track::mb1Tbin ( void  ) const
inline

Definition at line 99 of file L1Track.h.

References m_mbTbin.

99 { return m_mbTbin; }
unsigned m_mbTbin
Definition: L1Track.h:133
unsigned csc::L1Track::me1ID ( ) const
inline

Definition at line 40 of file L1Track.h.

References me1_id.

Referenced by CSCTFanalyzer::analyze().

40 { return me1_id; }
unsigned me1_id
Definition: L1Track.h:125
unsigned csc::L1Track::me1Tbin ( void  ) const
inline

Definition at line 95 of file L1Track.h.

References m_me1Tbin.

95 { return m_me1Tbin; }
unsigned m_me1Tbin
Definition: L1Track.h:133
unsigned csc::L1Track::me2ID ( ) const
inline

Definition at line 41 of file L1Track.h.

References me2_id.

Referenced by CSCTFanalyzer::analyze().

41 { return me2_id; }
unsigned me2_id
Definition: L1Track.h:125
unsigned csc::L1Track::me2Tbin ( void  ) const
inline

Definition at line 96 of file L1Track.h.

References m_me2Tbin.

96 { return m_me2Tbin; }
unsigned m_me2Tbin
Definition: L1Track.h:133
unsigned csc::L1Track::me3ID ( ) const
inline

Definition at line 42 of file L1Track.h.

References me3_id.

Referenced by CSCTFanalyzer::analyze().

42 { return me3_id; }
unsigned me3_id
Definition: L1Track.h:125
unsigned csc::L1Track::me3Tbin ( void  ) const
inline

Definition at line 97 of file L1Track.h.

References m_me3Tbin.

97 { return m_me3Tbin; }
unsigned m_me3Tbin
Definition: L1Track.h:133
unsigned csc::L1Track::me4ID ( ) const
inline

Definition at line 43 of file L1Track.h.

References me4_id.

Referenced by CSCTFanalyzer::analyze().

43 { return me4_id; }
unsigned me4_id
Definition: L1Track.h:125
unsigned csc::L1Track::me4Tbin ( void  ) const
inline

Definition at line 98 of file L1Track.h.

References m_me4Tbin.

98 { return m_me4Tbin; }
unsigned m_me4Tbin
Definition: L1Track.h:133
unsigned csc::L1Track::mode ( void  ) const
inline

Definition at line 90 of file L1Track.h.

References m_ptAddress.

Referenced by CSCTFanalyzer::analyze(), and modeExtended().

90 { return (m_ptAddress >> 16) & 0xF; }
unsigned m_ptAddress
Definition: L1Track.h:123
unsigned L1Track::modeExtended ( void  ) const

Definition at line 188 of file L1Track.cc.

References m_ptAddress, mode(), and testProducerWithPsetDescEmpty_cfi::x1.

Referenced by setTbins().

188  {
189  unsigned modeExt = mode();
190  unsigned fr = (m_ptAddress >> 21) & 0x1;
191 
192  if (modeExt == 11 && fr == 1)
193  modeExt = 17;
194  else if (modeExt == 12 && fr == 1)
195  modeExt = 18;
196  else if (modeExt == 14 && fr == 1)
197  modeExt = 16;
198  return modeExt;
199  }
unsigned mode(void) const
Definition: L1Track.h:90
unsigned m_ptAddress
Definition: L1Track.h:123
bool L1Track::operator!= ( const csc::L1Track rhs) const

Definition at line 157 of file L1Track.cc.

References rank().

Referenced by winner().

157 { return (rank() != rhs.rank()); }
unsigned rank() const
Definition: L1Track.cc:120
bool L1Track::operator< ( const csc::L1Track rhs) const

Definition at line 149 of file L1Track.cc.

References rank().

Referenced by winner().

149 { return (rank() < rhs.rank()); }
unsigned rank() const
Definition: L1Track.cc:120
bool L1Track::operator<= ( const csc::L1Track rhs) const

Definition at line 153 of file L1Track.cc.

References rank().

Referenced by winner().

153 { return (rank() <= rhs.rank()); }
unsigned rank() const
Definition: L1Track.cc:120
const csc::L1Track & L1Track::operator= ( const csc::L1Track rhs)

Definition at line 81 of file L1Track.cc.

References L1MuRegionalCand::bx(), L1MuRegionalCand::charge_packed(), L1MuRegionalCand::charge_valid_packed(), L1MuRegionalCand::eta_packed(), L1MuRegionalCand::finehalo_packed(), L1MuRegionalCand::getDataWord(), m_bc0, m_bx0, m_empty, m_endcap, m_fr, m_lphi, m_mbTbin, m_me1Tbin, m_me2Tbin, m_me3Tbin, m_me4Tbin, m_name, m_output_link, m_ptAddress, m_rank, m_se, m_sector, m_winner, mb1_id, me1_id, me2_id, me3_id, me4_id, L1MuRegionalCand::phi_packed(), L1MuRegionalCand::pt_packed(), L1MuRegionalCand::quality_packed(), L1MuRegionalCand::setBx(), L1MuRegionalCand::setChargePacked(), L1MuRegionalCand::setChargeValidPacked(), L1MuRegionalCand::setDataWord(), L1MuRegionalCand::setEtaPacked(), L1MuRegionalCand::setFineHaloPacked(), L1MuRegionalCand::setPhiPacked(), L1MuRegionalCand::setPtPacked(), L1MuRegionalCand::setQualityPacked(), L1MuRegionalCand::setType(), and L1MuRegionalCand::type_idx().

Referenced by L1Track().

81  {
82  if (this != &rhs) {
83  m_fr = rhs.m_fr;
84  m_se = rhs.m_se;
85  m_bx0 = rhs.m_bx0;
86  m_bc0 = rhs.m_bc0;
87  m_empty = rhs.m_empty;
88  this->setBx(rhs.bx());
89  this->setDataWord(rhs.getDataWord());
90  m_name = rhs.m_name;
91  m_lphi = rhs.m_lphi;
92  this->setType(rhs.type_idx());
93  this->setPhiPacked(rhs.phi_packed());
94  this->setEtaPacked(rhs.eta_packed());
95  this->setPtPacked(rhs.pt_packed());
96  this->setChargePacked(rhs.charge_packed());
99  this->setQualityPacked(rhs.quality_packed());
100  m_endcap = rhs.m_endcap;
101  m_sector = rhs.m_sector;
102  m_ptAddress = rhs.m_ptAddress;
103  m_rank = rhs.m_rank;
104  me1_id = rhs.me1_id;
105  me2_id = rhs.me2_id;
106  me3_id = rhs.me3_id;
107  me4_id = rhs.me4_id;
108  mb1_id = rhs.mb1_id;
109  m_me1Tbin = rhs.m_me1Tbin;
110  m_me2Tbin = rhs.m_me2Tbin;
111  m_me3Tbin = rhs.m_me3Tbin;
112  m_me4Tbin = rhs.m_me4Tbin;
113  m_mbTbin = rhs.m_mbTbin;
115  m_winner = rhs.m_winner;
116  }
117  return *this;
118  }
unsigned m_me2Tbin
Definition: L1Track.h:133
unsigned charge_valid_packed() const
return charge valid packed as in hardware (1=valid, 0=not valid)
std::string m_name
Definition: L1Track.h:118
unsigned m_ptAddress
Definition: L1Track.h:123
bool m_bc0
Definition: L1Track.h:132
unsigned m_me3Tbin
Definition: L1Track.h:133
unsigned charge_packed() const
return charge packed as in hardware (0=pos, 1=neg)
unsigned me3_id
Definition: L1Track.h:125
bool m_se
Definition: L1Track.h:132
unsigned m_mbTbin
Definition: L1Track.h:133
unsigned mb1_id
Definition: L1Track.h:125
void setChargeValidPacked(unsigned valid)
Set Charge Valid.
void setBx(int bx)
Set Bunch Crossing.
unsigned m_me1Tbin
Definition: L1Track.h:133
unsigned me2_id
Definition: L1Track.h:125
unsigned me1_id
Definition: L1Track.h:125
unsigned m_sector
Definition: L1Track.h:120
void setDataWord(unsigned dataword)
Set data word.
unsigned getDataWord() const
return data word
unsigned m_output_link
Definition: L1Track.h:127
unsigned m_me4Tbin
Definition: L1Track.h:133
unsigned m_rank
Definition: L1Track.h:126
unsigned eta_packed() const
return eta packed as in hardware
void setType(unsigned type)
Set Type: 0 DT, 1 bRPC, 2 CSC, 3 fRPC.
unsigned finehalo_packed() const
return eta-fine (for DT) / halo (for CSC) bit
void setChargePacked(unsigned ch)
Set Charge (0=pos, 1=neg)
unsigned m_fr
Definition: L1Track.h:124
void setPtPacked(unsigned pt)
Set Pt: 0..31.
unsigned m_lphi
Definition: L1Track.h:122
unsigned me4_id
Definition: L1Track.h:125
void setPhiPacked(unsigned phi)
Set Phi: 0..143.
bool m_bx0
Definition: L1Track.h:132
unsigned int quality_packed() const
return quality packed as in hardware
int bx() const
return bunch crossing identifier
void setQualityPacked(unsigned qual)
Set Quality: 0..7.
void setEtaPacked(unsigned eta)
Set Eta: 6-bit code.
void setFineHaloPacked(unsigned fh)
Set Fine / Halo.
unsigned m_endcap
Definition: L1Track.h:120
unsigned pt_packed() const
return pt packed as in hardware
unsigned type_idx() const
return type: 0 DT, 1 bRPC, 2 CSC, 3 fRPC
bool m_winner
Definition: L1Track.h:129
bool m_empty
Definition: L1Track.h:128
unsigned phi_packed() const
return phi packed as in hardware
bool L1Track::operator== ( const csc::L1Track rhs) const

Definition at line 155 of file L1Track.cc.

References rank().

Referenced by winner().

155 { return (rank() == rhs.rank()); }
unsigned rank() const
Definition: L1Track.cc:120
bool L1Track::operator> ( const csc::L1Track rhs) const

Definition at line 147 of file L1Track.cc.

References rank().

Referenced by winner().

147 { return (rank() > rhs.rank()); }
unsigned rank() const
Definition: L1Track.cc:120
bool L1Track::operator>= ( const csc::L1Track rhs) const

Definition at line 151 of file L1Track.cc.

References rank().

Referenced by winner().

151 { return (rank() >= rhs.rank()); }
unsigned rank() const
Definition: L1Track.cc:120
unsigned csc::L1Track::outputLink ( ) const
inline

Definition at line 63 of file L1Track.h.

References m_output_link.

Referenced by CSCTFanalyzer::analyze().

63 { return m_output_link; }
unsigned m_output_link
Definition: L1Track.h:127
void L1Track::Print ( void  ) const

Definition at line 159 of file L1Track.cc.

References BX(), L1MuRegionalCand::charge_packed(), gather_cfg::cout, L1MuRegionalCand::empty(), endcap(), L1MuRegionalCand::eta_packed(), L1MuRegionalCand::phi_packed(), L1MuRegionalCand::pt_packed(), L1MuRegionalCand::quality_packed(), and winner().

159  {
160  if (!empty()) {
161  std::cout << "\t Pt(int): "
162  << " " << pt_packed() << " Phi(int): "
163  << " " << phi_packed() << " Eta(int): "
164  << " " << eta_packed() << " Quality: "
165  << " " << quality_packed() << " charge: "
166  << " " << charge_packed() << " side: "
167  << " " << endcap() << " bx: "
168  << " " << BX() << " Winner: "
169  << " " << winner() << std::endl;
170  } else {
171  std::cout << "\t Empty track!\n";
172  std::cout << "\t Pt(int): "
173  << " "
174  << "unassigned or zero"
175  << " Phi(int): "
176  << " " << phi_packed() << " Eta(int): "
177  << " " << eta_packed() << " Quality: "
178  << " "
179  << "unassigned or zero"
180  << " charge: "
181  << " " << charge_packed() << " side: "
182  << " " << endcap() << " bx: "
183  << " " << BX() << " Winner: "
184  << " " << winner() << std::endl;
185  }
186  }
virtual bool empty() const
return empty flag
unsigned charge_packed() const
return charge packed as in hardware (0=pos, 1=neg)
unsigned eta_packed() const
return eta packed as in hardware
bool winner() const
Definition: L1Track.h:65
unsigned int quality_packed() const
return quality packed as in hardware
unsigned endcap() const
Definition: L1Track.h:46
unsigned pt_packed() const
return pt packed as in hardware
int BX() const
Definition: L1Track.h:53
unsigned phi_packed() const
return phi packed as in hardware
unsigned csc::L1Track::ptLUTAddress ( ) const
inline

Definition at line 58 of file L1Track.h.

References m_ptAddress.

Referenced by CSCTFanalyzer::analyze(), and CSCTFSectorProcessor::run().

58 { return m_ptAddress; }
unsigned m_ptAddress
Definition: L1Track.h:123
unsigned L1Track::rank ( ) const

Definition at line 120 of file L1Track.cc.

References m_rank.

Referenced by CSCTFanalyzer::analyze(), L1Track(), operator!=(), operator<(), operator<=(), operator==(), operator>(), operator>=(), and setRank().

120 { return m_rank; }
unsigned m_rank
Definition: L1Track.h:126
unsigned csc::L1Track::sector ( ) const
inline

Definition at line 47 of file L1Track.h.

References m_sector.

Referenced by CSCTFanalyzer::analyze(), and geometryXMLparser.DTAlignable::index().

47 { return m_sector; }
unsigned m_sector
Definition: L1Track.h:120
void csc::L1Track::set_front_rear ( unsigned  fr)
inline

Definition at line 61 of file L1Track.h.

References m_fr.

61 { m_fr = fr; }
unsigned m_fr
Definition: L1Track.h:124
void csc::L1Track::setBits ( unsigned  se,
unsigned  bx0,
unsigned  bc0 
)
inline

Definition at line 100 of file L1Track.h.

References bc0(), bx0(), m_bc0, m_bx0, and m_se.

100  {
101  m_se = se;
102  m_bx0 = bx0;
103  m_bc0 = bc0;
104  }
bool bx0(void) const
Definition: L1Track.h:93
bool m_bc0
Definition: L1Track.h:132
bool bc0(void) const
Definition: L1Track.h:94
bool m_se
Definition: L1Track.h:132
bool m_bx0
Definition: L1Track.h:132
void csc::L1Track::setLocalPhi ( const unsigned &  lphi)
inline

Definition at line 38 of file L1Track.h.

References m_lphi.

Referenced by CSCTFSectorProcessor::run(), and CSCTFSPCoreLogic::run().

38 { m_lphi = lphi; }
unsigned m_lphi
Definition: L1Track.h:122
void csc::L1Track::setOutputLink ( unsigned  oPL)
inline

Definition at line 64 of file L1Track.h.

References m_output_link.

Referenced by CSCTFanalyzer::analyze(), CSCTFSectorProcessor::run(), and CSCTFSPCoreLogic::run().

64 { m_output_link = oPL; }
unsigned m_output_link
Definition: L1Track.h:127
void csc::L1Track::setPtLUTAddress ( const unsigned &  adr)
inline

Definition at line 60 of file L1Track.h.

References m_ptAddress.

Referenced by CSCTFSectorProcessor::run(), and CSCTFSPCoreLogic::run().

60 { m_ptAddress = adr; }
unsigned m_ptAddress
Definition: L1Track.h:123
void csc::L1Track::setRank ( const unsigned &  rank)
inline

Definition at line 35 of file L1Track.h.

References m_rank, and rank().

Referenced by CSCTFSectorProcessor::run().

35 { m_rank = rank; }
unsigned m_rank
Definition: L1Track.h:126
unsigned rank() const
Definition: L1Track.cc:120
void L1Track::setStationIds ( const unsigned &  me1,
const unsigned &  me2,
const unsigned &  me3,
const unsigned &  me4,
const unsigned &  mb1 
)
void csc::L1Track::setTbins ( unsigned  me1,
unsigned  me2,
unsigned  me3,
unsigned  me4,
unsigned  mb 
)
inline
bool csc::L1Track::sign ( void  ) const
inline

Definition at line 91 of file L1Track.h.

References m_ptAddress.

91 { return (m_ptAddress >> 20) & 0x1; }
unsigned m_ptAddress
Definition: L1Track.h:123
unsigned csc::L1Track::station ( ) const
inline

Definition at line 48 of file L1Track.h.

Referenced by geometryXMLparser.DTAlignable::index(), and geometryXMLparser.CSCAlignable::index().

48 { return 0; }
unsigned csc::L1Track::subsector ( ) const
inline

Definition at line 50 of file L1Track.h.

50 { return 0; }
bool csc::L1Track::synch_err ( void  ) const
inline

Definition at line 92 of file L1Track.h.

References m_se.

92 { return m_se; }
bool m_se
Definition: L1Track.h:132
bool csc::L1Track::winner ( ) const
inline

Definition at line 65 of file L1Track.h.

References m_winner, operator!=(), operator<(), operator<=(), operator==(), operator>(), and operator>=().

Referenced by Print().

65 { return m_winner; }
bool m_winner
Definition: L1Track.h:129

Friends And Related Function Documentation

friend class ::CSCTFSPCoreLogic
friend

Definition at line 82 of file L1Track.h.

friend class ::CSCTFUnpacker
friend

Definition at line 81 of file L1Track.h.

friend class CSCTFSectorProcessor
friend

Only the Unpacker and SectorProcessor should have access to addTrackStub() This prevents people from adding too many track stubs.

Definition at line 80 of file L1Track.h.

Member Data Documentation

bool csc::L1Track::m_bc0
private

Definition at line 132 of file L1Track.h.

Referenced by bc0(), L1Track(), operator=(), and setBits().

bool csc::L1Track::m_bx0
private

Definition at line 132 of file L1Track.h.

Referenced by bx0(), L1Track(), operator=(), and setBits().

bool csc::L1Track::m_empty
private

Definition at line 128 of file L1Track.h.

Referenced by L1Track(), and operator=().

unsigned csc::L1Track::m_endcap
private

Definition at line 120 of file L1Track.h.

Referenced by endcap(), L1Track(), and operator=().

unsigned csc::L1Track::m_fr
private

Definition at line 124 of file L1Track.h.

Referenced by front_rear(), L1Track(), operator=(), and set_front_rear().

unsigned csc::L1Track::m_lphi
private

Definition at line 122 of file L1Track.h.

Referenced by L1Track(), localPhi(), operator=(), and setLocalPhi().

unsigned csc::L1Track::m_mbTbin
private

Definition at line 133 of file L1Track.h.

Referenced by L1Track(), mb1Tbin(), operator=(), and setTbins().

unsigned csc::L1Track::m_me1Tbin
private

Definition at line 133 of file L1Track.h.

Referenced by L1Track(), me1Tbin(), operator=(), and setTbins().

unsigned csc::L1Track::m_me2Tbin
private

Definition at line 133 of file L1Track.h.

Referenced by L1Track(), me2Tbin(), operator=(), and setTbins().

unsigned csc::L1Track::m_me3Tbin
private

Definition at line 133 of file L1Track.h.

Referenced by L1Track(), me3Tbin(), operator=(), and setTbins().

unsigned csc::L1Track::m_me4Tbin
private

Definition at line 133 of file L1Track.h.

Referenced by L1Track(), me4Tbin(), operator=(), and setTbins().

std::string csc::L1Track::m_name
private

Definition at line 118 of file L1Track.h.

Referenced by L1Track(), and operator=().

unsigned csc::L1Track::m_output_link
private

Definition at line 127 of file L1Track.h.

Referenced by L1Track(), operator=(), outputLink(), and setOutputLink().

unsigned csc::L1Track::m_ptAddress
private
unsigned csc::L1Track::m_rank
private

Definition at line 126 of file L1Track.h.

Referenced by L1Track(), operator=(), rank(), and setRank().

bool csc::L1Track::m_se
private

Definition at line 132 of file L1Track.h.

Referenced by L1Track(), operator=(), setBits(), and synch_err().

unsigned csc::L1Track::m_sector
private

Definition at line 120 of file L1Track.h.

Referenced by L1Track(), operator=(), and sector().

bool csc::L1Track::m_winner
private

Definition at line 129 of file L1Track.h.

Referenced by L1Track(), operator=(), and winner().

unsigned csc::L1Track::mb1_id
private

Definition at line 125 of file L1Track.h.

Referenced by L1Track(), mb1ID(), operator=(), and setStationIds().

unsigned csc::L1Track::me1_id
private

Definition at line 125 of file L1Track.h.

Referenced by L1Track(), me1ID(), operator=(), and setStationIds().

unsigned csc::L1Track::me2_id
private

Definition at line 125 of file L1Track.h.

Referenced by L1Track(), me2ID(), operator=(), and setStationIds().

unsigned csc::L1Track::me3_id
private

Definition at line 125 of file L1Track.h.

Referenced by L1Track(), me3ID(), operator=(), and setStationIds().

unsigned csc::L1Track::me4_id
private

Definition at line 125 of file L1Track.h.

Referenced by L1Track(), me4ID(), operator=(), and setStationIds().