Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-05-11 03:34:04

0001 #ifndef MESetDet1D_H
0002 #define MESetDet1D_H
0003 
0004 #include "MESetEcal.h"
0005 
0006 namespace ecaldqm {
0007   /*
0008   class MESetDet1D
0009   channel ID-based MonitorElement wrapper
0010   channel id <-> x axis bin
0011 */
0012 
0013   class MESetDet1D : public MESetEcal {
0014   public:
0015     MESetDet1D(std::string const &,
0016                binning::ObjectType,
0017                binning::BinningType,
0018                MonitorElement::Kind,
0019                binning::AxisSpecs const * = nullptr);
0020     MESetDet1D(MESetDet1D const &);
0021     ~MESetDet1D() override;
0022 
0023     MESet *clone(std::string const & = "") const override;
0024 
0025     void book(DQMStore::IBooker &, EcalElectronicsMapping const *) override;
0026 
0027     void fill(EcalDQMSetupObjects const, DetId const &, double = 1., double = 1., double = 0.) override;
0028     void fill(EcalDQMSetupObjects const, EcalElectronicsId const &, double = 1., double = 1., double = 0.) override;
0029     void fill(EcalDQMSetupObjects const, int, double = 1., double = 1., double = 0.) override;
0030 
0031     void setBinContent(EcalDQMSetupObjects const, DetId const &, double) override;
0032     void setBinContent(EcalDQMSetupObjects const, EcalElectronicsId const &, double) override;
0033     void setBinContent(EcalDQMSetupObjects const, int, double) override;
0034     void setBinContent(EcalDQMSetupObjects const, DetId const &, int, double) override;
0035     void setBinContent(EcalDQMSetupObjects const, EcalElectronicsId const &, int, double) override;
0036     void setBinContent(EcalDQMSetupObjects const, int, int, double) override;
0037 
0038     void setBinError(EcalDQMSetupObjects const, DetId const &, double) override;
0039     void setBinError(EcalDQMSetupObjects const, EcalElectronicsId const &, double) override;
0040     void setBinError(EcalDQMSetupObjects const, int, double) override;
0041     void setBinError(EcalDQMSetupObjects const, DetId const &, int, double) override;
0042     void setBinError(EcalDQMSetupObjects const, EcalElectronicsId const &, int, double) override;
0043     void setBinError(EcalDQMSetupObjects const, int, int, double) override;
0044 
0045     void setBinEntries(EcalDQMSetupObjects const, DetId const &, double) override;
0046     void setBinEntries(EcalDQMSetupObjects const, EcalElectronicsId const &, double) override;
0047     void setBinEntries(EcalDQMSetupObjects const, int, double) override;
0048     void setBinEntries(EcalDQMSetupObjects const, DetId const &, int, double) override;
0049     void setBinEntries(EcalDQMSetupObjects const, EcalElectronicsId const &, int, double) override;
0050     void setBinEntries(EcalDQMSetupObjects const, int, int, double) override;
0051 
0052     double getBinContent(EcalDQMSetupObjects const, DetId const &, int = 0) const override;
0053     double getBinContent(EcalDQMSetupObjects const, EcalElectronicsId const &, int = 0) const override;
0054     double getBinContent(EcalDQMSetupObjects const, int, int = 0) const override;
0055 
0056     double getBinError(EcalDQMSetupObjects const, DetId const &, int = 0) const override;
0057     double getBinError(EcalDQMSetupObjects const, EcalElectronicsId const &, int = 0) const override;
0058     double getBinError(EcalDQMSetupObjects const, int, int = 0) const override;
0059 
0060     double getBinEntries(EcalDQMSetupObjects const, DetId const &, int = 0) const override;
0061     double getBinEntries(EcalDQMSetupObjects const, EcalElectronicsId const &, int = 0) const override;
0062     double getBinEntries(EcalDQMSetupObjects const, int, int = 0) const override;
0063 
0064     int findBin(EcalDQMSetupObjects const, DetId const &) const;
0065     int findBin(EcalDQMSetupObjects const, EcalElectronicsId const &) const;
0066     int findBin(EcalDQMSetupObjects const, int) const;
0067     int findBin(EcalDQMSetupObjects const, DetId const &, double, double = 0.) const override;
0068     int findBin(EcalDQMSetupObjects const, EcalElectronicsId const &, double, double = 0.) const override;
0069     int findBin(EcalDQMSetupObjects const, int, double, double = 0.) const override;
0070 
0071     void reset(EcalElectronicsMapping const *, double = 0., double = 0., double = 0.) override;
0072 
0073   private:
0074     using ecaldqm::MESetEcal::operator=;
0075   };
0076 }  // namespace ecaldqm
0077 
0078 #endif