CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Classes | Public Member Functions | Private Member Functions | Private Attributes
L1ExtraDQM Class Reference

#include <L1ExtraDQM.h>

Inheritance diagram for L1ExtraDQM:
edm::EDAnalyzer edm::EDConsumerBase

Classes

class  L1ExtraMonElement
 

Public Member Functions

 L1ExtraDQM (const edm::ParameterSet &)
 
virtual ~L1ExtraDQM ()
 
- Public Member Functions inherited from edm::EDAnalyzer
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
 EDAnalyzer ()
 
ModuleDescription const & moduleDescription () const
 
std::string workerType () const
 
virtual ~EDAnalyzer ()
 
- Public Member Functions inherited from edm::EDConsumerBase
 EDConsumerBase ()
 
ProductHolderIndexAndSkipBit indexFrom (EDGetToken, BranchType, TypeID const &) const
 
void itemsMayGet (BranchType, std::vector< ProductHolderIndexAndSkipBit > &) const
 
void itemsToGet (BranchType, std::vector< ProductHolderIndexAndSkipBit > &) const
 
std::vector
< ProductHolderIndexAndSkipBit >
const & 
itemsToGetFromEvent () const
 
void labelsForToken (EDGetToken iToken, Labels &oLabels) const
 
void modulesDependentUpon (const std::string &iProcessName, std::vector< const char * > &oModuleLabels) const
 
bool registeredToConsume (ProductHolderIndex, bool, BranchType) const
 
bool registeredToConsumeMany (TypeID const &, BranchType) const
 
void updateLookup (BranchType iBranchType, ProductHolderIndexHelper const &)
 
virtual ~EDConsumerBase ()
 

Private Member Functions

virtual void analyze (const edm::Event &, const edm::EventSetup &)
 
void analyzeL1ExtraCenJet (const edm::Event &, const edm::EventSetup &)
 
void analyzeL1ExtraETM (const edm::Event &, const edm::EventSetup &)
 
void analyzeL1ExtraETT (const edm::Event &, const edm::EventSetup &)
 
void analyzeL1ExtraForJet (const edm::Event &, const edm::EventSetup &)
 
void analyzeL1ExtraHfBitCounts (const edm::Event &, const edm::EventSetup &)
 
void analyzeL1ExtraHfRingEtSums (const edm::Event &, const edm::EventSetup &)
 
void analyzeL1ExtraHTM (const edm::Event &, const edm::EventSetup &)
 
void analyzeL1ExtraHTT (const edm::Event &, const edm::EventSetup &)
 
void analyzeL1ExtraIsoEG (const edm::Event &, const edm::EventSetup &)
 
void analyzeL1ExtraMuon (const edm::Event &, const edm::EventSetup &)
 
void analyzeL1ExtraNoIsoEG (const edm::Event &, const edm::EventSetup &)
 
void analyzeL1ExtraTauJet (const edm::Event &, const edm::EventSetup &)
 
virtual void beginJob ()
 
void beginRun (const edm::Run &, const edm::EventSetup &)
 
virtual void endJob ()
 
void endRun (const edm::Run &, const edm::EventSetup &)
 

Private Attributes

int m_currentRun
 
DQMStorem_dbe
 internal members More...
 
std::string m_dirName
 directory name for L1Extra plots More...
 
std::vector< L1ExtraMonElement
< l1extra::L1JetParticleCollection > * > 
m_meAnalysisL1ExtraCenJet
 
std::vector< L1ExtraMonElement
< l1extra::L1EtMissParticleCollection > * > 
m_meAnalysisL1ExtraETM
 
std::vector< L1ExtraMonElement
< l1extra::L1EtMissParticleCollection > * > 
m_meAnalysisL1ExtraETT
 
std::vector< L1ExtraMonElement
< l1extra::L1JetParticleCollection > * > 
m_meAnalysisL1ExtraForJet
 
std::vector< L1ExtraMonElement
< l1extra::L1HFRingsCollection > * > 
m_meAnalysisL1ExtraHfBitCounts
 
std::vector< L1ExtraMonElement
< l1extra::L1HFRingsCollection > * > 
m_meAnalysisL1ExtraHfRingEtSums
 
std::vector< L1ExtraMonElement
< l1extra::L1EtMissParticleCollection > * > 
m_meAnalysisL1ExtraHTM
 
std::vector< L1ExtraMonElement
< l1extra::L1EtMissParticleCollection > * > 
m_meAnalysisL1ExtraHTT
 
std::vector< L1ExtraMonElement
< l1extra::L1EmParticleCollection > * > 
m_meAnalysisL1ExtraIsoEG
 
std::vector< L1ExtraMonElement
< l1extra::L1MuonParticleCollection > * > 
m_meAnalysisL1ExtraMuon
 pointers to L1ExtraMonElement for each sub-analysis More...
 
std::vector< L1ExtraMonElement
< l1extra::L1EmParticleCollection > * > 
m_meAnalysisL1ExtraNoIsoEG
 
std::vector< L1ExtraMonElement
< l1extra::L1JetParticleCollection > * > 
m_meAnalysisL1ExtraTauJet
 
int m_nrBxInEventGct
 
int m_nrBxInEventGmt
 number of bunch crosses in event to be monitored More...
 
int m_nrEvJob
 
int m_nrEvRun
 
bool m_resetModule
 
L1RetrieveL1Extra m_retrieveL1Extra
 input parameters More...
 

Additional Inherited Members

- Public Types inherited from edm::EDAnalyzer
typedef EDAnalyzer ModuleType
 
- Static Public Member Functions inherited from edm::EDAnalyzer
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &)
 
- Protected Member Functions inherited from edm::EDConsumerBase
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > consumes (edm::InputTag const &tag)
 
