#include <DPGAnalysis/SiStripTools/plugins/SiStripQualityHistory.cc>
Public Types | |
enum | { Module, Fiber, APV } |
Public Member Functions | |
SiStripQualityHistory (const edm::ParameterSet &) | |
~SiStripQualityHistory () | |
Private Member Functions | |
virtual void | analyze (const edm::Event &, const edm::EventSetup &) |
virtual void | beginJob () |
virtual void | beginRun (const edm::Run &, const edm::EventSetup &) |
virtual void | endJob () |
virtual void | endRun (const edm::Run &, const edm::EventSetup &) |
Private Attributes | |
std::map< std::string, TH1F * > | _history |
const unsigned int | _mode |
const std::vector < edm::ParameterSet > | _monitoredssq |
Description: <one line="" class="" summary>="">
Implementation: <Notes on="" implementation>="">
Definition at line 56 of file SiStripQualityHistory.cc.
anonymous enum |
Definition at line 61 of file SiStripQualityHistory.cc.
SiStripQualityHistory::SiStripQualityHistory | ( | const edm::ParameterSet & | iConfig | ) | [explicit] |
Definition at line 91 of file SiStripQualityHistory.cc.
References _history, _monitoredssq, and AlCaRecoCosmics_cfg::name.
: _monitoredssq(iConfig.getParameter<std::vector<edm::ParameterSet> >("monitoredSiStripQuality")), _mode(iConfig.getUntrackedParameter<unsigned int>("granularityMode",Module)), _history() { //now do what ever initialization is needed edm::Service<TFileService> tfserv; for(std::vector<edm::ParameterSet>::const_iterator ps=_monitoredssq.begin();ps!=_monitoredssq.end();++ps) { std::string name = ps->getParameter<std::string>("name"); // _history[name] = tfserv->make<TGraph>(); // _history[name]->SetName(name.c_str()); _history[name]->SetTitle(name.c_str()); _history[name] = tfserv->make<TH1F>(name.c_str(),name.c_str(),10,0,10); } }
SiStripQualityHistory::~SiStripQualityHistory | ( | ) |
Definition at line 113 of file SiStripQualityHistory.cc.
{ // do anything here that needs to be done at desctruction time // (e.g. close files, deallocate resources etc.) }
void SiStripQualityHistory::analyze | ( | const edm::Event & | iEvent, |
const edm::EventSetup & | iSetup | ||
) | [private, virtual] |
Implements edm::EDAnalyzer.
Definition at line 128 of file SiStripQualityHistory.cc.
{ edm::LogInfo("EventProcessing") << "event being processed"; }
void SiStripQualityHistory::beginJob | ( | void | ) | [private, virtual] |
void SiStripQualityHistory::beginRun | ( | const edm::Run & | iRun, |
const edm::EventSetup & | iSetup | ||
) | [private, virtual] |
Reimplemented from edm::EDAnalyzer.
Definition at line 134 of file SiStripQualityHistory.cc.
References _history, _mode, _monitoredssq, APV, Fiber, edm::EventSetup::get(), label, Module, AlCaRecoCosmics_cfg::name, and edm::RunBase::run().
{ // loop on all the SiStripQuality objects to be monitored for(std::vector<edm::ParameterSet>::const_iterator ps=_monitoredssq.begin();ps!=_monitoredssq.end();++ps) { std::string name = ps->getParameter<std::string>("name"); std::string label = ps->getParameter<std::string>("ssqLabel"); edm::ESHandle<SiStripQuality> ssq; iSetup.get<SiStripQualityRcd>().get(label,ssq); std::vector<SiStripQuality::BadComponent> bads = ssq->getBadComponentList(); edm::LogInfo("Debug") << bads.size() << " bad components found"; int nbad=0; for(std::vector<SiStripQuality::BadComponent>::const_iterator bc=bads.begin();bc!=bads.end();++bc) { if(_mode==Module) { if(bc->BadModule) ++nbad; } else if(_mode == Fiber) { for(int fiber=1;fiber<5;fiber*=2) { if((bc->BadFibers & fiber)>0) ++nbad; } } else if(_mode ==APV) { for(int apv=1;apv<33;apv*=2) { if((bc->BadApvs & apv)>0) ++nbad; } } } // _history[name]->SetPoint(_history[name]->GetN(),iRun.run(),nbad); char runname[100]; sprintf(runname,"%d",iRun.run()); edm::LogInfo("Debug") << name << " " << runname << " " << nbad; _history[name]->Fill(runname,nbad); } }
void SiStripQualityHistory::endJob | ( | void | ) | [private, virtual] |
Reimplemented from edm::EDAnalyzer.
Definition at line 196 of file SiStripQualityHistory.cc.
{ /* for(std::vector<edm::ParameterSet>::const_iterator ps=_monitoredssq.begin();ps!=_monitoredssq.end();++ps) { std::string name = ps->getParameter<std::string>("name"); _history[name]->Write(); } */ }
void SiStripQualityHistory::endRun | ( | const edm::Run & | iRun, |
const edm::EventSetup & | |||
) | [private, virtual] |
std::map<std::string,TH1F*> SiStripQualityHistory::_history [private] |
Definition at line 75 of file SiStripQualityHistory.cc.
Referenced by beginRun(), and SiStripQualityHistory().
const unsigned int SiStripQualityHistory::_mode [private] |
Definition at line 73 of file SiStripQualityHistory.cc.
Referenced by beginRun().
const std::vector<edm::ParameterSet> SiStripQualityHistory::_monitoredssq [private] |
Definition at line 72 of file SiStripQualityHistory.cc.
Referenced by beginRun(), and SiStripQualityHistory().