CMS 3D CMS Logo

List of all members | Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | Protected Member Functions | Protected Attributes
CSCDDUEventData Class Reference

#include <CSCDDUEventData.h>

Public Member Functions

void add (CSCEventData &, int dmbId, int dduInput, unsigned int format_version=2005)
 for making events. Sets the bxnum and lvl1num inside the chamber event More...
 
bool check () const
 
const std::vector< CSCEventData > & cscData () const
 accessor to data More...
 
 CSCDDUEventData (const CSCDDUHeader &)
 
 CSCDDUEventData (const uint16_t *buf, CSCDCCExaminer *examiner=nullptr)
 
CSCDCCHeader dccHeader () const
 
CSCDCCTrailer dccTrailer () const
 
void decodeStatus () const
 
void decodeStatus (int status) const
 
CSCDDUHeader header () const
 
boost::dynamic_bitset pack ()
 Alex check this 16 or 64. More...
 
int size () const
 
int sizeInWords () const
 
CSCDDUTrailer trailer () const
 
uint16_t trailer0 () const
 
 ~CSCDDUEventData ()
 

Static Public Member Functions

static void setDebug (bool value)
 
static void setErrorMask (unsigned int value)
 

Public Attributes

long unsigned int errorstat
 trailer info More...
 

Static Public Attributes

static std::atomic< bool > debug {false}
 
static std::atomic< unsigned int > errMask {0xFFFFFFFF}
 

Protected Member Functions

void unpack_data (const uint16_t *buf, CSCDCCExaminer *examiner=nullptr)
 a good test routine would be to unpack data, then pack it again. More...
 

Protected Attributes

std::vector< CSCEventDatatheData
 
CSCDCCHeader theDCCHeader
 
CSCDCCTrailer theDCCTrailer
 
CSCDDUHeader theDDUHeader
 
CSCDDUTrailer theDDUTrailer
 
uint16_t theDDUTrailer0
 
uint16_t theFormatVersion
 
int theSizeInWords
 

Detailed Description

Author
Rick Wilkinson
A. Tumanov

Definition at line 19 of file CSCDDUEventData.h.

Constructor & Destructor Documentation

◆ CSCDDUEventData() [1/2]

CSCDDUEventData::CSCDDUEventData ( const CSCDDUHeader header)
explicit

Definition at line 24 of file CSCDDUEventData.cc.

24 { theDDUHeader = header; }

References header(), and theDDUHeader.

◆ CSCDDUEventData() [2/2]

CSCDDUEventData::CSCDDUEventData ( const uint16_t *  buf,
CSCDCCExaminer examiner = nullptr 
)
explicit

Definition at line 26 of file CSCDDUEventData.cc.

26 { unpack_data(buf, examiner); }

References visDQMUpload::buf, and unpack_data().

◆ ~CSCDDUEventData()

CSCDDUEventData::~CSCDDUEventData ( )

Definition at line 28 of file CSCDDUEventData.cc.

28 {}

Member Function Documentation

◆ add()

void CSCDDUEventData::add ( CSCEventData ,
int  dmbId,
int  dduInput,
unsigned int  format_version = 2005 
)

for making events. Sets the bxnum and lvl1num inside the chamber event

Definition at line 30 of file CSCDDUEventData.cc.

30  {
31  theDDUHeader.setDMBDAV(dduInput);
32  //@@ Tim: The following sets the word which is supposed to be CSCs in error, with bit 15 set for DMB Full
33  //@@ so I think sim should not set it at all
34  //@@ theDDUTrailer.setDMBDAV(dmbId);
35  theDDUHeader.setDMBDAV(dduInput);
36  cscData.dmbHeader()->setdmbID(dmbId);
37  cscData.setEventInformation(theDDUHeader.bxnum(), theDDUHeader.lvl1num());
38  theData.push_back(cscData);
39 }

References CSCDDUHeader::bxnum(), cscData(), CSCDDUHeader::lvl1num(), CSCDDUHeader::setDMBDAV(), theData, and theDDUHeader.

Referenced by counter.Counter::register(), SequenceTypes.Task::remove(), and SequenceTypes.Task::replace().

