CMS 3D CMS Logo

L1GlobalTriggerGTL.h
Go to the documentation of this file.
1 #ifndef GlobalTrigger_L1GlobalTriggerGTL_h
2 #define GlobalTrigger_L1GlobalTriggerGTL_h
3 
19 // system include files
20 #include <bitset>
21 #include <vector>
22 
23 // user include files
31 
33 
36 
39 
40 // forward declarations
41 class L1GlobalTriggerPSB;
42 class L1GtTriggerMenu;
43 class L1CaloGeometry;
44 class L1MuTriggerScales;
46 
47 // class declaration
49 public:
50  // constructors
52 
53  // destructor
54  virtual ~L1GlobalTriggerGTL();
55 
56 public:
59  edm::Event &, const edm::InputTag &, const int iBxInEvent, const bool receiveMu, const int nrL1Mu);
60 
62  void init(const int nrL1Mu, const int numberPhysTriggers);
63 
65  void run(edm::Event &iEvent,
66  const edm::EventSetup &evSetup,
67  const L1GlobalTriggerPSB *ptrGtPSB,
68  const bool produceL1GtObjectMapRecord,
69  const int iBxInEvent,
70  L1GlobalTriggerObjectMapRecord *gtObjectMapRecord,
71  const unsigned int numberPhysTriggers,
72  const int nrL1Mu,
73  const int nrL1NoIsoEG,
74  const int nrL1IsoEG,
75  const int nrL1CenJet,
76  const int nrL1ForJet,
77  const int nrL1TauJet,
78  const int nrL1JetCounts,
79  const int ifMuEtaNumberBits,
80  const int ifCaloEtaNumberBits);
81 
83  void reset();
84 
86  void printGmtData(const int iBxInEvent) const;
87 
89  inline const std::bitset<L1GlobalTriggerReadoutSetup::NumberPhysTriggers> &getDecisionWord() const {
90  return m_gtlDecisionWord;
91  }
92 
94  inline const std::bitset<L1GlobalTriggerReadoutSetup::NumberPhysTriggers> &getAlgorithmOR() const {
95  return m_gtlAlgorithmOR;
96  }
97 
99  inline const std::vector<const L1MuGMTCand *> *getCandL1Mu() const { return m_candL1Mu; }
100 
101 public:
102  inline void setVerbosity(const int verbosity) { m_verbosity = verbosity; }
103 
104 private:
105  // cached stuff
106 
107  // trigger menu
109 
110  // L1 scales (phi, eta) for Mu, Calo and EnergySum objects
113  unsigned long long m_l1CaloGeometryCacheID;
114 
117  unsigned long long m_l1MuTriggerScalesCacheID;
118 
119  // conversions for eta and phi
121 
122 private:
123  std::vector<const L1MuGMTCand *> *m_candL1Mu;
124 
125  std::bitset<L1GlobalTriggerReadoutSetup::NumberPhysTriggers> m_gtlAlgorithmOR;
126  std::bitset<L1GlobalTriggerReadoutSetup::NumberPhysTriggers> m_gtlDecisionWord;
127 
128  // cache of maps
129  std::vector<L1GtAlgorithmEvaluation::ConditionEvaluationMap> m_conditionResultMaps;
130 
131 private:
135 };
136 
137 #endif
L1GlobalTriggerGTL::L1GlobalTriggerGTL
L1GlobalTriggerGTL(const edm::InputTag &mutag, edm::ConsumesCollector &&iC)
Definition: L1GlobalTriggerGTL.cc:69
ctppsCommonDQMSource_cfi.verbosity
verbosity
Definition: ctppsCommonDQMSource_cfi.py:14
L1GlobalTriggerGTL::getCandL1Mu
const std::vector< const L1MuGMTCand * > * getCandL1Mu() const
return global muon trigger candidate
Definition: L1GlobalTriggerGTL.h:99
L1GlobalTriggerGTL::m_l1CaloGeometry
const L1CaloGeometry * m_l1CaloGeometry
Definition: L1GlobalTriggerGTL.h:112
L1GlobalTriggerReadoutSetupFwd.h
L1GlobalTriggerGTL::getDecisionWord
const std::bitset< L1GlobalTriggerReadoutSetup::NumberPhysTriggers > & getDecisionWord() const
return decision
Definition: L1GlobalTriggerGTL.h:89
L1GlobalTriggerGTL::m_l1MuTriggerScalesCacheID
unsigned long long m_l1MuTriggerScalesCacheID
Definition: L1GlobalTriggerGTL.h:117
L1GtTriggerMenuRcd.h
L1GlobalTriggerGTL::reset
void reset()
clear GTL
Definition: L1GlobalTriggerGTL.cc:638
L1GlobalTriggerGTL::m_l1CaloGeometryCacheID
unsigned long long m_l1CaloGeometryCacheID
Definition: L1GlobalTriggerGTL.h:113
L1GlobalTriggerGTL::m_gtlAlgorithmOR
std::bitset< L1GlobalTriggerReadoutSetup::NumberPhysTriggers > m_gtlAlgorithmOR
Definition: L1GlobalTriggerGTL.h:125
L1GlobalTriggerGTL::m_conditionResultMaps
std::vector< L1GtAlgorithmEvaluation::ConditionEvaluationMap > m_conditionResultMaps
Definition: L1GlobalTriggerGTL.h:129
L1MuTriggerScalesRcd.h
L1GlobalTriggerGTL::m_l1CaloGeometryToken
const edm::ESGetToken< L1CaloGeometry, L1CaloGeometryRecord > m_l1CaloGeometryToken
Definition: L1GlobalTriggerGTL.h:111
L1GlobalTriggerGTL::init
void init(const int nrL1Mu, const int numberPhysTriggers)
initialize the class (mainly reserve)
Definition: L1GlobalTriggerGTL.cc:97
L1GlobalTriggerGTL::m_verbosity
int m_verbosity
verbosity level
Definition: L1GlobalTriggerGTL.h:133
L1GlobalTriggerGTL::run
void run(edm::Event &iEvent, const edm::EventSetup &evSetup, const L1GlobalTriggerPSB *ptrGtPSB, const bool produceL1GtObjectMapRecord, const int iBxInEvent, L1GlobalTriggerObjectMapRecord *gtObjectMapRecord, const unsigned int numberPhysTriggers, const int nrL1Mu, const int nrL1NoIsoEG, const int nrL1IsoEG, const int nrL1CenJet, const int nrL1ForJet, const int nrL1TauJet, const int nrL1JetCounts, const int ifMuEtaNumberBits, const int ifCaloEtaNumberBits)
run the GTL
Definition: L1GlobalTriggerGTL.cc:153
L1GlobalTriggerGTL::m_l1MuTriggerScalesToken
const edm::ESGetToken< L1MuTriggerScales, L1MuTriggerScalesRcd > m_l1MuTriggerScalesToken
Definition: L1GlobalTriggerGTL.h:115
L1GtEtaPhiConversions
Definition: L1GtEtaPhiConversions.h:36
L1GlobalTriggerGTL::m_l1MuTriggerScales
const L1MuTriggerScales * m_l1MuTriggerScales
Definition: L1GlobalTriggerGTL.h:116
L1GlobalTriggerGTL::m_candL1Mu
std::vector< const L1MuGMTCand * > * m_candL1Mu
Definition: L1GlobalTriggerGTL.h:123
L1GlobalTriggerGTL::m_gtEtaPhiConversions
L1GtEtaPhiConversions * m_gtEtaPhiConversions
Definition: L1GlobalTriggerGTL.h:120
L1GlobalTriggerGTL::m_l1GtMenuToken
const edm::ESGetToken< L1GtTriggerMenu, L1GtTriggerMenuRcd > m_l1GtMenuToken
Definition: L1GlobalTriggerGTL.h:108
L1GlobalTriggerGTL::getAlgorithmOR
const std::bitset< L1GlobalTriggerReadoutSetup::NumberPhysTriggers > & getAlgorithmOR() const
return algorithm OR decision
Definition: L1GlobalTriggerGTL.h:94
L1GlobalTriggerGTL::receiveGmtObjectData
void receiveGmtObjectData(edm::Event &, const edm::InputTag &, const int iBxInEvent, const bool receiveMu, const int nrL1Mu)
receive data from Global Muon Trigger
Definition: L1GlobalTriggerGTL.cc:111
L1GlobalTriggerGTL
Definition: L1GlobalTriggerGTL.h:48
L1GtTriggerMenu
Definition: L1GtTriggerMenu.h:48
Event.h
L1GlobalTriggerReadoutSetup.h
L1CaloGeometry
Definition: L1CaloGeometry.h:33
L1GlobalTriggerObjectMapRecord
Definition: L1GlobalTriggerObjectMapRecord.h:29
L1CaloGeometryRecord.h
L1GtAlgorithmEvaluation.h
iEvent
int iEvent
Definition: GenABIO.cc:224
edm::EventSetup
Definition: EventSetup.h:58
L1MuTriggerScales
Definition: L1MuTriggerScales.h:33
L1GlobalTriggerGTL::m_gtlDecisionWord
std::bitset< L1GlobalTriggerReadoutSetup::NumberPhysTriggers > m_gtlDecisionWord
Definition: L1GlobalTriggerGTL.h:126
L1GlobalTriggerGTL::setVerbosity
void setVerbosity(const int verbosity)
Definition: L1GlobalTriggerGTL.h:102
edm::ESGetToken< L1GtTriggerMenu, L1GtTriggerMenuRcd >
InputTag.h
L1MuGMTCand.h
L1GlobalTriggerPSB
Definition: L1GlobalTriggerPSB.h:58
EventSetup.h
L1GlobalTriggerGTL::~L1GlobalTriggerGTL
virtual ~L1GlobalTriggerGTL()
Definition: L1GlobalTriggerGTL.cc:90
ConsumesCollector.h
L1GlobalTriggerObjectMapRecord.h
edm::Event
Definition: Event.h:73
L1GlobalTriggerGTL::m_isDebugEnabled
bool m_isDebugEnabled
Definition: L1GlobalTriggerGTL.h:134
edm::InputTag
Definition: InputTag.h:15
edm::ConsumesCollector
Definition: ConsumesCollector.h:45
L1GlobalTriggerGTL::printGmtData
void printGmtData(const int iBxInEvent) const
print received Muon dataWord
Definition: L1GlobalTriggerGTL.cc:646