CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
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
28 
29 
31 
34 
36 
37 // forward declarations
38 class L1GlobalTriggerPSB;
39 class L1GtTriggerMenu;
40 class L1CaloGeometry;
41 class L1MuTriggerScales;
43 
44 // class declaration
46 {
47 
48 public:
49 
50  // constructors
52 
53  // destructor
54  virtual ~L1GlobalTriggerGTL();
55 
56 public:
57 
60  edm::Event&,
61  const edm::InputTag&, const int iBxInEvent,
62  const bool receiveMu, const int nrL1Mu);
63 
64 
66  void init(const int nrL1Mu, const int numberPhysTriggers);
67 
69  void run(edm::Event& iEvent, const edm::EventSetup& evSetup,
70  const L1GlobalTriggerPSB* ptrGtPSB, const bool produceL1GtObjectMapRecord,
71  const int iBxInEvent, std::auto_ptr<L1GlobalTriggerObjectMapRecord>& gtObjectMapRecord,
72  const unsigned int numberPhysTriggers,
73  const int nrL1Mu,
74  const int nrL1NoIsoEG,
75  const int nrL1IsoEG,
76  const int nrL1CenJet,
77  const int nrL1ForJet,
78  const int nrL1TauJet,
79  const int nrL1JetCounts,
80  const int ifMuEtaNumberBits,
81  const int ifCaloEtaNumberBits);
82 
84  void reset();
85 
87  void printGmtData(const int iBxInEvent) const;
88 
90  inline const std::bitset<L1GlobalTriggerReadoutSetup::NumberPhysTriggers>& getDecisionWord() const
91  {
92  return m_gtlDecisionWord;
93  }
94 
96  inline const std::bitset<L1GlobalTriggerReadoutSetup::NumberPhysTriggers>& getAlgorithmOR() const
97  {
98  return m_gtlAlgorithmOR;
99  }
100 
102  inline const std::vector<const L1MuGMTCand*>* getCandL1Mu() const
103  {
104  return m_candL1Mu;
105  }
106 
107 public:
108 
109  inline void setVerbosity(const int verbosity) {
111  }
112 
113 private:
114 
115  // cached stuff
116 
117  // trigger menu
119  unsigned long long m_l1GtMenuCacheID;
120 
121  // L1 scales (phi, eta) for Mu, Calo and EnergySum objects
123  unsigned long long m_l1CaloGeometryCacheID;
124 
126  unsigned long long m_l1MuTriggerScalesCacheID;
127 
128  // conversions for eta and phi
130 
131 private:
132 
133  std::vector<const L1MuGMTCand*>* m_candL1Mu;
134 
135  std::bitset<L1GlobalTriggerReadoutSetup::NumberPhysTriggers> m_gtlAlgorithmOR;
136  std::bitset<L1GlobalTriggerReadoutSetup::NumberPhysTriggers> m_gtlDecisionWord;
137 
138  // cache of maps
139  std::vector<L1GtAlgorithmEvaluation::ConditionEvaluationMap> m_conditionResultMaps;
140 
141 
142 private:
143 
147 
148 
149 };
150 
151 #endif
std::bitset< L1GlobalTriggerReadoutSetup::NumberPhysTriggers > m_gtlAlgorithmOR
std::vector< L1GtAlgorithmEvaluation::ConditionEvaluationMap > m_conditionResultMaps
void init(const int nrL1Mu, const int numberPhysTriggers)
initialize the class (mainly reserve)
void run(edm::Event &iEvent, const edm::EventSetup &evSetup, const L1GlobalTriggerPSB *ptrGtPSB, const bool produceL1GtObjectMapRecord, const int iBxInEvent, std::auto_ptr< 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
void printGmtData(const int iBxInEvent) const
print received Muon dataWord
std::vector< const L1MuGMTCand * > * m_candL1Mu
int iEvent
Definition: GenABIO.cc:243
int m_verbosity
verbosity level
const L1GtTriggerMenu * m_l1GtMenu
std::bitset< L1GlobalTriggerReadoutSetup::NumberPhysTriggers > m_gtlDecisionWord
unsigned long long m_l1GtMenuCacheID
const L1MuTriggerScales * m_l1MuTriggerScales
L1GtEtaPhiConversions * m_gtEtaPhiConversions
const std::bitset< L1GlobalTriggerReadoutSetup::NumberPhysTriggers > & getAlgorithmOR() const
return algorithm OR decision
void receiveGmtObjectData(edm::Event &, const edm::InputTag &, const int iBxInEvent, const bool receiveMu, const int nrL1Mu)
receive data from Global Muon Trigger
const std::bitset< L1GlobalTriggerReadoutSetup::NumberPhysTriggers > & getDecisionWord() const
return decision
const std::vector< const L1MuGMTCand * > * getCandL1Mu() const
return global muon trigger candidate
const L1CaloGeometry * m_l1CaloGeometry
void setVerbosity(const int verbosity)
unsigned long long m_l1MuTriggerScalesCacheID
void reset()
clear GTL
unsigned long long m_l1CaloGeometryCacheID