CMS 3D CMS Logo

RegionalMuonRawDigiTranslator.h
Go to the documentation of this file.
1 #ifndef RegionalMuonRawDigiTranslator_h
2 #define RegionalMuonRawDigiTranslator_h
3 
5 
6 namespace l1t {
8  public:
9  static void fillRegionalMuonCand(RegionalMuonCand&, uint32_t, uint32_t, int, tftype);
11  static void generatePackedDataWords(const RegionalMuonCand&, uint32_t&, uint32_t&);
13 
14  static const unsigned ptMask_ = 0x1FF;
15  static const unsigned ptShift_ = 0;
16  static const unsigned qualMask_ = 0xF;
17  static const unsigned qualShift_ = 9;
18  static const unsigned absEtaMask_ = 0xFF;
19  static const unsigned absEtaShift_ = 13;
20  static const unsigned etaSignShift_ = 21;
21  static const unsigned hfMask_ = 0x1;
22  static const unsigned hfShift_ = 22;
23  static const unsigned absPhiMask_ = 0x7F;
24  static const unsigned absPhiShift_ = 23;
25  static const unsigned phiSignShift_ = 30;
26  static const unsigned signShift_ = 0;
27  static const unsigned signValidShift_ = 1;
28  static const unsigned trackAddressMask_ = 0x1FFFFFFF;
29  static const unsigned trackAddressShift_ = 2;
30  // relative shifts within track address
31  static const unsigned bmtfTrAddrSegSelMask_ = 0xF;
32  static const unsigned bmtfTrAddrSegSelShift_ = 21;
33  static const unsigned bmtfTrAddrDetSideShift_ = 20;
34  static const unsigned bmtfTrAddrWheelMask_ = 0x3;
35  static const unsigned bmtfTrAddrWheelShift_ = 18;
36  static const unsigned bmtfTrAddrStat1Mask_ = 0x3;
37  static const unsigned bmtfTrAddrStat1Shift_ = 14;
38  static const unsigned bmtfTrAddrStat2Mask_ = 0xF;
39  static const unsigned bmtfTrAddrStat2Shift_ = 10;
40  static const unsigned bmtfTrAddrStat3Mask_ = 0xF;
41  static const unsigned bmtfTrAddrStat3Shift_ = 6;
42  static const unsigned bmtfTrAddrStat4Mask_ = 0xF;
43  static const unsigned bmtfTrAddrStat4Shift_ = 2;
44 
45  static const unsigned emtfTrAddrMe1SegShift_ = 0;
46  static const unsigned emtfTrAddrMe1ChShift_ = 1;
47  static const unsigned emtfTrAddrMe1ChMask_ = 0x7;
48  static const unsigned emtfTrAddrMe2SegShift_ = 4;
49  static const unsigned emtfTrAddrMe2ChShift_ = 5;
50  static const unsigned emtfTrAddrMe2ChMask_ = 0x7;
51  static const unsigned emtfTrAddrMe3SegShift_ = 8;
52  static const unsigned emtfTrAddrMe3ChShift_ = 9;
53  static const unsigned emtfTrAddrMe3ChMask_ = 0x7;
54  static const unsigned emtfTrAddrMe4SegShift_ = 12;
55  static const unsigned emtfTrAddrMe4ChShift_ = 13;
56  static const unsigned emtfTrAddrMe4ChMask_ = 0x7;
57  static const unsigned emtfTrAddrTrkNumShift_ = 16;
58  static const unsigned emtfTrAddrTrkNumMask_ = 0x3;
59  static const unsigned emtfTrAddrBxShift_ = 18;
60  static const unsigned emtfTrAddrBxMask_ = 0x7FF;
61  };
62 }
63 
64 #endif
static void generatePackedDataWords(const RegionalMuonCand &, uint32_t &, uint32_t &)
delete x;
Definition: CaloConfig.h:22
unsigned long long uint64_t
Definition: Time.h:15
static void fillRegionalMuonCand(RegionalMuonCand &, uint32_t, uint32_t, int, tftype)
static uint64_t generate64bitDataWord(const RegionalMuonCand &)