◆ check()

bool CSCDDUEventData::check ( ) const

Definition at line 289 of file CSCDDUEventData.cc.

289  {
290  // the trailer counts in 64-bit words
291  if (debug) {
292  LogTrace("CSCDDUEventData|CSCRawToDigi") << sizeInWords();
293  LogTrace("CSCDDUEventData|CSCRawToDigi") << "wordcount = " << theDDUTrailer.wordcount() * 4;
294  }
295 
296  return theDDUHeader.check() && theDDUTrailer.check();
297 }

References CSCDDUTrailer::check(), CSCDDUHeader::check(), debug, LogTrace, sizeInWords(), theDDUHeader, theDDUTrailer, and CSCDDUTrailer::wordcount().

Referenced by CSCDCCEventData::unpack_data().

◆ cscData()

const std::vector<CSCEventData>& CSCDDUEventData::cscData ( ) const
inline

accessor to data

Definition at line 33 of file CSCDDUEventData.h.

33 { return theData; }

References theData.

Referenced by add(), CSCDDUDataItr::CSCDDUDataItr(), CSCDDUDataItr::operator*(), and cscdqm::EventProcessor::processDDU().

◆ dccHeader()

CSCDCCHeader CSCDDUEventData::dccHeader ( ) const
inline

Definition at line 39 of file CSCDDUEventData.h.

39 { return theDCCHeader; }

References theDCCHeader.

◆ dccTrailer()

CSCDCCTrailer CSCDDUEventData::dccTrailer ( ) const
inline

Definition at line 40 of file CSCDDUEventData.h.

40 { return theDCCTrailer; }

References theDCCTrailer.

◆ decodeStatus() [1/2]

void CSCDDUEventData::decodeStatus ( ) const

Definition at line 41 of file CSCDDUEventData.cc.

References CSCDDUTrailer::errorstat(), and theDDUTrailer.

Referenced by unpack_data().

◆ decodeStatus() [2/2]

void CSCDDUEventData::decodeStatus ( int  status) const

prints out the error associated with this status from the header or trailer

this is a mask for printing out errors

Definition at line 43 of file CSCDDUEventData.cc.

