CMS 3D CMS Logo

L1MuGMTPSB.h
Go to the documentation of this file.
1 //-------------------------------------------------
2 //
12 //
13 //
14 // Author :
15 // N. Neumeister CERN EP
16 //
17 // Migrated to CMSSW:
18 // I. Mikulec
19 //
20 //--------------------------------------------------
21 #ifndef L1TriggerGlobalMuonTrigger_L1MuGMTPSB_h
22 #define L1TriggerGlobalMuonTrigger_L1MuGMTPSB_h
23 
24 //---------------
25 // C++ Headers --
26 //---------------
27 
28 #include <vector>
29 
30 //----------------------
31 // Base Class Headers --
32 //----------------------
33 
38 
39 //------------------------------------
40 // Collaborating Class Declarations --
41 //------------------------------------
42 
44 
45 // ---------------------
46 // -- Class Interface --
47 // ---------------------
48 
49 class L1MuGMTPSB {
50 public:
53 
55  virtual ~L1MuGMTPSB();
56 
58  void receiveData(edm::Event& e, int bx);
59 
61  void reset();
62 
64  void print() const;
65 
67  const L1MuRegionalCand* RPCMuon(int index) const;
68 
70  const L1MuRegionalCand* DTBXMuon(int index) const;
71 
73  const L1MuRegionalCand* CSCMuon(int index) const;
74 
76  int numberRPC() const;
77 
79  int numberDTBX() const;
80 
82  int numberCSC() const;
83 
85  bool empty() const;
86 
88  const L1MuGMTMatrix<bool>& isolBits() const { return m_Isol; }
89 
91  const L1MuGMTMatrix<bool>& mipBits() const { return m_Mip; }
92 
93 private:
95  void getRPCb(std::vector<L1MuRegionalCand> const* data, int bx);
96 
98  void getRPCf(std::vector<L1MuRegionalCand> const* data, int bx);
99 
101  void getDTBX(std::vector<L1MuRegionalCand> const* data, int bx);
102 
104  void getCSC(std::vector<L1MuRegionalCand> const* data, int bx);
105 
107  void getCalo(edm::Event& e);
108 
110  void printRPCbarrel() const;
111 
113  void printRPCendcap() const;
114 
116  void printDTBX() const;
117 
119  void printCSC() const;
120 
121 private:
123 
124  std::vector<L1MuRegionalCand> m_RpcMuons;
125  std::vector<L1MuRegionalCand> m_DtbxMuons;
126  std::vector<L1MuRegionalCand> m_CscMuons;
127 
130 };
131 
132 #endif
void getRPCf(std::vector< L1MuRegionalCand > const *data, int bx)
get muons from RPCf Trigger
Definition: L1MuGMTPSB.cc:313
int numberDTBX() const
return number of non-empty DTBX muons
Definition: L1MuGMTPSB.cc:259
void print() const
print PSB
Definition: L1MuGMTPSB.cc:212
void getCSC(std::vector< L1MuRegionalCand > const *data, int bx)
get muons from endcap Muon Trigger Track Finder
Definition: L1MuGMTPSB.cc:353
bool empty() const
are there any data in the PSB
Definition: L1MuGMTPSB.cc:287
void getCalo(edm::Event &e)
get Calorimeter Trigger data
Definition: L1MuGMTPSB.cc:417
const L1MuGlobalMuonTrigger & m_gmt
Definition: L1MuGMTPSB.h:122
void reset()
clear PSB
Definition: L1MuGMTPSB.cc:191
int numberRPC() const
return number of non-empty RPC muons
Definition: L1MuGMTPSB.cc:245
L1MuGMTPSB(const L1MuGlobalMuonTrigger &gmt, edm::ConsumesCollector &&iC)
constructor
Definition: L1MuGMTPSB.cc:52
const L1MuRegionalCand * CSCMuon(int index) const
get CSC muon
Definition: L1MuGMTPSB.cc:238
void printDTBX() const
print DTBX muons
Definition: L1MuGMTPSB.cc:393
const L1MuRegionalCand * RPCMuon(int index) const
get RPC muon
Definition: L1MuGMTPSB.cc:224
virtual ~L1MuGMTPSB()
destructor
Definition: L1MuGMTPSB.cc:72
std::vector< L1MuRegionalCand > m_CscMuons
Definition: L1MuGMTPSB.h:126
L1MuGMTMatrix< bool > m_Isol
Definition: L1MuGMTPSB.h:128
void printRPCbarrel() const
print barrel RPC muons
Definition: L1MuGMTPSB.cc:369
void getRPCb(std::vector< L1MuRegionalCand > const *data, int bx)
get muons from RPCb Trigger
Definition: L1MuGMTPSB.cc:296
const L1MuRegionalCand * DTBXMuon(int index) const
get DTBX muon
Definition: L1MuGMTPSB.cc:231
void printCSC() const
print CSC muons
Definition: L1MuGMTPSB.cc:405
void receiveData(edm::Event &e, int bx)
receive muon candidates
Definition: L1MuGMTPSB.cc:86
char data[epos_bytes_allocation]
Definition: EPOS_Wrapper.h:79
void printRPCendcap() const
print endcap RPC muons
Definition: L1MuGMTPSB.cc:381
void getDTBX(std::vector< L1MuRegionalCand > const *data, int bx)
get muons from barrel Muon Trigger Track Finder
Definition: L1MuGMTPSB.cc:330
L1MuGMTMatrix< bool > m_Mip
Definition: L1MuGMTPSB.h:129
int numberCSC() const
return number of non-empty CSC muons
Definition: L1MuGMTPSB.cc:273
std::vector< L1MuRegionalCand > m_RpcMuons
Definition: L1MuGMTPSB.h:124
std::vector< L1MuRegionalCand > m_DtbxMuons
Definition: L1MuGMTPSB.h:125
const L1MuGMTMatrix< bool > & isolBits() const
return isolation bits
Definition: L1MuGMTPSB.h:88
const L1MuGMTMatrix< bool > & mipBits() const
return minimum ionizing bits
Definition: L1MuGMTPSB.h:91