43 std::vector<edmplugin::PluginInfo>
infos = factory->available();
52 auto itInfos = infos.begin();
53 assert(itInfos != infos.end());
55 std::unique_ptr<edm::ParameterDescriptionCases<std::string>>
s;
57 std::unique_ptr<EcalUncalibRecHitWorkerBaseClass> tmw(
59 s = (itInfos->name_ >>
62 for (++itInfos; itInfos != infos.end(); ++itInfos) {
63 std::unique_ptr<EcalUncalibRecHitWorkerBaseClass> tmw(
66 "algoPSet", tmw->getAlgoDescription(),
true));
73 for (std::vector<edmplugin::PluginInfo>::const_iterator itInfos = infos.begin(); itInfos != infos.end(); itInfos++) {
74 std::unique_ptr<EcalUncalibRecHitWorkerBaseClass> fdWorker(
85 std::string algoName = itInfos->name_.substr(itInfos->name_.find(
"Worker") + 6, itInfos->name_.length());
86 descriptions.
add(
"ecal" + algoName +
"UncalibRecHit", desc);
101 edm::LogInfo(
"EcalUncalibRecHitInfo") <<
"total # ebDigis: " << ebDigis->
size();
105 edm::LogInfo(
"EcalUncalibRecHitInfo") <<
"total # eeDigis: " << eeDigis->
size();
112 auto ebUncalibRechits = std::make_unique<EBUncalibratedRecHitCollection>();
113 auto eeUncalibRechits = std::make_unique<EEUncalibratedRecHitCollection>();
117 worker_->run(evt, *ebDigis, *ebUncalibRechits);
121 worker_->run(evt, *eeDigis, *eeUncalibRechits);
std::unique_ptr< EcalUncalibRecHitWorkerBaseClass > worker_
T getParameter(std::string const &) const
ParameterDescriptionNode * ifValue(ParameterDescription< T > const &switchParameter, std::unique_ptr< ParameterDescriptionCases< T >> cases)
OrphanHandle< PROD > put(std::unique_ptr< PROD > product)
Put a new product.
def create(alignables, pedeDump, additionalData, outputFile, config)
bool getByToken(EDGetToken token, Handle< PROD > &result) const
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
edm::EDGetTokenT< EEDigiCollection > eeDigiCollectionToken_
#define DEFINE_FWK_MODULE(type)
void addDefault(ParameterSetDescription const &psetDescription)
The Signals That Services Can Subscribe To This is based on ActivityRegistry and is current per Services can connect to the signals distributed by the ActivityRegistry in order to monitor the activity of the application Each possible callback has some defined which we here list in angle e< void, edm::EventID const &, edm::Timestamp const & > We also list in braces which AR_WATCH_USING_METHOD_ is used for those or
ParameterDescriptionBase * add(U const &iLabel, T const &value)
void produce(edm::Event &evt, const edm::EventSetup &es) override
std::string eeHitCollection_
~EcalUncalibRecHitProducer() override
T const * product() const
EcalUncalibRecHitProducer(const edm::ParameterSet &ps)
void add(std::string const &label, ParameterSetDescription const &psetDescription)
std::string ebHitCollection_
edm::EDGetTokenT< EBDigiCollection > ebDigiCollectionToken_