EDGetToken consumes (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken consumes (TypeToGet const &id, edm::InputTag const &tag)
 
ConsumesCollector consumesCollector ()
 Use a ConsumesCollector to gather consumes information from helper functions. More...
 
template<typename ProductType , BranchType B = InEvent>
void consumesMany ()
 
void consumesMany (const TypeToGet &id)
 
template<BranchType B>
void consumesMany (const TypeToGet &id)
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > mayConsume (edm::InputTag const &tag)
 
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 

Detailed Description

Description: online DQM module for L1Extra trigger objects.

Implementation: <TODO: enter implementation details>

Author
: Vasile Mihai Ghete - HEPHY Vienna

$Date$

Description: online DQM module for L1Extra trigger objects.

Implementation: <TODO: enter implementation details>

Author
: Vasile Mihai Ghete - HEPHY Vienna

Definition at line 73 of file L1ExtraDQM.h.

Constructor & Destructor Documentation

L1ExtraDQM::L1ExtraDQM ( const edm::ParameterSet paramSet)
explicit

Definition at line 29 of file L1ExtraDQM.cc.

References edm::ParameterSet::getUntrackedParameter(), m_dbe, m_dirName, m_meAnalysisL1ExtraCenJet, m_meAnalysisL1ExtraETM, m_meAnalysisL1ExtraETT, m_meAnalysisL1ExtraForJet, m_meAnalysisL1ExtraHfBitCounts, m_meAnalysisL1ExtraHfRingEtSums, m_meAnalysisL1ExtraHTM, m_meAnalysisL1ExtraHTT, m_meAnalysisL1ExtraIsoEG, m_meAnalysisL1ExtraMuon, m_meAnalysisL1ExtraNoIsoEG, m_meAnalysisL1ExtraTauJet, m_nrBxInEventGct, m_nrBxInEventGmt, cppFunctionSkipper::operator, DQMStore::setCurrentFolder(), and DQMStore::setVerbose().

29  :
30  //
31  m_retrieveL1Extra(paramSet.getParameter<edm::ParameterSet>("L1ExtraInputTags"),consumesCollector()),
32  m_dirName(paramSet.getUntrackedParameter("DirName", std::string(
33  "L1T/L1ExtraDQM"))),
34  //
35  m_nrBxInEventGmt(paramSet.getParameter<int>("NrBxInEventGmt")),
36  m_nrBxInEventGct(paramSet.getParameter<int>("NrBxInEventGct")),
37  //
38  m_dbe(0), m_resetModule(true), m_currentRun(-99),
39  //
40  m_nrEvJob(0),
41  m_nrEvRun(0)
42 
43  {
44 
45 
46  //
47  if ((m_nrBxInEventGmt > 0) && ((m_nrBxInEventGmt % 2) == 0)) {
49 
50  edm::LogInfo("L1ExtraDQM")
51  << "\nWARNING: Number of bunch crossing to be monitored for GMT rounded to: "
53  << "\n The number must be an odd number!\n"
54  << std::endl;
55  }
56 
57  if ((m_nrBxInEventGct > 0) && ((m_nrBxInEventGct % 2) == 0)) {
59 
60  edm::LogInfo("L1ExtraDQM")
61  << "\nWARNING: Number of bunch crossing to be monitored for GCT rounded to: "
63  << "\n The number must be an odd number!\n"
64  << std::endl;
65  }
66 
67  //
80 
82  if (m_dbe == 0) {
83  edm::LogInfo("L1ExtraDQM") << "\n Unable to get DQMStore service.";
84  } else {
85 
86  if (paramSet.getUntrackedParameter<bool> ("DQMStore", false)) {
87  m_dbe->setVerbose(0);
88  }
89 
91 
92  }
93 
94 }
int m_nrBxInEventGmt
number of bunch crosses in event to be monitored
Definition: L1ExtraDQM.h:185
std::vector< L1ExtraMonElement< l1extra::L1EtMissParticleCollection > * > m_meAnalysisL1ExtraHTM
Definition: L1ExtraDQM.h:229
T getParameter(std::string const &) const
T getUntrackedParameter(std::string const &, T const &) const
std::string m_dirName
directory name for L1Extra plots
Definition: L1ExtraDQM.h:182
int m_currentRun
Definition: L1ExtraDQM.h:193
int m_nrEvJob
Definition: L1ExtraDQM.h:196
std::vector< L1ExtraMonElement< l1extra::L1EtMissParticleCollection > * > m_meAnalysisL1ExtraETM
Definition: L1ExtraDQM.h:223
std::vector< L1ExtraMonElement< l1extra::L1JetParticleCollection > * > m_meAnalysisL1ExtraTauJet
Definition: L1ExtraDQM.h:217
std::vector< L1ExtraMonElement< l1extra::L1JetParticleCollection > * > m_meAnalysisL1ExtraForJet
Definition: L1ExtraDQM.h:215
std::vector< L1ExtraMonElement< l1extra::L1MuonParticleCollection > * > m_meAnalysisL1ExtraMuon
pointers to L1ExtraMonElement for each sub-analysis
Definition: L1ExtraDQM.h:205
std::vector< L1ExtraMonElement< l1extra::L1EtMissParticleCollection > * > m_meAnalysisL1ExtraHTT
Definition: L1ExtraDQM.h:226
std::vector< L1ExtraMonElement< l1extra::L1EmParticleCollection > * > m_meAnalysisL1ExtraIsoEG
Definition: L1ExtraDQM.h:208
std::vector< L1ExtraMonElement< l1extra::L1HFRingsCollection > * > m_meAnalysisL1ExtraHfRingEtSums
Definition: L1ExtraDQM.h:235
std::vector< L1ExtraMonElement< l1extra::L1EmParticleCollection > * > m_meAnalysisL1ExtraNoIsoEG
Definition: L1ExtraDQM.h:210
ConsumesCollector consumesCollector()
Use a ConsumesCollector to gather consumes information from helper functions.
void setVerbose(unsigned level)
Definition: DQMStore.cc:631
bool m_resetModule
Definition: L1ExtraDQM.h:192
std::vector< L1ExtraMonElement< l1extra::L1JetParticleCollection > * > m_meAnalysisL1ExtraCenJet
Definition: L1ExtraDQM.h:213
DQMStore * m_dbe
internal members
Definition: L1ExtraDQM.h:190
int m_nrBxInEventGct
Definition: L1ExtraDQM.h:186
L1RetrieveL1Extra m_retrieveL1Extra
input parameters
Definition: L1ExtraDQM.h:179
std::vector< L1ExtraMonElement< l1extra::L1EtMissParticleCollection > * > m_meAnalysisL1ExtraETT
Definition: L1ExtraDQM.h:220
std::vector< L1ExtraMonElement< l1extra::L1HFRingsCollection > * > m_meAnalysisL1ExtraHfBitCounts
Definition: L1ExtraDQM.h:232
int m_nrEvRun
Definition: L1ExtraDQM.h:197
void setCurrentFolder(const std::string &fullpath)
Definition: DQMStore.cc:667
L1ExtraDQM::~L1ExtraDQM ( )
virtual

Definition at line 97 of file L1ExtraDQM.cc.

97  {
98 
99  // empty
100 
101 }

Member Function Documentation

void L1ExtraDQM::analyze ( const edm::Event iEvent,
const edm::EventSetup evSetup 
)
privatevirtual

Implements edm::EDAnalyzer.

Definition at line 809 of file L1ExtraDQM.cc.

References analyzeL1ExtraCenJet(), analyzeL1ExtraETM(), analyzeL1ExtraETT(), analyzeL1ExtraForJet(), analyzeL1ExtraHfBitCounts(), analyzeL1ExtraHfRingEtSums(), analyzeL1ExtraHTM(), analyzeL1ExtraHTT(), analyzeL1ExtraIsoEG(), analyzeL1ExtraMuon(), analyzeL1ExtraNoIsoEG(), analyzeL1ExtraTauJet(), m_nrEvJob, m_nrEvRun, m_retrieveL1Extra, and L1RetrieveL1Extra::retrieveL1ExtraObjects().

810  {
811 
812  ++m_nrEvJob;
813  ++m_nrEvRun;
814 
815  //
816  m_retrieveL1Extra.retrieveL1ExtraObjects(iEvent, evSetup);
817  //
818  analyzeL1ExtraMuon(iEvent, evSetup);
819  analyzeL1ExtraIsoEG(iEvent, evSetup);
820  analyzeL1ExtraNoIsoEG(iEvent, evSetup);
821  analyzeL1ExtraCenJet(iEvent, evSetup);
822  analyzeL1ExtraForJet(iEvent, evSetup);
823  analyzeL1ExtraTauJet(iEvent, evSetup);
824  analyzeL1ExtraETT(iEvent, evSetup);
825  analyzeL1ExtraETM(iEvent, evSetup);
826  analyzeL1ExtraHTT(iEvent, evSetup);
827  analyzeL1ExtraHTM(iEvent, evSetup);
828  analyzeL1ExtraHfBitCounts(iEvent, evSetup);
829  analyzeL1ExtraHfRingEtSums(iEvent, evSetup);
830 }
int m_nrEvJob
Definition: L1ExtraDQM.h:196
void analyzeL1ExtraETT(const edm::Event &, const edm::EventSetup &)
Definition: L1ExtraDQM.cc:261
void analyzeL1ExtraIsoEG(const edm::Event &, const edm::EventSetup &)
Definition: L1ExtraDQM.cc:130
void analyzeL1ExtraETM(const edm::Event &, const edm::EventSetup &)
Definition: L1ExtraDQM.cc:280
void analyzeL1ExtraCenJet(const edm::Event &, const edm::EventSetup &)
Definition: L1ExtraDQM.cc:182
void analyzeL1ExtraForJet(const edm::Event &, const edm::EventSetup &)
Definition: L1ExtraDQM.cc:209
void analyzeL1ExtraTauJet(const edm::Event &, const edm::EventSetup &)
Definition: L1ExtraDQM.cc:235
void analyzeL1ExtraMuon(const edm::Event &, const edm::EventSetup &)
Definition: L1ExtraDQM.cc:103
void analyzeL1ExtraHTM(const edm::Event &, const edm::EventSetup &)
Definition: L1ExtraDQM.cc:321
void analyzeL1ExtraHTT(const edm::Event &, const edm::EventSetup &)
Definition: L1ExtraDQM.cc:303
void analyzeL1ExtraHfRingEtSums(const edm::Event &, const edm::EventSetup &)
Definition: L1ExtraDQM.cc:365
L1RetrieveL1Extra m_retrieveL1Extra
input parameters
Definition: L1ExtraDQM.h:179
void analyzeL1ExtraNoIsoEG(const edm::Event &, const edm::EventSetup &)
Definition: L1ExtraDQM.cc:156
void analyzeL1ExtraHfBitCounts(const edm::Event &, const edm::EventSetup &)
Definition: L1ExtraDQM.cc:343
int m_nrEvRun
Definition: L1ExtraDQM.h:197
void retrieveL1ExtraObjects(const edm::Event &, const edm::EventSetup &)
void L1ExtraDQM::analyzeL1ExtraCenJet ( const edm::Event iEvent,
const edm::EventSetup evSetup 
)
private

Definition at line 182 of file L1ExtraDQM.cc.

References L1RetrieveL1Extra::l1ExtraCenJet(), m_meAnalysisL1ExtraCenJet, m_nrBxInEventGct, m_retrieveL1Extra, and L1RetrieveL1Extra::validL1ExtraCenJet().

Referenced by analyze().

183  {
184 
185  bool bookEta = true;
186  bool bookPhi = true;
187 
188  bool isL1Coll = true;
189 
190  for (int iBxInEvent = 0; iBxInEvent < m_nrBxInEventGct; ++iBxInEvent) {
191 
192  // convert to actual convention used in the hardware
193  // (from [o, m_nrBxInEventGct] -> [-X, 0, +X]
194  int bxInEvent = iBxInEvent + (m_nrBxInEventGct + 1) / 2
195  - m_nrBxInEventGct;
196 
197  (m_meAnalysisL1ExtraCenJet.at(iBxInEvent))->fillNrObjects(
199  m_retrieveL1Extra.validL1ExtraCenJet(), isL1Coll, bxInEvent);
200  (m_meAnalysisL1ExtraCenJet.at(iBxInEvent))->fillEtPhiEta(
202  m_retrieveL1Extra.validL1ExtraCenJet(), bookPhi, bookEta,
203  isL1Coll, bxInEvent);
204  }
205 
206 }
const bool validL1ExtraCenJet() const
std::vector< L1ExtraMonElement< l1extra::L1JetParticleCollection > * > m_meAnalysisL1ExtraCenJet
Definition: L1ExtraDQM.h:213
const l1extra::L1JetParticleCollection * l1ExtraCenJet() const
int m_nrBxInEventGct
Definition: L1ExtraDQM.h:186
L1RetrieveL1Extra m_retrieveL1Extra
input parameters
Definition: L1ExtraDQM.h:179
void L1ExtraDQM::analyzeL1ExtraETM ( const edm::Event iEvent,
const edm::EventSetup evSetup 
)
private

Definition at line 280 of file L1ExtraDQM.cc.

References L1RetrieveL1Extra::l1ExtraETM(), m_meAnalysisL1ExtraETM, m_nrBxInEventGct, m_retrieveL1Extra, and L1RetrieveL1Extra::validL1ExtraETM().

Referenced by analyze().

281  {
282 
283  bool bookPhi = true;
284  bool bookEta = false;
285 
286  bool isL1Coll = true;
287 
288  for (int iBxInEvent = 0; iBxInEvent < m_nrBxInEventGct; ++iBxInEvent) {
289 
290  // convert to actual convention used in the hardware
291  // (from [o, m_nrBxInEventGct] -> [-X, 0, +X]
292  int bxInEvent = iBxInEvent + (m_nrBxInEventGct + 1) / 2
293  - m_nrBxInEventGct;
294 
295  (m_meAnalysisL1ExtraETM.at(iBxInEvent))->fillEtPhiEta(m_retrieveL1Extra.l1ExtraETM(),
296  m_retrieveL1Extra.validL1ExtraETM(), bookPhi, bookEta,
297  isL1Coll, bxInEvent);
298 
299  }
300 
301 }
std::vector< L1ExtraMonElement< l1extra::L1EtMissParticleCollection > * > m_meAnalysisL1ExtraETM
Definition: L1ExtraDQM.h:223
const l1extra::L1EtMissParticleCollection * l1ExtraETM() const
int m_nrBxInEventGct
Definition: L1ExtraDQM.h:186
L1RetrieveL1Extra m_retrieveL1Extra
input parameters
Definition: L1ExtraDQM.h:179
const bool validL1ExtraETM() const
void L1ExtraDQM::analyzeL1ExtraETT ( const edm::Event iEvent,
const edm::EventSetup evSetup 
)
private

Definition at line 261 of file L1ExtraDQM.cc.

References L1RetrieveL1Extra::l1ExtraETT(), m_meAnalysisL1ExtraETT, m_nrBxInEventGct, m_retrieveL1Extra, and L1RetrieveL1Extra::validL1ExtraETT().

Referenced by analyze().

262  {
263 
264  bool isL1Coll = true;
265 
266  for (int iBxInEvent = 0; iBxInEvent < m_nrBxInEventGct; ++iBxInEvent) {
267 
268  // convert to actual convention used in the hardware
269  // (from [o, m_nrBxInEventGct] -> [-X, 0, +X]
270  int bxInEvent = iBxInEvent + (m_nrBxInEventGct + 1) / 2
271  - m_nrBxInEventGct;
272 
273  (m_meAnalysisL1ExtraETT.at(iBxInEvent))->fillEtTotal(m_retrieveL1Extra.l1ExtraETT(),
274  m_retrieveL1Extra.validL1ExtraETT(), isL1Coll, bxInEvent);
275 
276  }
277 
278 }
const bool validL1ExtraETT() const
int m_nrBxInEventGct
Definition: L1ExtraDQM.h:186
L1RetrieveL1Extra m_retrieveL1Extra
input parameters
Definition: L1ExtraDQM.h:179
std::vector< L1ExtraMonElement< l1extra::L1EtMissParticleCollection > * > m_meAnalysisL1ExtraETT
Definition: L1ExtraDQM.h:220
const l1extra::L1EtMissParticleCollection * l1ExtraETT() const
void L1ExtraDQM::analyzeL1ExtraForJet ( const edm::Event iEvent,
const edm::EventSetup evSetup 
)
private

Definition at line 209 of file L1ExtraDQM.cc.

References L1RetrieveL1Extra::l1ExtraForJet(), m_meAnalysisL1ExtraForJet, m_nrBxInEventGct, m_retrieveL1Extra, and L1RetrieveL1Extra::validL1ExtraForJet().

Referenced by analyze().

210  {
211 
212  bool bookPhi = true;
213  bool bookEta = true;
214 
215  bool isL1Coll = true;
216 
217  for (int iBxInEvent = 0; iBxInEvent < m_nrBxInEventGct; ++iBxInEvent) {
218 
219  // convert to actual convention used in the hardware
220  // (from [o, m_nrBxInEventGct] -> [-X, 0, +X]
221  int bxInEvent = iBxInEvent + (m_nrBxInEventGct + 1) / 2
222  - m_nrBxInEventGct;
223 
224  (m_meAnalysisL1ExtraForJet.at(iBxInEvent))->fillNrObjects(
226  m_retrieveL1Extra.validL1ExtraForJet(), isL1Coll, bxInEvent);
227  (m_meAnalysisL1ExtraForJet.at(iBxInEvent))->fillEtPhiEta(
229  m_retrieveL1Extra.validL1ExtraForJet(), bookPhi, bookEta,
230  isL1Coll, bxInEvent);
231  }
232 
233 }
std::vector< L1ExtraMonElement< l1extra::L1JetParticleCollection > * > m_meAnalysisL1ExtraForJet
Definition: L1ExtraDQM.h:215
const bool validL1ExtraForJet() const
const l1extra::L1JetParticleCollection * l1ExtraForJet() const
int m_nrBxInEventGct
Definition: L1ExtraDQM.h:186
L1RetrieveL1Extra m_retrieveL1Extra
input parameters
Definition: L1ExtraDQM.h:179
void L1ExtraDQM::analyzeL1ExtraHfBitCounts ( const edm::Event iEvent,
const edm::EventSetup evSetup 
)
private

Definition at line 343 of file L1ExtraDQM.cc.

References l1extra::L1HFRings::kNumRings, L1RetrieveL1Extra::l1ExtraHfBitCounts(), m_meAnalysisL1ExtraHfBitCounts, m_nrBxInEventGct, m_retrieveL1Extra, and L1RetrieveL1Extra::validL1ExtraHfBitCounts().

Referenced by analyze().

344  {
345 
346  bool isL1Coll = true;
347 
348  for (int iBxInEvent = 0; iBxInEvent < m_nrBxInEventGct; ++iBxInEvent) {
349 
350  // convert to actual convention used in the hardware
351  // (from [o, m_nrBxInEventGct] -> [-X, 0, +X]
352  int bxInEvent = iBxInEvent + (m_nrBxInEventGct + 1) / 2
353  - m_nrBxInEventGct;
354 
355  for (int iCount = 0; iCount < l1extra::L1HFRings::kNumRings; ++iCount) {
356  (m_meAnalysisL1ExtraHfBitCounts.at(iBxInEvent))->fillHfBitCounts(
359  isL1Coll, bxInEvent);
360  }
361  }
362 
363 }
const bool validL1ExtraHfBitCounts() const
int m_nrBxInEventGct
Definition: L1ExtraDQM.h:186
L1RetrieveL1Extra m_retrieveL1Extra
input parameters
Definition: L1ExtraDQM.h:179
std::vector< L1ExtraMonElement< l1extra::L1HFRingsCollection > * > m_meAnalysisL1ExtraHfBitCounts
Definition: L1ExtraDQM.h:232
const l1extra::L1HFRingsCollection * l1ExtraHfBitCounts() const
void L1ExtraDQM::analyzeL1ExtraHfRingEtSums ( const edm::Event iEvent,
const edm::EventSetup evSetup 
)
private

Definition at line 365 of file L1ExtraDQM.cc.

References l1extra::L1HFRings::kNumRings, L1RetrieveL1Extra::l1ExtraHfRingEtSums(), m_meAnalysisL1ExtraHfRingEtSums, m_nrBxInEventGct, m_retrieveL1Extra, and L1RetrieveL1Extra::validL1ExtraHfRingEtSums().

Referenced by analyze().

366  {
367 
368  bool isL1Coll = true;
369 
370  for (int iBxInEvent = 0; iBxInEvent < m_nrBxInEventGct; ++iBxInEvent) {
371 
372  // convert to actual convention used in the hardware
373  // (from [o, m_nrBxInEventGct] -> [-X, 0, +X]
374  int bxInEvent = iBxInEvent + (m_nrBxInEventGct + 1) / 2
375  - m_nrBxInEventGct;
376 
377  for (int iCount = 0; iCount < l1extra::L1HFRings::kNumRings; ++iCount) {
378  (m_meAnalysisL1ExtraHfRingEtSums.at(iBxInEvent))->fillHfRingEtSums(
381  isL1Coll, bxInEvent);
382  }
383  }
384 
385 }
std::vector< L1ExtraMonElement< l1extra::L1HFRingsCollection > * > m_meAnalysisL1ExtraHfRingEtSums
Definition: L1ExtraDQM.h:235
const l1extra::L1HFRingsCollection * l1ExtraHfRingEtSums() const
int m_nrBxInEventGct
Definition: L1ExtraDQM.h:186
const bool validL1ExtraHfRingEtSums() const
L1RetrieveL1Extra m_retrieveL1Extra
input parameters
Definition: L1ExtraDQM.h:179
void L1ExtraDQM::analyzeL1ExtraHTM ( const edm::Event iEvent,
const edm::EventSetup evSetup 
)
private

Definition at line 321 of file L1ExtraDQM.cc.

References L1RetrieveL1Extra::l1ExtraHTM(), m_meAnalysisL1ExtraHTM, m_nrBxInEventGct, m_retrieveL1Extra, and L1RetrieveL1Extra::validL1ExtraHTM().

Referenced by analyze().

322  {
323 
324  bool bookPhi = true;
325  bool bookEta = false;
326 
327  bool isL1Coll = true;
328 
329  for (int iBxInEvent = 0; iBxInEvent < m_nrBxInEventGct; ++iBxInEvent) {
330 
331  // convert to actual convention used in the hardware
332  // (from [o, m_nrBxInEventGct] -> [-X, 0, +X]
333  int bxInEvent = iBxInEvent + (m_nrBxInEventGct + 1) / 2
334  - m_nrBxInEventGct;
335 
336  (m_meAnalysisL1ExtraHTM.at(iBxInEvent))->fillEtPhiEta(m_retrieveL1Extra.l1ExtraHTM(),
337  m_retrieveL1Extra.validL1ExtraHTM(), bookPhi, bookEta,
338  isL1Coll, bxInEvent);
339  }
340 
341 }
std::vector< L1ExtraMonElement< l1extra::L1EtMissParticleCollection > * > m_meAnalysisL1ExtraHTM
Definition: L1ExtraDQM.h:229
const bool validL1ExtraHTM() const
const l1extra::L1EtMissParticleCollection * l1ExtraHTM() const
int m_nrBxInEventGct
Definition: L1ExtraDQM.h:186
L1RetrieveL1Extra m_retrieveL1Extra
input parameters
Definition: L1ExtraDQM.h:179
void L1ExtraDQM::analyzeL1ExtraHTT ( const edm::Event iEvent,
const edm::EventSetup evSetup 
)
private

Definition at line 303 of file L1ExtraDQM.cc.

References L1RetrieveL1Extra::l1ExtraHTT(), m_meAnalysisL1ExtraHTT, m_nrBxInEventGct, m_retrieveL1Extra, and L1RetrieveL1Extra::validL1ExtraHTT().

Referenced by analyze().

304  {
305 
306  bool isL1Coll = true;
307 
308  for (int iBxInEvent = 0; iBxInEvent < m_nrBxInEventGct; ++iBxInEvent) {
309 
310  // convert to actual convention used in the hardware
311  // (from [o, m_nrBxInEventGct] -> [-X, 0, +X]
312  int bxInEvent = iBxInEvent + (m_nrBxInEventGct + 1) / 2
313  - m_nrBxInEventGct;
314 
315  (m_meAnalysisL1ExtraHTT.at(iBxInEvent))->fillEtTotal(m_retrieveL1Extra.l1ExtraHTT(),
316  m_retrieveL1Extra.validL1ExtraHTT(), isL1Coll, bxInEvent);
317 
318  }
319 }
const bool validL1ExtraHTT() const
std::vector< L1ExtraMonElement< l1extra::L1EtMissParticleCollection > * > m_meAnalysisL1ExtraHTT
Definition: L1ExtraDQM.h:226
int m_nrBxInEventGct
Definition: L1ExtraDQM.h:186
L1RetrieveL1Extra m_retrieveL1Extra
input parameters
Definition: L1ExtraDQM.h:179
const l1extra::L1EtMissParticleCollection * l1ExtraHTT() const
void L1ExtraDQM::analyzeL1ExtraIsoEG ( const edm::Event iEvent,
const edm::EventSetup evSetup 
)
private

Definition at line 130 of file L1ExtraDQM.cc.

References L1RetrieveL1Extra::l1ExtraIsoEG(), m_meAnalysisL1ExtraIsoEG, m_nrBxInEventGct, m_retrieveL1Extra, and L1RetrieveL1Extra::validL1ExtraIsoEG().

Referenced by analyze().

131  {
132 
133  bool bookEta = true;
134  bool bookPhi = true;
135 
136  bool isL1Coll = true;
137 
138  for (int iBxInEvent = 0; iBxInEvent < m_nrBxInEventGct; ++iBxInEvent) {
139 
140  // convert to actual convention used in the hardware
141  // (from [o, m_nrBxInEventGct] -> [-X, 0, +X]
142  int bxInEvent = iBxInEvent + (m_nrBxInEventGct + 1) / 2
143  - m_nrBxInEventGct;
144 
145  (m_meAnalysisL1ExtraIsoEG.at(iBxInEvent))->fillNrObjects(
147  m_retrieveL1Extra.validL1ExtraIsoEG(), isL1Coll, bxInEvent);
148  (m_meAnalysisL1ExtraIsoEG.at(iBxInEvent))->fillPtPhiEta(
150  m_retrieveL1Extra.validL1ExtraIsoEG(), bookPhi, bookEta,
151  isL1Coll, bxInEvent);
152  }
153 
154 }
const bool validL1ExtraIsoEG() const
std::vector< L1ExtraMonElement< l1extra::L1EmParticleCollection > * > m_meAnalysisL1ExtraIsoEG
Definition: L1ExtraDQM.h:208
const l1extra::L1EmParticleCollection * l1ExtraIsoEG() const
int m_nrBxInEventGct
Definition: L1ExtraDQM.h:186
L1RetrieveL1Extra m_retrieveL1Extra
input parameters
Definition: L1ExtraDQM.h:179
void L1ExtraDQM::analyzeL1ExtraMuon ( const edm::Event iEvent,
const edm::EventSetup evSetup 
)
private

Definition at line 103 of file L1ExtraDQM.cc.

References L1RetrieveL1Extra::l1ExtraMuon(), m_meAnalysisL1ExtraMuon, m_nrBxInEventGmt, m_retrieveL1Extra, and L1RetrieveL1Extra::validL1ExtraMuon().

Referenced by analyze().

104  {
105 
106  bool bookEta = true;
107  bool bookPhi = true;
108 
109  bool isL1Coll = true;
110 
111  for (int iBxInEvent = 0; iBxInEvent < m_nrBxInEventGmt; ++iBxInEvent) {
112 
113  // convert to actual convention used in the hardware
114  // (from [o, m_nrBxInEventGmt] -> [-X, 0, +X]
115  int bxInEvent = iBxInEvent + (m_nrBxInEventGmt + 1) / 2
116  - m_nrBxInEventGmt;
117 
118  (m_meAnalysisL1ExtraMuon.at(iBxInEvent))->fillNrObjects(
120  m_retrieveL1Extra.validL1ExtraMuon(), isL1Coll, bxInEvent);
121  (m_meAnalysisL1ExtraMuon.at(iBxInEvent))->fillPtPhiEta(
123  m_retrieveL1Extra.validL1ExtraMuon(), bookPhi, bookEta,
124  isL1Coll, bxInEvent);
125 
126  }
127 
128 }
int m_nrBxInEventGmt
number of bunch crosses in event to be monitored
Definition: L1ExtraDQM.h:185
const l1extra::L1MuonParticleCollection * l1ExtraMuon() const
return retrieved L1Extra collections
const bool validL1ExtraMuon() const
validity for retrieval of L1Extra products (false: product not found)
std::vector< L1ExtraMonElement< l1extra::L1MuonParticleCollection > * > m_meAnalysisL1ExtraMuon
pointers to L1ExtraMonElement for each sub-analysis
Definition: L1ExtraDQM.h:205
L1RetrieveL1Extra m_retrieveL1Extra
input parameters
Definition: L1ExtraDQM.h:179
void L1ExtraDQM::analyzeL1ExtraNoIsoEG ( const edm::Event iEvent,
const edm::EventSetup evSetup 
)
private

Definition at line 156 of file L1ExtraDQM.cc.

References L1RetrieveL1Extra::l1ExtraNoIsoEG(), m_meAnalysisL1ExtraNoIsoEG, m_nrBxInEventGct, m_retrieveL1Extra, and L1RetrieveL1Extra::validL1ExtraNoIsoEG().

Referenced by analyze().

157  {
158 
159  bool bookEta = true;
160  bool bookPhi = true;
161 
162  bool isL1Coll = true;
163 
164  for (int iBxInEvent = 0; iBxInEvent < m_nrBxInEventGct; ++iBxInEvent) {
165 
166  // convert to actual convention used in the hardware
167  // (from [o, m_nrBxInEventGct] -> [-X, 0, +X]
168  int bxInEvent = iBxInEvent + (m_nrBxInEventGct + 1) / 2
169  - m_nrBxInEventGct;
170 
171  (m_meAnalysisL1ExtraNoIsoEG.at(iBxInEvent))->fillNrObjects(
173  m_retrieveL1Extra.validL1ExtraNoIsoEG(), isL1Coll, bxInEvent);
174  (m_meAnalysisL1ExtraNoIsoEG.at(iBxInEvent))->fillPtPhiEta(
176  m_retrieveL1Extra.validL1ExtraNoIsoEG(), bookPhi, bookEta,
177  isL1Coll, bxInEvent);
178  }
179 
180 }
const l1extra::L1EmParticleCollection * l1ExtraNoIsoEG() const
std::vector< L1ExtraMonElement< l1extra::L1EmParticleCollection > * > m_meAnalysisL1ExtraNoIsoEG
Definition: L1ExtraDQM.h:210
int m_nrBxInEventGct
Definition: L1ExtraDQM.h:186
L1RetrieveL1Extra m_retrieveL1Extra
input parameters
Definition: L1ExtraDQM.h:179
const bool validL1ExtraNoIsoEG() const
void L1ExtraDQM::analyzeL1ExtraTauJet ( const edm::Event iEvent,
const edm::EventSetup evSetup 
)
private

Definition at line 235 of file L1ExtraDQM.cc.

References L1RetrieveL1Extra::l1ExtraTauJet(), m_meAnalysisL1ExtraTauJet, m_nrBxInEventGct, m_retrieveL1Extra, and L1RetrieveL1Extra::validL1ExtraTauJet().

Referenced by analyze().

236  {
237 
238  bool bookPhi = true;
239  bool bookEta = true;
240 
241  bool isL1Coll = true;
242 
243  for (int iBxInEvent = 0; iBxInEvent < m_nrBxInEventGct; ++iBxInEvent) {
244 
245  // convert to actual convention used in the hardware
246  // (from [o, m_nrBxInEventGct] -> [-X, 0, +X]
247  int bxInEvent = iBxInEvent + (m_nrBxInEventGct + 1) / 2
248  - m_nrBxInEventGct;
249 
250  (m_meAnalysisL1ExtraTauJet.at(iBxInEvent))->fillNrObjects(
252  m_retrieveL1Extra.validL1ExtraTauJet(), isL1Coll, bxInEvent);
253  (m_meAnalysisL1ExtraTauJet.at(iBxInEvent))->fillEtPhiEta(
255  m_retrieveL1Extra.validL1ExtraTauJet(), bookPhi, bookEta,
256  isL1Coll, bxInEvent);
257  }
258 
259 }
std::vector< L1ExtraMonElement< l1extra::L1JetParticleCollection > * > m_meAnalysisL1ExtraTauJet
Definition: L1ExtraDQM.h:217
const bool validL1ExtraTauJet() const
const l1extra::L1JetParticleCollection * l1ExtraTauJet() const
int m_nrBxInEventGct
Definition: L1ExtraDQM.h:186
L1RetrieveL1Extra m_retrieveL1Extra
input parameters
Definition: L1ExtraDQM.h:179
void L1ExtraDQM::beginJob ( void  )
privatevirtual

Reimplemented from edm::EDAnalyzer.

Definition at line 388 of file L1ExtraDQM.cc.

388  {
389 
390 
391 }
void L1ExtraDQM::beginRun ( const edm::Run iRun,
const edm::EventSetup evSetup 
)
privatevirtual

Reimplemented from edm::EDAnalyzer.

Definition at line 394 of file L1ExtraDQM.cc.

References bookHistograms(), CenJet, DQMStore::dirExists(), ETM, ETT, ForJet, HfBitCounts, HfRingEtSums, HTM, HTT, IsoEG, m_dbe, m_dirName, m_meAnalysisL1ExtraCenJet, m_meAnalysisL1ExtraETM, m_meAnalysisL1ExtraETT, m_meAnalysisL1ExtraForJet, m_meAnalysisL1ExtraHfBitCounts, m_meAnalysisL1ExtraHfRingEtSums, m_meAnalysisL1ExtraHTM, m_meAnalysisL1ExtraHTT, m_meAnalysisL1ExtraIsoEG, m_meAnalysisL1ExtraMuon, m_meAnalysisL1ExtraNoIsoEG, m_meAnalysisL1ExtraTauJet, m_nrBxInEventGct, m_nrBxInEventGmt, m_nrEvRun, Mu, NoIsoEG, cppFunctionSkipper::operator, DQMStore::rmdir(), DQMStore::setCurrentFolder(), contentValuesCheck::ss, AlCaHLTBitMon_QueryRunRegistry::string, and TauJet.

394  {
395 
396  m_nrEvRun = 0;
397 
398  DQMStore* dbe = 0;
399  dbe = edm::Service<DQMStore>().operator->();
400 
401  // clean up directory
402  if (dbe) {
403  dbe->setCurrentFolder(m_dirName);
404  if (dbe->dirExists(m_dirName)) {
405  dbe->rmdir(m_dirName);
406  }
407  dbe->setCurrentFolder(m_dirName);
408  }
409 
410  std::vector<L1GtObject> l1Obj;
411 
412  // define standard sets of histograms
413 
414  //
415  l1Obj.clear();
416  l1Obj.push_back(Mu);
417  int nrMonElements = 5;
418 
419  for (int iBxInEvent = 0; iBxInEvent < m_nrBxInEventGmt; ++iBxInEvent) {
420 
422  l1extra::L1MuonParticleCollection>(evSetup, nrMonElements));
423 
424  // convert to actual convention used in the hardware
425  // (from [o, m_nrBxInEventGct] -> [-X, 0, +X]
426  // write it in hex [..., E, F, 0, 1, 2, ...]
427  int bxInEvent = iBxInEvent + (m_nrBxInEventGct + 1) / 2
429  int bxInEventHex = (bxInEvent+ 16) % 16;
430 
431  std::stringstream ss;
432  std::string bxInEventHexString;
433  ss << std::uppercase << std::hex << bxInEventHex;
434  ss >> bxInEventHexString;
435 
436  if (m_dbe) {
437  dbe->setCurrentFolder(m_dirName + "/BxInEvent_"
438  + bxInEventHexString);
439  }
440 
441  (m_meAnalysisL1ExtraMuon.at(iBxInEvent))->bookHistograms(evSetup, m_dbe,
442  "L1_Mu", l1Obj);
443 
444  }
445 
446  //
447  l1Obj.clear();
448  l1Obj.push_back(IsoEG);
449  nrMonElements = 4;
450 
451  for (int iBxInEvent = 0; iBxInEvent < m_nrBxInEventGct; ++iBxInEvent) {
452 
454  l1extra::L1EmParticleCollection>(evSetup, nrMonElements));
455 
456  // convert to actual convention used in the hardware
457  // (from [o, m_nrBxInEventGct] -> [-X, 0, +X]
458  // write it in hex [..., E, F, 0, 1, 2, ...]
459  int bxInEvent = iBxInEvent + (m_nrBxInEventGct + 1) / 2
460  - m_nrBxInEventGct;
461  int bxInEventHex = (bxInEvent+ 16) % 16;
462 
463  std::stringstream ss;
464  std::string bxInEventHexString;
465  ss << std::uppercase << std::hex << bxInEventHex;
466  ss >> bxInEventHexString;
467 
468  if (m_dbe) {
469  dbe->setCurrentFolder(m_dirName + "/BxInEvent_"
470  + bxInEventHexString);
471  }
472 
473  (m_meAnalysisL1ExtraIsoEG.at(iBxInEvent))->bookHistograms(evSetup, m_dbe,
474  "L1_IsoEG", l1Obj);
475  }
476 
477  //
478  l1Obj.clear();
479  l1Obj.push_back(NoIsoEG);
480  nrMonElements = 4;
481 
482  for (int iBxInEvent = 0; iBxInEvent < m_nrBxInEventGct; ++iBxInEvent) {
483 
485  l1extra::L1EmParticleCollection>(evSetup, nrMonElements));
486 
487  // convert to actual convention used in the hardware
488  // (from [o, m_nrBxInEventGct] -> [-X, 0, +X]
489  // write it in hex [..., E, F, 0, 1, 2, ...]
490  int bxInEvent = iBxInEvent + (m_nrBxInEventGct + 1) / 2
491  - m_nrBxInEventGct;
492  int bxInEventHex = (bxInEvent+ 16) % 16;
493 
494  std::stringstream ss;
495  std::string bxInEventHexString;
496  ss << std::uppercase << std::hex << bxInEventHex;
497  ss >> bxInEventHexString;
498 
499  if (m_dbe) {
500  dbe->setCurrentFolder(m_dirName + "/BxInEvent_"
501  + bxInEventHexString);
502  }
503 
504  (m_meAnalysisL1ExtraNoIsoEG.at(iBxInEvent))->bookHistograms(evSetup, m_dbe,
505  "L1_NoIsoEG", l1Obj);
506  }
507 
508  //
509  l1Obj.clear();
510  l1Obj.push_back(CenJet);
511  nrMonElements = 4;
512 
513  for (int iBxInEvent = 0; iBxInEvent < m_nrBxInEventGct; ++iBxInEvent) {
514 
516  l1extra::L1JetParticleCollection>(evSetup, nrMonElements));
517 
518  // convert to actual convention used in the hardware
519  // (from [o, m_nrBxInEventGct] -> [-X, 0, +X]
520  // write it in hex [..., E, F, 0, 1, 2, ...]
521  int bxInEvent = iBxInEvent + (m_nrBxInEventGct + 1) / 2
522  - m_nrBxInEventGct;
523  int bxInEventHex = (bxInEvent+ 16) % 16;
524 
525  std::stringstream ss;
526  std::string bxInEventHexString;
527  ss << std::uppercase << std::hex << bxInEventHex;
528  ss >> bxInEventHexString;
529 
530  if (m_dbe) {
531  dbe->setCurrentFolder(m_dirName + "/BxInEvent_"
532  + bxInEventHexString);
533  }
534 
535  (m_meAnalysisL1ExtraCenJet.at(iBxInEvent))->bookHistograms(evSetup, m_dbe,
536  "L1_CenJet", l1Obj);
537  }
538 
539  //
540  l1Obj.clear();
541  l1Obj.push_back(ForJet);
542 
543  for (int iBxInEvent = 0; iBxInEvent < m_nrBxInEventGct; ++iBxInEvent) {
544 
546  l1extra::L1JetParticleCollection>(evSetup, nrMonElements));
547 
548  // convert to actual convention used in the hardware
549  // (from [o, m_nrBxInEventGct] -> [-X, 0, +X]
550  // write it in hex [..., E, F, 0, 1, 2, ...]
551  int bxInEvent = iBxInEvent + (m_nrBxInEventGct + 1) / 2
552  - m_nrBxInEventGct;
553  int bxInEventHex = (bxInEvent+ 16) % 16;
554 
555  std::stringstream ss;
556  std::string bxInEventHexString;
557  ss << std::uppercase << std::hex << bxInEventHex;
558  ss >> bxInEventHexString;
559 
560  if (m_dbe) {
561  dbe->setCurrentFolder(m_dirName + "/BxInEvent_"
562  + bxInEventHexString);
563  }
564 
565  (m_meAnalysisL1ExtraForJet.at(iBxInEvent))->bookHistograms(evSetup, m_dbe,
566  "L1_ForJet", l1Obj);
567  }
568 
569  //
570  l1Obj.clear();
571  l1Obj.push_back(TauJet);
572 
573  for (int iBxInEvent = 0; iBxInEvent < m_nrBxInEventGct; ++iBxInEvent) {
574 
576  l1extra::L1JetParticleCollection>(evSetup, nrMonElements));
577 
578  // convert to actual convention used in the hardware
579  // (from [o, m_nrBxInEventGct] -> [-X, 0, +X]
580  // write it in hex [..., E, F, 0, 1, 2, ...]
581  int bxInEvent = iBxInEvent + (m_nrBxInEventGct + 1) / 2
582  - m_nrBxInEventGct;
583  int bxInEventHex = (bxInEvent+ 16) % 16;
584 
585  std::stringstream ss;
586  std::string bxInEventHexString;
587  ss << std::uppercase << std::hex << bxInEventHex;
588  ss >> bxInEventHexString;
589 
590  if (m_dbe) {
591  dbe->setCurrentFolder(m_dirName + "/BxInEvent_"
592  + bxInEventHexString);
593  }
594 
595  (m_meAnalysisL1ExtraTauJet.at(iBxInEvent))->bookHistograms(evSetup, m_dbe,
596  "L1_TauJet", l1Obj);
597  }
598 
599  //
600  l1Obj.clear();
601  l1Obj.push_back(ETT);
602  nrMonElements = 1;
603 
604  bool bookPhi = false;
605  bool bookEta = false;
606 
607  for (int iBxInEvent = 0; iBxInEvent < m_nrBxInEventGct; ++iBxInEvent) {
608 
610  l1extra::L1EtMissParticleCollection>(evSetup, nrMonElements));
611 
612  // convert to actual convention used in the hardware
613  // (from [o, m_nrBxInEventGct] -> [-X, 0, +X]
614  // write it in hex [..., E, F, 0, 1, 2, ...]
615  int bxInEvent = iBxInEvent + (m_nrBxInEventGct + 1) / 2
616  - m_nrBxInEventGct;
617  int bxInEventHex = (bxInEvent+ 16) % 16;
618 
619  std::stringstream ss;
620  std::string bxInEventHexString;
621  ss << std::uppercase << std::hex << bxInEventHex;
622  ss >> bxInEventHexString;
623 
624  if (m_dbe) {
625  dbe->setCurrentFolder(m_dirName + "/BxInEvent_"
626  + bxInEventHexString);
627  }
628 
629  (m_meAnalysisL1ExtraETT.at(iBxInEvent))->bookHistograms(evSetup, m_dbe,
630  "L1_ETT", l1Obj, bookPhi, bookEta);
631  }
632 
633  //
634  l1Obj.clear();
635  l1Obj.push_back(ETM);
636  nrMonElements = 2;
637 
638  bookPhi = true;
639  bookEta = false;
640 
641  for (int iBxInEvent = 0; iBxInEvent < m_nrBxInEventGct; ++iBxInEvent) {
642 
644  l1extra::L1EtMissParticleCollection>(evSetup, nrMonElements));
645 
646  // convert to actual convention used in the hardware
647  // (from [o, m_nrBxInEventGct] -> [-X, 0, +X]
648  // write it in hex [..., E, F, 0, 1, 2, ...]
649  int bxInEvent = iBxInEvent + (m_nrBxInEventGct + 1) / 2
650  - m_nrBxInEventGct;
651  int bxInEventHex = (bxInEvent+ 16) % 16;
652 
653  std::stringstream ss;
654  std::string bxInEventHexString;
655  ss << std::uppercase << std::hex << bxInEventHex;
656  ss >> bxInEventHexString;
657 
658  if (m_dbe) {
659  dbe->setCurrentFolder(m_dirName + "/BxInEvent_"
660  + bxInEventHexString);
661  }
662 
663  (m_meAnalysisL1ExtraETM.at(iBxInEvent))->bookHistograms(evSetup, m_dbe,
664  "L1_ETM", l1Obj, bookPhi, bookEta);
665  }
666 
667  //
668  l1Obj.clear();
669  l1Obj.push_back(HTT);
670  nrMonElements = 1;
671 
672  bookPhi = false;
673  bookEta = false;
674 
675  for (int iBxInEvent = 0; iBxInEvent < m_nrBxInEventGct; ++iBxInEvent) {
676 
678  l1extra::L1EtMissParticleCollection>(evSetup, nrMonElements));
679 
680  // convert to actual convention used in the hardware
681  // (from [o, m_nrBxInEventGct] -> [-X, 0, +X]
682  // write it in hex [..., E, F, 0, 1, 2, ...]
683  int bxInEvent = iBxInEvent + (m_nrBxInEventGct + 1) / 2
684  - m_nrBxInEventGct;
685  int bxInEventHex = (bxInEvent+ 16) % 16;
686 
687  std::stringstream ss;
688  std::string bxInEventHexString;
689  ss << std::uppercase << std::hex << bxInEventHex;
690  ss >> bxInEventHexString;
691 
692  if (m_dbe) {
693  dbe->setCurrentFolder(m_dirName + "/BxInEvent_"
694  + bxInEventHexString);
695  }
696 
697  (m_meAnalysisL1ExtraHTT.at(iBxInEvent))->bookHistograms(evSetup, m_dbe,
698  "L1_HTT", l1Obj, bookPhi, bookEta);
699  }
700 
701  //
702  l1Obj.clear();
703  l1Obj.push_back(HTM);
704  nrMonElements = 2;
705 
706  bookPhi = true;
707  bookEta = false;
708 
709  for (int iBxInEvent = 0; iBxInEvent < m_nrBxInEventGct; ++iBxInEvent) {
710 
712  l1extra::L1EtMissParticleCollection>(evSetup, nrMonElements));
713 
714  // convert to actual convention used in the hardware
715  // (from [o, m_nrBxInEventGct] -> [-X, 0, +X]
716  // write it in hex [..., E, F, 0, 1, 2, ...]
717  int bxInEvent = iBxInEvent + (m_nrBxInEventGct + 1) / 2
718  - m_nrBxInEventGct;
719  int bxInEventHex = (bxInEvent+ 16) % 16;
720 
721  std::stringstream ss;
722  std::string bxInEventHexString;
723  ss << std::uppercase << std::hex << bxInEventHex;
724  ss >> bxInEventHexString;
725 
726  if (m_dbe) {
727  dbe->setCurrentFolder(m_dirName + "/BxInEvent_"
728  + bxInEventHexString);
729  }
730 
731  (m_meAnalysisL1ExtraHTM.at(iBxInEvent))->bookHistograms(evSetup, m_dbe,
732  "L1_HTM", l1Obj, bookPhi, bookEta);
733  }
734 
735  //
736  l1Obj.clear();
737  l1Obj.push_back(HfBitCounts);
738  nrMonElements = 1;
739 
740  bookPhi = false;
741  bookEta = false;
742 
743  for (int iBxInEvent = 0; iBxInEvent < m_nrBxInEventGct; ++iBxInEvent) {
744 
747  evSetup, nrMonElements));
748 
749  // convert to actual convention used in the hardware
750  // (from [o, m_nrBxInEventGct] -> [-X, 0, +X]
751  // write it in hex [..., E, F, 0, 1, 2, ...]
752  int bxInEvent = iBxInEvent + (m_nrBxInEventGct + 1) / 2
753  - m_nrBxInEventGct;
754  int bxInEventHex = (bxInEvent+ 16) % 16;
755 
756  std::stringstream ss;
757  std::string bxInEventHexString;
758  ss << std::uppercase << std::hex << bxInEventHex;
759  ss >> bxInEventHexString;
760 
761  if (m_dbe) {
762  dbe->setCurrentFolder(m_dirName + "/BxInEvent_"
763  + bxInEventHexString);
764  }
765 
766  (m_meAnalysisL1ExtraHfBitCounts.at(iBxInEvent))->bookHistograms(evSetup,
767  m_dbe, "L1_HfBitCounts", l1Obj, bookPhi, bookEta);
768  }
769 
770  //
771  l1Obj.clear();
772  l1Obj.push_back(HfRingEtSums);
773  nrMonElements = 1;
774 
775  bookPhi = false;
776  bookEta = false;
777 
778  for (int iBxInEvent = 0; iBxInEvent < m_nrBxInEventGct; ++iBxInEvent) {
779 
782  evSetup, nrMonElements));
783 
784  // convert to actual convention used in the hardware
785  // (from [o, m_nrBxInEventGct] -> [-X, 0, +X]
786  // write it in hex [..., E, F, 0, 1, 2, ...]
787  int bxInEvent = iBxInEvent + (m_nrBxInEventGct + 1) / 2
788  - m_nrBxInEventGct;
789  int bxInEventHex = (bxInEvent+ 16) % 16;
790 
791  std::stringstream ss;
792  std::string bxInEventHexString;
793  ss << std::uppercase << std::hex << bxInEventHex;
794  ss >> bxInEventHexString;
795 
796  if (m_dbe) {
797  dbe->setCurrentFolder(m_dirName + "/BxInEvent_"
798  + bxInEventHexString);
799  }
800 
801  (m_meAnalysisL1ExtraHfRingEtSums.at(iBxInEvent))->bookHistograms(evSetup,
802  m_dbe, "L1_HfRingEtSums", l1Obj, bookPhi, bookEta);
803  }
804 
805 }
int m_nrBxInEventGmt
number of bunch crosses in event to be monitored
Definition: L1ExtraDQM.h:185
std::vector< L1ExtraMonElement< l1extra::L1EtMissParticleCollection > * > m_meAnalysisL1ExtraHTM
Definition: L1ExtraDQM.h:229
std::string m_dirName
directory name for L1Extra plots
Definition: L1ExtraDQM.h:182
Definition: L1GtObject.h:39
std::vector< L1ExtraMonElement< l1extra::L1EtMissParticleCollection > * > m_meAnalysisL1ExtraETM
Definition: L1ExtraDQM.h:223
Definition: L1GtObject.h:36
std::vector< L1ExtraMonElement< l1extra::L1JetParticleCollection > * > m_meAnalysisL1ExtraTauJet
Definition: L1ExtraDQM.h:217
std::vector< L1ExtraMonElement< l1extra::L1JetParticleCollection > * > m_meAnalysisL1ExtraForJet
Definition: L1ExtraDQM.h:215
std::vector< L1JetParticle > L1JetParticleCollection
void bookHistograms(fwlite::EventContainer &eventCont)
Definition: L1GtObject.h:38
std::vector< L1ExtraMonElement< l1extra::L1MuonParticleCollection > * > m_meAnalysisL1ExtraMuon
pointers to L1ExtraMonElement for each sub-analysis
Definition: L1ExtraDQM.h:205
std::vector< L1ExtraMonElement< l1extra::L1EtMissParticleCollection > * > m_meAnalysisL1ExtraHTT
Definition: L1ExtraDQM.h:226
std::vector< L1ExtraMonElement< l1extra::L1EmParticleCollection > * > m_meAnalysisL1ExtraIsoEG
Definition: L1ExtraDQM.h:208
std::vector< L1ExtraMonElement< l1extra::L1HFRingsCollection > * > m_meAnalysisL1ExtraHfRingEtSums
Definition: L1ExtraDQM.h:235
std::vector< L1ExtraMonElement< l1extra::L1EmParticleCollection > * > m_meAnalysisL1ExtraNoIsoEG
Definition: L1ExtraDQM.h:210
std::vector< L1ExtraMonElement< l1extra::L1JetParticleCollection > * > m_meAnalysisL1ExtraCenJet
Definition: L1ExtraDQM.h:213
Definition: L1GtObject.h:30
DQMStore * m_dbe
internal members
Definition: L1ExtraDQM.h:190
int m_nrBxInEventGct
Definition: L1ExtraDQM.h:186
Definition: L1GtObject.h:37
std::vector< L1ExtraMonElement< l1extra::L1EtMissParticleCollection > * > m_meAnalysisL1ExtraETT
Definition: L1ExtraDQM.h:220
std::vector< L1ExtraMonElement< l1extra::L1HFRingsCollection > * > m_meAnalysisL1ExtraHfBitCounts
Definition: L1ExtraDQM.h:232
std::vector< L1EtMissParticle > L1EtMissParticleCollection
std::vector< L1EmParticle > L1EmParticleCollection
std::vector< L1MuonParticle > L1MuonParticleCollection
int m_nrEvRun
Definition: L1ExtraDQM.h:197
void L1ExtraDQM::endJob ( void  )
privatevirtual

