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 
4 #include <map>
5 
8 
10 
11 namespace edm{
12  class ParameterSet;
13  class Run;
14  class LuminosityBlock;
15  class Event;
16  class EventSetup;
18 }
19 
20 namespace ecaldqm{
21  class DQWorkerTask;
22 }
23 
25  public:
28 
30 
31  private:
32  void beginRun(edm::Run const&, edm::EventSetup const&);
33  void endRun(edm::Run const&, edm::EventSetup const&);
34 
37 
38  void analyze(edm::Event const&, edm::EventSetup const&);
39 
41 
43  template <class C> void runOnCollection(edm::Event const&, ecaldqm::Collections);
44 
45  void formSchedule_(std::vector<ecaldqm::Collections> const&, std::multimap<ecaldqm::Collections, ecaldqm::Collections> const&);
46 
47  int ievt_;
48  // list of workers
49  std::vector<ecaldqm::DQWorkerTask*> workers_;
50  // list of EDGetTokens
52  // schedule of collections to run
53  std::vector<std::pair<Processor, ecaldqm::Collections> > schedule_;
54  // which worker runs on each collection? this information is static within a job
55  std::vector<ecaldqm::DQWorkerTask*> taskLists_[ecaldqm::nCollections];
56  // which worker is enabled for this event?
57  std::map<ecaldqm::DQWorkerTask*, bool> enabled_;
58 
59  std::map<ecaldqm::DQWorkerTask*, double> taskTimes_;
61 
63 };
64 
65 #endif
void(EcalDQMonitorTask::* Processor)(edm::Event const &, ecaldqm::Collections)
std::vector< ecaldqm::DQWorkerTask * > workers_
std::map< ecaldqm::DQWorkerTask *, bool > enabled_
void formSchedule_(std::vector< ecaldqm::Collections > const &, std::multimap< ecaldqm::Collections, ecaldqm::Collections > const &)
edm::EDGetToken collectionTokens_[ecaldqm::nCollections]
void analyze(edm::Event const &, edm::EventSetup const &)
std::map< ecaldqm::DQWorkerTask *, double > taskTimes_
void beginLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &)
void registerCollection(ecaldqm::Collections, edm::InputTag const &)
std::vector< std::pair< Processor, ecaldqm::Collections > > schedule_
void endLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &)
std::vector< ecaldqm::DQWorkerTask * > taskLists_[ecaldqm::nCollections]
void beginRun(edm::Run const &, edm::EventSetup const &)
EcalDQMonitorTask(edm::ParameterSet const &)
void runOnCollection(edm::Event const &, ecaldqm::Collections)
void endRun(edm::Run const &, edm::EventSetup const &)
static void fillDescriptions(edm::ConfigurationDescriptions &)
Definition: Run.h:41