CMS 3D CMS Logo

CSCDCCEventData.h
Go to the documentation of this file.
1 
3 #ifndef CSCDCCEventData_h
4 #define CSCDCCEventData_h
5 
6 #include <vector>
7 #include <boost/dynamic_bitset.hpp>
12 
14 public:
15  CSCDCCEventData(int sourceId, int nDDUs, int bx, int l1a);
18  explicit CSCDCCEventData(unsigned short *buf, CSCDCCExaminer* examiner=nullptr);
19 
21 
22  static void setDebug(bool value) {debug = value;}
23 
25  const std::vector<CSCDDUEventData> & dduData() const {return theDDUData;}
26  std::vector<CSCDDUEventData> & dduData() {return theDDUData;}
27 
30 
31 
33  //void add(CSCEventData &);
34 
35  bool check() const;
36 
39  int sizeInWords() const {return theSizeInWords;}
40 
41  void addChamber(CSCEventData & chamber, int dduID, int dduSlot, int dduInput, int dmbID, uint16_t format_version = 2005);
42 
44  boost::dynamic_bitset<> pack();
45 
46 #ifdef LOCAL_UNPACK
47  static bool debug;
48 #else
49  static std::atomic<bool> debug;
50 #endif
51 
52 
53 protected:
54  void unpack_data(unsigned short * buf, CSCDCCExaminer* examiner=nullptr);
56  // DDUData is unpacked and stored in this vector
57  std::vector<CSCDDUEventData> theDDUData;
60 
61 };
62 
63 #endif
01/20/05 A.Tumanov
bool check() const
for making events. Sets the bxnum and lvl1num inside the chamber event
CSCDCCHeader theDCCHeader
int sizeInWords() const
const std::vector< CSCDDUEventData > & dduData() const
accessor to dduData
CSCDCCTrailer theDCCTrailer
CSCDCCTrailer dccTrailer() const
boost::dynamic_bitset pack()
packs data into bits
static std::atomic< bool > debug
CSCDCCHeader dccHeader() const
std::vector< CSCDDUEventData > theDDUData
static void setDebug(bool value)
Definition: value.py:1
void addChamber(CSCEventData &chamber, int dduID, int dduSlot, int dduInput, int dmbID, uint16_t format_version=2005)
CSCDCCEventData(int sourceId, int nDDUs, int bx, int l1a)
std::vector< CSCDDUEventData > & dduData()
void unpack_data(unsigned short *buf, CSCDCCExaminer *examiner=0)