#include <ProducerBase.h>
Public Types | |
using | ModuleToResolverIndicies = std::unordered_multimap< std::string, std::tuple< edm::TypeID const *, const char *, edm::ProductResolverIndex >> |
typedef ProductRegistryHelper::TypeLabelList | TypeLabelList |
Public Member Functions | |
void | callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func) |
std::vector < edm::ProductResolverIndex > const & | indiciesForPutProducts (BranchType iBranchType) const |
ProducerBase () | |
std::vector < edm::ProductResolverIndex > const & | putTokenIndexToProductResolverIndex () const |
void | registerProducts (ProducerBase *, ProductRegistry *, ModuleDescription const &) |
std::function< void(BranchDescription const &)> | registrationCallback () const |
used by the fwk to register list of products More... | |
void | resolvePutIndicies (BranchType iBranchType, ModuleToResolverIndicies const &iIndicies, std::string const &moduleLabel) |
~ProducerBase () noexcept(false) override | |
Protected Member Functions | |
ProducesCollector | producesCollector () |
Private Member Functions | |
template<typename P > | |
void | commit_ (P &iPrincipal) |
template<typename P , typename I > | |
void | commit_ (P &iPrincipal, I *iID) |
Private Member Functions inherited from edm::ProductRegistryHelper | |
virtual bool | hasAbilityToProduceInBeginLumis () const |
virtual bool | hasAbilityToProduceInBeginProcessBlocks () const |
virtual bool | hasAbilityToProduceInBeginRuns () const |
virtual bool | hasAbilityToProduceInEndLumis () const |
virtual bool | hasAbilityToProduceInEndProcessBlocks () const |
virtual bool | hasAbilityToProduceInEndRuns () const |
template<Transition Tr = Transition::Event> | |
auto | produces (std::string instanceName) noexcept |
declare what type of product will make and with which optional label More... | |
template<Transition Tr = Transition::Event> | |
auto | produces () noexcept |
template<class ProductType > | |
BranchAliasSetterT< ProductType > | produces () |
template<class ProductType > | |
BranchAliasSetterT< ProductType > | produces (std::string instanceName) |
template<typename ProductType , BranchType B> | |
BranchAliasSetterT< ProductType > | produces () |
template<typename ProductType , BranchType B> | |
BranchAliasSetterT< ProductType > | produces (std::string instanceName) |
template<typename ProductType , Transition B> | |
BranchAliasSetterT< ProductType > | produces () |
template<typename ProductType , Transition B> | |
BranchAliasSetterT< ProductType > | produces (std::string instanceName) |
BranchAliasSetter | produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true) |
template<BranchType B> | |
BranchAliasSetter | produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true) |
template<Transition B> | |
BranchAliasSetter | produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true) |
ProductRegistryHelper () | |
std::vector< bool > const & | recordProvenanceList () const |
TypeLabelList const & | typeLabelList () const |
used by the fwk to register the list of products of this module More... | |
virtual | ~ProductRegistryHelper () noexcept(false) |
Private Attributes | |
std::function< void(BranchDescription const &)> | callWhenNewProductsRegistered_ |
std::array< std::vector < edm::ProductResolverIndex > , edm::NumBranchTypes > | putIndicies_ |
std::vector < edm::ProductResolverIndex > | putTokenToResolverIndex_ |
Friends | |
class | EDFilter |
class | EDProducer |
class | global::EDFilterBase |
class | global::EDProducerBase |
class | limited::EDFilterBase |
class | limited::EDProducerBase |
class | one::EDFilterBase |
class | one::EDProducerBase |
class | PuttableSourceBase |
template<typename T > | |
class | stream::ProducingModuleAdaptorBase |
Additional Inherited Members | |
Private Types inherited from edm::ProductRegistryHelper | |
typedef std::vector < TypeLabelItem > | TypeLabelList |
Static Private Member Functions inherited from edm::ProductRegistryHelper | |
static void | addToRegistry (TypeLabelList::const_iterator const &iBegin, TypeLabelList::const_iterator const &iEnd, ModuleDescription const &iDesc, ProductRegistry &iReg, ProductRegistryHelper *iProd, bool iIsListener=false) |
Definition at line 71 of file ProducerBase.h.
using edm::ProducerBase::ModuleToResolverIndicies = std::unordered_multimap<std::string, std::tuple<edm::TypeID const*, const char*, edm::ProductResolverIndex>> |
Definition at line 90 of file ProducerBase.h.
Definition at line 73 of file ProducerBase.h.
edm::ProducerBase::ProducerBase | ( | ) |
Definition at line 16 of file ProducerBase.cc.
|
overridenoexcept |
Definition at line 17 of file ProducerBase.cc.
|
inline |
Definition at line 85 of file ProducerBase.h.
References callWhenNewProductsRegistered_, and cms::cuda::func.
Referenced by edm::ConcurrentHadronizerFilter< HAD, DEC >::ConcurrentHadronizerFilter(), DQMEDHarvester::DQMEDHarvester(), EcalDeadCellTriggerPrimitiveFilter::EcalDeadCellTriggerPrimitiveFilter(), edm::HadronizerFilter< HAD, DEC >::HadronizerFilter(), edm::SwitchProducer::SwitchProducer(), TriggerResultsFilter::TriggerResultsFilter(), TriggerSummaryProducerAOD::TriggerSummaryProducerAOD(), and TriggerSummaryProducerRAW::TriggerSummaryProducerRAW().
|
inlineprivate |
Definition at line 121 of file ProducerBase.h.
References putIndicies_.
Referenced by edm::PuttableSourceBase::doBeginLumi(), edm::EDProducer::doBeginLuminosityBlock(), edm::EDFilter::doBeginLuminosityBlock(), edm::one::EDFilterBase::doBeginLuminosityBlock(), edm::one::EDProducerBase::doBeginLuminosityBlock(), edm::global::EDProducerBase::doBeginLuminosityBlock(), edm::limited::EDProducerBase::doBeginLuminosityBlock(), edm::global::EDFilterBase::doBeginLuminosityBlock(), edm::limited::EDFilterBase::doBeginLuminosityBlock(), edm::one::EDProducerBase::doBeginProcessBlock(), edm::one::EDFilterBase::doBeginProcessBlock(), edm::global::EDProducerBase::doBeginProcessBlock(), edm::limited::EDProducerBase::doBeginProcessBlock(), edm::limited::EDFilterBase::doBeginProcessBlock(), edm::global::EDFilterBase::doBeginProcessBlock(), edm::PuttableSourceBase::doBeginRun(), edm::EDProducer::doBeginRun(), edm::EDFilter::doBeginRun(), edm::one::EDProducerBase::doBeginRun(), edm::one::EDFilterBase::doBeginRun(), edm::global::EDProducerBase::doBeginRun(), edm::limited::EDProducerBase::doBeginRun(), edm::limited::EDFilterBase::doBeginRun(), edm::global::EDFilterBase::doBeginRun(), edm::EDProducer::doEndLuminosityBlock(), edm::EDFilter::doEndLuminosityBlock(), edm::one::EDProducerBase::doEndLuminosityBlock(), edm::one::EDFilterBase::doEndLuminosityBlock(), edm::global::EDProducerBase::doEndLuminosityBlock(), edm::limited::EDProducerBase::doEndLuminosityBlock(), edm::global::EDFilterBase::doEndLuminosityBlock(), edm::limited::EDFilterBase::doEndLuminosityBlock(), edm::one::EDProducerBase::doEndProcessBlock(), edm::one::EDFilterBase::doEndProcessBlock(), edm::global::EDProducerBase::doEndProcessBlock(), edm::limited::EDProducerBase::doEndProcessBlock(), edm::global::EDFilterBase::doEndProcessBlock(), edm::limited::EDFilterBase::doEndProcessBlock(), edm::EDProducer::doEndRun(), edm::EDFilter::doEndRun(), edm::one::EDFilterBase::doEndRun(), edm::one::EDProducerBase::doEndRun(), edm::global::EDProducerBase::doEndRun(), edm::limited::EDProducerBase::doEndRun(), edm::limited::EDFilterBase::doEndRun(), edm::global::EDFilterBase::doEndRun(), edm::EDProducer::doEvent(), edm::EDFilter::doEvent(), edm::global::EDFilterBase::doEvent(), edm::one::EDProducerBase::doEvent(), edm::one::EDFilterBase::doEvent(), edm::global::EDProducerBase::doEvent(), edm::limited::EDFilterBase::doEvent(), and edm::limited::EDProducerBase::doEvent().
|
inlineprivate |
Definition at line 126 of file ProducerBase.h.
References putIndicies_.
|
inline |
Definition at line 95 of file ProducerBase.h.
References putIndicies_.
|
protected |
Definition at line 105 of file ProducerBase.cc.
Referenced by ConfigurableAnalysis::ConfigurableAnalysis(), and NTuplingDevice::NTuplingDevice().
|
inline |
Definition at line 99 of file ProducerBase.h.
References putTokenToResolverIndex_.
Referenced by edm::PrincipalGetAdapter::getBranchDescription(), edm::PrincipalGetAdapter::getProductID(), and edm::PrincipalGetAdapter::putTokenIndexToProductResolverIndex().
void edm::ProducerBase::registerProducts | ( | ProducerBase * | producer, |
ProductRegistry * | iReg, | ||
ModuleDescription const & | md | ||
) |
Definition at line 57 of file ProducerBase.cc.
References edm::ProductRegistryHelper::addToRegistry(), edm::ProductRegistry::callForEachBranch(), relativeConstraints::empty, registrationCallback(), and edm::ProductRegistryHelper::typeLabelList().
Referenced by edm::one::EDFilterBase::registerProductsAndCallbacks(), edm::one::EDProducerBase::registerProductsAndCallbacks(), edm::global::EDProducerBase::registerProductsAndCallbacks(), edm::limited::EDProducerBase::registerProductsAndCallbacks(), edm::global::EDFilterBase::registerProductsAndCallbacks(), and edm::limited::EDFilterBase::registerProductsAndCallbacks().
std::function< void(BranchDescription const &)> edm::ProducerBase::registrationCallback | ( | ) | const |
used by the fwk to register list of products
Definition at line 19 of file ProducerBase.cc.
References callWhenNewProductsRegistered_.
Referenced by registerProducts().
void edm::ProducerBase::resolvePutIndicies | ( | BranchType | iBranchType, |
ModuleToResolverIndicies const & | iIndicies, | ||
std::string const & | moduleLabel | ||
) |
Definition at line 79 of file ProducerBase.cc.
References edm::convertToBranchType(), mps_fire::i, SiStripPI::max, putIndicies_, putTokenToResolverIndex_, sistrip::SpyUtilities::range(), and edm::ProductRegistryHelper::typeLabelList().
Referenced by edm::PuttableSourceBase::beginJob().
|
friend |
Definition at line 109 of file ProducerBase.h.
|
friend |
Definition at line 108 of file ProducerBase.h.
|
friend |
Definition at line 113 of file ProducerBase.h.
|
friend |
Definition at line 112 of file ProducerBase.h.
|
friend |
Definition at line 115 of file ProducerBase.h.
|
friend |
Definition at line 114 of file ProducerBase.h.
|
friend |
Definition at line 111 of file ProducerBase.h.
|
friend |
Definition at line 110 of file ProducerBase.h.
|
friend |
Definition at line 116 of file ProducerBase.h.
|
friend |
Definition at line 118 of file ProducerBase.h.
|
private |
Definition at line 130 of file ProducerBase.h.
Referenced by callWhenNewProductsRegistered(), and registrationCallback().
|
private |
Definition at line 131 of file ProducerBase.h.
Referenced by commit_(), indiciesForPutProducts(), and resolvePutIndicies().
|
private |
Definition at line 132 of file ProducerBase.h.
Referenced by putTokenIndexToProductResolverIndex(), and resolvePutIndicies().