CMS 3D CMS Logo

L1MuGlobalMuonTrigger.h
Go to the documentation of this file.
1 //---------------------------------------------
2 //
3 // \class L1MuGlobalMuonTrigger
4 //
5 // Description: L1 Global Muon Trigger
6 //
7 //
8 //
9 // Author :
10 // Ivan Mikulec HEPHY Vienna
11 //
12 //--------------------------------------------------
13 #ifndef L1TriggerGlobalMuonTrigger_L1MuGlobalMuonTrigger_h
14 #define L1TriggerGlobalMuonTrigger_L1MuGlobalMuonTrigger_h
15 
16 //---------------
17 // C++ Headers --
18 //---------------
19 
20 //----------------------
21 // Base Class Headers --
22 //----------------------
24 
25 //------------------------------------
26 // Collaborating Class Declarations --
27 //------------------------------------
35 
48 
49 class L1MuGMTConfig;
50 class L1MuGMTPSB;
51 class L1MuGMTMatcher;
53 class L1MuGMTMipIsoAU;
54 class L1MuGMTMerger;
55 class L1MuGMTSorter;
56 
58 
59 class L1MuGMTDebugBlock;
60 
61 //---------------------
62 //-- Class Interface --
63 //---------------------
64 class L1MuGlobalMuonTrigger : public edm::one::EDProducer<edm::one::SharedResources> {
65 public:
67  ~L1MuGlobalMuonTrigger() override;
68  void beginJob() override;
69 
70  void produce(edm::Event&, const edm::EventSetup&) override;
71 
72  void reset();
73 
75  inline const L1MuGMTPSB* Data() const { return m_PSB; }
76 
78  inline const L1MuGMTMatcher* Matcher(int id) const { return m_Matcher[id]; }
79 
81  inline const L1MuGMTCancelOutUnit* CancelOutUnit(int id) const { return m_CancelOutUnit[id]; }
82 
84  inline const L1MuGMTMipIsoAU* MipIsoAU(int id) const { return m_MipIsoAU[id]; }
85 
87  inline const L1MuGMTMerger* Merger(int id) const { return m_Merger[id]; }
88 
90  inline const L1MuGMTSorter* Sorter() const { return m_Sorter; }
91 
95  std::unique_ptr<L1MuGMTReadoutCollection> getReadoutCollection();
96 
99 
102 
103 private:
104  L1MuGMTPSB* m_PSB;
110 
111  std::vector<L1MuGMTExtendedCand> m_ExtendedCands;
112  std::vector<L1MuGMTReadoutRecord*> m_ReadoutRingbuffer;
113 
116 
118 
120 
121  unsigned long long m_L1MuGMTScalesCacheID;
122  unsigned long long m_L1MuTriggerScalesCacheID;
123  unsigned long long m_L1MuTriggerPtScaleCacheID;
124  unsigned long long m_L1MuGMTParametersCacheID;
125  unsigned long long m_L1MuGMTChannelMaskCacheID;
126  unsigned long long m_L1CaloGeometryCacheID;
127 
134 };
135 
136 #endif // L1TriggerGlobalMuonTrigger_L1MuGlobalMuonTrigger_h
L1MuGMTChannelMask.h
L1MuGlobalMuonTrigger::m_ExtendedCands
std::vector< L1MuGMTExtendedCand > m_ExtendedCands
Definition: L1MuGlobalMuonTrigger.h:111
Handle.h
EDProducer.h
L1MuGMTParametersRcd.h
L1MuGMTExtendedCand
Definition: L1MuGMTExtendedCand.h:46
L1MuGMTPSB
Definition: L1MuGMTPSB.h:49
L1MuGlobalMuonTrigger::m_L1CaloGeometryCacheID
unsigned long long m_L1CaloGeometryCacheID
Definition: L1MuGlobalMuonTrigger.h:126
L1MuGlobalMuonTrigger::m_Matcher
L1MuGMTMatcher * m_Matcher[2]
Definition: L1MuGlobalMuonTrigger.h:105
L1MuTriggerPtScaleRcd.h
L1MuGMTReadoutCollection.h
L1MuGlobalMuonTrigger::DebugBlockForFill
L1MuGMTDebugBlock * DebugBlockForFill() const
for debug: return the debug block (in order to fill it)
Definition: L1MuGlobalMuonTrigger.h:101
L1MuGlobalMuonTrigger::m_L1MuGMTScalesCacheID
unsigned long long m_L1MuGMTScalesCacheID
Definition: L1MuGlobalMuonTrigger.h:121
L1MuGMTCancelOutUnit
Definition: L1MuGMTCancelOutUnit.h:66
L1MuGlobalMuonTrigger::beginJob
void beginJob() override
Definition: L1MuGlobalMuonTrigger.cc:171
edm::one::EDProducer
Definition: EDProducer.h:30
L1MuGMTDebugBlock
Definition: L1MuGMTDebugBlock.h:45
L1MuTriggerScalesRcd.h
L1MuGlobalMuonTrigger::m_gmtChanMaskToken
edm::ESGetToken< L1MuGMTChannelMask, L1MuGMTChannelMaskRcd > m_gmtChanMaskToken
Definition: L1MuGlobalMuonTrigger.h:132
L1MuGlobalMuonTrigger::getReadoutCollection
std::unique_ptr< L1MuGMTReadoutCollection > getReadoutCollection()
Definition: L1MuGlobalMuonTrigger.cc:432
ESGetToken.h
L1MuRegionalCand.h
L1MuGMTChannelMaskRcd.h
L1MuGlobalMuonTrigger::m_Merger
L1MuGMTMerger * m_Merger[2]
Definition: L1MuGlobalMuonTrigger.h:108
L1MuGMTMipIsoAU
Definition: L1MuGMTMipIsoAU.h:51
L1MuGMTParameters.h
L1MuGMTMatcher
Definition: L1MuGMTMatcher.h:41
L1MuGlobalMuonTrigger
Definition: L1MuGlobalMuonTrigger.h:64
L1MuGMTReadoutRecord
Definition: L1MuGMTReadoutRecord.h:44
L1MuGlobalMuonTrigger::m_sendMipIso
bool m_sendMipIso
Definition: L1MuGlobalMuonTrigger.h:115
L1MuGMTMerger
Definition: L1MuGMTMerger.h:58
L1MuGMTReadoutRecord.h
L1MuGlobalMuonTrigger::m_trigScalesToken
edm::ESGetToken< L1MuTriggerScales, L1MuTriggerScalesRcd > m_trigScalesToken
Definition: L1MuGlobalMuonTrigger.h:129
L1MuGlobalMuonTrigger::Data
const L1MuGMTPSB * Data() const
return pointer to PSB
Definition: L1MuGlobalMuonTrigger.h:75
L1MuGlobalMuonTrigger::m_L1MuTriggerPtScaleCacheID
unsigned long long m_L1MuTriggerPtScaleCacheID
Definition: L1MuGlobalMuonTrigger.h:123
L1MuGlobalMuonTrigger::m_L1MuGMTChannelMaskCacheID
unsigned long long m_L1MuGMTChannelMaskCacheID
Definition: L1MuGlobalMuonTrigger.h:125
L1MuGlobalMuonTrigger::Matcher
const L1MuGMTMatcher * Matcher(int id) const
return pointer to Matcher
Definition: L1MuGlobalMuonTrigger.h:78
edm::ParameterSet
Definition: ParameterSet.h:47
Event.h
L1CaloGeometryRecord.h
L1MuGlobalMuonTrigger::CancelOutUnit
const L1MuGMTCancelOutUnit * CancelOutUnit(int id) const
return pointer to Cancel Out Unit
Definition: L1MuGlobalMuonTrigger.h:81
L1MuTriggerPtScale.h
L1MuGlobalMuonTrigger::m_gmtScalesToken
edm::ESGetToken< L1MuGMTScales, L1MuGMTScalesRcd > m_gmtScalesToken
Definition: L1MuGlobalMuonTrigger.h:128
L1MuTriggerScales.h
L1MuGlobalMuonTrigger::m_caloGeomToken
edm::ESGetToken< L1CaloGeometry, L1CaloGeometryRecord > m_caloGeomToken
Definition: L1MuGlobalMuonTrigger.h:133
L1MuGlobalMuonTrigger::produce
void produce(edm::Event &, const edm::EventSetup &) override
Definition: L1MuGlobalMuonTrigger.cc:173
L1MuGlobalMuonTrigger::m_PSB
L1MuGMTPSB * m_PSB
Definition: L1MuGlobalMuonTrigger.h:101
L1MuGlobalMuonTrigger::m_gmtParamsToken
edm::ESGetToken< L1MuGMTParameters, L1MuGMTParametersRcd > m_gmtParamsToken
Definition: L1MuGlobalMuonTrigger.h:131
edm::EventSetup
Definition: EventSetup.h:57
L1MuGlobalMuonTrigger::MipIsoAU
const L1MuGMTMipIsoAU * MipIsoAU(int id) const
return pointer to MIP & ISO bit assignment unit
Definition: L1MuGlobalMuonTrigger.h:84
edm::ESGetToken< L1MuGMTScales, L1MuGMTScalesRcd >
L1MuGlobalMuonTrigger::m_MipIsoAU
L1MuGMTMipIsoAU * m_MipIsoAU[2]
Definition: L1MuGlobalMuonTrigger.h:107
L1MuGlobalMuonTrigger::Sorter
const L1MuGMTSorter * Sorter() const
return pointer to Sorter
Definition: L1MuGlobalMuonTrigger.h:90
L1MuGlobalMuonTrigger::m_writeLUTsAndRegs
bool m_writeLUTsAndRegs
Definition: L1MuGlobalMuonTrigger.h:114
L1MuGlobalMuonTrigger::L1MuGlobalMuonTrigger
L1MuGlobalMuonTrigger(const edm::ParameterSet &)
Definition: L1MuGlobalMuonTrigger.cc:56
L1MuGlobalMuonTrigger::m_config
static L1MuGMTConfig * m_config
Definition: L1MuGlobalMuonTrigger.h:117
L1MuGMTConfig
Definition: L1MuGMTConfig.h:83
L1MuGlobalMuonTrigger::m_L1MuGMTParametersCacheID
unsigned long long m_L1MuGMTParametersCacheID
Definition: L1MuGlobalMuonTrigger.h:124
L1MuGMTScales.h
triggerObjects_cff.id
id
Definition: triggerObjects_cff.py:31
L1MuGlobalMuonTrigger::m_trigPtScaleToken
edm::ESGetToken< L1MuTriggerPtScale, L1MuTriggerPtScaleRcd > m_trigPtScaleToken
Definition: L1MuGlobalMuonTrigger.h:130
L1MuGlobalMuonTrigger::m_L1MuTriggerScalesCacheID
unsigned long long m_L1MuTriggerScalesCacheID
Definition: L1MuGlobalMuonTrigger.h:122
L1MuGlobalMuonTrigger::currentReadoutRecord
L1MuGMTReadoutRecord * currentReadoutRecord() const
return a reference to the current record in the ring buffer
Definition: L1MuGlobalMuonTrigger.h:98
L1MuGMTScalesRcd.h
L1MuGlobalMuonTrigger::~L1MuGlobalMuonTrigger
~L1MuGlobalMuonTrigger() override
Definition: L1MuGlobalMuonTrigger.cc:137
L1MuGlobalMuonTrigger::reset
void reset()
Definition: L1MuGlobalMuonTrigger.cc:404
ParameterSet.h
edm::Event
Definition: Event.h:73
L1MuGlobalMuonTrigger::Merger
const L1MuGMTMerger * Merger(int id) const
return pointer to Merger
Definition: L1MuGlobalMuonTrigger.h:87
L1MuGlobalMuonTrigger::m_ReadoutRingbuffer
std::vector< L1MuGMTReadoutRecord * > m_ReadoutRingbuffer
Definition: L1MuGlobalMuonTrigger.h:112
L1CaloGeometry.h
L1MuGlobalMuonTrigger::m_CancelOutUnit
L1MuGMTCancelOutUnit * m_CancelOutUnit[4]
Definition: L1MuGlobalMuonTrigger.h:106
L1MuGMTSorter
Definition: L1MuGMTSorter.h:39
L1MuGlobalMuonTrigger::m_Sorter
L1MuGMTSorter * m_Sorter
Definition: L1MuGlobalMuonTrigger.h:109
L1MuGlobalMuonTrigger::m_db
static L1MuGMTDebugBlock * m_db
Definition: L1MuGlobalMuonTrigger.h:119