43  {
44  // JRG is Jason Gilmore
45  // JRG, low-order 16-bit status (most serious errors):
46  if ((code & errMask) > 0) {
47  // JRG, low-order 16-bit status (most serious errors):
48  if ((code & 0x0000F000) > 0) {
49  if ((0x00008000 & code) > 0)
50  LogTrace("CSCDDUEventData|CSCRawToDigi") << " DDU Critical Error, ** needs reset **";
51  if ((0x00004000 & code) > 0)
52  LogTrace("CSCDDUEventData|CSCRawToDigi") << " DDU Single Error, bad event";
53  if ((0x00002000 & code) > 0)
54  LogTrace("CSCDDUEventData|CSCRawToDigi") << " DDU Single Warning";
55  if ((0x00001000 & code) > 0)
56  LogTrace("CSCDDUEventData|CSCRawToDigi") << " DDU Near Full Warning";
57  }
58  if ((code & 0x00000F00) > 0) {
59  if ((0x00000800 & code) > 0)
60  LogTrace("CSCDDUEventData|CSCRawToDigi") << " DDU 64-bit Alignment Error";
61  if ((0x00000400 & code) > 0)
62  LogTrace("CSCDDUEventData|CSCRawToDigi") << " DDU Control DLL Error occured";
63  if ((0x00000200 & code) > 0)
64  LogTrace("CSCDDUEventData|CSCRawToDigi") << " DDU DMB Error occurred";
65  if ((0x00000100 & code) > 0)
66  LogTrace("CSCDDUEventData|CSCRawToDigi") << " DDU Lost In Event Error";
67  }
68  if ((code & 0x000000F0) > 0) {
69  if ((0x00000080 & code) > 0)
70  LogTrace("CSCDDUEventData|CSCRawToDigi") << " DDU Lost In Data Error occurred";
71  if ((0x00000040 & code) > 0)
72  LogTrace("CSCDDUEventData|CSCRawToDigi") << " DDU Timeout Error";
73  if ((0x00000020 & code) > 0)
74  LogTrace("CSCDDUEventData|CSCRawToDigi") << " TMB or ALCT CRC Error";
75  if ((0x00000010 & code) > 0)
76  LogTrace("CSCDDUEventData|CSCRawToDigi") << " DDU Multiple Transmit Errors";
77  }
78  if ((code & 0x0000000F) > 0) {
79  if ((0x00000008 & code) > 0)
80  LogTrace("CSCDDUEventData|CSCRawToDigi") << " DDU Sync Lost or FIFO Full Error";
81  if ((0x00000004 & code) > 0)
82  LogTrace("CSCDDUEventData|CSCRawToDigi") << " DDU Fiber/FIFO Connection Error";
83  if ((0x00000002 & code) > 0)
84  LogTrace("CSCDDUEventData|CSCRawToDigi") << " DDU L1A Match Error";
85  if ((0x00000001 & code) > 0)
86  LogTrace("CSCDDUEventData|CSCRawToDigi") << " DDU DMB or CFEB CRC Error";
87  }
88  if ((code & 0xF0000000) > 0) {
89  // JRG, high-order 16-bit status (not-so-serious errors):
90  if ((0x80000000 & code) > 0)
91  LogTrace("CSCDDUEventData|CSCRawToDigi") << " DDU DMB LCT/DAV/Movlp Mismatch";
92  if ((0x40000000 & code) > 0)
93  LogTrace("CSCDDUEventData|CSCRawToDigi") << " DDU-CFEB L1 Mismatch";
94  if ((0x20000000 & code) > 0)
95  LogTrace("CSCDDUEventData|CSCRawToDigi") << " DDU saw no good DMB CRCs";
96  if ((0x10000000 & code) > 0)
97  LogTrace("CSCDDUEventData|CSCRawToDigi") << " DDU CFEB Count Error";
98  }
99  if ((code & 0x0F000000) > 0) {
100  if ((0x08000000 & code) > 0)
101  LogTrace("CSCDDUEventData|CSCRawToDigi") << " DDU FirstDat Error";
102  if ((0x04000000 & code) > 0)
103  LogTrace("CSCDDUEventData|CSCRawToDigi") << " DDU L1A-FIFO Full Error";
104  if ((0x02000000 & code) > 0)
105  LogTrace("CSCDDUEventData|CSCRawToDigi") << " DDU Data Stuck in FIFO";
106  if ((0x01000000 & code) > 0)
107  LogTrace("CSCDDUEventData|CSCRawToDigi") << " DDU NoLiveFibers Error";
108  }
109  if ((code & 0x00F00000) > 0) {
110  if ((0x00800000 & code) > 0)
111  LogTrace("CSCDDUEventData|CSCRawToDigi") << " DDU Spwd single-bit Warning";
112  if ((0x00400000 & code) > 0)
113  LogTrace("CSCDDUEventData|CSCRawToDigi") << " DDU Input FPGA Error";
114  if ((0x00200000 & code) > 0)
115  LogTrace("CSCDDUEventData|CSCRawToDigi") << " DDU DAQ Stop bit set";
116  if ((0x00100000 & code) > 0)
117  LogTrace("CSCDDUEventData|CSCRawToDigi") << " DDU DAQ says Not Ready";
118  if ((0x00300000 & code) == 0x00200000)
119  LogTrace("CSCDDUEventData|CSCRawToDigi") << " DDU DAQ Applied Backpressure";
120  }
121  if ((code & 0x000F0000) > 0) {
122  if ((0x00080000 & code) > 0)
123  LogTrace("CSCDDUEventData|CSCRawToDigi") << " DDU TMB Error";
124  if ((0x00040000 & code) > 0)
125  LogTrace("CSCDDUEventData|CSCRawToDigi") << " DDU ALCT Error";
126  if ((0x00020000 & code) > 0)
127  LogTrace("CSCDDUEventData|CSCRawToDigi") << " DDU Trigger Readout Wordcount Error";
128  if ((0x00010000 & code) > 0)
129  LogTrace("CSCDDUEventData|CSCRawToDigi") << " DDU Trigger L1A Match Error";
130  }
131  }
132 }

