File indexing completed on 2024-04-06 12:19:57
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021 #ifndef L1TriggerGlobalMuonTrigger_L1MuGMTPhiProjectionUnit_h
0022 #define L1TriggerGlobalMuonTrigger_L1MuGMTPhiProjectionUnit_h
0023
0024
0025
0026
0027
0028 #include <vector>
0029 #include <bitset>
0030
0031
0032
0033
0034
0035
0036
0037
0038
0039 #include "L1Trigger/GlobalMuonTrigger/src/L1MuGMTConfig.h"
0040 #include "L1Trigger/GlobalMuonTrigger/src/L1MuGMTMatrix.h"
0041 #include "DataFormats/L1GlobalMuonTrigger/interface/L1MuRegionalCand.h"
0042
0043 class L1MuGMTMipIsoAU;
0044 class L1MuGMTCand;
0045
0046
0047
0048
0049
0050 class L1MuGMTPhiProjectionUnit {
0051 public:
0052
0053 L1MuGMTPhiProjectionUnit(const L1MuGMTMipIsoAU& miau, int id);
0054
0055
0056 virtual ~L1MuGMTPhiProjectionUnit();
0057
0058
0059 void run();
0060
0061
0062 void reset();
0063
0064
0065 void print() const;
0066
0067
0068 inline int id() const { return m_id; }
0069
0070
0071 inline bool isSelected(int idx) const { return m_phi_select[idx]; }
0072
0073 private:
0074 void load();
0075
0076 private:
0077 typedef std::bitset<18> TPhiBits;
0078
0079 const L1MuGMTMipIsoAU& m_MIAU;
0080
0081
0082 int m_id;
0083
0084 const L1MuRegionalCand* m_mu;
0085
0086 int m_iphi;
0087 float m_fphi;
0088
0089 TPhiBits m_phi_select;
0090 };
0091
0092 #endif