CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Classes | Public Member Functions | Protected Member Functions | Private Types | Private Member Functions | Private Attributes
L1TCompare Class Reference

#include <L1TCompare.h>

Inheritance diagram for L1TCompare:
edm::EDAnalyzer edm::EDConsumerBase

Classes

class  RctObject
 
class  RctObjectComp
 

Public Member Functions

 L1TCompare (const edm::ParameterSet &ps)
 
virtual ~L1TCompare ()
 
- Public Member Functions inherited from edm::EDAnalyzer
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
 EDAnalyzer ()
 
ModuleDescription const & moduleDescription () const
 
std::string workerType () const
 
virtual ~EDAnalyzer ()
 
- 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
 
bool registeredToConsume (ProductHolderIndex, bool, BranchType) const
 
bool registeredToConsumeMany (TypeID const &, BranchType) const
 
void updateLookup (BranchType iBranchType, ProductHolderIndexHelper const &)
 
virtual ~EDConsumerBase ()
 

Protected Member Functions

void analyze (const edm::Event &e, const edm::EventSetup &c)
 
void beginJob (void)
 
void beginRun (edm::Run const &iRun, edm::EventSetup const &iSetup)
 
void endJob (void)
 
- 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)
 

Private Types

typedef std::vector
< L1TCompare::RctObject
RctObjectCollection
 

Private Member Functions

bool verbose () const
 

Private Attributes

DQMStoredbe
 
MonitorElementecalTpgRctLeadingEmEta2_
 
MonitorElementecalTpgRctLeadingEmEta_
 
MonitorElementecalTpgRctLeadingEmPhi_
 
MonitorElementecalTpgRctLeadingEmRank_
 
edm::InputTag ecalTpgSource_
 
edm::EDGetTokenT
< EcalTrigPrimDigiCollection
ecalTpgSource_token_
 
edm::EDGetTokenT
< L1GctJetCandCollection
gctCenJetsToken_
 
edm::EDGetTokenT
< L1GctEmCandCollection
gctIsoEmCandsToken_
 
edm::EDGetTokenT
< L1GctEmCandCollection
gctNonIsoEmCandsToken_
 
edm::InputTag gctSource_
 
std::ofstream logFile_
 
bool monitorDaemon_
 
int nev_
 
std::string outputFile_
 
MonitorElementrctGctLeadingIsoEmEta_
 
MonitorElementrctGctLeadingIsoEmPhi_
 
MonitorElementrctGctLeadingIsoEmRank_
 
MonitorElementrctGctLeadingNonIsoEmEta_
 
MonitorElementrctGctLeadingNonIsoEmPhi_
 
MonitorElementrctGctLeadingNonIsoEmRank_
 
edm::InputTag rctSource_
 
edm::EDGetTokenT
< L1CaloEmCollection
rctSourceEm_token_
 
edm::EDGetTokenT
< L1CaloRegionCollection
rctSourceRctEmRgn_token_
 
bool verbose_
 

Additional Inherited Members

- Public Types inherited from edm::EDAnalyzer
typedef EDAnalyzer ModuleType
 
- Static Public Member Functions inherited from edm::EDAnalyzer
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &)
 

Detailed Description

Definition at line 68 of file L1TCompare.h.

Member Typedef Documentation

Definition at line 143 of file L1TCompare.h.

Constructor & Destructor Documentation

L1TCompare::L1TCompare ( const edm::ParameterSet ps)

Definition at line 97 of file L1TCompare.cc.

References gather_cfg::cout, dbe, gctCenJetsToken_, gctIsoEmCandsToken_, gctNonIsoEmCandsToken_, gctSource_, edm::ParameterSet::getUntrackedParameter(), edm::InputTag::label(), NULL, cppFunctionSkipper::operator, outputFile_, DQMStore::setCurrentFolder(), DQMStore::setVerbose(), AlCaHLTBitMon_QueryRunRegistry::string, verbose(), and verbose_.