References errMask, and LogTrace.

◆ header()

CSCDDUHeader CSCDDUEventData::header ( ) const
inline

Definition at line 35 of file CSCDDUEventData.h.

35 { return theDDUHeader; }

References theDDUHeader.

Referenced by CSCDDUEventData(), and cscdqm::EventProcessor::processDDU().

◆ pack()

boost::dynamic_bitset CSCDDUEventData::pack ( )

Alex check this 16 or 64.

returns packed event data

Definition at line 299 of file CSCDDUEventData.cc.

299  {
300  boost::dynamic_bitset<> result =
302  //std::cout <<"SANDRIK inside DDUEvdata check = ";
303  //theDDUHeader.check();
304  //std::cout <<std::endl;
305  //std::cout <<"printing out ddu header words"<<std::endl;
306  //for (unsigned int i=0;i<theDDUHeader.sizeInWords();i++) {
307  // unsigned short * buf = theDDUHeader.data();
308  // printf("%04x %04x %04x %04x\n",buf[i+3],buf[i+2],buf[i+1],buf[i]);
309  // i+=3;
310  //}
311  //std::cout <<"printing out ddu header words via bitset"<<std::endl;
312  //bitset_utilities::printWords(result);
313 
314  for (unsigned int i = 0; i < theData.size(); ++i) {
316  }
318  // 64-bit word count
320  boost::dynamic_bitset<> dduTrailer =
322  result = bitset_utilities::append(result, dduTrailer);
323 
324  return result;
325 }

References bitset_utilities::append(), CSCDDUTrailer::data(), CSCDDUHeader::data(), mps_fire::i, mps_fire::result, CSCDDUTrailer::setWordCount(), CSCDDUTrailer::sizeInWords(), CSCDDUHeader::sizeInWords(), theData, theDDUHeader, theDDUTrailer, theSizeInWords, and bitset_utilities::ushortToBitset().

◆ setDebug()

static void CSCDDUEventData::setDebug ( bool  value)
inlinestatic

Definition at line 29 of file CSCDDUEventData.h.

29 { debug = value; }

References debug, and relativeConstraints::value.

Referenced by CSCDCCUnpacker::CSCDCCUnpacker().

◆ setErrorMask()

static void CSCDDUEventData::setErrorMask ( unsigned int  value)
inlinestatic

Definition at line 30 of file CSCDDUEventData.h.

30 { errMask = value; }

References errMask, and relativeConstraints::value.

Referenced by CSCDCCUnpacker::CSCDCCUnpacker().

◆ size()

int CSCDDUEventData::size ( void  ) const
inline

◆ sizeInWords()

int CSCDDUEventData::sizeInWords ( ) const
inline

Definition at line 54 of file CSCDDUEventData.h.

54 { return theSizeInWords; }

References theSizeInWords.

Referenced by check(), cscdqm::EventProcessor::processDDU(), and CSCDCCEventData::unpack_data().

◆ trailer()

CSCDDUTrailer CSCDDUEventData::trailer ( ) const
inline

Definition at line 36 of file CSCDDUEventData.h.

36 { return theDDUTrailer; }

References theDDUTrailer.

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

◆ trailer0()

uint16_t CSCDDUEventData::trailer0 ( ) const
inline

Definition at line 37 of file CSCDDUEventData.h.

37 { return theDDUTrailer0; }

References theDDUTrailer0.

◆ unpack_data()

void CSCDDUEventData::unpack_data ( const uint16_t *  buf,
CSCDCCExaminer examiner = nullptr 
)
protected

a good test routine would be to unpack data, then pack it again.

To pack trailer 0

New Data Format 2013

Older Data format before 2013

Pack Trailer 0 (to access TTS)

Definition at line 134 of file CSCDDUEventData.cc.

