![]() |
![]() |
#include <junk/BTagPerformaceRootProducerFromSQLITE/src/BTagPerformaceRootProducerFromSQLITE.cc>
Public Member Functions | |
BTagPerformaceRootProducerFromSQLITE (const edm::ParameterSet &) | |
~BTagPerformaceRootProducerFromSQLITE () | |
Private Member Functions | |
virtual void | analyze (const edm::Event &, const edm::EventSetup &) |
virtual void | beginJob () |
virtual void | endJob () |
Private Attributes | |
edm::IOVSyncValue | lastValue_ |
std::vector< std::string > | names_ |
edm::ESWatcher < BTagPerformanceRecord > | recWatcher_ |
std::auto_ptr < fwlite::RecordWriter > | writer_ |
Description: This writes out a ROOT file with a BtagPerformance object taken from an sqlite file.
Implementation: [Notes on implementation]
Definition at line 53 of file BTagPerformaceRootProducerFromSQLITE.cc.
BTagPerformaceRootProducerFromSQLITE::BTagPerformaceRootProducerFromSQLITE | ( | const edm::ParameterSet & | iConfig | ) | [explicit] |
Definition at line 82 of file BTagPerformaceRootProducerFromSQLITE.cc.
: names_(iConfig.getParameter< std::vector<std::string> >("names")) { }
BTagPerformaceRootProducerFromSQLITE::~BTagPerformaceRootProducerFromSQLITE | ( | ) |
Definition at line 88 of file BTagPerformaceRootProducerFromSQLITE.cc.
{ }
void BTagPerformaceRootProducerFromSQLITE::analyze | ( | const edm::Event & | iEvent, |
const edm::EventSetup & | iSetup | ||
) | [private, virtual] |
Implements edm::EDAnalyzer.
Definition at line 99 of file BTagPerformaceRootProducerFromSQLITE.cc.
References edm::ESWatcher< T >::check(), gather_cfg::cout, f, edm::EventSetup::get(), edm::eventsetup::EventSetupRecord::get(), i, edm::eventsetup::EventSetupRecordImplementation< T >::key(), lastValue_, names_, BtagPerformance::payload(), edm::ESHandle< T >::product(), csvReporter::r, recWatcher_, edm::eventsetup::EventSetupRecord::validityInterval(), BtagPerformance::workingPoint(), and writer_.
{ std::cout << "Hello from BTagPerformaceRootProducerFromSQLITE!" << std::endl; if(recWatcher_.check(iSetup)) { const BTagPerformanceRecord& r = iSetup.get<BTagPerformanceRecord>(); if(! writer_.get()) { edm::Service<TFileService> fs ; TFile * f = &(fs->file()); writer_ = std::auto_ptr<fwlite::RecordWriter>(new fwlite::RecordWriter(r.key().name(), f )); } lastValue_ = r.validityInterval().last(); for( size_t i=0; i<names_.size(); i++ ) { edm::ESHandle<BtagPerformance> perfH; std::cout <<" Studying performance with label " << names_.at(i) <<std::endl; r.get( names_.at(i), perfH ); const BtagPerformance & perf = *(perfH.product()); writer_->update(&(perf.payload()), typeid(PerformancePayload),names_.at(i).c_str()); writer_->update(&(perf.workingPoint()), typeid(PerformanceWorkingPoint),names_.at(i).c_str()); } writer_->fill(edm::ESRecordAuxiliary(r.validityInterval().first().eventID(), r.validityInterval().first().time())); } }
void BTagPerformaceRootProducerFromSQLITE::beginJob | ( | void | ) | [private, virtual] |
Reimplemented from edm::EDAnalyzer.
Definition at line 131 of file BTagPerformaceRootProducerFromSQLITE.cc.
{ }
void BTagPerformaceRootProducerFromSQLITE::endJob | ( | void | ) | [private, virtual] |
Reimplemented from edm::EDAnalyzer.
Definition at line 137 of file BTagPerformaceRootProducerFromSQLITE.cc.
{ /*if(writer_.get()) { writer_->fill(edm::ESRecordAuxiliary(lastValue_.eventID(), lastValue_.time())); writer_->write(); } */ }
Definition at line 68 of file BTagPerformaceRootProducerFromSQLITE.cc.
Referenced by analyze().
std::vector<std::string> BTagPerformaceRootProducerFromSQLITE::names_ [private] |
Definition at line 65 of file BTagPerformaceRootProducerFromSQLITE.cc.
Referenced by analyze().
Definition at line 66 of file BTagPerformaceRootProducerFromSQLITE.cc.
Referenced by analyze().
std::auto_ptr<fwlite::RecordWriter> BTagPerformaceRootProducerFromSQLITE::writer_ [private] |
Definition at line 67 of file BTagPerformaceRootProducerFromSQLITE.cc.
Referenced by analyze().