CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
EcalDQMonitorTask.h
Go to the documentation of this file.
1 #ifndef EcalDQMonitorTask_H
2 #define EcalDQMonitorTask_H
3 
6 
7 #include "DQWorkerTask.h"
8 #include "Collections.h"
9 
10 #include <set>
11 #include <map>
12 
13 namespace edm
14 {
15  class InputTag;
17 }
18 
20  public:
23 
25 
26  void bookHistograms(DQMStore::IBooker&, edm::Run const&, edm::EventSetup const&) override;
27  void dqmBeginRun(edm::Run const&, edm::EventSetup const&) override;
28 
29  private:
30  void endRun(edm::Run const&, edm::EventSetup const&) override;
31  void beginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override;
32  void endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override;
33  void analyze(edm::Event const&, edm::EventSetup const&) override;
34 
35  typedef void (EcalDQMonitorTask::*Processor)(edm::Event const&, ecaldqm::Collections, std::set<ecaldqm::DQWorker*> const&);
36 
37  template <typename CollectionClass> void runOnCollection(edm::Event const&, ecaldqm::Collections, std::set<ecaldqm::DQWorker*> const&);
38 
39  void formSchedule(std::vector<ecaldqm::Collections> const&, edm::ParameterSet const&);
40 
41  /* DATA MEMBERS */
42 
44  std::vector<std::pair<Processor, ecaldqm::Collections> > schedule_; // schedule of collections to run
45  bool allowMissingCollections_; // when true, skip missing collections silently
47 
48  /* TASK TIME PROFILING */
50  std::map<ecaldqm::DQWorker*, double> taskTimes_;
53 };
54 
55 #endif
void endRun(edm::Run const &, edm::EventSetup const &) override
void formSchedule(std::vector< ecaldqm::Collections > const &, edm::ParameterSet const &)
edm::EDGetToken collectionTokens_[ecaldqm::nCollections]
void beginLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) override
void analyze(edm::Event const &, edm::EventSetup const &) override
void endLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) override
void runOnCollection(edm::Event const &, ecaldqm::Collections, std::set< ecaldqm::DQWorker * > const &)
void(EcalDQMonitorTask::* Processor)(edm::Event const &, ecaldqm::Collections, std::set< ecaldqm::DQWorker * > const &)
std::vector< std::pair< Processor, ecaldqm::Collections > > schedule_
std::map< ecaldqm::DQWorker *, double > taskTimes_
void dqmBeginRun(edm::Run const &, edm::EventSetup const &) override
EcalDQMonitorTask(edm::ParameterSet const &)
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
static void fillDescriptions(edm::ConfigurationDescriptions &)
Definition: Run.h:41