#include <RecoLocalTracker/SiStripZeroSuppression/interface/SiStripZeroSuppression.h>
Public Member Functions | |
virtual void | produce (edm::Event &, const edm::EventSetup &) |
SiStripZeroSuppression (const edm::ParameterSet &conf) | |
virtual | ~SiStripZeroSuppression () |
Private Types | |
typedef std::vector < edm::ParameterSet > | Parameters |
Private Attributes | |
edm::ParameterSet | conf_ |
Parameters | RawDigiProducersList |
SiStripZeroSuppressionAlgorithm | SiStripZeroSuppressionAlgorithm_ |
Definition at line 39 of file SiStripZeroSuppression.h.
typedef std::vector<edm::ParameterSet> cms::SiStripZeroSuppression::Parameters [private] |
Definition at line 42 of file SiStripZeroSuppression.h.
SiStripZeroSuppression::SiStripZeroSuppression | ( | const edm::ParameterSet & | conf | ) | [explicit] |
Definition at line 10 of file SiStripZeroSuppression.cc.
References RawDigiProducersList.
00010 : 00011 conf_(conf), 00012 SiStripZeroSuppressionAlgorithm_(conf), 00013 RawDigiProducersList(conf_.getParameter<Parameters>("RawDigiProducersList")){ 00014 00015 edm::LogInfo("SiStripZeroSuppression") << "[SiStripZeroSuppression::SiStripZeroSuppression] Constructing object..."; 00016 00017 00018 Parameters::iterator itRawDigiProducersList = RawDigiProducersList.begin(); 00019 for(; itRawDigiProducersList != RawDigiProducersList.end(); ++itRawDigiProducersList ) { 00020 std::string rawdigiLabel = itRawDigiProducersList->getParameter<std::string>("RawDigiLabel"); 00021 produces< edm::DetSetVector<SiStripDigi> > (rawdigiLabel); 00022 } 00023 }
SiStripZeroSuppression::~SiStripZeroSuppression | ( | ) | [virtual] |
Definition at line 26 of file SiStripZeroSuppression.cc.
00026 { 00027 edm::LogInfo("SiStripZeroSuppression") << "[SiStripZeroSuppression::~SiStripZeroSuppression] Destructing object..."; 00028 }
void SiStripZeroSuppression::produce | ( | edm::Event & | e, | |
const edm::EventSetup & | es | |||
) | [virtual] |
Implements edm::EDProducer.
Definition at line 31 of file SiStripZeroSuppression.cc.
References lat::endl(), edm::Event::getByLabel(), edm::Event::id(), iggi_31X_cfg::input, LogDebug, output(), edm::Event::put(), and python::SiStripOnlineP5_cfg::RawDigiProducersList.
00032 { 00033 LogDebug("SiStripZeroSuppression") << "[SiStripZeroSuppression::produce] Analysing " << e.id(); 00034 00035 edm::Handle< edm::DetSetVector<SiStripRawDigi> > input; 00036 00037 Parameters::iterator itRawDigiProducersList = RawDigiProducersList.begin(); 00038 for(; itRawDigiProducersList != RawDigiProducersList.end(); ++itRawDigiProducersList ) { 00039 00040 // Step B: Get Inputs 00041 std::string rawdigiProducer = itRawDigiProducersList->getParameter<std::string>("RawDigiProducer"); 00042 std::string rawdigiLabel = itRawDigiProducersList->getParameter<std::string>("RawDigiLabel"); 00043 e.getByLabel(rawdigiProducer,rawdigiLabel,input); //FIXME: fix this label 00044 00045 // Step B: produce output product 00046 std::vector< edm::DetSet<SiStripDigi> > vSiStripDigi; 00047 vSiStripDigi.reserve(10000); 00048 if (input->size()){ 00049 LogDebug("SiStripZeroSuppression") << "[SiStripZeroSuppression::produce] Analysing " << rawdigiProducer << " " << rawdigiLabel << std::endl; 00050 SiStripZeroSuppressionAlgorithm_.run(rawdigiLabel,*input,vSiStripDigi,es); 00051 } 00052 // Step C: create and fill output collection 00053 std::auto_ptr< edm::DetSetVector<SiStripDigi> > output(new edm::DetSetVector<SiStripDigi>(vSiStripDigi) ); 00054 00055 // Step E: write output to file 00056 e.put(output,rawdigiLabel); 00057 } 00058 }
Definition at line 53 of file SiStripZeroSuppression.h.
SiStripZeroSuppressionAlgorithm cms::SiStripZeroSuppression::SiStripZeroSuppressionAlgorithm_ [private] |
Definition at line 54 of file SiStripZeroSuppression.h.