CMS 3D CMS Logo

PNDiodeTask.h
Go to the documentation of this file.
1 #ifndef PNDiodeTask_H
2 #define PNDiodeTask_H
3 
4 #include "DQWorkerTask.h"
5 
7 
10 
11 namespace ecaldqm {
12 
13  class PNDiodeTask : public DQWorkerTask {
14  public:
15  PNDiodeTask();
16  ~PNDiodeTask() override {}
17 
18  bool filterRunType(short const*) override;
19 
20  bool analyze(void const*, Collections) override;
21 
24 
25  protected:
27  };
28 
29  inline bool PNDiodeTask::analyze(void const* _p, Collections _collection) {
30  switch (_collection) {
31  case kMEMTowerIdErrors:
33  case kMEMChIdErrors:
34  case kMEMGainErrors:
35  if (_p)
36  runOnErrors(*static_cast<EcalElectronicsIdCollection const*>(_p), _collection);
37  return true;
38  break;
39  case kPnDiodeDigi:
40  if (_p)
41  runOnPnDigis(*static_cast<EcalPnDiodeDigiCollection const*>(_p));
42  return true;
43  break;
44  default:
45  break;
46  }
47 
48  return false;
49  }
50 
51 } // namespace ecaldqm
52 
53 #endif
void runOnErrors(EcalElectronicsIdCollection const &, Collections)
Definition: PNDiodeTask.cc:27
~PNDiodeTask() override
Definition: PNDiodeTask.h:16
bool enable_[ecaldqm::nDCC]
Definition: PNDiodeTask.h:26
bool analyze(void const *, Collections) override
Definition: PNDiodeTask.h:29
bool filterRunType(short const *) override
Definition: PNDiodeTask.cc:10
void runOnPnDigis(EcalPnDiodeDigiCollection const &)
Definition: PNDiodeTask.cc:77
static constexpr int nDCC