134  {
135  // just to calculate length
136  const uint16_t* inputBuf = buf;
137  const uint16_t* inputBuf0 = buf;
138  theData.clear();
139  if (debug)
140  LogTrace("CSCDDUEventData|CSCRawToDigi") << "CSCDDUEventData::unpack_data() is called";
141  if (debug)
142  for (int i = 0; i < 6; ++i) {
143  LogTrace("CSCDDUEventData|CSCRawToDigi")
144  << i << std::hex << buf[4 * i + 3] << buf[4 * i + 2] << buf[4 * i + 1] << buf[4 * i];
145  std::cout << i << " " << std::hex << buf[4 * i + 3] << " " << buf[4 * i + 2] << " " << buf[4 * i + 1] << " "
146  << buf[4 * i] << std::endl;
147  }
148 
150 
151  if (debug) {
152  LogTrace("CSCDDUEventData|CSCRawToDigi") << "size of ddu header in words = " << theDDUHeader.sizeInWords();
153  LogTrace("CSCDDUEventData|CSCRawToDigi") << "sizeof(DDUHeader) = " << sizeof(theDDUHeader);
154  }
156 
157  // if (theDDUHeader.format_version() >= 0x6)
158  if (theDDUHeader.format_version() == 0x7)
159  {
160  theFormatVersion = 2013;
161  } else if (theDDUHeader.format_version() <= 0x6)
162  {
163  theFormatVersion = 2005;
164  } else // Add handling for any other format version
165  {
166  theFormatVersion = 2013;
167  }
168 
169  // we really don't want to copy CSCEventData's while filling the vec
170  theData.clear();
171  theData.reserve(theDDUHeader.ncsc());
172 
173  if (examiner != nullptr) { // Use selective unpacking mode
174 
175  if (debug)
176  LogTrace("CSCDDUEventData|CSCRawToDigi") << "selective unpacking starting";
177 
178  // Find this DDU in examiner's DDUs list
179  DDUIdType dduID = theDDUHeader.source_id();
180 
181  std::map<DDUIdType, std::map<CSCIdType, const uint16_t*> > ddus = examiner->DMB_block();
182  std::map<DDUIdType, std::map<CSCIdType, const uint16_t*> >::iterator ddu_itr = ddus.find(dduID);
183  const uint16_t* dduBlock = (const uint16_t*)((examiner->DDU_block())[dduID]);
184  uint32_t dduBufSize = (examiner->DDU_size())[dduID];
185 
186  if (ddu_itr != ddus.end() && dduBufSize != 0 && dduBlock == inputBuf) {
187  std::map<CSCIdType, const uint16_t*>& cscs = ddu_itr->second;
188  std::map<CSCIdType, const uint16_t*>::iterator csc_itr;
189 
190  for (csc_itr = cscs.begin(); csc_itr != cscs.end(); ++csc_itr) {
191  short cscid = csc_itr->first;
192 
193  if (cscid != -1) {
194  const uint16_t* pos = (const uint16_t*)csc_itr->second;
195 
196  ExaminerStatusType errors = examiner->errorsForChamber(cscid);
197  if ((errors & examiner->getMask()) > 0) {
198  if (debug)
199  LogTrace("CSCDDUEventData|CSCRawToDigi")
200  << "skip unpacking of CSC " << cscid << " due format errors: 0x" << std::hex << errors << std::dec;
201  continue;
202  }
203 
205  }
206  }
207 
208  if (debug) {
209  LogTrace("CSCDDUEventData|CSCRawToDigi") << "size of vector of cscData = " << theData.size();
210  }
211  // decode ddu tail
212  theDDUTrailer.setFromBuffer(inputBuf + dduBufSize);
213  // memcpy(&theDDUTrailer, dduBlock+(dduBufSize-theDDUTrailer.sizeInWords())*2, theDDUTrailer.sizeInWords()*2);
214  if (debug)
215  LogTrace("CSCDDUEventData|CSCRawToDigi") << theDDUTrailer.check();
217  if ((errorstat & errMask) != 0) {
218  if (theDDUTrailer.check()) {
219  if (debug)
220  LogTrace("CSCDDUEventData|CSCRawToDigi")
221  << "+++ CSCDDUEventData warning: DDU Trailer errors = " << std::hex << errorstat << " +++ ";
222  if (debug)
224  } else {
225  if (debug)
226  LogTrace("CSCDDUEventData|CSCRawToDigi")
227  << " Unpacking lost DDU trailer - check() failed and 8 8 ffff 8 was not found ";
228  }
229  }
230 
231  if (debug) {
232  LogTrace("CSCDDUEventData|CSCRawToDigi") << " Final errorstat " << std::hex << errorstat << std::dec;
233  }
234  // the trailer counts in 64-bit words
235 
236  // theSizeInWords = dduBufSize;
237  // buf=inputBuf+dduBufSize;
238  }
239  theSizeInWords = dduBufSize + 12;
240 
241  } else {
242  while ((((buf[0] & 0xf000) == 0x9000) || ((buf[0] & 0xf000) == 0xa000)) && (buf[3] != 0x8000)) {
243  // ++i;
244  if (debug)
245  LogTrace("CSCDDUEventData|CSCRawToDigi") << "unpack csc data loop started";
246  theData.push_back(CSCEventData(buf));
247  buf += (theData.back()).size();
248  if (debug) {
249  LogTrace("CSCDDUEventData|CSCRawToDigi") << "size of vector of cscData = " << theData.size();
250  }
251  }
252 
253  if (debug) {
254  LogTrace("CSCDDUEventData|CSCRawToDigi") << "unpacking ddu trailer ";
255  LogTrace("CSCDDUEventData|CSCRawToDigi") << std::hex << buf[3] << " " << buf[2] << " " << buf[1] << " " << buf[0];
256  }
257 
258  // decode ddu tail
260  if (debug)
261  LogTrace("CSCDDUEventData|CSCRawToDigi") << theDDUTrailer.check();
263  if ((errorstat & errMask) != 0) {
264  if (theDDUTrailer.check()) {
265  if (debug)
266  LogTrace("CSCDDUEventData|CSCRawToDigi")
267  << "+++ CSCDDUEventData warning: DDU Trailer errors = " << std::hex << errorstat << " +++ ";
268  if (debug)
270  } else {
271  if (debug)
272  LogTrace("CSCDDUEventData|CSCRawToDigi")
273  << " Unpacking lost DDU trailer - check() failed and 8 8 ffff 8 was not found ";
274  }
275  }
276 
277  if (debug)
278  LogTrace("CSCDDUEventData|CSCRawToDigi") << " Final errorstat " << std::hex << errorstat << std::dec;
279  // the trailer counts in 64-bit words
281 
282  theSizeInWords = buf - inputBuf;
283  }
284 
286  theDDUTrailer0 = inputBuf0[theSizeInWords - 4];
287 }

