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 
32 
34 
35 // forward declarations
39 
40 class L1GtfeWord;
41 class L1GtFdlWord;
42 class L1GtPsbWord;
43 
44 // class declaration
46 {
47 
48 public:
49 
51  explicit L1GTDigiToRaw(const edm::ParameterSet&);
52 
53 private:
54 
56  void produce(edm::Event&, const edm::EventSetup&) override;
57 
59 
61  void packHeader(unsigned char*, edm::Event&);
62 
66  void packGTFE(const edm::EventSetup&, unsigned char*, L1GtfeWord&,
67  cms_uint16_t activeBoardsGtValue);
68 
70  void packFDL(const edm::EventSetup&, unsigned char*, L1GtFdlWord&);
71 
74  void packPSB(const edm::EventSetup&, unsigned char*, L1GtPsbWord&);
75 
77  unsigned int packGmtCollection(
78  unsigned char* ptrGt,
79  L1MuGMTReadoutCollection const* digis);
80 
82  unsigned int packGMT(L1MuGMTReadoutRecord const&, unsigned char*);
83  unsigned int flipPtQ(unsigned int);
84 
86  void packTrailer(unsigned char*, unsigned char*, int);
87 
88 private:
89 
93 
96 
101 
104 
107 
111 
115 
116 private:
117 
121 
122 };
123 
124 #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:98
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
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:95
const edm::InputTag m_daqGtInputTag
Definition: L1GTDigiToRaw.h:99
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)
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)