CMS 3D CMS Logo

DQWorkerClient.h
Go to the documentation of this file.
1 #ifndef DQWorkerClient_H
2 #define DQWorkerClient_H
3 
4 #include <utility>
5 
7 
8 class DetId;
9 
10 namespace ecaldqm
11 {
12  class StatusManager;
13 
14  class DQWorkerClient : public DQWorker {
15  public:
16  enum ProcessType {
20  };
21 
23  ~DQWorkerClient() override {}
24 
26 
27  void endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&) override;
28  void resetPerLumi();
29 
30  void bookMEs(DQMStore::IBooker&) override;
31  void releaseMEs() override;
32 
33  void releaseSource();
35 
36  bool runsOn(ProcessType _type) const { return _type == kJob || hasLumiPlots_; }
37  virtual void resetMEs();
38  virtual void producePlots(ProcessType) = 0;
39 
40  void setStatusManager(StatusManager const& _manager) { statusManager_ = &_manager; }
41 
42  enum Quality {
43  kBad = 0,
44  kGood = 1,
45  kUnknown = 2,
46  kMBad = 3,
47  kMGood = 4,
49  };
50 
51  protected:
52  void setME(edm::ParameterSet const& _ps) final;
53  void setSource(edm::ParameterSet const&) override;
54 
55  bool using_(std::string const& _name, ProcessType _type = kJob) const
56  {
57  MESetCollection::const_iterator itr(sources_.find(_name));
58  if(itr == sources_.end()) return false;
59  if(_type == kJob) return true;
60  else return itr->second->getLumiFlag();
61  }
62 
63  void towerAverage_(MESet&, MESet const&, float);
64 
66  std::set<std::string> qualitySummaries_;
67 
69 
71  };
72 }
73 #endif
void towerAverage_(MESet &, MESet const &, float)
void setStatusManager(StatusManager const &_manager)
bool using_(std::string const &_name, ProcessType _type=kJob) const
bool retrieveSource(DQMStore::IGetter &, ProcessType)
virtual void producePlots(ProcessType)=0
std::set< std::string > qualitySummaries_
static void fillDescriptions(edm::ParameterSetDescription &)
StatusManager const * statusManager_
boost::ptr_map< std::string, MESet > MESetCollection
Definition: MESet.h:350
MESetCollection sources_
Definition: DetId.h:18
void releaseMEs() override
bool runsOn(ProcessType _type) const
void setSource(edm::ParameterSet const &) override
void bookMEs(DQMStore::IBooker &) override
void endLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) override
void setME(edm::ParameterSet const &_ps) final