CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Private Attributes
DQMHcalIsoTrackPostProcessor Class Reference
Inheritance diagram for DQMHcalIsoTrackPostProcessor:
DQMEDHarvester edm::one::EDAnalyzer< edm::one::WatchRuns, edm::one::WatchLuminosityBlocks, edm::one::SharedResources > edm::one::EDAnalyzerBase edm::EDConsumerBase

Public Member Functions

virtual void dqmEndJob (DQMStore::IBooker &, DQMStore::IGetter &) override
 
 DQMHcalIsoTrackPostProcessor (const edm::ParameterSet &pset)
 
 ~DQMHcalIsoTrackPostProcessor ()
 
- 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
 EDAnalyzerBase ()
 
ModuleDescription const & moduleDescription () const
 
virtual ~EDAnalyzerBase ()
 
- Public Member Functions inherited from edm::EDConsumerBase
 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 (const std::string &iProcessName, std::vector< const char * > &oModuleLabels) const
 
bool registeredToConsume (ProductHolderIndex, bool, BranchType) const
 
bool registeredToConsumeMany (TypeID const &, BranchType) const
 
void updateLookup (BranchType iBranchType, ProductHolderIndexHelper const &)
 
virtual ~EDConsumerBase ()
 

Private Attributes

std::string outputRootFileName_
 
bool saveToFile_
 
std::string subDir_
 

Additional Inherited Members

- Public Types inherited from edm::one::EDAnalyzerBase
typedef EDAnalyzerBase ModuleType
 
- 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::one::EDAnalyzerBase
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
- 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)
 

Detailed Description

Definition at line 19 of file DQMHcalIsoTrackPostProcessor.cc.

Constructor & Destructor Documentation

DQMHcalIsoTrackPostProcessor::DQMHcalIsoTrackPostProcessor ( const edm::ParameterSet pset)
DQMHcalIsoTrackPostProcessor::~DQMHcalIsoTrackPostProcessor ( )
inline

Definition at line 22 of file DQMHcalIsoTrackPostProcessor.cc.

22 {};

Member Function Documentation

void DQMHcalIsoTrackPostProcessor::dqmEndJob ( DQMStore::IBooker ibooker,
DQMStore::IGetter igetter 
)
overridevirtual

Implements DQMEDHarvester.

Definition at line 44 of file DQMHcalIsoTrackPostProcessor.cc.

References DQMStore::IBooker::book1D(), DQMStore::IGetter::cd(), DQMStore::IGetter::dirExists(), DQMStore::IGetter::get(), getTH1F(), MonitorElement::getTH1F(), DQMStore::IBooker::pwd(), and subDir_.

45 {
46 
47  if(igetter.dirExists(subDir_)) igetter.cd(subDir_);
48  else {
49  edm::LogWarning("DQMHcalIsoTrackPostProcessor") << "cannot find directory: " << subDir_ << " , skipping";
50  return;
51  }
52 
53  MonitorElement* hPurityEta=ibooker.book1D("hPurityEta","Purity of sample vs eta",16,-2,2);
54  MonitorElement* hPurityPhi=ibooker.book1D("hPurityPhi","Purity of sample vs phi",16,-3.2,3.2);
55 
56  MonitorElement* hSumOffEta=ibooker.book1D("hSumOffEta","hSumOffEta",16,-2,2);
57  MonitorElement* hSumOffPhi=ibooker.book1D("hSumOffPhi","hSumOffPhi",16,-3.2,3.2);
58 
59  MonitorElement* hSumL3Eta=ibooker.book1D("hSumL3Eta","hSumL3Eta",16,-2,2);
60  MonitorElement* hSumL3Phi=ibooker.book1D("hSumL3Phi","hSumL3Phi",16,-3.2,3.2);
61 
62  hSumOffEta->getTH1F()->Add(igetter.get(ibooker.pwd() + "/hOffEtaFP")->getTH1F(),1);
63  hSumOffPhi->getTH1F()->Add(igetter.get(ibooker.pwd() + "/hOffPhiFP")->getTH1F(),1);
64 
65  hSumL3Eta->getTH1F()->Add(igetter.get(ibooker.pwd() + "/hl3eta")->getTH1F(),1);
66  hSumL3Phi->getTH1F()->Add(igetter.get(ibooker.pwd() + "/hl3phi")->getTH1F(),1);
67 
68 
69  hSumOffEta->getTH1F()->TH1F::Sumw2();
70  hSumOffPhi->getTH1F()->TH1F::Sumw2();
71  hSumL3Eta->getTH1F()->TH1F::Sumw2();
72  hSumL3Phi->getTH1F()->TH1F::Sumw2();
73 
74  hPurityEta->getTH1F()->Divide(hSumOffEta->getTH1F(),hSumL3Eta->getTH1F(),1,1);
75  hPurityPhi->getTH1F()->Divide(hSumOffPhi->getTH1F(),hSumL3Phi->getTH1F(),1,1);
76 
77 // if (saveToFile_) igetter.save(outputRootFileName_);
78 }
void cd(void)
Definition: DQMStore.cc:318
MonitorElement * get(const std::string &path)
Definition: DQMStore.cc:298
const std::string & pwd(void)
Definition: DQMStore.cc:282
MonitorElement * book1D(Args &&...args)
Definition: DQMStore.h:115
TH1F * getTH1F(std::string name, std::string process, std::string rootfolder, DQMStore *dbe_, bool verb, bool clone)
bool dirExists(const std::string &path)
Definition: DQMStore.cc:314
TH1F * getTH1F(void) const

Member Data Documentation

std::string DQMHcalIsoTrackPostProcessor::outputRootFileName_
private

Definition at line 31 of file DQMHcalIsoTrackPostProcessor.cc.

Referenced by DQMHcalIsoTrackPostProcessor().

bool DQMHcalIsoTrackPostProcessor::saveToFile_
private

Definition at line 30 of file DQMHcalIsoTrackPostProcessor.cc.

Referenced by DQMHcalIsoTrackPostProcessor().

std::string DQMHcalIsoTrackPostProcessor::subDir_
private

Definition at line 29 of file DQMHcalIsoTrackPostProcessor.cc.

Referenced by dqmEndJob(), and DQMHcalIsoTrackPostProcessor().