CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Classes | Public Types | Public Member Functions | Private Member Functions | Private Attributes
l1t::MuonTriggerPrimitive Class Reference

#include <MuonTriggerPrimitive.h>

Classes

struct  CSCData
 
struct  DTData
 
struct  RPCData
 

Public Types

enum  subsystem_type { kDT, kCSC, kRPC, kNSubsystems }
 

Public Member Functions

template<typename IDType >
IDType detId () const
 
const int getBX () const
 
const double getCMSGlobalEta () const
 
const double getCMSGlobalPhi () const
 
const CSCData getCSCData () const
 
const DTData getDTData () const
 
const unsigned getGlobalSector () const
 
const int getPattern () const
 
const RPCData getRPCData () const
 
const int getStrip () const
 
const unsigned getSubSector () const
 
double getThetaBend () const
 
const int getWire () const
 
const int Id () const
 
 MuonTriggerPrimitive ()
 
 MuonTriggerPrimitive (const DTChamberId &, const L1MuDTChambPhDigi &, const int segment_number)
 
 MuonTriggerPrimitive (const DTChamberId &, const L1MuDTChambThDigi &, const int segment_number)
 
 MuonTriggerPrimitive (const DTChamberId &, const L1MuDTChambPhDigi &, const L1MuDTChambThDigi &, const int theta_bti_group)
 
 MuonTriggerPrimitive (const CSCDetId &, const CSCCorrelatedLCTDigi &)
 
 MuonTriggerPrimitive (const RPCDetId &detid, const unsigned strip, const unsigned layer, const uint16_t bx)
 
 MuonTriggerPrimitive (const MuonTriggerPrimitive &)
 
MuonTriggerPrimitiveoperator= (const MuonTriggerPrimitive &tp)
 
bool operator== (const MuonTriggerPrimitive &tp) const
 
void print (std::ostream &) const
 
const DetId rawId () const
 
void setCMSGlobalEta (const double eta)
 
void setCMSGlobalPhi (const double phi)
 
void setThetaBend (const double theta)
 
const subsystem_type subsystem () const
 

Private Member Functions

void calculateCSCGlobalSector (const CSCDetId &chid, unsigned &global_sector, unsigned &subsector)
 
void calculateDTGlobalSector (const DTChamberId &chid, unsigned &global_sector, unsigned &subsector)
 
void calculateRPCGlobalSector (const RPCDetId &chid, unsigned &global_sector, unsigned &subsector)
 

Private Attributes

CSCData _csc
 
DTData _dt
 
double _eta
 
unsigned _globalsector
 
DetId _id
 
double _phi
 
RPCData _rpc
 
unsigned _subsector
 
subsystem_type _subsystem
 
double _theta
 

Detailed Description

Definition at line 59 of file MuonTriggerPrimitive.h.

Member Enumeration Documentation

Constructor & Destructor Documentation

l1t::MuonTriggerPrimitive::MuonTriggerPrimitive ( )
inline
MuonTriggerPrimitive::MuonTriggerPrimitive ( const DTChamberId detid,
const L1MuDTChambPhDigi digi_phi,
const int  segment_number 
)

Definition at line 21 of file MuonTriggerPrimitive.cc.

References _dt, _globalsector, _subsector, l1t::MuonTriggerPrimitive::DTData::bendingAngle, l1t::MuonTriggerPrimitive::DTData::bx, L1MuDTChambPhDigi::BxCnt(), l1t::MuonTriggerPrimitive::DTData::BxCntCode, L1MuDTChambPhDigi::bxNum(), calculateDTGlobalSector(), L1MuDTChambPhDigi::code(), L1MuDTChambPhDigi::phi(), L1MuDTChambPhDigi::phiB(), l1t::MuonTriggerPrimitive::DTData::qualityCode, l1t::MuonTriggerPrimitive::DTData::radialAngle, L1MuDTChambPhDigi::scNum(), l1t::MuonTriggerPrimitive::DTData::sector, l1t::MuonTriggerPrimitive::DTData::segment_number, l1t::MuonTriggerPrimitive::DTData::station, L1MuDTChambPhDigi::stNum(), l1t::MuonTriggerPrimitive::DTData::theta_bti_group, l1t::MuonTriggerPrimitive::DTData::theta_code, l1t::MuonTriggerPrimitive::DTData::theta_quality, L1MuDTChambPhDigi::Ts2Tag(), l1t::MuonTriggerPrimitive::DTData::Ts2TagCode, l1t::MuonTriggerPrimitive::DTData::wheel, and L1MuDTChambPhDigi::whNum().

