CMS 3D CMS Logo

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

#include <CSCTMBHeader.h>

Public Member Functions

void add (const std::vector< CSCCLCTDigi > &digis)
 these methods need more brains to figure which one goes first More...
 
void add (const std::vector< CSCCorrelatedLCTDigi > &digis)
 
void addALCT0 (const CSCALCTDigi &digi)
 
void addALCT1 (const CSCALCTDigi &digi)
 
void addCLCT0 (const CSCCLCTDigi &digi)
 Needed before data packing. More...
 
void addCLCT1 (const CSCCLCTDigi &digi)
 
void addCorrelatedLCT0 (const CSCCorrelatedLCTDigi &digi)
 
void addCorrelatedLCT1 (const CSCCorrelatedLCTDigi &digi)
 
uint16_t ALCTMatchTime () const
 
uint16_t ALCTOnly () const
 
uint16_t Bxn0Diff () const
 
uint16_t Bxn1Diff () const
 
uint16_t BXNCount () const
 
bool check () const
 
std::vector< CSCCLCTDigiCLCTDigis (uint32_t idlayer)
 returns CLCT digis More...
 
uint16_t CLCTOnly () const
 
std::vector< CSCCorrelatedLCTDigiCorrelatedLCTDigis (uint32_t idlayer) const
 returns CorrelatedLCT digis More...
 
 CSCTMBHeader (int firmwareVersion, int firmwareRevision)
 
 CSCTMBHeader (const CSCTMBStatusDigi &digi)
 
 CSCTMBHeader (const unsigned short *buf)
 
unsigned short * data ()
 
int FirmwareRevision () const
 
int FirmwareVersion () const
 
uint16_t L1ANumber () const
 
uint16_t NCFEBs () const
 
unsigned short int NHeaderFrames () const
 
uint16_t NTBins () const
 
void setEventInformation (const CSCDMBHeader &dmbHeader)
 fills fields like bxn and l1a More...
 
void setNCFEBs (uint16_t ncfebs)
 
uint16_t sizeInBytes () const
 
unsigned short int sizeInWords () const
 
CSCTMBHeader2006 tmbHeader2006 () const
 
CSCTMBHeader2007 tmbHeader2007 () const
 will throw if the cast fails More...
 
CSCTMBHeader2013 tmbHeader2013 () const
 
uint16_t TMBMatch () const
 

Static Public Member Functions

static void selfTest ()
 tests that packing and unpacking give same results More...
 
static void setDebug (const bool value)
 

Private Attributes

int theFirmwareVersion
 
boost::shared_ptr
< CSCVTMBHeaderFormat
theHeaderFormat
 

Static Private Attributes

static std::atomic< bool > debug {false}
 

Friends

std::ostream & operator<< (std::ostream &os, const CSCTMBHeader &hdr)
 

Detailed Description

Definition at line 24 of file CSCTMBHeader.h.

Constructor & Destructor Documentation

CSCTMBHeader::CSCTMBHeader ( int  firmwareVersion,
int  firmwareRevision 
)

!!! Put actual firmware revision code

Definition at line 20 of file CSCTMBHeader.cc.

References theHeaderFormat.

20  :
22  theFirmwareVersion(firmwareVersion)
23 {
24  if(firmwareVersion == 2013)
25  {
26  theHeaderFormat = boost::shared_ptr<CSCVTMBHeaderFormat>(new CSCTMBHeader2013());
27  }
28  else if(firmwareVersion == 2006)
29  {
30  theHeaderFormat = boost::shared_ptr<CSCVTMBHeaderFormat>(new CSCTMBHeader2006());
31  }
32  else if(firmwareVersion == 2007)
33  {
34  if(firmwareRevision >= 0x50c3)
35  {
36  if (firmwareRevision >= 0x7a76)
37  {
38  theHeaderFormat = boost::shared_ptr<CSCVTMBHeaderFormat>(new CSCTMBHeader2013());
39  }
40  else
41  {
42  theHeaderFormat = boost::shared_ptr<CSCVTMBHeaderFormat>(new CSCTMBHeader2007_rev0x50c3());
43  }
44  }
45  else
46  {
47  theHeaderFormat = boost::shared_ptr<CSCVTMBHeaderFormat>(new CSCTMBHeader2007());
48  }
49  }
50  else
51  {
52  edm::LogError("CSCTMBHeader|CSCRawToDigi") <<"failed to determine TMB firmware version!!";
53  }
54 }
int theFirmwareVersion
Definition: CSCTMBHeader.h:156
boost::shared_ptr< CSCVTMBHeaderFormat > theHeaderFormat
Definition: CSCTMBHeader.h:155
CSCTMBHeader::CSCTMBHeader ( const CSCTMBStatusDigi digi)
CSCTMBHeader::CSCTMBHeader ( const unsigned short *  buf)