97  :
98  rctSourceEm_token_( consumes<L1CaloEmCollection>(ps.getParameter< InputTag >("rctSource") ))
99  ,rctSourceRctEmRgn_token_( consumes<L1CaloRegionCollection>(ps.getParameter< InputTag >("rctSource") ))
100  ,rctSource_( ps.getParameter< InputTag >("rctSource") )
101  ,gctSource_( ps.getParameter< InputTag >("gctSource") )
102  ,ecalTpgSource_(ps.getParameter<edm::InputTag>("ecalTpgSource"))
103  ,ecalTpgSource_token_(consumes<EcalTrigPrimDigiCollection>(ps.getParameter<edm::InputTag>("ecalTpgSource")))
104 
105 {
106 
107  // verbosity switch
108  verbose_ = ps.getUntrackedParameter < bool > ("verbose", false);
109 
110  if (verbose())
111  std::cout << "L1TCompare: constructor...." << std::endl;
112 
113 
114  dbe = NULL;
115  if (ps.getUntrackedParameter < bool > ("DQMStore", false)) {
117  dbe->setVerbose(0);
118  }
119 
120  outputFile_ =
121  ps.getUntrackedParameter < std::string > ("outputFile", "");
122  if (outputFile_.size() != 0) {
123  std::
124  cout << "L1T Monitoring histograms will be saved to " <<
125  outputFile_.c_str() << std::endl;
126  }
127 
128  bool disable =
129  ps.getUntrackedParameter < bool > ("disableROOToutput", false);
130  if (disable) {
131  outputFile_ = "";
132  }
133 
134 
135  if (dbe != NULL) {
136  dbe->setCurrentFolder("L1T/Compare");
137  }
138 
139  //set Token(-s)
140  edm::InputTag gctCenJetsTag_(gctSource_.label(),"cenJets");
141  edm::InputTag gctIsoEmCandsTag_(gctSource_.label(), "isoEm");
142  edm::InputTag gctNonIsoEmCandsTag_(gctSource_.label(), "nonIsoEm");
143 
144  gctCenJetsToken_ = consumes<L1GctJetCandCollection>(gctCenJetsTag_);
145  gctIsoEmCandsToken_ = consumes<L1GctEmCandCollection>(gctIsoEmCandsTag_);
146  gctNonIsoEmCandsToken_ = consumes<L1GctEmCandCollection>(gctNonIsoEmCandsTag_);
147 }
DQMStore * dbe
Definition: L1TCompare.h:94
T getParameter(std::string const &) const
edm::EDGetTokenT< L1GctEmCandCollection > gctNonIsoEmCandsToken_
Definition: L1TCompare.h:131
T getUntrackedParameter(std::string const &, T const &) const
edm::EDGetTokenT< L1CaloRegionCollection > rctSourceRctEmRgn_token_
Definition: L1TCompare.h:122
bool verbose() const
Definition: L1TCompare.h:117
edm::InputTag rctSource_
Definition: L1TCompare.h:123
#define NULL
Definition: scimark2.h:8
edm::InputTag gctSource_
Definition: L1TCompare.h:124
bool verbose_
Definition: L1TCompare.h:116
void setVerbose(unsigned level)
Definition: DQMStore.cc:549
edm::EDGetTokenT< L1GctJetCandCollection > gctCenJetsToken_
Definition: L1TCompare.h:129
edm::EDGetTokenT< L1CaloEmCollection > rctSourceEm_token_
Definition: L1TCompare.h:121
edm::InputTag ecalTpgSource_
Definition: L1TCompare.h:125
std::string const & label() const
Definition: InputTag.h:42
edm::EDGetTokenT< L1GctEmCandCollection > gctIsoEmCandsToken_
Definition: L1TCompare.h:130
std::string outputFile_
Definition: L1TCompare.h:115
edm::EDGetTokenT< EcalTrigPrimDigiCollection > ecalTpgSource_token_
Definition: L1TCompare.h:126
tuple cout
Definition: gather_cfg.py:121
void setCurrentFolder(const std::string &fullpath)
Definition: DQMStore.cc:585
L1TCompare::~L1TCompare ( )
virtual

Definition at line 149 of file L1TCompare.cc.

150 {
151 }

Member Function Documentation

void L1TCompare::analyze ( const edm::Event e,
const edm::EventSetup c 
)
protectedvirtual

