CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
PedestalTask.h
Go to the documentation of this file.
1 #ifndef PedestalTask_H
2 #define PedestalTask_H
3 
5 
7 
8 namespace ecaldqm {
9 
10  class PedestalTask : public DQWorkerTask {
11  public:
13  ~PedestalTask();
14 
15  void bookMEs() override;
16 
17  bool filterRunType(const std::vector<short>&) override;
18 
19  void analyze(const void*, Collections) override;
20 
21  void runOnDigis(const EcalDigiCollection&);
23 
24  enum Constants {
25  nGain = 3,
26  nPNGain = 2
27  };
28 
29  enum MESets {
30  kOccupancy, // h2f
31  kPedestal = kOccupancy + nGain, // profile2d
33  kPNPedestal = kPNOccupancy + nPNGain, // profile2d
34  nMESets = kPNPedestal + nPNGain
35  };
36 
37  static void setMEData(std::vector<MEData>&);
38 
39  protected:
40  std::vector<int> MGPAGains_;
41  std::vector<int> MGPAGainsPN_;
42 
44  };
45 
46  inline void PedestalTask::analyze(const void* _p, Collections _collection){
47  switch(_collection){
48  case kEBDigi:
49  case kEEDigi:
50  runOnDigis(*static_cast<const EcalDigiCollection*>(_p));
51  break;
52  case kPnDiodeDigi:
53  runOnPnDigis(*static_cast<const EcalPnDiodeDigiCollection*>(_p));
54  break;
55  default:
56  break;
57  }
58  }
59 
60 }
61 
62 #endif
void runOnDigis(const EcalDigiCollection &)
void analyze(const void *, Collections) override
Definition: PedestalTask.h:46
std::vector< int > MGPAGains_
Definition: PedestalTask.h:40
std::vector< int > MGPAGainsPN_
Definition: PedestalTask.h:41
static void setMEData(std::vector< MEData > &)
bool filterRunType(const std::vector< short > &) override
void bookMEs() override
Definition: PedestalTask.cc:77
void runOnPnDigis(const EcalPnDiodeDigiCollection &)
bool enable_[BinService::nDCC]
Definition: PedestalTask.h:43
PedestalTask(const edm::ParameterSet &, const edm::ParameterSet &)
Definition: PedestalTask.cc:13