first determine the format

!!! Put actual firmware revision code

Definition at line 60 of file CSCTMBHeader.cc.

References theFirmwareVersion, and theHeaderFormat.

61  : theHeaderFormat()
62 {
64  if (buf[0]==0xDB0C)
65  {
66  theFirmwareVersion=2007;
67  theHeaderFormat = boost::shared_ptr<CSCVTMBHeaderFormat>(new CSCTMBHeader2007(buf));
68  if(theHeaderFormat->firmwareRevision() >= 0x50c3)
69  {
70  if (theHeaderFormat->firmwareRevision() >= 0x7a76)
71  {
72  theFirmwareVersion=2013;
73  theHeaderFormat = boost::shared_ptr<CSCVTMBHeaderFormat>(new CSCTMBHeader2013(buf));
74  }
75  else
76  {
77  theHeaderFormat = boost::shared_ptr<CSCVTMBHeaderFormat>(new CSCTMBHeader2007_rev0x50c3(buf));
78  }
79  }
80 
81  }
82  else if (buf[0]==0x6B0C)
83  {
84  theFirmwareVersion=2006;
85  theHeaderFormat = boost::shared_ptr<CSCVTMBHeaderFormat>(new CSCTMBHeader2006(buf));
86  }
87  else
88  {
89  edm::LogError("CSCTMBHeader|CSCRawToDigi") <<"failed to determine TMB firmware version!!";
90  }
91 }
int theFirmwareVersion
Definition: CSCTMBHeader.h:156
boost::shared_ptr< CSCVTMBHeaderFormat > theHeaderFormat
Definition: CSCTMBHeader.h:155

Member Function Documentation

void CSCTMBHeader::add ( const std::vector< CSCCLCTDigi > &  digis)

these methods need more brains to figure which one goes first

Definition at line 127 of file CSCTMBHeader.cc.

References addCLCT0(), and addCLCT1().

Referenced by CSCEventData::add(), and counter.Counter::register().

128 {
129  // sort???
130  if(digis.size() > 0) {
131  addCLCT0(digis[0]);
132 
133  }
134  if(digis.size() > 1) addCLCT1(digis[1]);
135 }
void addCLCT1(const CSCCLCTDigi &digi)
Definition: CSCTMBHeader.h:125
void addCLCT0(const CSCCLCTDigi &digi)
Needed before data packing.
Definition: CSCTMBHeader.h:124
void CSCTMBHeader::add ( const std::vector< CSCCorrelatedLCTDigi > &  digis)

Definition at line 137 of file CSCTMBHeader.cc.

References addCorrelatedLCT0(), and addCorrelatedLCT1().

Referenced by counter.Counter::register().

138 {
139  // sort???
140  if(digis.size() > 0) addCorrelatedLCT0(digis[0]);
141  if(digis.size() > 1) addCorrelatedLCT1(digis[1]);
142 }
void addCorrelatedLCT0(const CSCCorrelatedLCTDigi &digi)
Definition: CSCTMBHeader.h:128
void addCorrelatedLCT1(const CSCCorrelatedLCTDigi &digi)
Definition: CSCTMBHeader.h:131
void CSCTMBHeader::addALCT0 ( const CSCALCTDigi digi)
inline

Definition at line 126 of file CSCTMBHeader.h.

References theHeaderFormat.

126 {theHeaderFormat->addALCT0(digi);}
boost::shared_ptr< CSCVTMBHeaderFormat > theHeaderFormat
Definition: CSCTMBHeader.h:155
void CSCTMBHeader::addALCT1 ( const CSCALCTDigi digi)
inline

Definition at line 127 of file CSCTMBHeader.h.

References theHeaderFormat.

127 {theHeaderFormat->addALCT1(digi);}
boost::shared_ptr< CSCVTMBHeaderFormat > theHeaderFormat
Definition: CSCTMBHeader.h:155
void CSCTMBHeader::addCLCT0 ( const CSCCLCTDigi digi)
inline

Needed before data packing.

for data packing

Definition at line 124 of file CSCTMBHeader.h.

References theHeaderFormat.

Referenced by add(), and selfTest().