Reimplemented from edm::EDAnalyzer.

Definition at line 957 of file L1ExtraDQM.cc.

References m_nrEvJob.

957  {
958 
959  edm::LogInfo("L1ExtraDQM")
960  << "\n\nTotal number of events analyzed in this job: " << m_nrEvJob
961  << "\n" << std::endl;
962 
963  return;
964 }
int m_nrEvJob
Definition: L1ExtraDQM.h:196
void L1ExtraDQM::endRun ( const edm::Run run,
const edm::EventSetup evSetup 
)
privatevirtual

Reimplemented from edm::EDAnalyzer.

Definition at line 833 of file L1ExtraDQM.cc.

References edm::RunBase::id(), LogDebug, m_meAnalysisL1ExtraCenJet, m_meAnalysisL1ExtraETM, m_meAnalysisL1ExtraETT, m_meAnalysisL1ExtraForJet, m_meAnalysisL1ExtraHfBitCounts, m_meAnalysisL1ExtraHfRingEtSums, m_meAnalysisL1ExtraHTM, m_meAnalysisL1ExtraHTT, m_meAnalysisL1ExtraIsoEG, m_meAnalysisL1ExtraMuon, m_meAnalysisL1ExtraNoIsoEG, m_meAnalysisL1ExtraTauJet, m_nrEvJob, and m_nrEvRun.