23  :
24  _id(detid),
27  // fill in information from theta trigger
28  _dt.theta_bti_group = -1;
29  _dt.segment_number = segment_number;
30  _dt.theta_code = -1;
31  _dt.theta_quality = -1;
32  // now phi trigger
33  _dt.bx = digi_phi.bxNum();
34  _dt.wheel = digi_phi.whNum();
35  _dt.sector = digi_phi.scNum();
36  _dt.station = digi_phi.stNum();
37  _dt.radialAngle = digi_phi.phi();
38  _dt.bendingAngle = digi_phi.phiB();
39  _dt.qualityCode = digi_phi.code();
40  _dt.Ts2TagCode = digi_phi.Ts2Tag();
41  _dt.BxCntCode = digi_phi.BxCnt();
42 }
void calculateDTGlobalSector(const DTChamberId &chid, unsigned &global_sector, unsigned &subsector)
MuonTriggerPrimitive::MuonTriggerPrimitive ( const DTChamberId detid,
const L1MuDTChambThDigi digi_th,
const int  segment_number 
)

Definition at line 44 of file MuonTriggerPrimitive.cc.

References _dt, _globalsector, _subsector, l1t::MuonTriggerPrimitive::DTData::bendingAngle, l1t::MuonTriggerPrimitive::DTData::bx, l1t::MuonTriggerPrimitive::DTData::BxCntCode, L1MuDTChambThDigi::bxNum(), calculateDTGlobalSector(), L1MuDTChambThDigi::code(), L1MuDTChambThDigi::position(), L1MuDTChambThDigi::quality(), l1t::MuonTriggerPrimitive::DTData::qualityCode, l1t::MuonTriggerPrimitive::DTData::radialAngle, L1MuDTChambThDigi::scNum(), l1t::MuonTriggerPrimitive::DTData::sector, l1t::MuonTriggerPrimitive::DTData::segment_number, l1t::MuonTriggerPrimitive::DTData::station, L1MuDTChambThDigi::stNum(), l1t::MuonTriggerPrimitive::DTData::theta_bti_group, l1t::MuonTriggerPrimitive::DTData::theta_code, l1t::MuonTriggerPrimitive::DTData::theta_quality, l1t::MuonTriggerPrimitive::DTData::Ts2TagCode, l1t::MuonTriggerPrimitive::DTData::wheel, and L1MuDTChambThDigi::whNum().

46  :
47  _id(detid),
50  // fill in information from theta trigger
51  _dt.theta_bti_group = theta_bti_group;
52  _dt.segment_number = digi_th.position(theta_bti_group);
53  _dt.theta_code = digi_th.code(theta_bti_group);
54  _dt.theta_quality = digi_th.quality(theta_bti_group);
55  // now phi trigger
56  _dt.bx = digi_th.bxNum();
57  _dt.wheel = digi_th.whNum();
58  _dt.sector = digi_th.scNum();
59  _dt.station = digi_th.stNum();
60  _dt.radialAngle = -1;
61  _dt.bendingAngle = -1;
62  _dt.qualityCode = -1;
63  _dt.Ts2TagCode = -1;
64  _dt.BxCntCode = -1;
65 }
int quality(const int i) const
int position(const int i) const
void calculateDTGlobalSector(const DTChamberId &chid, unsigned &global_sector, unsigned &subsector)
int code(const int i) const
MuonTriggerPrimitive::MuonTriggerPrimitive ( const DTChamberId detid,
const L1MuDTChambPhDigi digi_phi,
const L1MuDTChambThDigi digi_th,
const int  theta_bti_group 
)