124 {theHeaderFormat->addCLCT0(digi);}
boost::shared_ptr< CSCVTMBHeaderFormat > theHeaderFormat
Definition: CSCTMBHeader.h:155
void CSCTMBHeader::addCLCT1 ( const CSCCLCTDigi digi)
inline

Definition at line 125 of file CSCTMBHeader.h.

References theHeaderFormat.

Referenced by add(), and selfTest().

125 {theHeaderFormat->addCLCT1(digi);}
boost::shared_ptr< CSCVTMBHeaderFormat > theHeaderFormat
Definition: CSCTMBHeader.h:155
void CSCTMBHeader::addCorrelatedLCT0 ( const CSCCorrelatedLCTDigi digi)
inline

Definition at line 128 of file CSCTMBHeader.h.

References theHeaderFormat.

Referenced by add(), and selfTest().

128  {
129  theHeaderFormat->addCorrelatedLCT0(digi);
130  }
boost::shared_ptr< CSCVTMBHeaderFormat > theHeaderFormat
Definition: CSCTMBHeader.h:155
void CSCTMBHeader::addCorrelatedLCT1 ( const CSCCorrelatedLCTDigi digi)
inline

Definition at line 131 of file CSCTMBHeader.h.

References theHeaderFormat.

Referenced by add(), and selfTest().

131  {
132  theHeaderFormat->addCorrelatedLCT1(digi);
133  }
boost::shared_ptr< CSCVTMBHeaderFormat > theHeaderFormat
Definition: CSCTMBHeader.h:155
uint16_t CSCTMBHeader::ALCTMatchTime ( ) const
inline

Definition at line 44 of file CSCTMBHeader.h.

References theHeaderFormat.

Referenced by CSCOfflineMonitor::doBXMonitor(), CSCValidation::doTimeMonitoring(), and cscdqm::EventProcessor::processCSC().

44  {
45  return theHeaderFormat->ALCTMatchTime();
46  }
boost::shared_ptr< CSCVTMBHeaderFormat > theHeaderFormat
Definition: CSCTMBHeader.h:155
uint16_t CSCTMBHeader::ALCTOnly ( ) const
inline

Definition at line 50 of file CSCTMBHeader.h.

References theHeaderFormat.

Referenced by cscdqm::EventProcessor::processCSC().

50  {
51  return theHeaderFormat->ALCTOnly();
52  }
boost::shared_ptr< CSCVTMBHeaderFormat > theHeaderFormat
Definition: CSCTMBHeader.h:155
uint16_t CSCTMBHeader::Bxn0Diff ( ) const
inline

Definition at line 57 of file CSCTMBHeader.h.

References theHeaderFormat.

Referenced by cscdqm::EventProcessor::processCSC().

57  {
58  return theHeaderFormat->Bxn0Diff();
59  }
boost::shared_ptr< CSCVTMBHeaderFormat > theHeaderFormat
Definition: CSCTMBHeader.h:155
uint16_t CSCTMBHeader::Bxn1Diff ( ) const
inline

Definition at line 60 of file CSCTMBHeader.h.

References theHeaderFormat.

Referenced by cscdqm::EventProcessor::processCSC().

60  {
61  return theHeaderFormat->Bxn1Diff();
62  }
boost::shared_ptr< CSCVTMBHeaderFormat > theHeaderFormat
Definition: CSCTMBHeader.h:155
uint16_t CSCTMBHeader::BXNCount ( ) const
inline

Definition at line 41 of file CSCTMBHeader.h.

References theHeaderFormat.

Referenced by CSCOfflineMonitor::doBXMonitor(), CSCValidation::doTimeMonitoring(), and cscdqm::EventProcessor::processCSC().

41  {
42  return theHeaderFormat->BXNCount();
43  }
boost::shared_ptr< CSCVTMBHeaderFormat > theHeaderFormat
Definition: CSCTMBHeader.h:155
bool CSCTMBHeader::check ( ) const
inline

Definition at line 116 of file CSCTMBHeader.h.

References theHeaderFormat.

Referenced by CSCTMBData::UnpackTMB().

116  {
117  return theHeaderFormat->check();
118  }
boost::shared_ptr< CSCVTMBHeaderFormat > theHeaderFormat
Definition: CSCTMBHeader.h:155
std::vector<CSCCLCTDigi> CSCTMBHeader::CLCTDigis ( uint32_t  idlayer)
inline

returns CLCT digis

Definition at line 90 of file CSCTMBHeader.h.

References theHeaderFormat.

Referenced by cscdqm::EventProcessor::processCSC(), selfTest(), and CSCEventData::selfTest().

