CMS 3D CMS Logo

List of all members | Public Member Functions | Private Member Functions | Private Attributes
PFMuonDQMAnalyzer Class Reference

#include <PFMuonDQMAnalyzer.h>

Inheritance diagram for PFMuonDQMAnalyzer:
DQMEDAnalyzer edm::one::EDProducer< edm::Accumulator, edm::EndLuminosityBlockProducer, edm::EndRunProducer, edm::one::WatchLuminosityBlocks, edm::one::WatchRuns > edm::one::EDProducerBase edm::ProducerBase edm::EDConsumerBase edm::ProductRegistryHelper

Public Member Functions

 PFMuonDQMAnalyzer (const edm::ParameterSet &parameterSet)
 
- Public Member Functions inherited from DQMEDAnalyzer
void accumulate (edm::Event const &ev, edm::EventSetup const &es) final
 
void beginLuminosityBlock (edm::LuminosityBlock const &lumi, edm::EventSetup const &setup) override
 
void beginRun (edm::Run const &run, edm::EventSetup const &setup) final
 
virtual void dqmBeginRun (edm::Run const &, edm::EventSetup const &)
 
 DQMEDAnalyzer ()
 
 DQMEDAnalyzer (DQMEDAnalyzer const &)=delete
 
 DQMEDAnalyzer (DQMEDAnalyzer &&)=delete
 
void endLuminosityBlock (edm::LuminosityBlock const &, edm::EventSetup const &) override
 
void endLuminosityBlockProduce (edm::LuminosityBlock &lumi, edm::EventSetup const &setup) final
 
void endRun (edm::Run const &run, edm::EventSetup const &setup) override
 
void endRunProduce (edm::Run &run, edm::EventSetup const &setup) override
 
 ~DQMEDAnalyzer () override=default
 
- Public Member Functions inherited from edm::one::EDProducer< edm::Accumulator, edm::EndLuminosityBlockProducer, edm::EndRunProducer, edm::one::WatchLuminosityBlocks, edm::one::WatchRuns >
 EDProducer ()=default
 
SerialTaskQueueglobalLuminosityBlocksQueue () final
 
SerialTaskQueueglobalRunsQueue () final
 
bool hasAbilityToProduceInLumis () const final
 
bool hasAbilityToProduceInRuns () const final
 
bool wantsGlobalLuminosityBlocks () const final
 
bool wantsGlobalRuns () const final
 
- Public Member Functions inherited from edm::one::EDProducerBase
 EDProducerBase ()
 
ModuleDescription const & moduleDescription () const
 
bool wantsStreamLuminosityBlocks () const
 
bool wantsStreamRuns () const
 
 ~EDProducerBase () override
 
- Public Member Functions inherited from edm::ProducerBase
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
std::vector< edm::ProductResolverIndex > const & indiciesForPutProducts (BranchType iBranchType) const
 
 ProducerBase ()
 
std::vector< edm::ProductResolverIndex > const & putTokenIndexToProductResolverIndex () const
 
void registerProducts (ProducerBase *, ProductRegistry *, ModuleDescription const &)
 
std::function< void(BranchDescription const &)> registrationCallback () const
 used by the fwk to register list of products More...
 
void resolvePutIndicies (BranchType iBranchType, ModuleToResolverIndicies const &iIndicies, std::string const &moduleLabel)
 
 ~ProducerBase () override
 
- Public Member Functions inherited from edm::EDConsumerBase
std::vector< ConsumesInfoconsumesInfo () const
 
void convertCurrentProcessAlias (std::string const &processName)
 Convert "@currentProcess" in InputTag process names to the actual current process name. More...
 
 EDConsumerBase ()
 
 EDConsumerBase (EDConsumerBase const &)=delete
 
 EDConsumerBase (EDConsumerBase &&)=default
 
ProductResolverIndexAndSkipBit indexFrom (EDGetToken, BranchType, TypeID const &) const
 
void itemsMayGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
void itemsToGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
std::vector< ProductResolverIndexAndSkipBit > const & itemsToGetFrom (BranchType iType) const
 
void labelsForToken (EDGetToken iToken, Labels &oLabels) const
 
void modulesWhoseProductsAreConsumed (std::vector< ModuleDescription const * > &modules, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const
 
EDConsumerBase const & operator= (EDConsumerBase const &)=delete
 
EDConsumerBaseoperator= (EDConsumerBase &&)=default
 
bool registeredToConsume (ProductResolverIndex, bool, BranchType) const
 
bool registeredToConsumeMany (TypeID const &, BranchType) const
 
ProductResolverIndexAndSkipBit uncheckedIndexFrom (EDGetToken) const
 
void updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet)
 