Definition at line 67 of file MuonTriggerPrimitive.cc.

References _dt, _globalsector, _subsector, l1t::MuonTriggerPrimitive::DTData::bendingAngle, l1t::MuonTriggerPrimitive::DTData::bx, L1MuDTChambPhDigi::BxCnt(), l1t::MuonTriggerPrimitive::DTData::BxCntCode, L1MuDTChambPhDigi::bxNum(), calculateDTGlobalSector(), L1MuDTChambPhDigi::code(), L1MuDTChambThDigi::code(), L1MuDTChambPhDigi::phi(), L1MuDTChambPhDigi::phiB(), L1MuDTChambThDigi::position(), L1MuDTChambThDigi::quality(), l1t::MuonTriggerPrimitive::DTData::qualityCode, l1t::MuonTriggerPrimitive::DTData::radialAngle, L1MuDTChambPhDigi::scNum(), l1t::MuonTriggerPrimitive::DTData::sector, l1t::MuonTriggerPrimitive::DTData::segment_number, l1t::MuonTriggerPrimitive::DTData::station, L1MuDTChambPhDigi::stNum(), l1t::MuonTriggerPrimitive::DTData::theta_bti_group, l1t::MuonTriggerPrimitive::DTData::theta_code, l1t::MuonTriggerPrimitive::DTData::theta_quality, L1MuDTChambPhDigi::Ts2Tag(), l1t::MuonTriggerPrimitive::DTData::Ts2TagCode, l1t::MuonTriggerPrimitive::DTData::wheel, and L1MuDTChambPhDigi::whNum().

70  :
71  _id(detid),
74  // fill in information from theta trigger
75  _dt.theta_bti_group = theta_bti_group;
76  _dt.segment_number = digi_th.position(theta_bti_group);
77  _dt.theta_code = digi_th.code(theta_bti_group);
78  _dt.theta_quality = digi_th.quality(theta_bti_group);
79  // now phi trigger
80  _dt.bx = digi_phi.bxNum();
81  _dt.wheel = digi_phi.whNum();
82  _dt.sector = digi_phi.scNum();
83  _dt.station = digi_phi.stNum();
84  _dt.radialAngle = digi_phi.phi();
85  _dt.bendingAngle = digi_phi.phiB();
86  _dt.qualityCode = digi_phi.code();
87  _dt.Ts2TagCode = digi_phi.Ts2Tag();
88  _dt.BxCntCode = digi_phi.BxCnt();
89 }
int quality(const int i) const
int position(const int i) const
void calculateDTGlobalSector(const DTChamberId &chid, unsigned &global_sector, unsigned &subsector)
int code(const int i) const
MuonTriggerPrimitive::MuonTriggerPrimitive ( const CSCDetId detid,
const CSCCorrelatedLCTDigi digi 
)

Definition at line 92 of file MuonTriggerPrimitive.cc.

References _csc, _globalsector, _subsector, l1t::MuonTriggerPrimitive::CSCData::bend, l1t::MuonTriggerPrimitive::CSCData::bx, l1t::MuonTriggerPrimitive::CSCData::bx0, calculateCSCGlobalSector(), l1t::MuonTriggerPrimitive::CSCData::cscID, CSCCorrelatedLCTDigi::getBend(), CSCCorrelatedLCTDigi::getBX(), CSCCorrelatedLCTDigi::getBX0(), CSCCorrelatedLCTDigi::getCSCID(), CSCCorrelatedLCTDigi::getKeyWG(), CSCCorrelatedLCTDigi::getMPCLink(), CSCCorrelatedLCTDigi::getPattern(), CSCCorrelatedLCTDigi::getQuality(), CSCCorrelatedLCTDigi::getStrip(), CSCCorrelatedLCTDigi::getSyncErr(), CSCCorrelatedLCTDigi::getTrknmb(), CSCCorrelatedLCTDigi::isValid(), l1t::MuonTriggerPrimitive::CSCData::keywire, l1t::MuonTriggerPrimitive::CSCData::mpclink, l1t::MuonTriggerPrimitive::CSCData::pattern, l1t::MuonTriggerPrimitive::CSCData::quality, l1t::MuonTriggerPrimitive::CSCData::strip, l1t::MuonTriggerPrimitive::CSCData::syncErr, l1t::MuonTriggerPrimitive::CSCData::trknmb, and l1t::MuonTriggerPrimitive::CSCData::valid.