91  {
92  return theHeaderFormat->CLCTDigis(idlayer);
93  }
boost::shared_ptr< CSCVTMBHeaderFormat > theHeaderFormat
Definition: CSCTMBHeader.h:155
uint16_t CSCTMBHeader::CLCTOnly ( ) const
inline

Definition at line 47 of file CSCTMBHeader.h.

References theHeaderFormat.

Referenced by cscdqm::EventProcessor::processCSC().

47  {
48  return theHeaderFormat->CLCTOnly();
49  }
boost::shared_ptr< CSCVTMBHeaderFormat > theHeaderFormat
Definition: CSCTMBHeader.h:155
std::vector<CSCCorrelatedLCTDigi> CSCTMBHeader::CorrelatedLCTDigis ( uint32_t  idlayer) const
inline

returns CorrelatedLCT digis

Definition at line 96 of file CSCTMBHeader.h.

References theHeaderFormat.

Referenced by selfTest(), and CSCEventData::selfTest().

97  {
98  return theHeaderFormat->CorrelatedLCTDigis(idlayer);
99  }
boost::shared_ptr< CSCVTMBHeaderFormat > theHeaderFormat
Definition: CSCTMBHeader.h:155
unsigned short* CSCTMBHeader::data ( )
inline

Definition at line 109 of file CSCTMBHeader.h.

References theHeaderFormat.

Referenced by cuy.FindIssue::__init__(), CSCTMBData::pack(), and selfTest().

109  {
110  return theHeaderFormat->data();
111  }
boost::shared_ptr< CSCVTMBHeaderFormat > theHeaderFormat
Definition: CSCTMBHeader.h:155
int CSCTMBHeader::FirmwareRevision ( ) const
inline

Definition at line 38 of file CSCTMBHeader.h.

References theHeaderFormat.

38 {return theHeaderFormat->firmwareRevision();}
boost::shared_ptr< CSCVTMBHeaderFormat > theHeaderFormat
Definition: CSCTMBHeader.h:155
int CSCTMBHeader::FirmwareVersion ( ) const
inline

Definition at line 37 of file CSCTMBHeader.h.

References theFirmwareVersion.

Referenced by CSCCLCTData::CSCCLCTData(), and CSCTMBData::UnpackTMB().

37 {return theFirmwareVersion;}
int theFirmwareVersion
Definition: CSCTMBHeader.h:156
uint16_t CSCTMBHeader::L1ANumber ( ) const
inline

Definition at line 64 of file CSCTMBHeader.h.

References theHeaderFormat.

Referenced by cscdqm::EventProcessor::processCSC().

64  {
65  return theHeaderFormat->L1ANumber();
66  }
boost::shared_ptr< CSCVTMBHeaderFormat > theHeaderFormat
Definition: CSCTMBHeader.h:155
uint16_t CSCTMBHeader::NCFEBs ( ) const
inline

Definition at line 80 of file CSCTMBHeader.h.

References theHeaderFormat.

Referenced by cscdqm::EventProcessor::processCSC(), and CSCTMBData::UnpackTMB().

80  {
81  return theHeaderFormat->NCFEBs();
82  }
boost::shared_ptr< CSCVTMBHeaderFormat > theHeaderFormat
Definition: CSCTMBHeader.h:155
unsigned short int CSCTMBHeader::NHeaderFrames ( ) const
inline

Definition at line 105 of file CSCTMBHeader.h.

References theHeaderFormat.

105  {
106  return theHeaderFormat->NHeaderFrames();
107  }
boost::shared_ptr< CSCVTMBHeaderFormat > theHeaderFormat
Definition: CSCTMBHeader.h:155
uint16_t CSCTMBHeader::NTBins ( ) const
inline

Definition at line 77 of file CSCTMBHeader.h.

References theHeaderFormat.

Referenced by CSCTMBData::UnpackTMB().

77  {
78  return theHeaderFormat->NTBins();
79  }
boost::shared_ptr< CSCVTMBHeaderFormat > theHeaderFormat
Definition: CSCTMBHeader.h:155
void CSCTMBHeader::selfTest ( )
static

tests that packing and unpacking give same results

Definition at line 177 of file CSCTMBHeader.cc.

References addCLCT0(), addCLCT1(), addCorrelatedLCT0(), addCorrelatedLCT1(), assert(), CLCTDigis(), CorrelatedLCTDigis(), gather_cfg::cout, cscPackerCompare(), data(), debug, DetId::rawId(), and relativeConstraints::station.