References visDQMUpload::buf, CSCDDUTrailer::check(), gather_cfg::cout, CSCDCCExaminer::DDU_block(), CSCDCCExaminer::DDU_size(), debug, TauDecayModes::dec, decodeStatus(), CSCDCCExaminer::DMB_block(), errMask, CSCDCCExaminer::errorsForChamber(), CSCDDUTrailer::errorstat(), errorstat, CSCDDUHeader::format_version(), CSCDCCExaminer::getMask(), mps_fire::i, LogTrace, CSCDDUHeader::ncsc(), CSCDDUHeader::setFromBuffer(), CSCDDUTrailer::setFromBuffer(), size(), CSCDDUTrailer::sizeInWords(), CSCDDUHeader::sizeInWords(), CSCDDUHeader::source_id(), theData, theDDUHeader, theDDUTrailer, theDDUTrailer0, theFormatVersion, and theSizeInWords.

Referenced by CSCDDUEventData().

Member Data Documentation

◆ debug

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

◆ errMask

std::atomic< uint32_t > CSCDDUEventData::errMask {0xFFFFFFFF}
static

Definition at line 65 of file CSCDDUEventData.h.

Referenced by decodeStatus(), setErrorMask(), and unpack_data().

◆ errorstat

long unsigned int CSCDDUEventData::errorstat

trailer info

Definition at line 46 of file CSCDDUEventData.h.

Referenced by unpack_data().

◆ theData

