55 if (!meBtlHitLogEnergy || !meNevents) {
56 edm::LogError(
"BtlLocalRecoHarvester") <<
"Monitoring histograms not found!" << std::endl;
63 const float scale = (Nevents > 0 ? 1. / (Nevents * NBtlCrystals) : 1.);
68 "BTL cell occupancy vs RECO hit energy;log_{10}(E_{RECO} [MeV]); Occupancy per event",
70 meBtlHitLogEnergy->
getTH1()->GetXaxis()->GetXmin(),
71 meBtlHitLogEnergy->
getTH1()->GetXaxis()->GetXmax());
75 for (
int ibin = meBtlHitLogEnergy->
getNbinsX(); ibin >= 1; --ibin) {
87 descriptions.
add(
"btlLocalRecoPostProcessor",
desc);
static constexpr uint32_t kCrystalsBTL
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
~BtlLocalRecoHarvester() override
Log< level::Error, false > LogError
const std::string folder_
BtlLocalRecoHarvester(const edm::ParameterSet &iConfig)
MonitorElement * meHitOccupancy_
#define DEFINE_FWK_MODULE(type)
virtual double getEntries() const
get # of entries
virtual void setBinContent(int binx, double content)
set content of bin (1-D)
void add(std::string const &label, ParameterSetDescription const &psetDescription)
virtual MonitorElement * get(std::string const &fullpath) const
virtual TH1 * getTH1() const
virtual int getNbinsX() const
get # of bins in X-axis
MonitorElement * book1D(TString const &name, TString const &title, int const nchX, double const lowX, double const highX, FUNC onbooking=NOOP())
void dqmEndJob(DQMStore::IBooker &, DQMStore::IGetter &) override
virtual double getBinContent(int binx) const
get content of bin (1-D)