#include <ESProxyFactoryProducer.h>
Definition at line 76 of file ESProxyFactoryProducer.h.
ESProxyFactoryProducer::ESProxyFactoryProducer |
( |
| ) |
|
Definition at line 30 of file ESProxyFactoryProducer.cc.
std::multimap< EventSetupRecordKey, eventsetup::FactoryInfo > record2Factories_
ESProxyFactoryProducer::~ESProxyFactoryProducer |
( |
| ) |
|
|
overridenoexcept |
template<class TFactory >
void edm::ESProxyFactoryProducer::registerFactory |
( |
std::unique_ptr< TFactory > |
iFactory, |
|
|
const std::string & |
iLabel = std::string() |
|
) |
| |
|
inlineprotected |
Reimplemented in edm::ESProducerLooper.
Definition at line 48 of file ESProxyFactoryProducer.cc.
References cms::cuda::assert(), beamvalidation::exit(), info(), sistrip::SpyUtilities::range(), record2Factories_, groupFilesInBlocks::temp, and edm::eventsetup::DataProxyProvider::usingRecordWithKey().
Referenced by registerFactory(), and edm::ESProducerLooper::registerFactoryWithKey().
51 if (
nullptr == iFactory.get()) {
52 assert(
false &&
"Factor pointer was null");
58 std::shared_ptr<ProxyFactoryBase>
temp(iFactory.release());
62 std::pair<Record2Factories::const_iterator, Record2Factories::const_iterator>
range =
65 std::find_if(range.first, range.second, [&
info](
const auto& r2f) {
return r2f.second.key_ ==
info.key_; })) {
67 <<
"Producer has been asked to produce " <<
info.key_.type().name() <<
" \"" <<
info.key_.name().value()
68 <<
"\" multiple times.\n Please modify the code.";
void usingRecordWithKey(const EventSetupRecordKey &key)
const uint16_t range(const Frame &aFrame)
Container::value_type value_type
std::multimap< EventSetupRecordKey, eventsetup::FactoryInfo > record2Factories_