std::vector<CSCEventData> CSCDDUEventData::theData
protected

Definition at line 74 of file CSCDDUEventData.h.

Referenced by add(), cscData(), pack(), and unpack_data().

◆ theDCCHeader

CSCDCCHeader CSCDDUEventData::theDCCHeader
protected

Definition at line 71 of file CSCDDUEventData.h.

Referenced by dccHeader().

◆ theDCCTrailer

CSCDCCTrailer CSCDDUEventData::theDCCTrailer
protected

Definition at line 76 of file CSCDDUEventData.h.

Referenced by dccTrailer().

◆ theDDUHeader

CSCDDUHeader CSCDDUEventData::theDDUHeader
protected

Definition at line 72 of file CSCDDUEventData.h.

Referenced by add(), check(), CSCDDUEventData(), header(), pack(), and unpack_data().

◆ theDDUTrailer

CSCDDUTrailer CSCDDUEventData::theDDUTrailer
protected

Definition at line 75 of file CSCDDUEventData.h.

Referenced by check(), decodeStatus(), pack(), trailer(), and unpack_data().

◆ theDDUTrailer0

uint16_t CSCDDUEventData::theDDUTrailer0
protected

Definition at line 77 of file CSCDDUEventData.h.

Referenced by trailer0(), and unpack_data().

◆ theFormatVersion

uint16_t CSCDDUEventData::theFormatVersion
protected

Definition at line 79 of file CSCDDUEventData.h.

Referenced by unpack_data().

◆ theSizeInWords

int CSCDDUEventData::theSizeInWords
protected

Definition at line 78 of file CSCDDUEventData.h.

Referenced by pack(), size(), sizeInWords(), and unpack_data().