virtual ~EDConsumerBase () noexcept(false)
 

Private Member Functions

void analyze (edm::Event const &, edm::EventSetup const &) override
 
void bookHistograms (DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
 

Private Attributes

std::string benchmarkLabel_
 
bool createEfficiencyHistos_
 
std::string eventInfoFolder_
 
edm::InputTag inputLabel_
 
edm::InputTag matchLabel_
 
edm::EDGetTokenT< edm::View< reco::Muon > > myCand_
 
edm::EDGetTokenT< edm::View< reco::Muon > > myMatchedCand_
 
int nBadEvents_
 
PFCandidateMonitor pfCandidateMonitor_
 
edm::ParameterSet pSet_
 
double ptBase_
 
double ptNotPF_
 
std::string subsystemname_
 

Additional Inherited Members

- 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::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)
 
- Protected Attributes inherited from DQMEDAnalyzer
edm::EDPutTokenT< DQMTokenlumiToken_
 
edm::EDPutTokenT< DQMTokenrunToken_
 

Detailed Description

Definition at line 15 of file PFMuonDQMAnalyzer.h.

Constructor & Destructor Documentation

PFMuonDQMAnalyzer::PFMuonDQMAnalyzer ( const edm::ParameterSet parameterSet)

Definition at line 20 of file PFMuonDQMAnalyzer.cc.

References benchmarkLabel_, createEfficiencyHistos_, eventInfoFolder_, printsummarytable::folder, edm::ParameterSet::getParameter(), inputLabel_, matchLabel_, myCand_, myMatchedCand_, nBadEvents_, edm::parameterSet(), pfCandidateMonitor_, pSet_, PFCandidateMonitor::setParameters(), AlCaHLTBitMon_QueryRunRegistry::string, and subsystemname_.

22 {
24  inputLabel_ = pSet_.getParameter<edm::InputTag>("InputCollection");
25  matchLabel_ = pSet_.getParameter<edm::InputTag>("MatchCollection");
26  benchmarkLabel_ = pSet_.getParameter<std::string>("BenchmarkLabel");
27  createEfficiencyHistos_ = pSet_.getParameter<bool>( "CreateEfficiencyHistos" );
28 
29  pfCandidateMonitor_.setParameters(parameterSet);
30 
31  myCand_ = consumes< edm::View<reco::Muon> >(inputLabel_);
32  myMatchedCand_ = consumes< edm::View<reco::Muon> >(matchLabel_);
33 
34 
36 
37  subsystemname_ = "ParticleFlow" ;
39 
40  nBadEvents_ = 0;
41 
42 }
T getParameter(std::string const &) const
edm::InputTag inputLabel_
edm::ParameterSet pSet_
void setParameters(float dRMax, bool matchCharge, Benchmark::Mode mode, float ptmin, float ptmax, float etamin, float etamax, float phimin, float phimax, bool refHistoFlag)
set the parameters locally
PFCandidateMonitor pfCandidateMonitor_
std::string subsystemname_
edm::EDGetTokenT< edm::View< reco::Muon > > myMatchedCand_
std::string eventInfoFolder_
edm::InputTag matchLabel_
std::string benchmarkLabel_
ParameterSet const & parameterSet(Provenance const &provenance)
Definition: Provenance.cc:11
edm::EDGetTokenT< edm::View< reco::Muon > > myCand_

Member Function Documentation

void PFMuonDQMAnalyzer::analyze ( edm::Event const &  iEvent,
edm::EventSetup const &  iSetup 
)
overrideprivatevirtual

Reimplemented from DQMEDAnalyzer.

Definition at line 63 of file PFMuonDQMAnalyzer.cc.

References createEfficiencyHistos_, DEFINE_FWK_MODULE, PFCandidateMonitor::fill(), edm::Event::getByToken(), edm::HandleBase::isValid(), myCand_, myMatchedCand_, pfCandidateMonitor_, and pSet_.