833  {
834 
835  // delete if event setup has changed only FIXME
836 
837  for (std::vector<L1ExtraMonElement<l1extra::L1MuonParticleCollection>*>::iterator
838  iterME = m_meAnalysisL1ExtraMuon.begin(); iterME
839  != m_meAnalysisL1ExtraMuon.end(); ++iterME) {
840 
841  delete *iterME;
842 
843  }
844  m_meAnalysisL1ExtraMuon.clear();
845 
846 
847  for (std::vector<L1ExtraMonElement<l1extra::L1EmParticleCollection>*>::iterator
848  iterME = m_meAnalysisL1ExtraIsoEG.begin(); iterME
849  != m_meAnalysisL1ExtraIsoEG.end(); ++iterME) {
850 
851  delete *iterME;
852 
853  }
854  m_meAnalysisL1ExtraIsoEG.clear();
855 
856 
857  for (std::vector<L1ExtraMonElement<l1extra::L1EmParticleCollection>*>::iterator
858  iterME = m_meAnalysisL1ExtraNoIsoEG.begin(); iterME
859  != m_meAnalysisL1ExtraNoIsoEG.end(); ++iterME) {
860 
861  delete *iterME;
862 
863  }
865 
866 
867  for (std::vector<L1ExtraMonElement<l1extra::L1JetParticleCollection>*>::iterator
868  iterME = m_meAnalysisL1ExtraCenJet.begin(); iterME
869  != m_meAnalysisL1ExtraCenJet.end(); ++iterME) {
870 
871  delete *iterME;
872 
873  }
875 
876  for (std::vector<L1ExtraMonElement<l1extra::L1JetParticleCollection>*>::iterator
877  iterME = m_meAnalysisL1ExtraForJet.begin(); iterME
878  != m_meAnalysisL1ExtraForJet.end(); ++iterME) {
879 
880  delete *iterME;
881 
882  }
884 
885  for (std::vector<L1ExtraMonElement<l1extra::L1JetParticleCollection>*>::iterator
886  iterME = m_meAnalysisL1ExtraTauJet.begin(); iterME
887  != m_meAnalysisL1ExtraTauJet.end(); ++iterME) {
888 
889  delete *iterME;
890 
891  }
893 
894 
895  for (std::vector<L1ExtraMonElement<l1extra::L1EtMissParticleCollection>*>::iterator
896  iterME = m_meAnalysisL1ExtraETT.begin(); iterME
897  != m_meAnalysisL1ExtraETT.end(); ++iterME) {
898 
899  delete *iterME;
900 
901  }
902  m_meAnalysisL1ExtraETT.clear();
903 
904  for (std::vector<L1ExtraMonElement<l1extra::L1EtMissParticleCollection>*>::iterator
905  iterME = m_meAnalysisL1ExtraETM.begin(); iterME
906  != m_meAnalysisL1ExtraETM.end(); ++iterME) {
907 
908  delete *iterME;
909 
910  }
911  m_meAnalysisL1ExtraETM.clear();
912 
913  for (std::vector<L1ExtraMonElement<l1extra::L1EtMissParticleCollection>*>::iterator
914  iterME = m_meAnalysisL1ExtraHTT.begin(); iterME
915  != m_meAnalysisL1ExtraHTT.end(); ++iterME) {
916 
917  delete *iterME;
918 
919  }
920  m_meAnalysisL1ExtraHTT.clear();
921 
922  for (std::vector<L1ExtraMonElement<l1extra::L1EtMissParticleCollection>*>::iterator
923  iterME = m_meAnalysisL1ExtraHTM.begin(); iterME
924  != m_meAnalysisL1ExtraHTM.end(); ++iterME) {
925 
926  delete *iterME;
927 
928  }
929  m_meAnalysisL1ExtraHTM.clear();
930 
931 
932  for (std::vector<L1ExtraMonElement<l1extra::L1HFRingsCollection>*>::iterator
933  iterME = m_meAnalysisL1ExtraHfBitCounts.begin(); iterME
934  != m_meAnalysisL1ExtraHfBitCounts.end(); ++iterME) {
935 
936  delete *iterME;
937 
938  }
940 
941  for (std::vector<L1ExtraMonElement<l1extra::L1HFRingsCollection>*>::iterator
942  iterME = m_meAnalysisL1ExtraHfRingEtSums.begin(); iterME
943  != m_meAnalysisL1ExtraHfRingEtSums.end(); ++iterME) {
944 
945  delete *iterME;
946 
947  }
949 
950  LogDebug("L1ExtraDQM") << "\n\n endRun: " << run.id()
951  << "\n Number of events analyzed in this run: " << m_nrEvRun
952  << "\n Total number of events analyzed in this job: " << m_nrEvJob
953  << "\n" << std::endl;
954 
955 }
#define LogDebug(id)
std::vector< L1ExtraMonElement< l1extra::L1EtMissParticleCollection > * > m_meAnalysisL1ExtraHTM
Definition: L1ExtraDQM.h:229
RunID const & id() const
Definition: RunBase.h:41
int m_nrEvJob
Definition: L1ExtraDQM.h:196
std::vector< L1ExtraMonElement< l1extra::L1EtMissParticleCollection > * > m_meAnalysisL1ExtraETM
Definition: L1ExtraDQM.h:223
std::vector< L1ExtraMonElement< l1extra::L1JetParticleCollection > * > m_meAnalysisL1ExtraTauJet
Definition: L1ExtraDQM.h:217
std::vector< L1ExtraMonElement< l1extra::L1JetParticleCollection > * > m_meAnalysisL1ExtraForJet
Definition: L1ExtraDQM.h:215
std::vector< L1ExtraMonElement< l1extra::L1MuonParticleCollection > * > m_meAnalysisL1ExtraMuon
pointers to L1ExtraMonElement for each sub-analysis
Definition: L1ExtraDQM.h:205
std::vector< L1ExtraMonElement< l1extra::L1EtMissParticleCollection > * > m_meAnalysisL1ExtraHTT
Definition: L1ExtraDQM.h:226
std::vector< L1ExtraMonElement< l1extra::L1EmParticleCollection > * > m_meAnalysisL1ExtraIsoEG
Definition: L1ExtraDQM.h:208
std::vector< L1ExtraMonElement< l1extra::L1HFRingsCollection > * > m_meAnalysisL1ExtraHfRingEtSums
Definition: L1ExtraDQM.h:235
std::vector< L1ExtraMonElement< l1extra::L1EmParticleCollection > * > m_meAnalysisL1ExtraNoIsoEG
Definition: L1ExtraDQM.h:210
std::vector< L1ExtraMonElement< l1extra::L1JetParticleCollection > * > m_meAnalysisL1ExtraCenJet
Definition: L1ExtraDQM.h:213
std::vector< L1ExtraMonElement< l1extra::L1EtMissParticleCollection > * > m_meAnalysisL1ExtraETT
Definition: L1ExtraDQM.h:220
std::vector< L1ExtraMonElement< l1extra::L1HFRingsCollection > * > m_meAnalysisL1ExtraHfBitCounts
Definition: L1ExtraDQM.h:232
int m_nrEvRun
Definition: L1ExtraDQM.h:197