93  :
94  _id(detid),
97  _csc.trknmb = digi.getTrknmb();
98  _csc.valid = digi.isValid();
99  _csc.quality = digi.getQuality();
100  _csc.keywire = digi.getKeyWG();
101  _csc.strip = digi.getStrip();
102  _csc.pattern = digi.getPattern();
103  _csc.bend = digi.getBend();
104  _csc.bx = digi.getBX();
105  _csc.mpclink = digi.getMPCLink();
106  _csc.bx0 = digi.getBX0();
107  _csc.syncErr = digi.getSyncErr();
108  _csc.cscID = digi.getCSCID();
109 }
int getStrip() const
return the key halfstrip from 0,159
uint16_t getSyncErr() const
int getQuality() const
return the 4 bit Correlated LCT Quality
int getBend() const
return bend
uint16_t getCSCID() const
int getTrknmb() const
return track number
int getBX() const
return BX
uint16_t getBX0() const
int getMPCLink() const
return MPC link number, 0 means not sorted, 1-3 give MPC sorting rank
bool isValid() const
return valid pattern bit
int getPattern() const
return pattern
void calculateCSCGlobalSector(const CSCDetId &chid, unsigned &global_sector, unsigned &subsector)
int getKeyWG() const
return the key wire group
MuonTriggerPrimitive::MuonTriggerPrimitive ( const RPCDetId detid,
const unsigned  strip,
const unsigned  layer,
const uint16_t  bx 
)
MuonTriggerPrimitive::MuonTriggerPrimitive ( const MuonTriggerPrimitive tp)

Member Function Documentation

void MuonTriggerPrimitive::calculateCSCGlobalSector ( const CSCDetId chid,
unsigned &  global_sector,
unsigned &  subsector 
)
private

Definition at line 269 of file MuonTriggerPrimitive.cc.

Referenced by MuonTriggerPrimitive().

271  {
272 }
void MuonTriggerPrimitive::calculateDTGlobalSector ( const DTChamberId chid,
unsigned &  global_sector,
unsigned &  subsector 
)
private

Definition at line 264 of file MuonTriggerPrimitive.cc.

Referenced by MuonTriggerPrimitive().

266  {
267 }
void MuonTriggerPrimitive::calculateRPCGlobalSector ( const RPCDetId chid,
unsigned &  global_sector,
unsigned &  subsector 
)
private

Definition at line 274 of file MuonTriggerPrimitive.cc.

Referenced by MuonTriggerPrimitive().

276  {
277 }
template<typename IDType >
IDType l1t::MuonTriggerPrimitive::detId ( ) const
inline
const int MuonTriggerPrimitive::getBX ( ) const

Definition at line 185 of file MuonTriggerPrimitive.cc.

References _csc, _dt, _rpc, _subsystem, l1t::MuonTriggerPrimitive::RPCData::bx, l1t::MuonTriggerPrimitive::CSCData::bx, l1t::MuonTriggerPrimitive::DTData::bx, Exception, kCSC, kDT, and kRPC.

185  {
186  switch(_subsystem) {
187  case kDT:
188  return _dt.bx;
189  case kCSC:
190  return _csc.bx;
191  case kRPC:
192  return _rpc.bx;
193  default:
194  throw cms::Exception("Invalid Subsytem")
195  << "The specified subsystem for this track stub is out of range"
196  << std::endl;
197  }
198  return -1;
199 }
const double l1t::MuonTriggerPrimitive::getCMSGlobalEta ( ) const
inline