64  {
65 
66  edm::Handle< edm::View<reco::Muon> > candCollection;
67  edm::Handle< edm::View<reco::Muon> > matchedCandCollection;
68  if ( !createEfficiencyHistos_ ) {
69  iEvent.getByToken( myCand_, candCollection);
70  iEvent.getByToken( myMatchedCand_, matchedCandCollection);
71  } else {
72  iEvent.getByToken( myMatchedCand_, candCollection);
73  iEvent.getByToken( myCand_, matchedCandCollection);
74  }
75 
76  float maxRes = 0.0;
77  float minRes = 99.99;
78  if (candCollection.isValid() && matchedCandCollection.isValid()) {
79  pfCandidateMonitor_.fill( *candCollection, *matchedCandCollection, minRes, maxRes, pSet_, *matchedCandCollection) ;
80 
81  }
82 }
edm::ParameterSet pSet_
PFCandidateMonitor pfCandidateMonitor_
void fill(const T &candidateCollection, const C &matchedCandCollection, float &minVal, float &maxVal, const edm::ParameterSet &parameterSet)
fill histograms with all particle
int iEvent
Definition: GenABIO.cc:230
edm::EDGetTokenT< edm::View< reco::Muon > > myMatchedCand_
bool isValid() const
Definition: HandleBase.h:74
edm::EDGetTokenT< edm::View< reco::Muon > > myCand_
void PFMuonDQMAnalyzer::bookHistograms ( DQMStore::IBooker ibooker,
edm::Run const &  ,
edm::EventSetup const &   
)
overrideprivatevirtual

Implements DQMEDAnalyzer.

Definition at line 48 of file PFMuonDQMAnalyzer.cc.

References eventInfoFolder_, pfCandidateMonitor_, pSet_, DQMStore::IBooker::setCurrentFolder(), and PFCandidateMonitor::setup().

51 {
53 
54  edm::LogInfo("PFMuonDQMAnalyzer") << " PFMuonDQMAnalyzer::bookHistograms " << "Histogram Folder path set to " << eventInfoFolder_;
55 
57 }
edm::ParameterSet pSet_
void setup(DQMStore::IBooker &b)
book histograms
PFCandidateMonitor pfCandidateMonitor_
std::string eventInfoFolder_
void setCurrentFolder(const std::string &fullpath)
Definition: DQMStore.cc:279

Member Data Documentation

std::string PFMuonDQMAnalyzer::benchmarkLabel_
private

Definition at line 30 of file PFMuonDQMAnalyzer.h.

Referenced by PFMuonDQMAnalyzer().

bool PFMuonDQMAnalyzer::createEfficiencyHistos_
private

Definition at line 31 of file PFMuonDQMAnalyzer.h.

Referenced by analyze(), and PFMuonDQMAnalyzer().

std::string PFMuonDQMAnalyzer::eventInfoFolder_
private

Definition at line 39 of file PFMuonDQMAnalyzer.h.

Referenced by bookHistograms(), and PFMuonDQMAnalyzer().

edm::InputTag PFMuonDQMAnalyzer::inputLabel_
private

Definition at line 29 of file PFMuonDQMAnalyzer.h.

Referenced by PFMuonDQMAnalyzer().

edm::InputTag PFMuonDQMAnalyzer::matchLabel_
private

Definition at line 28 of file PFMuonDQMAnalyzer.h.

Referenced by PFMuonDQMAnalyzer().

edm::EDGetTokenT< edm::View<reco::Muon> > PFMuonDQMAnalyzer::myCand_
private

Definition at line 26 of file PFMuonDQMAnalyzer.h.

Referenced by analyze(), and PFMuonDQMAnalyzer().

edm::EDGetTokenT< edm::View<reco::Muon> > PFMuonDQMAnalyzer::myMatchedCand_
private

Definition at line 27 of file PFMuonDQMAnalyzer.h.

Referenced by analyze(), and PFMuonDQMAnalyzer().

int PFMuonDQMAnalyzer::nBadEvents_
private

Definition at line 42 of file PFMuonDQMAnalyzer.h.

Referenced by PFMuonDQMAnalyzer().

PFCandidateMonitor PFMuonDQMAnalyzer::pfCandidateMonitor_
private

Definition at line 36 of file PFMuonDQMAnalyzer.h.

Referenced by analyze(), bookHistograms(), and PFMuonDQMAnalyzer().

edm::ParameterSet PFMuonDQMAnalyzer::pSet_
private

Definition at line 38 of file PFMuonDQMAnalyzer.h.

Referenced by analyze(), bookHistograms(), and PFMuonDQMAnalyzer().

double PFMuonDQMAnalyzer::ptBase_
private

Definition at line 33 of file PFMuonDQMAnalyzer.h.

double PFMuonDQMAnalyzer::ptNotPF_
private

Definition at line 34 of file PFMuonDQMAnalyzer.h.

std::string PFMuonDQMAnalyzer::subsystemname_
private

Definition at line 40 of file PFMuonDQMAnalyzer.h.

Referenced by PFMuonDQMAnalyzer().