File indexing completed on 2023-03-17 10:54:44
0001 #ifndef ContainerSingle1D_h
0002 #define ContainerSingle1D_h
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013 #include "DQM/HcalCommon/interface/Container.h"
0014 #include "DQM/HcalCommon/interface/ValueQuantity.h"
0015
0016 #include <string>
0017
0018 namespace hcaldqm {
0019 class ContainerSingle1D : public Container {
0020 public:
0021 ContainerSingle1D();
0022 ContainerSingle1D(std::string const &folder,
0023 quantity::Quantity *,
0024 quantity::Quantity *qy = new quantity::ValueQuantity(quantity::fN));
0025 ContainerSingle1D(std::string const &folder,
0026 std::string const &,
0027 quantity::Quantity *,
0028 quantity::Quantity *qy = new quantity::ValueQuantity(quantity::fN));
0029 ContainerSingle1D(ContainerSingle1D const &);
0030 ~ContainerSingle1D() override;
0031
0032 virtual void initialize(std::string const &folder,
0033 quantity::Quantity *,
0034 quantity::Quantity *qy = new quantity::ValueQuantity(quantity::fN),
0035 int debug = 0);
0036
0037 virtual void initialize(std::string const &folder,
0038 std::string const &,
0039 quantity::Quantity *,
0040 quantity::Quantity *qy = new quantity::ValueQuantity(quantity::fN),
0041 int debug = 0);
0042 using Container::initialize;
0043
0044 virtual void book(DQMStore::IBooker &, std::string subsystem = "Hcal", std::string aux = "");
0045
0046 virtual void fill(int);
0047 virtual void fill(double);
0048 virtual void fill(int, int);
0049 virtual void fill(int, double);
0050 virtual void fill(double, int);
0051 virtual void fill(double, double);
0052
0053 virtual double getBinContent(int);
0054 virtual double getBinContent(double);
0055 virtual double getBinEntries(int);
0056 virtual double getBinEntries(double);
0057
0058 virtual void setBinContent(int, int);
0059 virtual void setBinContent(int, double);
0060 virtual void setBinContent(double, int);
0061 virtual void setBinContent(double, double);
0062
0063 virtual void fill(HcalDetId const &);
0064 virtual void fill(HcalDetId const &, double);
0065 virtual void fill(HcalDetId const &, double, double);
0066
0067 virtual double getBinContent(HcalDetId const &);
0068 virtual double getBinEntries(HcalDetId const &);
0069
0070 virtual void setBinContent(HcalDetId const &, int);
0071 virtual void setBinContent(HcalDetId const &, double);
0072
0073 virtual void fill(HcalElectronicsId const &);
0074 virtual void fill(HcalElectronicsId const &, double);
0075 virtual void fill(HcalElectronicsId const &, double, double);
0076
0077 virtual double getBinContent(HcalElectronicsId const &);
0078 virtual double getBinEntries(HcalElectronicsId const &);
0079
0080 virtual void setBinContent(HcalElectronicsId const &, int);
0081 virtual void setBinContent(HcalElectronicsId const &, double);
0082
0083 virtual void fill(HcalTrigTowerDetId const &);
0084 virtual void fill(HcalTrigTowerDetId const &, double);
0085 virtual void fill(HcalTrigTowerDetId const &, double, double);
0086
0087 virtual double getBinContent(HcalTrigTowerDetId const &);
0088 virtual double getBinEntries(HcalTrigTowerDetId const &);
0089
0090 virtual void setBinContent(HcalTrigTowerDetId const &, int);
0091 virtual void setBinContent(HcalTrigTowerDetId const &, double);
0092
0093 virtual void reset() { _me->Reset(); }
0094 virtual void print() { std::cout << _qname << std::endl; }
0095
0096 virtual void extendAxisRange(int);
0097
0098 virtual void showOverflowX(bool showOverflow);
0099 virtual void showOverflowY(bool showOverflow);
0100
0101 protected:
0102 MonitorElement *_me;
0103 quantity::Quantity *_qx;
0104 quantity::Quantity *_qy;
0105
0106 virtual void customize();
0107 };
0108 }
0109
0110 #endif