Implements edm::EDAnalyzer.

Definition at line 252 of file L1TCompare.cc.

References dtNoiseDBValidation_cfg::cerr, gather_cfg::cout, reco::e2, ecalTpgRctLeadingEmEta2_, ecalTpgRctLeadingEmEta_, ecalTpgRctLeadingEmPhi_, ecalTpgRctLeadingEmRank_, ecalTpgSource_, ecalTpgSource_token_, MonitorElement::Fill(), gctCenJetsToken_, gctIsoEmCandsToken_, gctNonIsoEmCandsToken_, edm::Event::getByToken(), h, edm::HandleBase::isValid(), edm::InputTag::label(), nev_, rctGctLeadingIsoEmEta_, rctGctLeadingIsoEmPhi_, rctGctLeadingIsoEmRank_, rctGctLeadingNonIsoEmEta_, rctGctLeadingNonIsoEmPhi_, rctGctLeadingNonIsoEmRank_, rctSource_, rctSourceEm_token_, rctSourceRctEmRgn_token_, python.multivaluedict::sort(), and verbose().

253 {
254  ++nev_;
255  if (verbose()) {
256  std::cout << "L1TCompare: analyze...." << std::endl;
257  }
258 
259  // L1E
265  // edm::Handle < L1EtMissParticle > l1eEtMiss;
267  // RCT
268  edm::Handle < L1CaloEmCollection > em; // collection of L1CaloEmCands
270 
271  // GCT
274  edm::Handle <L1GctEmCandCollection> gctNonIsoEmCands;
275 
276 
278 
279  if (!em.isValid()) {
280  edm::LogInfo("DataNotFound") << "can't find L1CaloEmCollection with label "
281  << rctSource_.label() ;
282  return;
283  }
284 
285 
287 
288  if (!rctEmRgn.isValid()) {
289  edm::LogInfo("DataNotFound") << "can't find "
290  << "L1CaloRegionCollection with label "
291  << rctSource_.label() ;
292  return;
293  }
294 
295  e.getByToken(gctCenJetsToken_, gctCenJets);
296  e.getByToken(gctIsoEmCandsToken_, gctIsoEmCands);
297  e.getByToken(gctNonIsoEmCandsToken_, gctNonIsoEmCands);
298 
299  if (!gctCenJets.isValid()) {
300  std::cerr << "L1TGCT: could not find one of the classes?" << std::endl;
301  return;
302  }
303  if (!gctIsoEmCands.isValid()) {
304  std::cerr << "L1TGCT: could not find one of the classes?" << std::endl;
305  return;
306  }
307  if (!gctNonIsoEmCands.isValid()) {
308  std::cerr << "L1TGCT: could not find one of the classes?" << std::endl;
309  return;
310  }
311 
312 
313  // GCT
314  if ( verbose() ) {
315  for ( L1GctEmCandCollection::const_iterator iem = gctIsoEmCands->begin();
316  iem != gctIsoEmCands->end(); ++iem) {
317  if ( !iem->empty() )
318  std::cout << "GCT EM: " << iem->rank()
319  << ", "
320  << iem->etaIndex() << "("
321  //<< int(iem->etaIndex()&0x3)*((iem->etaIndex()&0x4)?1:-1)
322  << "), "
323  << iem->phiIndex()
324  << std::endl;
325  }
326  }
327  // rct phi: 0-17
328  // rct eta: 0-21
329 
330 
331  // Fill the RCT histograms
332 
333  // Regions
334  RctObjectCollection rcj, rcj_iso, rcj_non_iso;
335  for (L1CaloEmCollection::const_iterator iem = em->begin();
336  iem != em->end(); ++iem) {
337  // L1CaloRegionDetId id(false, iem->rctCrate(), iem->rctCard(),
338  // iem->rctRegion());
339  L1CaloRegionDetId id(iem->rctCrate(), iem->rctCard(),
340  iem->rctRegion());
341 
342  // RctObject h(id.gctEta(), id.gctPhi(), iem->rank());
343  RctObject h(id.rctEta(), id.rctPhi(), iem->rank());
344  if ( !iem->isolated() )
345  rcj_non_iso.push_back(h);
346  else
347  rcj_iso.push_back(h);
348  rcj.push_back(h);
349  }
350  // not so smart but ...
351  std::sort(rcj.begin(), rcj.end(), RctObjectComp());
352  std::sort(rcj_non_iso.begin(), rcj_non_iso.end(), RctObjectComp());
353  std::sort(rcj_iso.begin(), rcj_iso.end(), RctObjectComp());
354  if ( verbose() ) {
355  for (RctObjectCollection::reverse_iterator ij = rcj_iso.rbegin();
356  ij != rcj_iso.rend() && ij != rcj_iso.rbegin()+8; ++ij) {
357  std::cout << "RCT cj: "
358  << ij->rank_ << ", " << ij->eta_ << ", " << ij->phi_
359  << std::endl;
360  }
361  }
362  L1GctEmCandCollection::const_iterator lead_em = gctIsoEmCands->begin();
363  if ( !lead_em->empty() ) { // equivalent to rank == 0
364  rctGctLeadingIsoEmEta_->Fill(lead_em->etaIndex(), rcj_iso.rbegin()->eta_);
365  rctGctLeadingIsoEmPhi_->Fill(lead_em->phiIndex(), rcj_iso.rbegin()->phi_);
366  rctGctLeadingIsoEmRank_->Fill(lead_em->rank(), rcj_iso.rbegin()->rank_);
367  }
368 
369  // non-isolated
370  if ( verbose() ) {
371  for ( L1GctEmCandCollection::const_iterator iem
372  = gctNonIsoEmCands->begin(); iem != gctNonIsoEmCands->end();
373  ++iem) {
374  if ( ! iem->empty() )
375  std::cout << "GCT EM non: " << iem->rank()
376  << ", "
377  << iem->etaIndex() //<< "("
378  //<< int(iem->etaIndex()&0x3)*((iem->etaIndex()&0x4)?1:-1)
379  //<< ")"
380  << ", "
381  << iem->phiIndex()
382  << std::endl;
383  }
384  }
385  if ( verbose() ) {
386  for (RctObjectCollection::reverse_iterator ij = rcj_non_iso.rbegin();
387  ij != rcj_non_iso.rend() && ij != rcj_non_iso.rbegin()+8; ++ij) {
388  std::cout << "RCT cj non: "
389  << ij->rank_ << ", " << ij->eta_ << ", " << ij->phi_
390  << std::endl;
391  }
392  }
393  lead_em = gctNonIsoEmCands->begin();
394  if ( !lead_em->empty() ) { // equivalent to rank != 0
395  rctGctLeadingNonIsoEmEta_->Fill(lead_em->etaIndex(),
396  rcj_non_iso.rbegin()->eta_);
397  rctGctLeadingNonIsoEmPhi_->Fill(lead_em->phiIndex(),
398  rcj_non_iso.rbegin()->phi_);
399  rctGctLeadingNonIsoEmRank_->Fill(lead_em->rank(),
400  rcj_non_iso.rbegin()->rank_);
401  }
402 
403  // ECAL TPG's to RCT EM
406 
407  if (!eTP.isValid()) {
408  edm::LogInfo("DataNotFound")
409  << "can't find EcalTrigPrimCollection with label "
410  << ecalTpgSource_.label() ;
411  return;
412  }
413  RctObjectCollection ecalobs;
414  for (EcalTrigPrimDigiCollection::const_iterator ieTP = eTP->begin();
415  ieTP != eTP->end(); ieTP++) {
416  ecalobs.push_back(RctObject(ieTP->id().ieta(),
417  ieTP->id().iphi(),
418  ieTP->compressedEt()));
419  }
420  std::sort(ecalobs.begin(), ecalobs.end(), RctObjectComp());
421  if ( verbose() ) {
422  for (RctObjectCollection::reverse_iterator ij = ecalobs.rbegin();
423  ij != ecalobs.rend() && ij != ecalobs.rbegin()+8; ++ij) {
424  std::cout << "ECAL cj : "
425  << ij->rank_ << ", " << ij->eta_ << ", " << ij->phi_
426  << std::endl;
427  }
428  }
429  // abritrary cut
430  if ( rcj.rbegin()->rank_ > 4 ) {
431  ecalTpgRctLeadingEmEta_->Fill(rcj.rbegin()->eta_,
432  ecalobs.rbegin()->eta_);
433  int e2 = (rcj.rbegin()->eta_&0x7UL)* ((rcj.rbegin()->eta_&0x8UL)?1:-1);
434  ecalTpgRctLeadingEmEta2_->Fill(e2, ecalobs.rbegin()->eta_);
435  ecalTpgRctLeadingEmPhi_->Fill(rcj.rbegin()->phi_, ecalobs.rbegin()->phi_);
436  ecalTpgRctLeadingEmRank_->Fill(rcj.rbegin()->rank_,
437  ecalobs.rbegin()->rank_);
438  }
439  if ( verbose() ) {
440  int seta = rcj.rbegin()->eta_;
441  seta = (seta&0x7UL)*(seta&0x8?-1:1);
442  std::cout << "ZZ: "
443  << rcj.rbegin()->eta_ << " "
444  << rcj.rbegin()->phi_ << " "
445  << rcj.rbegin()->rank_ << " "
446  << (++rcj.rbegin())->rank_<< " "
447  << ecalobs.rbegin()->eta_ << " "
448  << ecalobs.rbegin()->phi_ << " "
449  << ecalobs.rbegin()->rank_ << " "
450  << (++ecalobs.rbegin())->rank_<< " "
451  << seta << " "
452  << std::endl;
453  }
454 
455 
456 
457 }
edm::EDGetTokenT< L1GctEmCandCollection > gctNonIsoEmCandsToken_
Definition: L1TCompare.h:131
edm::EDGetTokenT< L1CaloRegionCollection > rctSourceRctEmRgn_token_
Definition: L1TCompare.h:122
MonitorElement * rctGctLeadingIsoEmRank_
Definition: L1TCompare.h:100
bool verbose() const
Definition: L1TCompare.h:117
MonitorElement * rctGctLeadingIsoEmEta_
Definition: L1TCompare.h:98
edm::InputTag rctSource_
Definition: L1TCompare.h:123
bool getByToken(EDGetToken token, Handle< PROD > &result) const
Definition: Event.h:434
MonitorElement * ecalTpgRctLeadingEmEta2_
Definition: L1TCompare.h:108
std::vector< EcalTriggerPrimitiveDigi >::const_iterator const_iterator
void Fill(long long x)
MonitorElement * ecalTpgRctLeadingEmRank_
Definition: L1TCompare.h:110
MonitorElement * rctGctLeadingNonIsoEmEta_
Definition: L1TCompare.h:102
bool isValid() const
Definition: HandleBase.h:76
edm::EDGetTokenT< L1GctJetCandCollection > gctCenJetsToken_
Definition: L1TCompare.h:129
edm::EDGetTokenT< L1CaloEmCollection > rctSourceEm_token_
Definition: L1TCompare.h:121
MonitorElement * rctGctLeadingIsoEmPhi_
Definition: L1TCompare.h:99
The Signals That Services Can Subscribe To This is based on ActivityRegistry h
Helper function to determine trigger accepts.
Definition: Activities.doc:4
std::vector< L1TCompare::RctObject > RctObjectCollection
Definition: L1TCompare.h:143
MonitorElement * ecalTpgRctLeadingEmEta_
Definition: L1TCompare.h:107
Float e2
Definition: deltaR.h:23
edm::InputTag ecalTpgSource_
Definition: L1TCompare.h:125
MonitorElement * rctGctLeadingNonIsoEmPhi_
Definition: L1TCompare.h:103
std::string const & label() const
Definition: InputTag.h:42
edm::EDGetTokenT< L1GctEmCandCollection > gctIsoEmCandsToken_
Definition: L1TCompare.h:130
edm::EDGetTokenT< EcalTrigPrimDigiCollection > ecalTpgSource_token_
Definition: L1TCompare.h:126
MonitorElement * rctGctLeadingNonIsoEmRank_
Definition: L1TCompare.h:104
tuple cout
Definition: gather_cfg.py:121
MonitorElement * ecalTpgRctLeadingEmPhi_
Definition: L1TCompare.h:109
void L1TCompare::beginJob ( void  )
protectedvirtual