178 {
179  static bool debug = false;
180 
181  // tests packing and unpacking
182  for(int station = 1; station <= 4; ++station)
183  {
184  for(int iendcap = 1; iendcap <= 2; ++iendcap)
185  {
186  CSCDetId detId(iendcap, station, 1, 1, 0);
187 
188  // the next-to-last is the BX, which only gets
189  // saved in two bits and must be the same for clct0 and clct1.
190  //CSCCLCTDigi clct0(1, 1, 4, 0, 0, 30, 3, 0, 1); // valid for 2006
191  // In 2007 firmware, there are no distrips, so the 4th argument (strip
192  // type) should always be set to 1 (halfstrips).
193  CSCCLCTDigi clct0(1, 1, 4, 1, 0, 30, 4, 2, 1); // valid for 2007
194  CSCCLCTDigi clct1(1, 1, 2, 1, 1, 31, 1, 2, 2);
195 
196  // BX of LCT (8th argument) is 1-bit word (the least-significant bit
197  // of ALCT's bx).
198  CSCCorrelatedLCTDigi lct0(1, 1, 2, 10, 98, 5, 0, 1, 0, 0, 0, 0);
199  CSCCorrelatedLCTDigi lct1(2, 1, 2, 20, 15, 9, 1, 0, 0, 0, 0, 0);
200 
201  CSCTMBHeader tmbHeader(2007, 0x50c3);
202  tmbHeader.addCLCT0(clct0);
203  tmbHeader.addCLCT1(clct1);
204  tmbHeader.addCorrelatedLCT0(lct0);
205  tmbHeader.addCorrelatedLCT1(lct1);
206  std::vector<CSCCLCTDigi> clcts = tmbHeader.CLCTDigis(detId.rawId());
207  // guess they got reordered
208  assert(cscPackerCompare(clcts[0],clct0));
209  assert(cscPackerCompare(clcts[1],clct1));
210  if (debug)
211  {
212  std::cout << "Match for: " << clct0 << "\n";
213  std::cout << " " << clct1 << "\n \n";
214  }
215 
216  std::vector<CSCCorrelatedLCTDigi> lcts = tmbHeader.CorrelatedLCTDigis(detId.rawId());
217  assert(cscPackerCompare(lcts[0], lct0));
218  assert(cscPackerCompare(lcts[1], lct1));
219  if (debug)
220  {
221  std::cout << "Match for: " << lct0 << "\n";
222  std::cout << " " << lct1 << "\n";
223  }
224 
225  // try packing and re-packing, to make sure they're the same
226  unsigned short int * data = tmbHeader.data();
227  CSCTMBHeader newHeader(data);
228  clcts = newHeader.CLCTDigis(detId.rawId());
229  assert(cscPackerCompare(clcts[0],clct0));
230  assert(cscPackerCompare(clcts[1],clct1));
231  lcts = newHeader.CorrelatedLCTDigis(detId.rawId());
232  assert(cscPackerCompare(lcts[0], lct0));
233  assert(cscPackerCompare(lcts[1], lct1));
234 
235 
236  }
237  }
238 }
assert(m_qm.get())
unsigned short * data()
Definition: CSCTMBHeader.h:109
static std::atomic< bool > debug
Definition: CSCTMBHeader.h:152
bool cscPackerCompare(const T &t1, const T &t2)
tuple cout
Definition: gather_cfg.py:145
static void CSCTMBHeader::setDebug ( const bool  value)
inlinestatic

turns on/off debug flag for this class

Definition at line 114 of file CSCTMBHeader.h.

References debug, and relativeConstraints::value.

Referenced by CSCDCCUnpacker::CSCDCCUnpacker().

114 {debug = value;}
static std::atomic< bool > debug
Definition: CSCTMBHeader.h:152
void CSCTMBHeader::setEventInformation ( const CSCDMBHeader dmbHeader)
inline

fills fields like bxn and l1a

Definition at line 32 of file CSCTMBHeader.h.

References theHeaderFormat.

Referenced by CSCEventData::checkTMBClasses(), and CSCEventData::setEventInformation().

33  {
34  theHeaderFormat->setEventInformation(dmbHeader);
35  }
boost::shared_ptr< CSCVTMBHeaderFormat > theHeaderFormat
Definition: CSCTMBHeader.h:155
void CSCTMBHeader::setNCFEBs ( uint16_t  ncfebs)
inline

Definition at line 84 of file CSCTMBHeader.h.

References theHeaderFormat.

