CMS 3D CMS Logo

MESetEcal.h
Go to the documentation of this file.
1 #ifndef MESetEcal_H
2 #define MESetEcal_H
3 
4 #include "MESet.h"
5 
6 namespace ecaldqm {
7 
8  /* class MESetEcal
9  implements plot <-> detector part relationship
10  base class for channel-binned histograms
11  MESetEcal is only filled given an object identifier and a bin (channel id
12  does not give a bin)
13 */
14 
15  class MESetEcal : public MESet {
16  public:
17  MESetEcal(std::string const &,
21  unsigned,
22  binning::AxisSpecs const * = nullptr,
23  binning::AxisSpecs const * = nullptr,
24  binning::AxisSpecs const * = nullptr);
25  MESetEcal(MESetEcal const &);
26  ~MESetEcal() override;
27 
28  MESet &operator=(MESet const &) override;
29 
30  MESet *clone(std::string const & = "") const override;
31 
32  void book(DQMStore::IBooker &, EcalElectronicsMapping const *) override;
33  bool retrieve(EcalElectronicsMapping const *, DQMStore::IGetter &, std::string * = nullptr) const override;
34 
35  void fill(EcalDQMSetupObjects const, DetId const &, double = 1., double = 1., double = 1.) override;
36  void fill(EcalDQMSetupObjects const, EcalElectronicsId const &, double = 1., double = 1., double = 1.) override;
37  void fill(EcalDQMSetupObjects const, int, double = 1., double = 1., double = 1.) override;
38  void fill(EcalDQMSetupObjects const, double, double = 1., double = 1.) override;
39 
40  void setBinContent(EcalDQMSetupObjects const, DetId const &, int, double) override;
41  void setBinContent(EcalDQMSetupObjects const, EcalElectronicsId const &, int, double) override;
42  void setBinContent(EcalDQMSetupObjects const, int, int, double) override;
43 
44  void setBinError(EcalDQMSetupObjects const, DetId const &, int, double) override;
45  void setBinError(EcalDQMSetupObjects const, EcalElectronicsId const &, int, double) override;
46  void setBinError(EcalDQMSetupObjects const, int, int, double) override;
47 
48  void setBinEntries(EcalDQMSetupObjects const, DetId const &, int, double) override;
49  void setBinEntries(EcalDQMSetupObjects const, EcalElectronicsId const &, int, double) override;
50  void setBinEntries(EcalDQMSetupObjects const, int, int, double) override;
51 
52  double getBinContent(EcalDQMSetupObjects const, DetId const &, int) const override;
53  double getBinContent(EcalDQMSetupObjects const, EcalElectronicsId const &, int) const override;
54  double getBinContent(EcalDQMSetupObjects const, int, int) const override;
55 
56  double getBinError(EcalDQMSetupObjects const, DetId const &, int) const override;
57  double getBinError(EcalDQMSetupObjects const, EcalElectronicsId const &, int) const override;
58  double getBinError(EcalDQMSetupObjects const, int, int) const override;
59 
60  double getBinEntries(EcalDQMSetupObjects const, DetId const &, int) const override;
61  double getBinEntries(EcalDQMSetupObjects const, EcalElectronicsId const &, int) const override;
62  double getBinEntries(EcalDQMSetupObjects const, int, int) const override;
63 
64  virtual int findBin(EcalDQMSetupObjects const, DetId const &, double, double = 0.) const;
65  virtual int findBin(EcalDQMSetupObjects const, EcalElectronicsId const &, double, double = 0.) const;
66  virtual int findBin(EcalDQMSetupObjects const, int, double, double = 0.) const;
67 
68  bool isVariableBinning() const override;
69 
70  std::vector<std::string> generatePaths(EcalElectronicsMapping const *) const;
71 
72  protected:
77 
78  private:
79  template <class Bookable>
80  void doBook_(Bookable &);
81  };
82 
83 } // namespace ecaldqm
84 
85 #endif
double getBinEntries(EcalDQMSetupObjects const, DetId const &, int) const override
Definition: MESetEcal.cc:523
MESet & operator=(MESet const &) override
Definition: MESetEcal.cc:40
void setBinEntries(EcalDQMSetupObjects const, DetId const &, int, double) override
Definition: MESetEcal.cc:424
Ecal readout channel identification [32:20] Unused (so far) [19:13] DCC id [12:6] tower [5:3] strip [...
~MESetEcal() override
Definition: MESetEcal.cc:34
void doBook_(Bookable &)
MESet * clone(std::string const &="") const override
Definition: MESetEcal.cc:61
void fill(EcalDQMSetupObjects const, DetId const &, double=1., double=1., double=1.) override
Definition: MESetEcal.cc:312
MESetEcal(std::string const &, binning::ObjectType, binning::BinningType, MonitorElement::Kind, unsigned, binning::AxisSpecs const *=nullptr, binning::AxisSpecs const *=nullptr, binning::AxisSpecs const *=nullptr)
Definition: MESetEcal.cc:10
std::vector< std::string > generatePaths(EcalElectronicsMapping const *) const
Definition: MESetEcal.cc:597
bool isVariableBinning() const override
Definition: MESetEcal.cc:592
double getBinError(EcalDQMSetupObjects const, DetId const &, int) const override
Definition: MESetEcal.cc:493
void book(DQMStore::IBooker &, EcalElectronicsMapping const *) override
Definition: MESetEcal.cc:70
virtual int findBin(EcalDQMSetupObjects const, DetId const &, double, double=0.) const
Definition: MESetEcal.cc:559
double getBinContent(EcalDQMSetupObjects const, DetId const &, int) const override
Definition: MESetEcal.cc:463
Definition: DetId.h:17
void setBinError(EcalDQMSetupObjects const, DetId const &, int, double) override
Definition: MESetEcal.cc:394
void setBinContent(EcalDQMSetupObjects const, DetId const &, int, double) override
Definition: MESetEcal.cc:361
bool retrieve(EcalElectronicsMapping const *, DQMStore::IGetter &, std::string *=nullptr) const override
Definition: MESetEcal.cc:280
binning::AxisSpecs const * zaxis_
Definition: MESetEcal.h:76
binning::AxisSpecs const * xaxis_
Definition: MESetEcal.h:74
binning::AxisSpecs const * yaxis_
Definition: MESetEcal.h:75
unsigned logicalDimensions_
Definition: MESetEcal.h:73