Definition at line 152 of file MuonTriggerPrimitive.h.

References _eta.

152 { return _eta; }
const double l1t::MuonTriggerPrimitive::getCMSGlobalPhi ( ) const
inline

Definition at line 154 of file MuonTriggerPrimitive.h.

References _phi.

154 { return _phi; }
const CSCData l1t::MuonTriggerPrimitive::getCSCData ( ) const
inline

Definition at line 168 of file MuonTriggerPrimitive.h.

References _csc.

Referenced by l1t::GeometryTranslator::getCSCSpecificPoint().

168 { return _csc; }
const DTData l1t::MuonTriggerPrimitive::getDTData ( ) const
inline
const unsigned l1t::MuonTriggerPrimitive::getGlobalSector ( ) const
inline

Definition at line 179 of file MuonTriggerPrimitive.h.

References _globalsector.

179 { return _globalsector; }
const int MuonTriggerPrimitive::getPattern ( ) const

Definition at line 233 of file MuonTriggerPrimitive.cc.

References _csc, _subsystem, Exception, kCSC, kDT, kRPC, and l1t::MuonTriggerPrimitive::CSCData::pattern.

233  {
234  switch(_subsystem) {
235  case kDT:
236  return -1;
237  case kCSC:
238  return _csc.pattern;
239  case kRPC:
240  return -1;
241  default:
242  throw cms::Exception("Invalid Subsytem")
243  << "The specified subsystem for this track stub is out of range"
244  << std::endl;
245  }
246  return -1;
247 }
const RPCData l1t::MuonTriggerPrimitive::getRPCData ( ) const
inline

Definition at line 169 of file MuonTriggerPrimitive.h.

References _rpc.

Referenced by l1t::GeometryTranslator::getRPCSpecificPoint().

169 { return _rpc; }
const int MuonTriggerPrimitive::getStrip ( ) const

Definition at line 201 of file MuonTriggerPrimitive.cc.

References _csc, _rpc, _subsystem, Exception, kCSC, kDT, kRPC, l1t::MuonTriggerPrimitive::RPCData::strip, and l1t::MuonTriggerPrimitive::CSCData::strip.

201  {
202  switch(_subsystem) {
203  case kDT:
204  return -1;
205  case kCSC:
206  return _csc.strip;
207  case kRPC:
208  return _rpc.strip;
209  default:
210  throw cms::Exception("Invalid Subsytem")
211  << "The specified subsystem for this track stub is out of range"
212  << std::endl;
213  }
214  return -1;
215 }
const unsigned l1t::MuonTriggerPrimitive::getSubSector ( ) const
inline

Definition at line 180 of file MuonTriggerPrimitive.h.

References _subsector.

180 { return _subsector; }
double l1t::MuonTriggerPrimitive::getThetaBend ( ) const
inline

Definition at line 161 of file MuonTriggerPrimitive.h.

References _theta.

161 { return _theta; }
const int MuonTriggerPrimitive::getWire ( ) const

Definition at line 217 of file MuonTriggerPrimitive.cc.

References _csc, _subsystem, Exception, kCSC, kDT, l1t::MuonTriggerPrimitive::CSCData::keywire, and kRPC.

217  {
218  switch(_subsystem) {
219  case kDT:
220  return -1;
221  case kCSC:
222  return _csc.keywire;
223  case kRPC:
224  return -1;
225  default:
226  throw cms::Exception("Invalid Subsytem")
227  << "The specified subsystem for this track stub is out of range"
228  << std::endl;
229  }
230  return -1;
231 }
const int MuonTriggerPrimitive::Id ( ) const

Definition at line 248 of file MuonTriggerPrimitive.cc.

References _csc, _subsystem, l1t::MuonTriggerPrimitive::CSCData::cscID, Exception, kCSC, kDT, and kRPC.