Referenced by CSCEventData::checkTMBClasses(), CSCTMBData::CSCTMBData(), and CSCEventData::setEventInformation().

84  {
85  theHeaderFormat->setNCFEBs(ncfebs);
86  }
boost::shared_ptr< CSCVTMBHeaderFormat > theHeaderFormat
Definition: CSCTMBHeader.h:155
uint16_t CSCTMBHeader::sizeInBytes ( ) const
inline

Definition at line 68 of file CSCTMBHeader.h.

References theHeaderFormat.

68  {
69  return theHeaderFormat->sizeInWords()*2;
70  }
boost::shared_ptr< CSCVTMBHeaderFormat > theHeaderFormat
Definition: CSCTMBHeader.h:155
unsigned short int CSCTMBHeader::sizeInWords ( ) const
inline

in 16-bit words. Add olne because we include beginning(b0c) and end (e0c) flags

Definition at line 103 of file CSCTMBHeader.h.

References theHeaderFormat.

Referenced by CSCTMBData::CSCTMBData(), CSCTMBData::pack(), and CSCTMBData::UnpackTMB().

103 {return theHeaderFormat->sizeInWords();}
boost::shared_ptr< CSCVTMBHeaderFormat > theHeaderFormat
Definition: CSCTMBHeader.h:155
CSCTMBHeader2006 CSCTMBHeader::tmbHeader2006 ( ) const

Definition at line 166 of file CSCTMBHeader.cc.

References Exception, mps_fire::result, and theHeaderFormat.

167 {
168  CSCTMBHeader2006 * result = dynamic_cast<CSCTMBHeader2006 *>(theHeaderFormat.get());
169  if(result == 0)
170  {
171  throw cms::Exception("Could not get 2006 TMB header format");
172  }
173  return *result;
174 }
tuple result
Definition: mps_fire.py:95
boost::shared_ptr< CSCVTMBHeaderFormat > theHeaderFormat
Definition: CSCTMBHeader.h:155
CSCTMBHeader2007 CSCTMBHeader::tmbHeader2007 ( ) const

will throw if the cast fails

Definition at line 145 of file CSCTMBHeader.cc.

References Exception, mps_fire::result, and theHeaderFormat.

146 {
147  CSCTMBHeader2007 * result = dynamic_cast<CSCTMBHeader2007 *>(theHeaderFormat.get());
148  if(result == 0)
149  {
150  throw cms::Exception("Could not get 2007 TMB header format");
151  }
152  return *result;
153 }
tuple result
Definition: mps_fire.py:95
boost::shared_ptr< CSCVTMBHeaderFormat > theHeaderFormat
Definition: CSCTMBHeader.h:155
CSCTMBHeader2013 CSCTMBHeader::tmbHeader2013 ( ) const

Definition at line 155 of file CSCTMBHeader.cc.

References Exception, mps_fire::result, and theHeaderFormat.

156 {
157  CSCTMBHeader2013 * result = dynamic_cast<CSCTMBHeader2013 *>(theHeaderFormat.get());
158  if(result == 0)
159  {
160  throw cms::Exception("Could not get 2013 TMB header format");
161  }
162  return *result;
163 }
tuple result
Definition: mps_fire.py:95
boost::shared_ptr< CSCVTMBHeaderFormat > theHeaderFormat
Definition: CSCTMBHeader.h:155
uint16_t CSCTMBHeader::TMBMatch ( ) const
inline

Definition at line 53 of file CSCTMBHeader.h.

References theHeaderFormat.

Referenced by cscdqm::EventProcessor::processCSC().

53  {
54  return theHeaderFormat->TMBMatch();
55  }
boost::shared_ptr< CSCVTMBHeaderFormat > theHeaderFormat
Definition: CSCTMBHeader.h:155

Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  os,
const CSCTMBHeader hdr 
)
friend

Definition at line 241 of file CSCTMBHeader.cc.

242 {
243  hdr.theHeaderFormat->print(os);
244  return os;
245 }
boost::shared_ptr< CSCVTMBHeaderFormat > theHeaderFormat
Definition: CSCTMBHeader.h:155

Member Data Documentation

std::atomic< bool > CSCTMBHeader::debug {false}
staticprivate
int CSCTMBHeader::theFirmwareVersion
private

Definition at line 156 of file CSCTMBHeader.h.

Referenced by CSCTMBHeader(), and FirmwareVersion().

boost::shared_ptr<CSCVTMBHeaderFormat> CSCTMBHeader::theHeaderFormat
private