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 
9  /* class MESetEcal
10  implements plot <-> detector part relationship
11  base class for channel-binned histograms
12  MESetEcal is only filled given an object identifier and a bin (channel id does not give a bin)
13  */
14 
15  class MESetEcal : public MESet
16  {
17  public :
18  MESetEcal(std::string const&, binning::ObjectType, binning::BinningType, MonitorElement::Kind, unsigned, binning::AxisSpecs const* = nullptr, binning::AxisSpecs const* = nullptr, binning::AxisSpecs const* = nullptr);
19  MESetEcal(MESetEcal const&);
20  ~MESetEcal() override;
21 
22  MESet& operator=(MESet const&) override;
23 
24  MESet* clone(std::string const& = "") const override;
25 
26  void book(DQMStore::IBooker&) override;
27  bool retrieve(DQMStore::IGetter&, std::string* = nullptr) const override;
28 
29  void fill(DetId const&, double = 1., double = 1., double = 1.) override;
30  void fill(EcalElectronicsId const&, double = 1., double = 1., double = 1.) override;
31  void fill(int, double = 1., double = 1., double = 1.) override;
32  void fill(double, double = 1., double = 1.) override;
33 
34  void setBinContent(DetId const&, int, double) override;
35  void setBinContent(EcalElectronicsId const&, int, double) override;
36  void setBinContent(int, int, double) override;
37 
38  void setBinError(DetId const&, int, double) override;
39  void setBinError(EcalElectronicsId const&, int, double) override;
40  void setBinError(int, int, double) override;
41 
42  void setBinEntries(DetId const&, int, double) override;
43  void setBinEntries(EcalElectronicsId const&, int, double) override;
44  void setBinEntries(int, int, double) override;
45 
46  double getBinContent(DetId const&, int) const override;
47  double getBinContent(EcalElectronicsId const&, int) const override;
48  double getBinContent(int, int) const override;
49 
50  double getBinError(DetId const&, int) const override;
51  double getBinError(EcalElectronicsId const&, int) const override;
52  double getBinError(int, int) const override;
53 
54  double getBinEntries(DetId const&, int) const override;
55  double getBinEntries(EcalElectronicsId const&, int) const override;
56  double getBinEntries(int, int) const override;
57 
58  virtual int findBin(DetId const&, double, double = 0.) const;
59  virtual int findBin(EcalElectronicsId const&, double, double = 0.) const;
60  virtual int findBin(int, double, double = 0.) const;
61 
62  bool isVariableBinning() const override;
63 
64  std::vector<std::string> generatePaths() const;
65 
66  protected :
71 
72  private:
73  template<class Bookable> void doBook_(Bookable&);
74  };
75 
76 }
77 
78 #endif
double getBinError(DetId const &, int) const override
Definition: MESetEcal.cc:464
double getBinContent(DetId const &, int) const override
Definition: MESetEcal.cc:431
MESet & operator=(MESet const &) override
Definition: MESetEcal.cc:39
void fill(DetId const &, double=1., double=1., double=1.) override
Definition: MESetEcal.cc:286
Ecal readout channel identification [32:20] Unused (so far) [19:13] DCC id [12:6] tower [5:3] strip [...
MESet * clone(std::string const &="") const override
Definition: MESetEcal.cc:59
~MESetEcal() override
Definition: MESetEcal.cc:31
void doBook_(Bookable &)
void setBinEntries(DetId const &, int, double) override
Definition: MESetEcal.cc:395
bool isVariableBinning() const override
Definition: MESetEcal.cc:566
double getBinEntries(DetId const &, int) const override
Definition: MESetEcal.cc:497
Definition: DetId.h:18
MESetEcal(std::string const &, binning::ObjectType, binning::BinningType, MonitorElement::Kind, unsigned, binning::AxisSpecs const *=0, binning::AxisSpecs const *=0, binning::AxisSpecs const *=0)
Definition: MESetEcal.cc:11
virtual int findBin(DetId const &, double, double=0.) const
Definition: MESetEcal.cc:533
binning::AxisSpecs const * zaxis_
Definition: MESetEcal.h:70
bool retrieve(DQMStore::IGetter &, std::string *=0) const override
Definition: MESetEcal.cc:257
void setBinContent(DetId const &, int, double) override
Definition: MESetEcal.cc:329
binning::AxisSpecs const * xaxis_
Definition: MESetEcal.h:68
std::vector< std::string > generatePaths() const
Definition: MESetEcal.cc:572
void setBinError(DetId const &, int, double) override
Definition: MESetEcal.cc:362
binning::AxisSpecs const * yaxis_
Definition: MESetEcal.h:69
void book(DQMStore::IBooker &) override
Definition: MESetEcal.cc:69
unsigned logicalDimensions_
Definition: MESetEcal.h:67