248  {
249  switch(_subsystem) {
250  case kDT:
251  return -1;
252  case kCSC:
253  return _csc.cscID;
254  case kRPC:
255  return -1;
256  default:
257  throw cms::Exception("Invalid Subsytem")
258  << "The specified subsystem for this track stub is out of range"
259  << std::endl;
260  }
261  return -1;
262 }
MuonTriggerPrimitive & MuonTriggerPrimitive::operator= ( const MuonTriggerPrimitive tp)

Definition at line 137 of file MuonTriggerPrimitive.cc.

References _csc, _dt, _eta, _globalsector, _id, _phi, _rpc, _subsector, and _subsystem.

137  {
138  this->_dt = tp._dt;
139  this->_csc = tp._csc;
140  this->_rpc = tp._rpc;
141  this->_id = tp._id;
142  this->_subsystem = tp._subsystem;
143  this->_globalsector = tp._globalsector;
144  this->_subsector = tp._subsector;
145  this->_eta = tp._eta;
146  this->_phi = tp._phi;
147  return *this;
148 }
bool MuonTriggerPrimitive::operator== ( const MuonTriggerPrimitive tp) const

Definition at line 150 of file MuonTriggerPrimitive.cc.

References _csc, _dt, _globalsector, _id, _rpc, _subsector, _subsystem, l1t::MuonTriggerPrimitive::CSCData::bend, l1t::MuonTriggerPrimitive::DTData::bendingAngle, l1t::MuonTriggerPrimitive::RPCData::bx, l1t::MuonTriggerPrimitive::CSCData::bx, l1t::MuonTriggerPrimitive::DTData::bx, l1t::MuonTriggerPrimitive::CSCData::bx0, l1t::MuonTriggerPrimitive::DTData::BxCntCode, l1t::MuonTriggerPrimitive::CSCData::cscID, l1t::MuonTriggerPrimitive::CSCData::keywire, l1t::MuonTriggerPrimitive::RPCData::layer, l1t::MuonTriggerPrimitive::CSCData::mpclink, l1t::MuonTriggerPrimitive::CSCData::pattern, l1t::MuonTriggerPrimitive::CSCData::quality, l1t::MuonTriggerPrimitive::DTData::qualityCode, l1t::MuonTriggerPrimitive::DTData::radialAngle, l1t::MuonTriggerPrimitive::DTData::sector, l1t::MuonTriggerPrimitive::DTData::segment_number, l1t::MuonTriggerPrimitive::DTData::station, l1t::MuonTriggerPrimitive::RPCData::strip, l1t::MuonTriggerPrimitive::CSCData::strip, l1t::MuonTriggerPrimitive::CSCData::syncErr, l1t::MuonTriggerPrimitive::DTData::theta_bti_group, l1t::MuonTriggerPrimitive::DTData::theta_code, l1t::MuonTriggerPrimitive::DTData::theta_quality, l1t::MuonTriggerPrimitive::CSCData::trknmb, l1t::MuonTriggerPrimitive::DTData::Ts2TagCode, l1t::MuonTriggerPrimitive::CSCData::valid, and l1t::MuonTriggerPrimitive::DTData::wheel.

150  {
151  return ( this->_dt.bx == tp._dt.bx &&
152  this->_dt.wheel == tp._dt.wheel &&
153  this->_dt.sector == tp._dt.sector &&
154  this->_dt.station == tp._dt.station &&
155  this->_dt.radialAngle == tp._dt.radialAngle &&
156  this->_dt.bendingAngle == tp._dt.bendingAngle &&
157  this->_dt.qualityCode == tp._dt.qualityCode &&
158  this->_dt.Ts2TagCode == tp._dt.Ts2TagCode &&
159  this->_dt.BxCntCode == tp._dt.BxCntCode &&
160  this->_dt.theta_bti_group == tp._dt.theta_bti_group &&
161  this->_dt.segment_number == tp._dt.segment_number &&
162  this->_dt.theta_code == tp._dt.theta_code &&
163  this->_dt.theta_quality == tp._dt.theta_quality &&
164  this->_csc.trknmb == tp._csc.trknmb &&
165  this->_csc.valid == tp._csc.valid &&
166  this->_csc.quality == tp._csc.quality &&
167  this->_csc.keywire == tp._csc.keywire &&
168  this->_csc.strip == tp._csc.strip &&
169  this->_csc.pattern == tp._csc.pattern &&
170  this->_csc.bend == tp._csc.bend &&
171  this->_csc.bx == tp._csc.bx &&
172  this->_csc.mpclink == tp._csc.mpclink &&
173  this->_csc.bx0 == tp._csc.bx0 &&
174  this->_csc.syncErr == tp._csc.syncErr &&
175  this->_csc.cscID == tp._csc.cscID &&
176  this->_rpc.strip == tp._rpc.strip &&
177  this->_rpc.layer == tp._rpc.layer &&
178  this->_rpc.bx == tp._rpc.bx &&
179  this->_id == tp._id &&
180  this->_subsystem == tp._subsystem &&
181  this->_globalsector == tp._globalsector &&
182  this->_subsector == tp._subsector );
183 }
void MuonTriggerPrimitive::print ( std::ostream &  out) const