Reimplemented from edm::EDAnalyzer.

Definition at line 153 of file L1TCompare.cc.

References nev_.

154 {
155  nev_ = 0;
156 }
void L1TCompare::beginRun ( edm::Run const &  iRun,
edm::EventSetup const &  iSetup 
)
protectedvirtual

Reimplemented from edm::EDAnalyzer.

Definition at line 159 of file L1TCompare.cc.

References DQMStore::book2D(), dbe, ecalTpgRctLeadingEmEta2_, ecalTpgRctLeadingEmEta_, ecalTpgRctLeadingEmPhi_, ecalTpgRctLeadingEmRank_, ETABINS, ETAMAX, ETAMIN, PHIBINS, PHIMAX, PHIMIN, R6BINS, R6MAX, R6MIN, rctGctLeadingIsoEmEta_, rctGctLeadingIsoEmPhi_, rctGctLeadingIsoEmRank_, rctGctLeadingNonIsoEmEta_, rctGctLeadingNonIsoEmPhi_, rctGctLeadingNonIsoEmRank_, DQMStore::rmdir(), MonitorElement::setAxisTitle(), DQMStore::setCurrentFolder(), AlCaHLTBitMon_QueryRunRegistry::string, TPETABINS, TPETAMAX, TPETAMIN, TPPHIBINS, TPPHIMAX, and TPPHIMIN.

