#include <L1TCSCTPG.h>
Public Member Functions | |
L1TCSCTPG (const edm::ParameterSet &ps) | |
virtual | ~L1TCSCTPG () |
Protected Member Functions | |
void | analyze (const edm::Event &e, const edm::EventSetup &c) |
void | beginJob (void) |
void | endJob (void) |
Private Attributes | |
MonitorElement * | csctpgbend |
MonitorElement * | csctpgbx |
MonitorElement * | csctpgpattern |
MonitorElement * | csctpgquality |
edm::InputTag | csctpgSource_ |
MonitorElement * | csctpgstrip |
MonitorElement * | csctpgstriptype |
MonitorElement * | csctpgwg |
DQMStore * | dbe |
ofstream | logFile_ |
bool | monitorDaemon_ |
int | nev_ |
std::string | outputFile_ |
bool | verbose_ |
Definition at line 42 of file L1TCSCTPG.h.
L1TCSCTPG::L1TCSCTPG | ( | const edm::ParameterSet & | ps | ) |
Definition at line 16 of file L1TCSCTPG.cc.
References gather_cfg::cout, dbe, edm::ParameterSet::getUntrackedParameter(), NULL, cmsCodeRules::cppFunctionSkipper::operator, outputFile_, DQMStore::setCurrentFolder(), DQMStore::setVerbose(), and verbose_.
: csctpgSource_( ps.getParameter< InputTag >("csctpgSource") ) { // verbosity switch verbose_ = ps.getUntrackedParameter<bool>("verbose", false); if(verbose_) cout << "L1TCSCTPG: constructor...." << endl; dbe = NULL; if ( ps.getUntrackedParameter<bool>("DQMStore", false) ) { dbe = Service<DQMStore>().operator->(); dbe->setVerbose(0); } outputFile_ = ps.getUntrackedParameter<string>("outputFile", ""); if ( outputFile_.size() != 0 ) { cout << "L1T Monitoring histograms will be saved to " << outputFile_.c_str() << endl; } bool disable = ps.getUntrackedParameter<bool>("disableROOToutput", false); if(disable){ outputFile_=""; } if ( dbe !=NULL ) { dbe->setCurrentFolder("L1T/L1TCSCTPG"); } }
L1TCSCTPG::~L1TCSCTPG | ( | ) | [virtual] |
Definition at line 51 of file L1TCSCTPG.cc.
{ }
void L1TCSCTPG::analyze | ( | const edm::Event & | e, |
const edm::EventSetup & | c | ||
) | [protected, virtual] |
Implements edm::EDAnalyzer.
Definition at line 104 of file L1TCSCTPG.cc.
References gather_cfg::cout, csctpgbend, csctpgbx, csctpgpattern, csctpgquality, csctpgSource_, csctpgstrip, csctpgstriptype, csctpgwg, MonitorElement::Fill(), edm::Event::getByLabel(), edm::HandleBase::isValid(), edm::InputTag::label(), nev_, and verbose_.
{ nev_++; if(verbose_) cout << "L1TCSCTPG: analyze...." << endl; Handle<CSCCorrelatedLCTDigiCollection> pCSCTPGcorrlcts; e.getByLabel(csctpgSource_,pCSCTPGcorrlcts); if (!pCSCTPGcorrlcts.isValid()) { edm::LogInfo("DataNotFound") << "can't find CSCCorrelatedLCTDigiCollection with label " << csctpgSource_.label() ; return; } for (CSCCorrelatedLCTDigiCollection::DigiRangeIterator cscItr1 = pCSCTPGcorrlcts->begin(); cscItr1 != pCSCTPGcorrlcts->end(); cscItr1++) { CSCCorrelatedLCTDigiCollection::Range range1 = pCSCTPGcorrlcts->get((*cscItr1).first); for (CSCCorrelatedLCTDigiCollection::const_iterator lctItr1 = range1.first; lctItr1 != range1.second; lctItr1++) { csctpgpattern->Fill(lctItr1->getCLCTPattern()); if (verbose_) { std::cout << "CSC TPG CLCT pattern " << lctItr1->getCLCTPattern() << std::endl; } csctpgquality->Fill(lctItr1->getQuality()); if (verbose_) { std::cout << "CSC LCT quality " << lctItr1->getQuality() << std::endl; } csctpgwg->Fill(lctItr1->getKeyWG()); if (verbose_) { std::cout << "CSC LCT wire group " << lctItr1->getKeyWG() << std::endl; } csctpgstrip->Fill(lctItr1->getStrip()); if (verbose_) { std::cout << "CSC LCT strip " << lctItr1->getStrip() << std::endl; } csctpgstriptype->Fill(lctItr1->getStripType()); if (verbose_) { std::cout << "CSC LCT strip type" << lctItr1->getStripType() << std::endl; } csctpgbend->Fill(lctItr1->getBend()); if (verbose_) { std::cout << "CSC LCT bend " << lctItr1->getBend() << std::endl; } csctpgbx->Fill(lctItr1->getBX()); if (verbose_) { std::cout << "CSC LCT bx " << lctItr1->getBX() << std::endl; } } } }
void L1TCSCTPG::beginJob | ( | void | ) | [protected, virtual] |
Reimplemented from edm::EDAnalyzer.
Definition at line 55 of file L1TCSCTPG.cc.
References DQMStore::book1D(), csctpgbend, csctpgbx, csctpgpattern, csctpgquality, csctpgstrip, csctpgstriptype, csctpgwg, dbe, nev_, cmsCodeRules::cppFunctionSkipper::operator, DQMStore::rmdir(), and DQMStore::setCurrentFolder().
{ nev_ = 0; // get hold of back-end interface DQMStore* dbe = 0; dbe = Service<DQMStore>().operator->(); if ( dbe ) { dbe->setCurrentFolder("L1T/L1TCSCTPG"); dbe->rmdir("L1T/L1TCSCTPG"); } if ( dbe ) { dbe->setCurrentFolder("L1T/L1TCSCTPG"); csctpgpattern = dbe->book1D("CSC TPG hit pattern", "CSC TPG hit pattern", 8, -0.5, 7.5 ) ; csctpgquality = dbe->book1D("CSC TPG quality", "CSC TPG quality", 16, 0.5, 16.5 ) ; csctpgwg = dbe->book1D("CSC TPG wire group", "CSC TPG wire group", 116, -0.5, 115.5 ) ; csctpgstrip = dbe->book1D("CSC TPG strip", "CSC TPG strip", 160, -0.5, 159.5 ) ; csctpgstriptype = dbe->book1D("CSC TPG strip type", "CSC TPG strip type", 2, 0.5, 1.5 ) ; csctpgbend = dbe->book1D("CSC TPG bend", "CSC TPG bend", 3, 0.5, 2.5 ) ; csctpgbx = dbe->book1D("CSC TPG bx", "CSC TPG bx", 20, -0.5, 19.5 ) ; } }
void L1TCSCTPG::endJob | ( | void | ) | [protected, virtual] |
Reimplemented from edm::EDAnalyzer.
Definition at line 94 of file L1TCSCTPG.cc.
References gather_cfg::cout, dbe, nev_, outputFile_, DQMStore::save(), and verbose_.
{ if(verbose_) cout << "L1TCSCTPG: end job...." << endl; LogInfo("EndJob") << "analyzed " << nev_ << " events"; if ( outputFile_.size() != 0 && dbe ) dbe->save(outputFile_); return; }
MonitorElement* L1TCSCTPG::csctpgbend [private] |
Definition at line 71 of file L1TCSCTPG.h.
Referenced by analyze(), and beginJob().
MonitorElement* L1TCSCTPG::csctpgbx [private] |
Definition at line 72 of file L1TCSCTPG.h.
Referenced by analyze(), and beginJob().
MonitorElement* L1TCSCTPG::csctpgpattern [private] |
Definition at line 66 of file L1TCSCTPG.h.
Referenced by analyze(), and beginJob().
MonitorElement* L1TCSCTPG::csctpgquality [private] |
Definition at line 67 of file L1TCSCTPG.h.
Referenced by analyze(), and beginJob().
edm::InputTag L1TCSCTPG::csctpgSource_ [private] |
Definition at line 79 of file L1TCSCTPG.h.
Referenced by analyze().
MonitorElement* L1TCSCTPG::csctpgstrip [private] |
Definition at line 69 of file L1TCSCTPG.h.
Referenced by analyze(), and beginJob().
MonitorElement* L1TCSCTPG::csctpgstriptype [private] |
Definition at line 70 of file L1TCSCTPG.h.
Referenced by analyze(), and beginJob().
MonitorElement* L1TCSCTPG::csctpgwg [private] |
Definition at line 68 of file L1TCSCTPG.h.
Referenced by analyze(), and beginJob().
DQMStore* L1TCSCTPG::dbe [private] |
Definition at line 64 of file L1TCSCTPG.h.
Referenced by beginJob(), endJob(), and L1TCSCTPG().
ofstream L1TCSCTPG::logFile_ [private] |
Definition at line 78 of file L1TCSCTPG.h.
bool L1TCSCTPG::monitorDaemon_ [private] |
Definition at line 77 of file L1TCSCTPG.h.
int L1TCSCTPG::nev_ [private] |
Definition at line 74 of file L1TCSCTPG.h.
Referenced by analyze(), beginJob(), and endJob().
std::string L1TCSCTPG::outputFile_ [private] |
Definition at line 75 of file L1TCSCTPG.h.
Referenced by endJob(), and L1TCSCTPG().
bool L1TCSCTPG::verbose_ [private] |
Definition at line 76 of file L1TCSCTPG.h.
Referenced by analyze(), endJob(), and L1TCSCTPG().