#include <EmDQMPostProcessor.h>
Private Member Functions | |
TH2F * | get2DHistogram (DQMStore::IBooker &ibooker, DQMStore::IGetter &igetter, const std::string &histoPath) |
TH1F * | getHistogram (DQMStore::IBooker &ibooker, DQMStore::IGetter &igetter, const std::string &histoPath) |
Static Private Member Functions | |
static void | Efficiency (int passing, int total, double level, double &mode, double &lowerBound, double &upperBound) |
Private Attributes | |
std::string | dataSet_ |
bool | ignoreEmpty |
bool | noPhiPlots |
bool | normalizeToReco |
std::string | subDir_ |
Additional Inherited Members | |
Public Types inherited from DQMEDHarvester | |
typedef dqm::harvesting::DQMStore | DQMStore |
typedef dqm::harvesting::MonitorElement | MonitorElement |
Public Types inherited from edm::one::EDProducerBase | |
typedef EDProducerBase | ModuleType |
Public Types inherited from edm::ProducerBase | |
using | ModuleToResolverIndicies = std::unordered_multimap< std::string, std::tuple< edm::TypeID const *, const char *, edm::ProductResolverIndex >> |
typedef ProductRegistryHelper::TypeLabelList | TypeLabelList |
Public Types inherited from edm::EDConsumerBase | |
typedef ProductLabels | Labels |
Static Public Member Functions inherited from edm::one::EDProducerBase | |
static const std::string & | baseType () |
static void | fillDescriptions (ConfigurationDescriptions &descriptions) |
static void | prevalidate (ConfigurationDescriptions &descriptions) |
Protected Member Functions inherited from edm::ProducerBase | |
ProducesCollector | producesCollector () |
Protected Member Functions inherited from edm::EDConsumerBase | |
template<typename ProductType , BranchType B = InEvent> | |
EDGetTokenT< ProductType > | consumes (edm::InputTag const &tag) |
EDGetToken | consumes (const TypeToGet &id, edm::InputTag const &tag) |
template<BranchType B> | |
EDGetToken | consumes (TypeToGet const &id, edm::InputTag const &tag) |
ConsumesCollector | consumesCollector () |
Use a ConsumesCollector to gather consumes information from helper functions. More... | |
template<typename ProductType , BranchType B = InEvent> | |
void | consumesMany () |
void | consumesMany (const TypeToGet &id) |
template<BranchType B> | |
void | consumesMany (const TypeToGet &id) |
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event> | |
auto | esConsumes () |
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event> | |
auto | esConsumes (ESInputTag const &tag) |
template<typename ProductType , BranchType B = InEvent> | |
EDGetTokenT< ProductType > | mayConsume (edm::InputTag const &tag) |
EDGetToken | mayConsume (const TypeToGet &id, edm::InputTag const &tag) |
template<BranchType B> | |
EDGetToken | mayConsume (const TypeToGet &id, edm::InputTag const &tag) |
Protected Attributes inherited from DQMEDHarvester | |
edm::EDPutTokenT< DQMToken > | lumiToken_ |
edm::EDPutTokenT< DQMToken > | runToken_ |
Definition at line 7 of file EmDQMPostProcessor.h.
EmDQMPostProcessor::EmDQMPostProcessor | ( | const edm::ParameterSet & | pset | ) |
Definition at line 17 of file EmDQMPostProcessor.cc.
References dataSet_, edm::ParameterSet::getUntrackedParameter(), ignoreEmpty, noPhiPlots, normalizeToReco, AlCaHLTBitMon_QueryRunRegistry::string, and subDir_.
|
inlineoverride |
Definition at line 10 of file EmDQMPostProcessor.h.
References makePileupJSON::denom, dividehistos(), dividehistos2D(), dqmEndJob(), Efficiency(), label, personalPlayback::level, ALCARECOPromptCalibProdSiPixelAli0T_cff::mode, EgammaValidation_cff::num, MillePedeFileConverter_cfg::out, TagProbeFitTreeAnalyzer_cfi::passing, AlCaHLTBitMon_QueryRunRegistry::string, and dqmMemoryStats::total.
TProfile * EmDQMPostProcessor::dividehistos | ( | DQMStore::IBooker & | ibooker, |
DQMStore::IGetter & | igetter, | ||
const std::string & | num, | ||
const std::string & | denom, | ||
const std::string & | out, | ||
const std::string & | label, | ||
const std::string & | titel = "" |
||
) |
Definition at line 396 of file EmDQMPostProcessor.cc.
References dqm::dqmstoreimpl::DQMStore::IBooker::bookProfile(), makePileupJSON::denom, MillePedeFileConverter_cfg::e, Efficiency(), runTheMatrix::err, getHistogram(), dqm::legacy::MonitorElement::getTProfile(), LaserClient_cfi::high, mps_fire::i, createfilelist::int, LaserClient_cfi::low, EgammaValidation_cff::num, MillePedeFileConverter_cfg::out, dqm::impl::MonitorElement::setEfficiencyFlag(), and mathSSE::sqrt().
Referenced by dqmEndJob(), and ~EmDQMPostProcessor().
TH2F * EmDQMPostProcessor::dividehistos2D | ( | DQMStore::IBooker & | ibooker, |
DQMStore::IGetter & | igetter, | ||
const std::string & | num, | ||
const std::string & | denom, | ||
const std::string & | out, | ||
const std::string & | label, | ||
const std::string & | titel = "" |
||
) |
Definition at line 446 of file EmDQMPostProcessor.cc.
References dqm::dqmstoreimpl::DQMStore::IBooker::book2D(), makePileupJSON::denom, get2DHistogram(), dqm::legacy::MonitorElement::getTH2F(), EgammaValidation_cff::num, and MillePedeFileConverter_cfg::out.
Referenced by dqmEndJob(), and ~EmDQMPostProcessor().
|
overridevirtual |
Implements DQMEDHarvester.
Definition at line 31 of file EmDQMPostProcessor.cc.
References newFWLiteAna::bin, dqm::dqmstoreimpl::DQMStore::IBooker::book1D(), dqm::dqmstoreimpl::DQMStore::IBooker::bookProfile(), dqm::dqmstoreimpl::DQMStore::IBooker::cd(), dataSet_, DeadROC_duringRun::dir, dqm::dqmstoreimpl::DQMStore::IGetter::dirExists(), dividehistos(), dividehistos2D(), Efficiency(), relativeConstraints::error, ALCARECOTkAlBeamHalo_cff::filter, pdwgDoubleElectron_cfi::filterName, getHistogram(), dqm::dqmstoreimpl::DQMStore::IGetter::getSubdirs(), dqm::legacy::MonitorElement::getTProfile(), dqm::dqmstoreimpl::DQMStore::IBooker::goUp(), HltBtagPostValidation_cff::histoName, ignoreEmpty, createfilelist::int, noPhiPlots, normalizeToReco, dqm::dqmstoreimpl::DQMStore::IBooker::pwd(), dqm::impl::MonitorElement::setEfficiencyFlag(), mathSSE::sqrt(), AlCaHLTBitMon_QueryRunRegistry::string, subDir_, personalPlayback::subdirectories, groupFilesInBlocks::temp, dqmMemoryStats::total, EgHLTOffTrigSelection_cfi::trigName, relativeConstraints::value, trigObjTnPSource_cfi::var, and varNames.
Referenced by ~EmDQMPostProcessor().
|
staticprivate |
a replacement for the function TGraphAsymmErrors::Efficiency(..) used with earlier versions of ROOT (this functionality has been moved to a separate class TEfficiency)
Definition at line 509 of file EmDQMPostProcessor.cc.
References DEFINE_FWK_MODULE.
Referenced by dividehistos(), dqmEndJob(), and ~EmDQMPostProcessor().
|
private |
Definition at line 497 of file EmDQMPostProcessor.cc.
References dqm::dqmstoreimpl::DQMStore::IGetter::get(), and dqm::legacy::MonitorElement::getTH2F().
Referenced by dividehistos2D().
|
private |
convenience method to get a histogram but checks first whether the corresponding MonitorElement is non-null.
Definition at line 487 of file EmDQMPostProcessor.cc.
References dqm::dqmstoreimpl::DQMStore::IGetter::get(), and dqm::legacy::MonitorElement::getTH1F().
Referenced by dividehistos(), and dqmEndJob().
|
private |
dataset with which these histograms were produced. This is set by a user parameter in the configuration file.
It is just used for writing it to the DQM output file. Useful to remember with which dataset a histogram file was produced. This code does not do much with this information (apart from copying it to the output file) but it can be used when generating reports.
Definition at line 61 of file EmDQMPostProcessor.h.
Referenced by dqmEndJob(), and EmDQMPostProcessor().
|
private |
Definition at line 42 of file EmDQMPostProcessor.h.
Referenced by dqmEndJob(), and EmDQMPostProcessor().
|
private |
read from the configuration: if set to true, efficiencies are calculated with respect to reconstructed objects (instead of generated objects). This is e.g. a useful option when running on data.
Definition at line 40 of file EmDQMPostProcessor.h.
Referenced by dqmEndJob(), and EmDQMPostProcessor().
|
private |
Definition at line 41 of file EmDQMPostProcessor.h.
Referenced by dqmEndJob(), and EmDQMPostProcessor().
|
private |
Definition at line 49 of file EmDQMPostProcessor.h.
Referenced by dqmEndJob(), and EmDQMPostProcessor().