CMS 3D CMS Logo

L1GTDigiToRaw.h
Go to the documentation of this file.
1 #ifndef EventFilter_L1GlobalTriggerRawToDigi_L1GTDigiToRaw_h
2 #define EventFilter_L1GlobalTriggerRawToDigi_L1GTDigiToRaw_h
3 
19 // system include files
20 #include <memory>
21 
22 // user include files
25 
28 
33 
37 
38 // forward declarations
42 
43 class L1GtfeWord;
44 class L1GtFdlWord;
45 class L1GtPsbWord;
46 
47 // class declaration
49 public:
51  explicit L1GTDigiToRaw(const edm::ParameterSet&);
52 
53 private:
55  void produce(edm::Event&, const edm::EventSetup&) override;
56 
58 
60  void packHeader(unsigned char*, edm::Event&);
61 
65  void packGTFE(const edm::EventSetup&, unsigned char*, L1GtfeWord&, cms_uint16_t activeBoardsGtValue);
66 
68  void packFDL(const edm::EventSetup&, unsigned char*, L1GtFdlWord&);
69 
72  void packPSB(const edm::EventSetup&, unsigned char*, L1GtPsbWord&);
73 
75  unsigned int packGmtCollection(unsigned char* ptrGt, L1MuGMTReadoutCollection const* digis);
76 
78  unsigned int packGMT(L1MuGMTReadoutRecord const&, unsigned char*);
79  unsigned int flipPtQ(unsigned int);
80 
82  void packTrailer(unsigned char*, unsigned char*, int);
83 
84 private:
88 
91 
96 
99 
102 
105 
109 
113 
114 private:
118 };
119 
120 #endif // EventFilter_L1GlobalTriggerRawToDigi_L1GTDigiToRaw_h
void packFDL(const edm::EventSetup &, unsigned char *, L1GtFdlWord &)
pack FDL blocks for various bunch crosses
const edm::EDGetTokenT< L1MuGMTReadoutCollection > m_muGmtInputToken
input tag for GMT record
Definition: L1GTDigiToRaw.h:93
void packHeader(unsigned char *, edm::Event &)
block packers -------——
cms_uint16_t m_activeBoardsMaskGt
mask for active boards
void packPSB(const edm::EventSetup &, unsigned char *, L1GtPsbWord &)
unsigned int packGMT(L1MuGMTReadoutRecord const &, unsigned char *)
pack a GMT record
const edm::InputTag m_muGmtInputTag
Definition: L1GTDigiToRaw.h:95
void packTrailer(unsigned char *, unsigned char *, int)
pack trailer word
unsigned short cms_uint16_t
Definition: typedefs.h:13
const edm::EDGetTokenT< L1GlobalTriggerReadoutRecord > m_daqGtInputToken
input tag for GT DAQ record
Definition: L1GTDigiToRaw.h:90
const edm::InputTag m_daqGtInputTag
Definition: L1GTDigiToRaw.h:94
unsigned int packGmtCollection(unsigned char *ptrGt, L1MuGMTReadoutCollection const *digis)
pack the GMT collection using packGMT (GMT record packing)
void packGTFE(const edm::EventSetup &, unsigned char *, L1GtfeWord &, cms_uint16_t activeBoardsGtValue)
unsigned int flipPtQ(unsigned int)
const edm::ESGetToken< L1GtBoardMaps, L1GtBoardMapsRcd > m_l1GtBMToken
EventSetup Token for L1GtBoardMaps.
Definition: L1GTDigiToRaw.h:98
void produce(edm::Event &, const edm::EventSetup &) override
loop over events
int m_verbosity
verbosity level
int m_totalBxInEvent
total Bx&#39;s in the event, obtained from GTFE block
L1GTDigiToRaw(const edm::ParameterSet &)
constructor(s)