CMS 3D CMS Logo

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 
43  edm::EDGetToken collectionTokens_[ecaldqm::nCollections]; // list of EDGetTokens
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 */
51 };
52 
53 #endif
virtual example_stream void bookHistograms(DQMStore::IBooker &,@example_stream edm::Run const &,@example_stream edm::EventSetup const &) override
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
std::vector< std::pair< Processor, ecaldqm::Collections > > schedule_
HLT enums.
virtual example_stream void analyze(const edm::Event &, const edm::EventSetup &) override
Definition: Run.h:44