Member Data Documentation

int L1ExtraDQM::m_currentRun
private

Definition at line 193 of file L1ExtraDQM.h.

DQMStore* L1ExtraDQM::m_dbe
private

internal members

Definition at line 190 of file L1ExtraDQM.h.

Referenced by beginRun(), and L1ExtraDQM().

std::string L1ExtraDQM::m_dirName
private

directory name for L1Extra plots

Definition at line 182 of file L1ExtraDQM.h.

Referenced by beginRun(), and L1ExtraDQM().

std::vector<L1ExtraMonElement<l1extra::L1JetParticleCollection>*> L1ExtraDQM::m_meAnalysisL1ExtraCenJet
private

Definition at line 213 of file L1ExtraDQM.h.

Referenced by analyzeL1ExtraCenJet(), beginRun(), endRun(), and L1ExtraDQM().

std::vector<L1ExtraMonElement<l1extra::L1EtMissParticleCollection>*> L1ExtraDQM::m_meAnalysisL1ExtraETM
private

Definition at line 223 of file L1ExtraDQM.h.

Referenced by analyzeL1ExtraETM(), beginRun(), endRun(), and L1ExtraDQM().

std::vector<L1ExtraMonElement<l1extra::L1EtMissParticleCollection>*> L1ExtraDQM::m_meAnalysisL1ExtraETT
private

