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 
21 // system include files
22 #include <bitset>
23 #include <vector>
24 
25 // user include files
30 
31 
33 
36 
38 
39 // forward declarations
40 class L1GlobalTriggerPSB;
41 class L1GtTriggerMenu;
42 class L1CaloGeometry;
43 class L1MuTriggerScales;
45 
46 // class declaration
48 {
49 
50 public:
51 
52  // constructors
54 
55  // destructor
56  virtual ~L1GlobalTriggerGTL();
57 
58 public:
59 
62  edm::Event&,
63  const edm::InputTag&, const int iBxInEvent,
64  const bool receiveMu, const int nrL1Mu);
65 
66 
68  void init(const int nrL1Mu, const int numberPhysTriggers);
69 
71  void run(edm::Event& iEvent, const edm::EventSetup& evSetup,
72  const L1GlobalTriggerPSB* ptrGtPSB, const bool produceL1GtObjectMapRecord,
73  const int iBxInEvent, std::auto_ptr<L1GlobalTriggerObjectMapRecord>& gtObjectMapRecord,
74  const unsigned int numberPhysTriggers,
75  const int nrL1Mu,
76  const int nrL1NoIsoEG,
77  const int nrL1IsoEG,
78  const int nrL1CenJet,
79  const int nrL1ForJet,
80  const int nrL1TauJet,
81  const int nrL1JetCounts,
82  const int ifMuEtaNumberBits,
83  const int ifCaloEtaNumberBits);
84 
86  void reset();
87 
89  void printGmtData(const int iBxInEvent) const;
90 
92  inline const std::bitset<L1GlobalTriggerReadoutSetup::NumberPhysTriggers>& getDecisionWord() const
93  {
94  return m_gtlDecisionWord;
95  }
96 
98  inline const std::bitset<L1GlobalTriggerReadoutSetup::NumberPhysTriggers>& getAlgorithmOR() const
99  {
100  return m_gtlAlgorithmOR;
101  }
102 
104  inline const std::vector<const L1MuGMTCand*>* getCandL1Mu() const
105  {
106  return m_candL1Mu;
107  }
108 
109 public:
110 
111  inline void setVerbosity(const int verbosity) {
113  }
114 
115 private:
116 
117  // cached stuff
118 
119  // trigger menu
121  unsigned long long m_l1GtMenuCacheID;
122 
123  // L1 scales (phi, eta) for Mu, Calo and EnergySum objects
125  unsigned long long m_l1CaloGeometryCacheID;
126 
128  unsigned long long m_l1MuTriggerScalesCacheID;
129 
130  // conversions for eta and phi
132 
133 private:
134 
135  std::vector<const L1MuGMTCand*>* m_candL1Mu;
136 
137  std::bitset<L1GlobalTriggerReadoutSetup::NumberPhysTriggers> m_gtlAlgorithmOR;
138  std::bitset<L1GlobalTriggerReadoutSetup::NumberPhysTriggers> m_gtlDecisionWord;
139 
140  // cache of maps
141  std::vector<L1GtAlgorithmEvaluation::ConditionEvaluationMap> m_conditionResultMaps;
142 
143 
144 private:
145 
149 
150 
151 };
152 
153 #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