CMS 3D CMS Logo

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

#include <DQMOffline/CalibCalo/src/DQMHcalIsoTrackAlCaReco.cc>

Inheritance diagram for DQMHcalIsoTrackAlCaReco:
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

void analyze (const edm::Event &, const edm::EventSetup &) override
 
void bookHistograms (DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
 
 DQMHcalIsoTrackAlCaReco (const edm::ParameterSet &)
 
 ~DQMHcalIsoTrackAlCaReco () override
 
- Public Member Functions inherited from DQMEDAnalyzer
void accumulate (edm::Event const &ev, edm::EventSetup const &es) final
 
virtual void analyze (edm::Event const &, edm::EventSetup const &)
 
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 Attributes

std::vector< double > etaRange_
 
std::string folderName_
 
MonitorElementhEnEcal_
 
std::vector< MonitorElement * > hHltEta_
 
std::vector< MonitorElement * > hHltP_
 
std::vector< MonitorElement * > hHltPhi_
 
MonitorElementhIeta_
 
MonitorElementhIphi_
 
std::vector< MonitorElement * > hL1Eta_
 
std::vector< MonitorElement * > hL1phi_
 
std::vector< MonitorElement * > hL1Pt_
 
MonitorElementhL3Dr_
 
MonitorElementhL3Rat_
 
std::vector< std::string > hltFilterTag_
 
MonitorElementhMaxP_
 
std::vector< MonitorElement * > hOffP_
 
std::vector< bool > ifL3_
 
std::vector< unsigned int > indexH_
 
std::vector< std::string > l1FilterTag_
 
edm::InputTag labelTrack_
 
edm::InputTag labelTrigger_
 
int nHLTaccepts_
 
int nTotal_
 
double pThr_
 
edm::EDGetTokenT< reco::HcalIsolatedTrackCandidateCollectiontokTrack_
 
edm::EDGetTokenT< trigger::TriggerEventtokTrigger_
 
std::vector< int > type_
 

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

Description: <one line="" class="" summary>="">

Implementation: <Notes on="" implementation>="">

Definition at line 46 of file DQMHcalIsoTrackAlCaReco.h.

Constructor & Destructor Documentation

DQMHcalIsoTrackAlCaReco::DQMHcalIsoTrackAlCaReco ( const edm::ParameterSet iConfig)
explicit

Definition at line 28 of file DQMHcalIsoTrackAlCaReco.cc.

References folderName_, edm::ParameterSet::getParameter(), edm::ParameterSet::getUntrackedParameter(), hltFilterTag_, gen::k, l1FilterTag_, labelTrack_, labelTrigger_, LogDebug, nHLTaccepts_, nTotal_, pThr_, AlCaHLTBitMon_QueryRunRegistry::string, tokTrack_, tokTrigger_, and type_.

28  {
29  folderName_ = iConfig.getParameter<std::string>("FolderName");
30  l1FilterTag_ = iConfig.getParameter<std::vector<std::string> >("L1FilterLabel");
31  hltFilterTag_= iConfig.getParameter<std::vector<std::string> >("HltFilterLabels");
32  type_ = iConfig.getParameter<std::vector<int> >("TypeFilter");
33  labelTrigger_= iConfig.getParameter<edm::InputTag>("TriggerLabel");
34  labelTrack_ = iConfig.getParameter<edm::InputTag>("TracksLabel");
35  pThr_ = iConfig.getUntrackedParameter<double>("pThrL3",0);
36 
37  nTotal_ = nHLTaccepts_ = 0;
38  tokTrigger_ = consumes<trigger::TriggerEvent>(labelTrigger_);
39  tokTrack_ = consumes<reco::HcalIsolatedTrackCandidateCollection>(labelTrack_);
40  LogDebug("HcalIsoTrack") << "Folder " << folderName_
41  << " Input Tag for Trigger " << labelTrigger_
42  << " track " << labelTrack_ << " threshold "
43  << pThr_ << " with " << l1FilterTag_.size()
44  << " level 1 and " << hltFilterTag_.size()
45  << " hlt filter tags" << "\n";
46  for (unsigned int k=0; k<l1FilterTag_.size(); ++k)
47  LogDebug("HcalIsoTrack") << "L1FilterTag[" << k << "] " << l1FilterTag_[k] << "\n";
48  for (unsigned int k=0; k<hltFilterTag_.size(); ++k)
49  LogDebug("HcalIsoTrack") << "HLTFilterTag[" << k << "] " << hltFilterTag_[k] << "\n";
50 }
#define LogDebug(id)
T getParameter(std::string const &) const
T getUntrackedParameter(std::string const &, T const &) const
edm::EDGetTokenT< reco::HcalIsolatedTrackCandidateCollection > tokTrack_
edm::EDGetTokenT< trigger::TriggerEvent > tokTrigger_
int k[5][pyjets_maxn]
std::vector< std::string > hltFilterTag_
std::vector< std::string > l1FilterTag_
DQMHcalIsoTrackAlCaReco::~DQMHcalIsoTrackAlCaReco ( )
override

Definition at line 52 of file DQMHcalIsoTrackAlCaReco.cc.

52 {}

Member Function Documentation

void DQMHcalIsoTrackAlCaReco::analyze ( const edm::Event iEvent,
const edm::EventSetup iSetup 
)
override

Definition at line 54 of file DQMHcalIsoTrackAlCaReco.cc.

References funct::abs(), accept(), deltaR(), trigger::TriggerObject::eta(), fastmath::etaphi(), etaRange_, MonitorElement::Fill(), trigger::TriggerEvent::filterKeys(), trigger::TriggerEvent::filterTag(), spr::find(), edm::Event::getByToken(), trigger::TriggerEvent::getObjects(), hEnEcal_, hHltEta_, hHltP_, hHltPhi_, hIeta_, hIphi_, hL1Eta_, hL1phi_, hL1Pt_, hL3Dr_, hL3Rat_, hltFilterTag_, hMaxP_, hOffP_, ifL3_, indexH_, edm::HandleBase::isValid(), gen::k, checklumidiff::l, l1FilterTag_, edm::InputTag::label(), LogDebug, ak8PFJets_cfi::nFilt, nHLTaccepts_, nTotal_, trigger::TriggerObject::p(), trigger::TriggerObject::phi(), EnergyCorrector::pt, trigger::TriggerObject::pt(), pThr_, dttmaxenums::R, trigger::TriggerEvent::sizeFilters(), tokTrack_, and tokTrigger_.

54  {
55 
56  nTotal_++;
57  bool accept(false);
59  iEvent.getByToken(tokTrigger_,trEv);
60 
62  iEvent.getByToken(tokTrack_,recoIsoTracks);
63  LogDebug("HcalIsoTrack") << "Gets Trigger information with "
64  << trEv.isValid() <<" and offline tracks with "
65  << recoIsoTracks.isValid() << "\n";
66 
67  if (trEv.isValid()) {
68  const trigger::TriggerObjectCollection& TOCol(trEv->getObjects());
69  const trigger::size_type nFilt(trEv->sizeFilters());
70  //plots for L1 trigger
71  for (unsigned int k=0; k<l1FilterTag_.size(); ++k) {
72  trigger::Keys KEYSl1;
73  double etaTrigl1(-10000), phiTrigl1(-10000), ptMaxl1(0);
74  for (trigger::size_type iFilt=0; iFilt!=nFilt; iFilt++) {
75  LogDebug("HcalIsoTrack") << trEv->filterTag(iFilt).label() << " find for " << l1FilterTag_[k] << " gives " << (trEv->filterTag(iFilt).label()).find(l1FilterTag_[k]) << "\n";
76  if ((trEv->filterTag(iFilt).label()).find(l1FilterTag_[k]) !=
77  std::string::npos) {
78  KEYSl1=trEv->filterKeys(iFilt);
79  trigger::size_type nRegl1=KEYSl1.size();
80  LogDebug("HcalIsoTrack") << "# of objects " << nRegl1 << "\n";
81  for (trigger::size_type iReg=0; iReg<nRegl1; iReg++) {
82  const trigger::TriggerObject& TObj(TOCol[KEYSl1[iReg]]);
83  LogDebug("HcalIsoTrack") << "Object[" << iReg << "] with pt " << TObj.pt() << " " << TObj.eta() << " " << TObj.phi() << "\n";
84  if (TObj.pt()>ptMaxl1) {
85  etaTrigl1=TObj.eta();
86  phiTrigl1=TObj.phi();
87  ptMaxl1=TObj.pt();
88  }
89  }
90  }
91  }
92  LogDebug("HcalIsoTrack") << "For L1 trigger type " << k << " pt "
93  << ptMaxl1 << " eta " << etaTrigl1
94  << " phi " << phiTrigl1 << "\n";
95  if (ptMaxl1 > 0) {
96  hL1Pt_[k]->Fill(ptMaxl1);
97  hL1Eta_[k]->Fill(etaTrigl1);
98  hL1phi_[k]->Fill(phiTrigl1);
99  }
100  }
101  //Now make plots for hlt objects
102  trigger::Keys KEYS;
103  for (unsigned l=0; l<hltFilterTag_.size(); l++) {
104  for (trigger::size_type iFilt=0; iFilt!=nFilt; iFilt++) {
105  LogDebug("HcalIsoTrack") << trEv->filterTag(iFilt).label() << " find for " << hltFilterTag_[l] << " gives " << (trEv->filterTag(iFilt).label()).find(hltFilterTag_[l]) << "\n";
106  if ((trEv->filterTag(iFilt).label()).find(hltFilterTag_[l]) !=
107  std::string::npos) {
108  KEYS=trEv->filterKeys(iFilt);
109  trigger::size_type nReg=KEYS.size();
110  LogDebug("HcalIsoTrack") << "# of objects for HLT " << nReg << "\n";
111  //checks with IsoTrack trigger results
112  for (trigger::size_type iReg=0; iReg<nReg; iReg++) {
113  const trigger::TriggerObject& TObj(TOCol[KEYS[iReg]]);
114  LogDebug("HcalIsoTrack") << "HLT Filter Tag " << l
115  << " trigger " << iFilt << " object "
116  << iReg << " p " << TObj.p()
117  << " pointer " << indexH_[l] << ":"
118  << hHltP_[indexH_[l]] << ":"
119  << hHltEta_[indexH_[l]] << ":"
120  << hHltPhi_[indexH_[l]] << "\n";
121  if (TObj.p()>pThr_) {
122  hHltP_[indexH_[l]] ->Fill(TObj.p());
123  hHltEta_[indexH_[l]]->Fill(TObj.eta());
124  hHltPhi_[indexH_[l]]->Fill(TObj.phi());
125  if (ifL3_[l]) accept = true;
126  if (recoIsoTracks.isValid() && ifL3_[l]) {
127  double minRecoL3dist(1000), pt(1000);
128  reco::HcalIsolatedTrackCandidateCollection::const_iterator mrtr;
129  for (mrtr=recoIsoTracks->begin(); mrtr!=recoIsoTracks->end();
130  mrtr++) {
131  double R = deltaR(mrtr->eta(),mrtr->phi(),TObj.eta(),TObj.phi());
132  if (R<minRecoL3dist) {
133  minRecoL3dist = R;
134  pt = mrtr->pt();
135  }
136  }
137  LogDebug("HcalIsoTrack") << "Minimum R " << minRecoL3dist
138  << " pt " << pt << ":"
139  << TObj.pt() << "\n";
140  hL3Dr_->Fill(minRecoL3dist);
141  if (minRecoL3dist<0.02) hL3Rat_->Fill(TObj.pt()/pt);
142  }
143  }
144  }
145  }
146  }
147  }
148  }
149 
150  //general distributions
151  if (recoIsoTracks.isValid()) {
152  for (reco::HcalIsolatedTrackCandidateCollection::const_iterator itr=recoIsoTracks->begin(); itr!=recoIsoTracks->end(); itr++) {
153  hMaxP_->Fill(itr->maxP());
154  hEnEcal_->Fill(itr->energyEcal());
155  std::pair<int,int> etaphi = itr->towerIndex();
156  hIeta_->Fill(etaphi.first);
157  hIphi_->Fill(etaphi.second);
158  LogDebug("HcalIsoTrack") << "Reco track p " << itr->p()
159  << " eta|phi " << etaphi.first
160  << "|" << etaphi.second << " maxP "
161  << itr->maxP() << " EcalE "
162  << itr->energyEcal() << " pointers "
163  << hHltP_[3] << ":"
164  << hHltEta_[3] << ":" << hHltPhi_[3] << "\n";
165  if (itr->p()>=pThr_) {
166  hHltP_[3] ->Fill(itr->p());
167  hHltEta_[3]->Fill(itr->eta());
168  hHltPhi_[3]->Fill(itr->phi());
169  }
170  double etaAbs = std::abs(itr->eta());
171  hOffP_[0]->Fill(itr->p());
172  for (unsigned int l=1; l<etaRange_.size(); l++) {
173  if (etaAbs >= etaRange_[l-1] && etaAbs < etaRange_[l]) {
174  LogDebug("HcalIsoTrack") << "Range " << l << " p " << itr->p()
175  << " pointer " << hOffP_[l];
176  hOffP_[l]->Fill(itr->p());
177  break;
178  }
179  }
180  }
181  }
182 
183  if (accept) nHLTaccepts_++;
184  LogDebug("HcalIsoTrack") << "Accept " << accept << "\n";
185 }
#define LogDebug(id)
trigger::size_type sizeFilters() const
Definition: TriggerEvent.h:135
edm::EDGetTokenT< reco::HcalIsolatedTrackCandidateCollection > tokTrack_
bool getByToken(EDGetToken token, Handle< PROD > &result) const
Definition: Event.h:519
std::vector< unsigned int > indexH_
const Keys & filterKeys(trigger::size_type index) const
Definition: TriggerEvent.h:111
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
Definition: FindCaloHit.cc:20
bool accept(const edm::Event &event, const edm::TriggerResults &triggerTable, const std::string &triggerPath)
Definition: TopDQMHelpers.h:30
uint16_t size_type
void Fill(long long x)
std::vector< MonitorElement * > hHltEta_
std::vector< double > etaRange_
Single trigger physics object (e.g., an isolated muon)
Definition: TriggerObject.h:22
edm::EDGetTokenT< trigger::TriggerEvent > tokTrigger_
std::vector< MonitorElement * > hHltPhi_
const TriggerObjectCollection & getObjects() const
Definition: TriggerEvent.h:98
std::pair< T, T > etaphi(T x, T y, T z)
Definition: FastMath.h:128
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
std::vector< MonitorElement * > hOffP_
bool isValid() const
Definition: HandleBase.h:74
int k[5][pyjets_maxn]
std::vector< std::string > hltFilterTag_
double deltaR(double eta1, double eta2, double phi1, double phi2)
Definition: TreeUtility.cc:17
std::vector< TriggerObject > TriggerObjectCollection
collection of trigger physics objects (e.g., all isolated muons)
Definition: TriggerObject.h:81
const edm::InputTag filterTag(trigger::size_type index) const
Definition: TriggerEvent.h:103
std::vector< MonitorElement * > hL1phi_
std::vector< MonitorElement * > hL1Pt_
std::vector< size_type > Keys
std::string const & label() const
Definition: InputTag.h:36
std::vector< MonitorElement * > hHltP_
std::vector< MonitorElement * > hL1Eta_
std::vector< std::string > l1FilterTag_
void DQMHcalIsoTrackAlCaReco::bookHistograms ( DQMStore::IBooker iBooker,
edm::Run const &  ,
edm::EventSetup const &   
)
overridevirtual

Implements DQMEDAnalyzer.

Definition at line 187 of file DQMHcalIsoTrackAlCaReco.cc.

References DQMStore::IBooker::book1D(), etaRange_, folderName_, hEnEcal_, hHltEta_, hHltP_, hHltPhi_, hIeta_, hIphi_, hL1Eta_, hL1phi_, hL1Pt_, hL3Dr_, hL3Rat_, hltFilterTag_, hMaxP_, hOffP_, ifL3_, indexH_, gen::k, checklumidiff::l, l1FilterTag_, LogDebug, dataset::name, MonitorElement::setAxisTitle(), DQMStore::IBooker::setCurrentFolder(), AlCaHLTBitMon_QueryRunRegistry::string, fftjetcommon_cfi::title, and type_.

189  {
190 
191  iBooker.setCurrentFolder(folderName_);
192  LogDebug("HcalIsoTrack") << "Set the folder to " << folderName_ << "\n";
193  char name[100], title[200];
194  for (unsigned int k=0; k<l1FilterTag_.size(); ++k) {
195  sprintf (name, "hp%s", l1FilterTag_[k].c_str());
196  sprintf (title, "p_T of L1 object for %s", l1FilterTag_[k].c_str());
197  hL1Pt_.push_back(iBooker.book1D(name,title,1000,0,1000));
198  hL1Pt_[k]->setAxisTitle("p_T (GeV)", 1);
199  sprintf (name, "heta%s", l1FilterTag_[k].c_str());
200  sprintf (title, "#eta of L1 object for %s", l1FilterTag_[k].c_str());
201  hL1Eta_.push_back(iBooker.book1D(name,title,100,-2.5,2.5));
202  hL1Eta_[k]->setAxisTitle("#eta",1);
203  sprintf (name, "hphi%s", l1FilterTag_[k].c_str());
204  sprintf (title, "#phi of L1 object for %s", l1FilterTag_[k].c_str());
205  hL1phi_.push_back(iBooker.book1D(name,title,100,-3.2,3.2));
206  hL1phi_[k]->setAxisTitle("#phi",1);
207  }
208 
209  std::string types[4] = {"L2","L2x","L3","Off"};
210  for (unsigned int l=0; l<4; l++) {
211  sprintf (name, "hp%s", types[l].c_str());
212  sprintf (title,"Momentum of %s object", types[l].c_str());
213  hHltP_.push_back(iBooker.book1D(name,title,200,0,1000));
214  hHltP_[l]->setAxisTitle("p (GeV)", 1);
215  sprintf (name, "heta%s", types[l].c_str());
216  sprintf (title,"#eta of %s object", types[l].c_str());
217  hHltEta_.push_back(iBooker.book1D(name,title,16,-2,2));
218  hHltEta_[l]->setAxisTitle("#eta",1);
219  sprintf (name, "hphi%s", types[l].c_str());
220  sprintf (title,"#phi of %s object", types[l].c_str());
221  hHltPhi_.push_back(iBooker.book1D(name,title,16,-3.2,3.2));
222  hHltPhi_[l]->setAxisTitle("#phi",1);
223  }
224  sprintf (title,"Distance of offline track from L3 object");
225  hL3Dr_ = (iBooker.book1D("hDRL3",title,40,0,0.2));
226  hL3Dr_->setAxisTitle("R(#eta,#phi)",1);
227  sprintf (title,"Ratio of p L3/Offline");
228  hL3Rat_ = (iBooker.book1D("hRatL3",title,500,0,3));
229  indexH_.clear(); ifL3_.clear();
230  for (unsigned int l=0; l<hltFilterTag_.size(); l++) {
231  unsigned int indx = (type_[l] >= 0 && type_[l] < 3) ? type_[l] : 0;
232  indexH_.push_back(indx);
233  ifL3_.push_back(indx==2);
234  LogDebug("HcalIsoTrack") << "Filter[" << l << "] " << hltFilterTag_[l]
235  << " type " << type_[l] << " index "
236  << indexH_[l] << " L3? " << ifL3_[l] << "\n";
237  }
238 
239  double etaV[6] = {0.0, 0.5, 1.0, 1.5, 2.0, 2.5};
240  for (unsigned int k=0; k<6; ++k) {
241  sprintf (name, "hOffP%d", k);
242  if (k == 0) {
243  sprintf (title, "p of AlCaReco object (All)");
244  } else {
245  sprintf (title, "p of AlCaReco object (%3.1f < |#eta| < %3.1f)",etaV[k-1],etaV[k]);
246  }
247  etaRange_.push_back(etaV[k]);
248  hOffP_.push_back(iBooker.book1D(name,title,1000,0,1000));
249  hOffP_[k]->setAxisTitle("E (GeV)",1);
250  }
251  hMaxP_ = iBooker.book1D("hChgIsol","Energy for charge isolation",110,-10,100);
252  hMaxP_->setAxisTitle("p (GeV)",1);
253  hEnEcal_ = iBooker.book1D("hEnEcal","Energy in ECAL",100,0,20);
254  hEnEcal_->setAxisTitle("E (GeV)",1);
255  hIeta_ = iBooker.book1D("hIEta","i#eta for HCAL tower",90,-45,45);
256  hIeta_->setAxisTitle("i#eta",1);
257  hIphi_ = iBooker.book1D("hIPhi","i#phi for HCAL tower",72,0,72);
258  hIphi_->setAxisTitle("i#phi",1);
259 }
#define LogDebug(id)
std::vector< unsigned int > indexH_
std::vector< MonitorElement * > hHltEta_
std::vector< double > etaRange_
std::vector< MonitorElement * > hHltPhi_
MonitorElement * book1D(Args &&...args)
Definition: DQMStore.h:118
std::vector< MonitorElement * > hOffP_
int k[5][pyjets_maxn]
std::vector< std::string > hltFilterTag_
std::vector< MonitorElement * > hL1phi_
void setCurrentFolder(const std::string &fullpath)
Definition: DQMStore.cc:279
std::vector< MonitorElement * > hL1Pt_
std::vector< MonitorElement * > hHltP_
std::vector< MonitorElement * > hL1Eta_
void setAxisTitle(const std::string &title, int axis=1)
set x-, y- or z-axis title (axis=1, 2, 3 respectively)
std::vector< std::string > l1FilterTag_

Member Data Documentation

std::vector<double> DQMHcalIsoTrackAlCaReco::etaRange_
private

Definition at line 72 of file DQMHcalIsoTrackAlCaReco.h.

Referenced by analyze(), and bookHistograms().

std::string DQMHcalIsoTrackAlCaReco::folderName_
private

Definition at line 56 of file DQMHcalIsoTrackAlCaReco.h.

Referenced by bookHistograms(), and DQMHcalIsoTrackAlCaReco().

MonitorElement * DQMHcalIsoTrackAlCaReco::hEnEcal_
private

Definition at line 69 of file DQMHcalIsoTrackAlCaReco.h.

Referenced by analyze(), and bookHistograms().

std::vector<MonitorElement*> DQMHcalIsoTrackAlCaReco::hHltEta_
private

Definition at line 66 of file DQMHcalIsoTrackAlCaReco.h.

Referenced by analyze(), and bookHistograms().

std::vector<MonitorElement*> DQMHcalIsoTrackAlCaReco::hHltP_
private

Definition at line 66 of file DQMHcalIsoTrackAlCaReco.h.

Referenced by analyze(), and bookHistograms().

std::vector<MonitorElement*> DQMHcalIsoTrackAlCaReco::hHltPhi_
private

Definition at line 66 of file DQMHcalIsoTrackAlCaReco.h.

Referenced by analyze(), and bookHistograms().

MonitorElement * DQMHcalIsoTrackAlCaReco::hIeta_
private

Definition at line 69 of file DQMHcalIsoTrackAlCaReco.h.

Referenced by analyze(), and bookHistograms().

MonitorElement * DQMHcalIsoTrackAlCaReco::hIphi_
private

Definition at line 69 of file DQMHcalIsoTrackAlCaReco.h.

Referenced by analyze(), and bookHistograms().

std::vector<MonitorElement*> DQMHcalIsoTrackAlCaReco::hL1Eta_
private

Definition at line 65 of file DQMHcalIsoTrackAlCaReco.h.

Referenced by analyze(), and bookHistograms().

std::vector<MonitorElement*> DQMHcalIsoTrackAlCaReco::hL1phi_
private

Definition at line 65 of file DQMHcalIsoTrackAlCaReco.h.

Referenced by analyze(), and bookHistograms().

std::vector<MonitorElement*> DQMHcalIsoTrackAlCaReco::hL1Pt_
private

Definition at line 65 of file DQMHcalIsoTrackAlCaReco.h.

Referenced by analyze(), and bookHistograms().

MonitorElement* DQMHcalIsoTrackAlCaReco::hL3Dr_
private

Definition at line 67 of file DQMHcalIsoTrackAlCaReco.h.

Referenced by analyze(), and bookHistograms().

MonitorElement * DQMHcalIsoTrackAlCaReco::hL3Rat_
private

Definition at line 67 of file DQMHcalIsoTrackAlCaReco.h.

Referenced by analyze(), and bookHistograms().

std::vector<std::string> DQMHcalIsoTrackAlCaReco::hltFilterTag_
private

Definition at line 57 of file DQMHcalIsoTrackAlCaReco.h.

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

MonitorElement* DQMHcalIsoTrackAlCaReco::hMaxP_
private

Definition at line 69 of file DQMHcalIsoTrackAlCaReco.h.

Referenced by analyze(), and bookHistograms().

std::vector<MonitorElement*> DQMHcalIsoTrackAlCaReco::hOffP_
private

Definition at line 68 of file DQMHcalIsoTrackAlCaReco.h.

Referenced by analyze(), and bookHistograms().

std::vector<bool> DQMHcalIsoTrackAlCaReco::ifL3_
private

Definition at line 74 of file DQMHcalIsoTrackAlCaReco.h.

Referenced by analyze(), and bookHistograms().

std::vector<unsigned int> DQMHcalIsoTrackAlCaReco::indexH_
private

Definition at line 73 of file DQMHcalIsoTrackAlCaReco.h.

Referenced by analyze(), and bookHistograms().

std::vector<std::string> DQMHcalIsoTrackAlCaReco::l1FilterTag_
private

Definition at line 57 of file DQMHcalIsoTrackAlCaReco.h.

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

edm::InputTag DQMHcalIsoTrackAlCaReco::labelTrack_
private

Definition at line 59 of file DQMHcalIsoTrackAlCaReco.h.

Referenced by DQMHcalIsoTrackAlCaReco().

edm::InputTag DQMHcalIsoTrackAlCaReco::labelTrigger_
private

Definition at line 59 of file DQMHcalIsoTrackAlCaReco.h.

Referenced by DQMHcalIsoTrackAlCaReco().

int DQMHcalIsoTrackAlCaReco::nHLTaccepts_
private

Definition at line 71 of file DQMHcalIsoTrackAlCaReco.h.

Referenced by analyze(), and DQMHcalIsoTrackAlCaReco().

int DQMHcalIsoTrackAlCaReco::nTotal_
private

Definition at line 71 of file DQMHcalIsoTrackAlCaReco.h.

Referenced by analyze(), and DQMHcalIsoTrackAlCaReco().

double DQMHcalIsoTrackAlCaReco::pThr_
private

Definition at line 63 of file DQMHcalIsoTrackAlCaReco.h.

Referenced by analyze(), and DQMHcalIsoTrackAlCaReco().

edm::EDGetTokenT<reco::HcalIsolatedTrackCandidateCollection> DQMHcalIsoTrackAlCaReco::tokTrack_
private

Definition at line 61 of file DQMHcalIsoTrackAlCaReco.h.

Referenced by analyze(), and DQMHcalIsoTrackAlCaReco().

edm::EDGetTokenT<trigger::TriggerEvent> DQMHcalIsoTrackAlCaReco::tokTrigger_
private

Definition at line 60 of file DQMHcalIsoTrackAlCaReco.h.

Referenced by analyze(), and DQMHcalIsoTrackAlCaReco().

std::vector<int> DQMHcalIsoTrackAlCaReco::type_
private