CMS 3D CMS Logo

L1MuGMTPhiProjectionUnit.h
Go to the documentation of this file.
1 //-------------------------------------------------
2 //
3 
12 //
13 //
14 // Author :
15 // H. Sakulin CERN EP
16 //
17 // Migrated to CMSSW:
18 // I. Mikulec
19 //
20 //--------------------------------------------------
21 #ifndef L1TriggerGlobalMuonTrigger_L1MuGMTPhiProjectionUnit_h
22 #define L1TriggerGlobalMuonTrigger_L1MuGMTPhiProjectionUnit_h
23 
24 //---------------
25 // C++ Headers --
26 //---------------
27 
28 #include <vector>
29 #include <bitset>
30 
31 //----------------------
32 // Base Class Headers --
33 //----------------------
34 
35 
36 //------------------------------------
37 // Collaborating Class Declarations --
38 //------------------------------------
39 
43 
44 class L1MuGMTMipIsoAU;
45 class L1MuGMTCand;
46 
47 
48 // ---------------------
49 // -- Class Interface --
50 // ---------------------
51 
52 
54 
55  public:
56 
58  L1MuGMTPhiProjectionUnit(const L1MuGMTMipIsoAU& miau, int id);
59 
61  virtual ~L1MuGMTPhiProjectionUnit();
62 
64  void run();
65 
67  void reset();
68 
70  void print() const;
71 
73  inline int id() const { return m_id; }
74 
76  inline bool isSelected(int idx) const { return m_phi_select[idx]; }
77 
78  private:
79 
80  void load();
81 
82  private:
83  typedef std::bitset<18> TPhiBits;
84 
86 
87  // index: (0..31: 16*isFWD + 8*isISO + 4* isRPC + nr )
88  int m_id;
89 
91 
92  int m_iphi; // region index of central region
93  float m_fphi; // fine grain phi inside central region
94 
95  TPhiBits m_phi_select;
96 };
97 
98 #endif
void print() const
print results after phi projection
virtual ~L1MuGMTPhiProjectionUnit()
destructor
L1MuGMTPhiProjectionUnit(const L1MuGMTMipIsoAU &miau, int id)
constructor
void run()
run phi projection unit
const L1MuGMTMipIsoAU & m_MIAU
void reset()
clear phi projection unit
bool isSelected(int idx) const
return phi select bit (idx: 0..17)
const L1MuRegionalCand * m_mu
int id() const
return identifier