Definition at line 220 of file L1ExtraDQM.h.

Referenced by analyzeL1ExtraETT(), beginRun(), endRun(), and L1ExtraDQM().

std::vector<L1ExtraMonElement<l1extra::L1JetParticleCollection>*> L1ExtraDQM::m_meAnalysisL1ExtraForJet
private

Definition at line 215 of file L1ExtraDQM.h.

Referenced by analyzeL1ExtraForJet(), beginRun(), endRun(), and L1ExtraDQM().

std::vector<L1ExtraMonElement<l1extra::L1HFRingsCollection>*> L1ExtraDQM::m_meAnalysisL1ExtraHfBitCounts
private

Definition at line 232 of file L1ExtraDQM.h.

Referenced by analyzeL1ExtraHfBitCounts(), beginRun(), endRun(), and L1ExtraDQM().

std::vector<L1ExtraMonElement<l1extra::L1HFRingsCollection>*> L1ExtraDQM::m_meAnalysisL1ExtraHfRingEtSums
private

Definition at line 235 of file L1ExtraDQM.h.

Referenced by analyzeL1ExtraHfRingEtSums(), beginRun(), endRun(), and L1ExtraDQM().

std::vector<L1ExtraMonElement<l1extra::L1EtMissParticleCollection>*> L1ExtraDQM::m_meAnalysisL1ExtraHTM
private

