#include <EmDQMPostProcessor.h>
Public Member Functions | |
TProfile * | 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="") |
void | dqmEndJob (DQMStore::IBooker &, DQMStore::IGetter &) override |
EmDQMPostProcessor (const edm::ParameterSet &pset) | |
~EmDQMPostProcessor () | |
Public Member Functions inherited from DQMEDHarvester | |
virtual void | analyze (edm::Event const &, edm::EventSetup const &) final |
virtual void | beginLuminosityBlock (edm::LuminosityBlock const &, edm::EventSetup const &) final |
virtual void | beginRun (edm::Run const &, edm::EventSetup const &) |
DQMEDHarvester (void) | |
virtual void | dqmEndLuminosityBlock (DQMStore::IBooker &, DQMStore::IGetter &, edm::LuminosityBlock const &, edm::EventSetup const &) |
virtual void | endJob () final |
virtual void | endLuminosityBlock (edm::LuminosityBlock const &, edm::EventSetup const &) final |
virtual void | endRun (edm::Run const &, edm::EventSetup const &) |
Public Member Functions inherited from edm::one::EDAnalyzer< edm::one::WatchRuns, edm::one::WatchLuminosityBlocks, edm::one::SharedResources > | |
EDAnalyzer ()=default | |
Public Member Functions inherited from edm::one::EDAnalyzerBase | |
void | callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func) |
EDAnalyzerBase () | |
ModuleDescription const & | moduleDescription () const |
virtual | ~EDAnalyzerBase () |
Public Member Functions inherited from edm::EDConsumerBase | |
std::vector< ConsumesInfo > | consumesInfo () const |
EDConsumerBase () | |
ProductHolderIndexAndSkipBit | indexFrom (EDGetToken, BranchType, TypeID const &) const |
void | itemsMayGet (BranchType, std::vector< ProductHolderIndexAndSkipBit > &) const |
void | itemsToGet (BranchType, std::vector< ProductHolderIndexAndSkipBit > &) const |
std::vector < ProductHolderIndexAndSkipBit > const & | itemsToGetFromEvent () const |
void | labelsForToken (EDGetToken iToken, Labels &oLabels) const |
void | modulesDependentUpon (std::string const &iProcessName, std::string const &iModuleLabel, bool iPrint, std::vector< char const * > &oModuleLabels) const |
void | modulesWhoseProductsAreConsumed (std::vector< ModuleDescription const * > &modules, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const |
bool | registeredToConsume (ProductHolderIndex, bool, BranchType) const |
bool | registeredToConsumeMany (TypeID const &, BranchType) const |
void | updateLookup (BranchType iBranchType, ProductHolderIndexHelper const &) |
virtual | ~EDConsumerBase () |
Private Member Functions | |
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 edm::one::EDAnalyzerBase | |
typedef EDAnalyzerBase | ModuleType |
Public Types inherited from edm::EDConsumerBase | |
typedef ProductLabels | Labels |
Static Public Member Functions inherited from edm::one::EDAnalyzerBase | |
static const std::string & | baseType () |
static void | fillDescriptions (ConfigurationDescriptions &descriptions) |
static void | prevalidate (ConfigurationDescriptions &descriptions) |
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 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) |
Definition at line 8 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_.
|
inline |
Definition at line 11 of file EmDQMPostProcessor.h.
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 318 of file EmDQMPostProcessor.cc.
References DQMStore::IBooker::bookProfile(), alignCSCRings::e, Efficiency(), getHistogram(), MonitorElement::getTProfile(), i, NULL, pileupDistInMC::num, GenerateHcalLaserBadRunList::out, MonitorElement::setEfficiencyFlag(), and mathSSE::sqrt().
Referenced by dqmEndJob().
|
overridevirtual |
Implements DQMEDHarvester.
Definition at line 32 of file EmDQMPostProcessor.cc.
References newFWLiteAna::bin, DQMStore::IBooker::book1D(), DQMStore::IBooker::bookProfile(), DQMStore::IBooker::cd(), dataSet_, dir, DQMStore::IGetter::dirExists(), dividehistos(), Efficiency(), relativeConstraints::error, alcazmumu_cfi::filter, reco_skim_cfg_mod::filterName, getHistogram(), DQMStore::IGetter::getSubdirs(), MonitorElement::getTProfile(), DQMStore::IBooker::goUp(), ignoreEmpty, noPhiPlots, normalizeToReco, NULL, lhef::pop(), DQMStore::IBooker::pwd(), MonitorElement::setEfficiencyFlag(), mathSSE::sqrt(), AlCaHLTBitMon_QueryRunRegistry::string, subDir_, personalPlayback::subdirectories, groupFilesInBlocks::temp, pileupDistInMC::total, relativeConstraints::value, MetTreeProducer::var(), and varNames.
|
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 375 of file EmDQMPostProcessor.cc.
Referenced by dividehistos(), and dqmEndJob().
|
private |
convenience method to get a histogram but checks first whether the corresponding MonitorElement is non-null.
Definition at line 363 of file EmDQMPostProcessor.cc.
References DQMStore::IGetter::get(), MonitorElement::getTH1F(), and NULL.
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 47 of file EmDQMPostProcessor.h.
Referenced by dqmEndJob(), and EmDQMPostProcessor().
|
private |
Definition at line 28 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 26 of file EmDQMPostProcessor.h.
Referenced by dqmEndJob(), and EmDQMPostProcessor().
|
private |
Definition at line 27 of file EmDQMPostProcessor.h.
Referenced by dqmEndJob(), and EmDQMPostProcessor().
|
private |
Definition at line 35 of file EmDQMPostProcessor.h.
Referenced by dqmEndJob(), and EmDQMPostProcessor().