CSCDDUTrailer::setWordCount
void setWordCount(unsigned wordcount)
Definition: CSCDDUTrailer.h:38
CSCDDUEventData::theDDUTrailer
CSCDDUTrailer theDDUTrailer
Definition: CSCDDUEventData.h:75
mps_fire.i
i
Definition: mps_fire.py:428
CSCDDUEventData::theDCCHeader
CSCDCCHeader theDCCHeader
Definition: CSCDDUEventData.h:71
CSCEventData
Definition: CSCEventData.h:29
CSCDDUEventData::cscData
const std::vector< CSCEventData > & cscData() const
accessor to data
Definition: CSCDDUEventData.h:33
CSCDDUHeader::bxnum
int bxnum() const
Definition: CSCDDUHeader.h:23
CSCDDUHeader::check
bool check() const
Definition: CSCDDUHeader.cc:43
CSCDDUHeader::lvl1num
int lvl1num() const
Definition: CSCDDUHeader.h:24
gather_cfg.cout
cout
Definition: gather_cfg.py:144
pos
Definition: PixelAliasList.h:18
CSCDDUEventData::debug
static std::atomic< bool > debug
Definition: CSCDDUEventData.h:64
CSCDDUHeader::setDMBDAV
void setDMBDAV(int dduInput)
Definition: CSCDDUHeader.cc:26
CSCDCCExaminer::DMB_block
std::map< DDUIdType, std::map< CSCIdType, const uint16_t * > > DMB_block(void) const
Definition: CSCDCCExaminer.h:317
bitset_utilities::append
boost::dynamic_bitset append(const boost::dynamic_bitset<> &bs1, const boost::dynamic_bitset<> &bs2)
this method takes two bitsets bs1 and bs2 and returns result of bs2 appended to the end of bs1
Definition: bitset_append.cc:10
CSCDDUTrailer::check
bool check() const
Definition: CSCDDUTrailer.h:25
CSCDDUEventData::header
CSCDDUHeader header() const
Definition: CSCDDUEventData.h:35
CSCDDUEventData::size
int size() const
Definition: CSCDDUEventData.h:55
CSCDDUHeader::sizeInWords
static unsigned sizeInWords()
Definition: CSCDDUHeader.h:31
errors
Definition: errors.py:1
CSCDDUTrailer::errorstat
unsigned errorstat() const
Definition: CSCDDUTrailer.h:36
CSCDDUEventData::pack
boost::dynamic_bitset pack()
Alex check this 16 or 64.
Definition: CSCDDUEventData.cc:299
CSCDDUEventData::theSizeInWords
int theSizeInWords
Definition: CSCDDUEventData.h:78
CSCDDUEventData::theDCCTrailer
CSCDCCTrailer theDCCTrailer
Definition: CSCDDUEventData.h:76
CSCDCCExaminer::getMask
ExaminerMaskType getMask() const
Definition: CSCDCCExaminer.h:167
DDUIdType
int16_t DDUIdType
Definition: CSCDCCFormatStatusDigi.h:33
CSCDDUEventData::errorstat
long unsigned int errorstat
trailer info
Definition: CSCDDUEventData.h:46
CSCDDUHeader::setFromBuffer
void setFromBuffer(uint16_t const *buf)
Definition: CSCDDUHeader.h:17
CSCDDUHeader::ncsc
int ncsc() const
Definition: CSCDDUHeader.h:26
CSCDDUEventData::unpack_data
void unpack_data(const uint16_t *buf, CSCDCCExaminer *examiner=nullptr)
a good test routine would be to unpack data, then pack it again.
Definition: CSCDDUEventData.cc:134
CSCDCCExaminer::DDU_block
std::map< DDUIdType, const uint16_t * > DDU_block(void) const
Definition: CSCDCCExaminer.h:316
CSCDDUEventData::theDDUHeader
CSCDDUHeader theDDUHeader
Definition: CSCDDUEventData.h:72
visDQMUpload.buf
buf
Definition: visDQMUpload.py:154
CSCDDUEventData::theDDUTrailer0
uint16_t theDDUTrailer0
Definition: CSCDDUEventData.h:77
CSCDDUEventData::errMask
static std::atomic< unsigned int > errMask
Definition: CSCDDUEventData.h:65
CSCDDUHeader::data
unsigned short * data()
Definition: CSCDDUHeader.h:44
CSCDCCExaminer::DDU_size
std::map< DDUIdType, uint32_t > DDU_size(void) const
Definition: CSCDCCExaminer.h:322
CSCDDUEventData::theFormatVersion
uint16_t theFormatVersion
Definition: CSCDDUEventData.h:79
bitset_utilities::ushortToBitset
boost::dynamic_bitset ushortToBitset(const unsigned int numberOfBits, unsigned short *buf)
this method takes numberOfBits bits from unsigned short * array and returns them in the bitset obj.
Definition: bitset_append.cc:23
relativeConstraints.value
value
Definition: relativeConstraints.py:53
CSCDDUTrailer::sizeInWords
static unsigned sizeInWords()
Definition: CSCDDUTrailer.h:23
CSCDDUTrailer::data
unsigned short * data()
Definition: CSCDDUTrailer.h:32
CSCDDUEventData::decodeStatus
void decodeStatus() const
Definition: CSCDDUEventData.cc:41
CSCDDUEventData::sizeInWords
int sizeInWords() const
Definition: CSCDDUEventData.h:54
mps_fire.result
result
Definition: mps_fire.py:311
CSCDDUHeader::format_version
int format_version() const
Definition: CSCDDUHeader.h:21
CSCDCCExaminer::errorsForChamber
ExaminerStatusType errorsForChamber(CSCIdType chamber) const
Definition: CSCDCCExaminer.h:253
LogTrace
#define LogTrace(id)
Definition: MessageLogger.h:234
CSCDDUTrailer::setFromBuffer
void setFromBuffer(uint16_t const *buf)
Definition: CSCDDUTrailer.h:21
CSCDDUTrailer::wordcount
unsigned wordcount() const
Definition: CSCDDUTrailer.h:37
CSCDDUEventData::theData
std::vector< CSCEventData > theData
Definition: CSCDDUEventData.h:74
ExaminerStatusType
uint32_t ExaminerStatusType
Definition: CSCDCCFormatStatusDigi.h:40
CSCDDUHeader::source_id
int source_id() const
Definition: CSCDDUHeader.h:22
TauDecayModes.dec
dec
Definition: TauDecayModes.py:143