Definition at line 229 of file L1ExtraDQM.h.

Referenced by analyzeL1ExtraHTM(), beginRun(), endRun(), and L1ExtraDQM().

std::vector<L1ExtraMonElement<l1extra::L1EtMissParticleCollection>*> L1ExtraDQM::m_meAnalysisL1ExtraHTT
private

Definition at line 226 of file L1ExtraDQM.h.

Referenced by analyzeL1ExtraHTT(), beginRun(), endRun(), and L1ExtraDQM().

std::vector<L1ExtraMonElement<l1extra::L1EmParticleCollection>*> L1ExtraDQM::m_meAnalysisL1ExtraIsoEG
private

Definition at line 208 of file L1ExtraDQM.h.

Referenced by analyzeL1ExtraIsoEG(), beginRun(), endRun(), and L1ExtraDQM().

std::vector<L1ExtraMonElement<l1extra::L1MuonParticleCollection>*> L1ExtraDQM::m_meAnalysisL1ExtraMuon
private

pointers to L1ExtraMonElement for each sub-analysis

Definition at line 205 of file L1ExtraDQM.h.

Referenced by analyzeL1ExtraMuon(), beginRun(), endRun(), and L1ExtraDQM().

std::vector<L1ExtraMonElement<l1extra::L1EmParticleCollection>*> L1ExtraDQM::m_meAnalysisL1ExtraNoIsoEG
private