160 {
161  if (dbe) {
162  dbe->setCurrentFolder("L1T/Compare");
163  dbe->rmdir("L1T/Compare");
164  }
165 
166 
167  if (dbe) {
168  dbe->setCurrentFolder("L1T/Compare");
169 
170  // -------------------------------------------
171  // RCT-GCT
172  // -------------------------------------------
173  // Isolated
174  rctGctLeadingIsoEmRank_ = dbe->book2D("rctGctLeadingIsoEmRank",
175  "RCT-GCT: rank", R6BINS, R6MIN, R6MAX,
176  R6BINS, R6MIN, R6MAX);
179  rctGctLeadingIsoEmEta_ = dbe->book2D("rctGctLeadingIsoEmEta",
180  "RCT-GCT: #eta", ETABINS, ETAMIN, ETAMAX,
181  ETABINS, ETAMIN, ETAMAX);
184 
185  rctGctLeadingIsoEmPhi_ = dbe->book2D("rctGctLeadingIsoEmPhi",
186  "RCT-GCT: #phi", PHIBINS, PHIMIN, PHIMAX,
187  PHIBINS, PHIMIN, PHIMAX);
190  // non-Isolated
191  rctGctLeadingNonIsoEmRank_ = dbe->book2D("rctGctLeadingNonIsoEmRank",
192  "RCT-GCT: rank", R6BINS, R6MIN, R6MAX,
193  R6BINS, R6MIN, R6MAX);
196 
197  rctGctLeadingNonIsoEmEta_ = dbe->book2D("rctGctLeadingNonIsoEmEta",
198  "RCT-GCT: #eta", ETABINS, ETAMIN, ETAMAX,
199  ETABINS, ETAMIN, ETAMAX);
202 
203  rctGctLeadingNonIsoEmPhi_ = dbe->book2D("rctGctLeadingNonIsoEmPhi",
204  "RCT-GCT: #phi", PHIBINS, PHIMIN, PHIMAX,
205  PHIBINS, PHIMIN, PHIMAX);
208  // -------------------------------------------
209  // ECAL TPG - RCT
210  // -------------------------------------------
211  ecalTpgRctLeadingEmRank_ = dbe->book2D("ecalTpgRctLeadingEmRank",
212  "ECAL TPG-RCT: rank",
213  R6BINS, R6MIN, R6MAX,
214  R6BINS, R6MIN, R6MAX);
217 
218  ecalTpgRctLeadingEmEta_ = dbe->book2D("ecalTpgRctLeadingEmEta",
219  "ECAL TPG-RCT: #eta",
220  15, -0.5, 14.5,
224  ecalTpgRctLeadingEmEta2_ = dbe->book2D("ecalTpgRctLeadingEmEta2",
225  "ECAL TPG-RCT: #eta (2)",
226  13, -6.5, 6.5,
230  ecalTpgRctLeadingEmPhi_ = dbe->book2D("ecalTpgRctLeadingEmPhi",
231  "ECAL TPG-RCT: #phi",
236  }
237 }
DQMStore * dbe
Definition: L1TCompare.h:94
const unsigned int R6BINS
Definition: L1TCompare.cc:71
#define PHIMAX
MonitorElement * rctGctLeadingIsoEmRank_
Definition: L1TCompare.h:100
const float TPETAMIN
Definition: L1TCompare.cc:93
void rmdir(const std::string &fullpath)
Definition: DQMStore.cc:2731
MonitorElement * rctGctLeadingIsoEmEta_
Definition: L1TCompare.h:98
MonitorElement * ecalTpgRctLeadingEmEta2_
Definition: L1TCompare.h:108
const unsigned int TPPHIBINS
Definition: L1TCompare.cc:88
MonitorElement * ecalTpgRctLeadingEmRank_
Definition: L1TCompare.h:110
#define ETAMAX
const float TPETAMAX
Definition: L1TCompare.cc:94
const unsigned int TPETABINS
Definition: L1TCompare.cc:92
MonitorElement * rctGctLeadingNonIsoEmEta_
Definition: L1TCompare.h:102
#define ETAMIN
const float R6MAX
Definition: L1TCompare.cc:73
#define PHIMIN
const float TPPHIMIN
Definition: L1TCompare.cc:89
const float R6MIN
Definition: L1TCompare.cc:72
const float TPPHIMAX
Definition: L1TCompare.cc:90
MonitorElement * rctGctLeadingIsoEmPhi_
Definition: L1TCompare.h:99
#define ETABINS
MonitorElement * ecalTpgRctLeadingEmEta_
Definition: L1TCompare.h:107
MonitorElement * rctGctLeadingNonIsoEmPhi_
Definition: L1TCompare.h:103
#define PHIBINS
MonitorElement * rctGctLeadingNonIsoEmRank_
Definition: L1TCompare.h:104
MonitorElement * book2D(const char *name, const char *title, int nchX, double lowX, double highX, int nchY, double lowY, double highY)
Book 2D histogram.
Definition: DQMStore.cc:1001
void setAxisTitle(const std::string &title, int axis=1)
set x-, y- or z-axis title (axis=1, 2, 3 respectively)
void setCurrentFolder(const std::string &fullpath)
Definition: DQMStore.cc:585
MonitorElement * ecalTpgRctLeadingEmPhi_
Definition: L1TCompare.h:109
void L1TCompare::endJob ( void  )
protectedvirtual

Reimplemented from edm::EDAnalyzer.

Definition at line 240 of file L1TCompare.cc.

References gather_cfg::cout, dbe, nev_, outputFile_, DQMStore::save(), and verbose().

241 {
242  if (verbose())
243  std::cout << "L1TCompare: end job...." << std::endl;
244  LogInfo("EndJob") << "analyzed " << nev_ << " events";
245 
246  if (outputFile_.size() != 0 && dbe)
247  dbe->save(outputFile_);
248 
249  return;
250 }
DQMStore * dbe
Definition: L1TCompare.h:94
bool verbose() const
Definition: L1TCompare.h:117
void save(const std::string &filename, const std::string &path="", const std::string &pattern="", const std::string &rewrite="", const uint32_t run=0, SaveReferenceTag ref=SaveWithReference, int minStatus=dqm::qstatus::STATUS_OK, const std::string &fileupdate="RECREATE")
Definition: DQMStore.cc:2297
std::string outputFile_
Definition: L1TCompare.h:115
tuple cout
Definition: gather_cfg.py:121
bool L1TCompare::verbose ( ) const
inlineprivate

Definition at line 117 of file L1TCompare.h.

References verbose_.

Referenced by analyze(), endJob(), and L1TCompare().

117 { return verbose_; };
bool verbose_
Definition: L1TCompare.h:116

Member Data Documentation

DQMStore* L1TCompare::dbe
private

Definition at line 94 of file L1TCompare.h.

Referenced by beginRun(), endJob(), and L1TCompare().

MonitorElement* L1TCompare::ecalTpgRctLeadingEmEta2_
private

Definition at line 108 of file L1TCompare.h.

Referenced by analyze(), and beginRun().

MonitorElement* L1TCompare::ecalTpgRctLeadingEmEta_
private

Definition at line 107 of file L1TCompare.h.

Referenced by analyze(), and beginRun().

MonitorElement* L1TCompare::ecalTpgRctLeadingEmPhi_
private

Definition at line 109 of file L1TCompare.h.

Referenced by analyze(), and beginRun().

MonitorElement* L1TCompare::ecalTpgRctLeadingEmRank_
private

Definition at line 110 of file L1TCompare.h.

Referenced by analyze(), and beginRun().

edm::InputTag L1TCompare::ecalTpgSource_
private

Definition at line 125 of file L1TCompare.h.

Referenced by analyze().

edm::EDGetTokenT<EcalTrigPrimDigiCollection> L1TCompare::ecalTpgSource_token_
private

Definition at line 126 of file L1TCompare.h.

Referenced by analyze().

edm::EDGetTokenT<L1GctJetCandCollection> L1TCompare::gctCenJetsToken_
private

Definition at line 129 of file L1TCompare.h.

Referenced by analyze(), and L1TCompare().

edm::EDGetTokenT<L1GctEmCandCollection> L1TCompare::gctIsoEmCandsToken_
private

Definition at line 130 of file L1TCompare.h.

Referenced by analyze(), and L1TCompare().

edm::EDGetTokenT<L1GctEmCandCollection> L1TCompare::gctNonIsoEmCandsToken_
private

Definition at line 131 of file L1TCompare.h.

Referenced by analyze(), and L1TCompare().

edm::InputTag L1TCompare::gctSource_
private

Definition at line 124 of file L1TCompare.h.

Referenced by L1TCompare().

std::ofstream L1TCompare::logFile_
private

Definition at line 119 of file L1TCompare.h.

bool L1TCompare::monitorDaemon_
private

Definition at line 117 of file L1TCompare.h.

int L1TCompare::nev_
private

Definition at line 114 of file L1TCompare.h.

Referenced by analyze(), beginJob(), and endJob().

std::string L1TCompare::outputFile_
private

Definition at line 115 of file L1TCompare.h.

Referenced by endJob(), and L1TCompare().

MonitorElement* L1TCompare::rctGctLeadingIsoEmEta_
private

Definition at line 98 of file L1TCompare.h.

Referenced by analyze(), and beginRun().

MonitorElement* L1TCompare::rctGctLeadingIsoEmPhi_
private

Definition at line 99 of file L1TCompare.h.

Referenced by analyze(), and beginRun().

MonitorElement* L1TCompare::rctGctLeadingIsoEmRank_
private

Definition at line 100 of file L1TCompare.h.

Referenced by analyze(), and beginRun().

MonitorElement* L1TCompare::rctGctLeadingNonIsoEmEta_
private

Definition at line 102 of file L1TCompare.h.

Referenced by analyze(), and beginRun().

MonitorElement* L1TCompare::rctGctLeadingNonIsoEmPhi_
private

Definition at line 103 of file L1TCompare.h.

Referenced by analyze(), and beginRun().

MonitorElement* L1TCompare::rctGctLeadingNonIsoEmRank_
private

Definition at line 104 of file L1TCompare.h.

Referenced by analyze(), and beginRun().

edm::InputTag L1TCompare::rctSource_
private

Definition at line 123 of file L1TCompare.h.

Referenced by analyze().

edm::EDGetTokenT<L1CaloEmCollection> L1TCompare::rctSourceEm_token_
private

Definition at line 121 of file L1TCompare.h.

Referenced by analyze().

edm::EDGetTokenT<L1CaloRegionCollection> L1TCompare::rctSourceRctEmRgn_token_
private

Definition at line 122 of file L1TCompare.h.

Referenced by analyze().

bool L1TCompare::verbose_
private

Definition at line 116 of file L1TCompare.h.

Referenced by L1TCompare(), and verbose().