CMS 3D CMS Logo

MuonUnpacker.h
Go to the documentation of this file.
1 #ifndef L1T_PACKER_STAGE2_MUONUNPACKER_H
2 #define L1T_PACKER_STAGE2_MUONUNPACKER_H
3 
6 #include "L1TObjectCollections.h"
7 
8 namespace l1t {
9  namespace stage2 {
10  class MuonUnpacker : public Unpacker {
11  public:
12  MuonUnpacker();
13  ~MuonUnpacker() override {}
14 
15  bool unpack(const Block& block, UnpackerCollections* coll) override;
16 
17  inline int getFedNumber() { return fed_; };
18  inline unsigned int getMuonCopy() { return muonCopy_; };
19 
20  inline void setFedNumber(const int fed) { fed_ = fed; };
21  inline void setMuonCopy(const unsigned int copy) { muonCopy_ = copy; };
22 
23  private:
24  static constexpr unsigned nWords_ = 6; // every link transmits 6 words (3 muons) per bx
25  static constexpr unsigned bxzs_enable_shift_ = 1;
26 
29  int fed_;
30  unsigned int muonCopy_;
31 
32  void unpackBx(int bx, const std::vector<uint32_t>& payload, unsigned int blockID, unsigned int startIdx = 0);
33  };
34  } // namespace stage2
35 } // namespace l1t
36 
37 #endif
void unpackBx(int bx, const std::vector< uint32_t > &payload, unsigned int blockID, unsigned int startIdx=0)
Definition: MuonUnpacker.cc:60
static constexpr unsigned bxzs_enable_shift_
Definition: MuonUnpacker.h:25
static constexpr unsigned nWords_
Definition: MuonUnpacker.h:24
delete x;
Definition: CaloConfig.h:22
bool unpack(const Block &block, UnpackerCollections *coll) override
Definition: MuonUnpacker.cc:13
MuonShowerBxCollection * muonShowerCollection_
Definition: MuonUnpacker.h:28
void setMuonCopy(const unsigned int copy)
Definition: MuonUnpacker.h:21
MuonBxCollection * muonCollection_
Definition: MuonUnpacker.h:27
unsigned int getMuonCopy()
Definition: MuonUnpacker.h:18
void setFedNumber(const int fed)
Definition: MuonUnpacker.h:20