Definition at line 210 of file L1ExtraDQM.h.

Referenced by analyzeL1ExtraNoIsoEG(), beginRun(), endRun(), and L1ExtraDQM().

std::vector<L1ExtraMonElement<l1extra::L1JetParticleCollection>*> L1ExtraDQM::m_meAnalysisL1ExtraTauJet
private

Definition at line 217 of file L1ExtraDQM.h.

Referenced by analyzeL1ExtraTauJet(), beginRun(), endRun(), and L1ExtraDQM().

int L1ExtraDQM::m_nrBxInEventGct
private
int L1ExtraDQM::m_nrBxInEventGmt
private

number of bunch crosses in event to be monitored

Definition at line 185 of file L1ExtraDQM.h.

Referenced by analyzeL1ExtraMuon(), beginRun(), and L1ExtraDQM().

int L1ExtraDQM::m_nrEvJob
private

Definition at line 196 of file L1ExtraDQM.h.

Referenced by analyze(), endJob(), and endRun().

int L1ExtraDQM::m_nrEvRun
private

Definition at line 197 of file L1ExtraDQM.h.

Referenced by analyze(), beginRun(), and endRun().

bool L1ExtraDQM::m_resetModule
private

Definition at line 192 of file L1ExtraDQM.h.

L1RetrieveL1Extra L1ExtraDQM::m_retrieveL1Extra
private