Definition at line 279 of file MuonTriggerPrimitive.cc.

References _csc, _dt, _eta, _phi, _rpc, _subsystem, _theta, l1t::MuonTriggerPrimitive::CSCData::bend, l1t::MuonTriggerPrimitive::DTData::bendingAngle, l1t::MuonTriggerPrimitive::RPCData::bx, l1t::MuonTriggerPrimitive::CSCData::bx, l1t::MuonTriggerPrimitive::DTData::bx, l1t::MuonTriggerPrimitive::CSCData::bx0, l1t::MuonTriggerPrimitive::DTData::BxCntCode, l1t::MuonTriggerPrimitive::CSCData::cscID, Exception, customizeTrackingMonitorSeedNumber::idx, kCSC, kDT, l1t::MuonTriggerPrimitive::CSCData::keywire, kRPC, l1t::MuonTriggerPrimitive::RPCData::layer, l1t::MuonTriggerPrimitive::CSCData::mpclink, l1t::MuonTriggerPrimitive::CSCData::pattern, l1t::MuonTriggerPrimitive::CSCData::quality, l1t::MuonTriggerPrimitive::DTData::qualityCode, l1t::MuonTriggerPrimitive::DTData::radialAngle, l1t::MuonTriggerPrimitive::DTData::segment_number, l1t::MuonTriggerPrimitive::RPCData::strip, l1t::MuonTriggerPrimitive::CSCData::strip, l1t::MuonTriggerPrimitive::CSCData::syncErr, l1t::MuonTriggerPrimitive::DTData::theta_bti_group, l1t::MuonTriggerPrimitive::DTData::theta_code, l1t::MuonTriggerPrimitive::DTData::theta_quality, l1t::MuonTriggerPrimitive::CSCData::trknmb, l1t::MuonTriggerPrimitive::DTData::Ts2TagCode, and l1t::MuonTriggerPrimitive::CSCData::valid.

