#include <CalibTracker/SiStripESProducers/plugins/real/SiStripDelayESProducer.cc>
Public Member Functions | |
boost::shared_ptr< SiStripDelay > | produce (const SiStripDelayRcd &) |
SiStripDelayESProducer (const edm::ParameterSet &) | |
~SiStripDelayESProducer () | |
Private Types | |
typedef std::vector < edm::ParameterSet > | Parameters |
Private Attributes | |
boost::shared_ptr< SiStripDelay > | delay |
edm::FileInPath | fp_ |
bool | MergeList_ |
edm::ParameterSet | pset_ |
Parameters | toGet |
Description: <one line="" class="" summary>="">
Implementation: <Notes on="" implementation>="">
Definition at line 21 of file SiStripDelayESProducer.h.
typedef std::vector< edm::ParameterSet > SiStripDelayESProducer::Parameters [private] |
Definition at line 34 of file SiStripDelayESProducer.h.
SiStripDelayESProducer::SiStripDelayESProducer | ( | const edm::ParameterSet & | iConfig | ) |
Definition at line 26 of file SiStripDelayESProducer.cc.
References delay, and edm::ESProducer::setWhatProduced().
: pset_(iConfig), toGet(iConfig.getParameter<Parameters>("ListOfRecordToMerge")) { setWhatProduced(this); edm::LogInfo("SiStripDelayESProducer") << "ctor" << std::endl; delay.reset(new SiStripDelay()); }
SiStripDelayESProducer::~SiStripDelayESProducer | ( | ) | [inline] |
Definition at line 24 of file SiStripDelayESProducer.h.
{};
boost::shared_ptr< SiStripDelay > SiStripDelayESProducer::produce | ( | const SiStripDelayRcd & | iRecord | ) |
Definition at line 38 of file SiStripDelayESProducer.cc.
References delay, edm::eventsetup::DependentRecordImplementation< RecordT, ListT >::getRecord(), label, edm::ESHandle< T >::product(), ecalTPGAnalyzer_cfg::recordName, and toGet.
{ edm::LogInfo("SiStripDelayESProducer") << "produce called" << std::endl; delay->clear(); edm::ESHandle<SiStripBaseDelay> baseDelay; std::string label; std::string recordName; int sumSign = 0; for( Parameters::iterator itToGet = toGet.begin(); itToGet != toGet.end(); ++itToGet ) { recordName = itToGet->getParameter<std::string>("Record"); label = itToGet->getParameter<std::string>("Label"); sumSign = itToGet->getParameter<int>("SumSign"); edm::LogInfo("SiStripDelayESProducer") << "[SiStripDelayESProducer::produce] Getting data from record " << recordName << " with label " << label << std::endl; if( recordName=="SiStripBaseDelayRcd" ) { iRecord.getRecord<SiStripBaseDelayRcd>().get(label, baseDelay); delay->fillNewDelay( *(baseDelay.product()), sumSign, std::make_pair(recordName, label) ); } else { edm::LogError("SiStripDelayESProducer") << "[SiStripDelayESProducer::produce] Skipping the requested data for unexisting record " << recordName << " with tag " << label << std::endl; continue; } } delay->makeDelay(); return delay; }
boost::shared_ptr<SiStripDelay> SiStripDelayESProducer::delay [private] |
Definition at line 37 of file SiStripDelayESProducer.h.
Referenced by produce(), and SiStripDelayESProducer().
edm::FileInPath SiStripDelayESProducer::fp_ [private] |
Definition at line 31 of file SiStripDelayESProducer.h.
bool SiStripDelayESProducer::MergeList_ [private] |
Definition at line 32 of file SiStripDelayESProducer.h.
Definition at line 30 of file SiStripDelayESProducer.h.
Parameters SiStripDelayESProducer::toGet [private] |
Definition at line 35 of file SiStripDelayESProducer.h.
Referenced by produce().