279  {
280  unsigned idx = (unsigned) _subsystem;
281  out << subsystem_names[idx] << " Trigger Primitive" << std::endl;
282  out << "eta: " << _eta << " phi: " << _phi
283  << " bend: " << _theta << std::endl;
284  switch(_subsystem) {
285  case kDT:
286  out << detId<DTChamberId>() << std::endl;
287  out << "Local BX : " << _dt.bx << std::endl;
288  out << "Segment Nmb : " << _dt.segment_number << std::endl;
289  out << "Packed Phi : " << _dt.radialAngle << std::endl;
290  out << "Packed Bend : " << _dt.bendingAngle << std::endl;
291  out << "Quality Code : " << _dt.qualityCode << std::endl;
292  out << "Ts2Tag Code : " << _dt.Ts2TagCode << std::endl;
293  out << "BXCnt Code : " << _dt.BxCntCode << std::endl;
294  out << "Theta BTI Grp : " << _dt.theta_bti_group << std::endl;
295  out << "Theta Code : " << _dt.theta_code << std::endl;
296  out << "Theta Quality : " << _dt.theta_quality << std::endl;
297  break;
298  case kCSC:
299  out << detId<CSCDetId>() << std::endl;
300  out << "Local BX : " << _csc.bx << std::endl;
301  out << "Segment Nmb : " << _csc.trknmb << std::endl;
302  out << "Segment Valid : " << _csc.valid << std::endl;
303  out << "Quality Code : " << _csc.quality << std::endl;
304  out << "Key Wire Grp : " << _csc.keywire << std::endl;
305  out << "Half-Strip : " << _csc.strip << std::endl;
306  out << "CLCT Pattern : " << _csc.pattern << std::endl;
307  out << "Packed Bend : " << _csc.bend << std::endl;
308  out << "MPC Link : " << _csc.mpclink << std::endl;
309  out << "BX0 : " << _csc.bx0 << std::endl;
310  out << "Sync Error : " << _csc.syncErr << std::endl;
311  out << "CSCID : " << _csc.cscID << std::endl;
312  break;
313  case kRPC:
314  out << detId<RPCDetId>() << std::endl;
315  out << "Local BX : " << _rpc.bx << std::endl;
316  out << "Strip : " << _rpc.strip << std::endl;
317  out << "Layer : " << _rpc.layer << std::endl;
318  break;
319  default:
320  throw cms::Exception("Invalid Subsytem")
321  << "The specified subsystem for this track stub is out of range"
322  << std::endl;
323  }
324 }
tuple out
Definition: dbtoconf.py:99
tuple idx
DEBUGGING if hasattr(process,&quot;trackMonIterativeTracking2012&quot;): print &quot;trackMonIterativeTracking2012 D...
const DetId l1t::MuonTriggerPrimitive::rawId ( ) const
inline

Definition at line 176 of file MuonTriggerPrimitive.h.

References _id.

176 {return _id;};
void l1t::MuonTriggerPrimitive::setCMSGlobalEta ( const double  eta)
inline

Definition at line 153 of file MuonTriggerPrimitive.h.

References _eta, and eta.

void l1t::MuonTriggerPrimitive::setCMSGlobalPhi ( const double  phi)
inline

Definition at line 155 of file MuonTriggerPrimitive.h.

References _phi.

void l1t::MuonTriggerPrimitive::setThetaBend ( const double  theta)
inline

Definition at line 160 of file MuonTriggerPrimitive.h.

References _theta, and theta().

160 { _theta = theta; }
Geom::Theta< T > theta() const
const subsystem_type l1t::MuonTriggerPrimitive::subsystem ( ) const
inline

Member Data Documentation

CSCData l1t::MuonTriggerPrimitive::_csc
private
DTData l1t::MuonTriggerPrimitive::_dt
private
double l1t::MuonTriggerPrimitive::_eta
private

Definition at line 207 of file MuonTriggerPrimitive.h.

Referenced by getCMSGlobalEta(), operator=(), print(), and setCMSGlobalEta().

unsigned l1t::MuonTriggerPrimitive::_globalsector
private
DetId l1t::MuonTriggerPrimitive::_id
private

Definition at line 201 of file MuonTriggerPrimitive.h.

Referenced by detId(), operator=(), operator==(), and rawId().

double l1t::MuonTriggerPrimitive::_phi
private

Definition at line 207 of file MuonTriggerPrimitive.h.

Referenced by getCMSGlobalPhi(), operator=(), print(), and setCMSGlobalPhi().

RPCData l1t::MuonTriggerPrimitive::_rpc
private
unsigned l1t::MuonTriggerPrimitive::_subsector
private

Definition at line 206 of file MuonTriggerPrimitive.h.

Referenced by getSubSector(), MuonTriggerPrimitive(), operator=(), and operator==().

subsystem_type l1t::MuonTriggerPrimitive::_subsystem
private
double l1t::MuonTriggerPrimitive::_theta
private

Definition at line 208 of file MuonTriggerPrimitive.h.

Referenced by getThetaBend(), print(), and setThetaBend().