![]() |
![]() |
#include <EDProducerBase.h>
Public Types | |
typedef EDProducerBase | ModuleType |
![]() | |
using | ModuleToResolverIndicies = std::unordered_multimap< std::string, std::tuple< edm::TypeID const *, const char *, edm::ProductResolverIndex > > |
typedef ProductRegistryHelper::TypeLabelList | TypeLabelList |
![]() | |
typedef ProductLabels | Labels |
Public Member Functions | |
unsigned int | concurrencyLimit () const |
EDProducerBase (ParameterSet const &pset) | |
ModuleDescription const & | moduleDescription () const |
LimitedTaskQueue & | queue () |
virtual bool | wantsGlobalLuminosityBlocks () const =0 |
virtual bool | wantsGlobalRuns () const =0 |
virtual bool | wantsInputProcessBlocks () const =0 |
virtual bool | wantsProcessBlocks () const =0 |
virtual bool | wantsStreamLuminosityBlocks () const =0 |
virtual bool | wantsStreamRuns () const =0 |
~EDProducerBase () override | |
![]() | |
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 |
std::vector< bool > const & | recordProvenanceList () 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) |
TypeLabelList const & | typeLabelList () const |
used by the fwk to register the list of products of this module More... | |
~ProducerBase () noexcept(false) override | |
![]() | |
std::vector< ConsumesInfo > | consumesInfo () const |
void | convertCurrentProcessAlias (std::string const &processName) |
Convert "@currentProcess" in InputTag process names to the actual current process name. More... | |
EDConsumerBase () | |
EDConsumerBase (EDConsumerBase const &)=delete | |
EDConsumerBase (EDConsumerBase &&)=default | |
ESProxyIndex const * | esGetTokenIndices (edm::Transition iTrans) const |
std::vector< ESProxyIndex > const & | esGetTokenIndicesVector (edm::Transition iTrans) const |
std::vector< ESRecordIndex > const & | esGetTokenRecordIndicesVector (edm::Transition iTrans) const |
ProductResolverIndexAndSkipBit | indexFrom (EDGetToken, BranchType, TypeID const &) const |
void | itemsMayGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const |
void | itemsToGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const |
std::vector< ProductResolverIndexAndSkipBit > const & | itemsToGetFrom (BranchType iType) const |
void | labelsForToken (EDGetToken iToken, Labels &oLabels) const |
void | modulesWhoseProductsAreConsumed (std::array< std::vector< ModuleDescription const *> *, NumBranchTypes > &modulesAll, std::vector< ModuleProcessName > &modulesInPreviousProcesses, ProductRegistry const &preg, std::map< std::string, ModuleDescription const *> const &labelsToDesc, std::string const &processName) const |
EDConsumerBase const & | operator= (EDConsumerBase const &)=delete |
EDConsumerBase & | operator= (EDConsumerBase &&)=default |
bool | registeredToConsume (ProductResolverIndex, bool, BranchType) const |
bool | registeredToConsumeMany (TypeID const &, BranchType) const |
void | selectInputProcessBlocks (ProductRegistry const &productRegistry, ProcessBlockHelperBase const &processBlockHelperBase) |
ProductResolverIndexAndSkipBit | uncheckedIndexFrom (EDGetToken) const |
void | updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet) |
void | updateLookup (eventsetup::ESRecordsToProxyIndices const &) |
virtual | ~EDConsumerBase () noexcept(false) |
Static Public Member Functions | |
static const std::string & | baseType () |
static void | fillDescriptions (ConfigurationDescriptions &descriptions) |
static void | prevalidate (ConfigurationDescriptions &descriptions) |
Private Attributes | |
ModuleDescription | moduleDescription_ |
std::unique_ptr< ParentageID[]> | previousParentageIds_ |
std::unique_ptr< std::vector< BranchID >[]> | previousParentages_ |
LimitedTaskQueue | queue_ |
Friends | |
class | edm::GlobalSchedule |
template<typename T > | |
class | edm::maker::ModuleHolderT |
template<typename T > | |
class | edm::WorkerT |
Additional Inherited Members | |
![]() | |
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 B> | |
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) |
BranchAliasSetter | produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true) |
template<typename ProductType , Transition B> | |
BranchAliasSetterT< ProductType > | produces (std::string instanceName) |
template<class ProductType > | |
BranchAliasSetterT< ProductType > | produces () |
template<typename ProductType , BranchType B> | |
BranchAliasSetterT< ProductType > | produces (std::string instanceName) |
template<typename ProductType , BranchType B> | |
BranchAliasSetterT< ProductType > | produces () |
template<class ProductType > | |
BranchAliasSetterT< ProductType > | produces (std::string instanceName) |
template<typename ProductType , Transition B> | |
BranchAliasSetterT< ProductType > | produces () |
template<Transition Tr = Transition::Event> | |
auto | produces () noexcept |
ProducesCollector | producesCollector () |
![]() | |
template<typename ProductType , BranchType B = InEvent> | |
EDGetTokenT< ProductType > | consumes (edm::InputTag const &tag) |
template<BranchType B = InEvent> | |
EDConsumerBaseAdaptor< B > | consumes (edm::InputTag tag) noexcept |
EDGetToken | consumes (const TypeToGet &id, edm::InputTag const &tag) |
template<BranchType B> | |
EDGetToken | consumes (TypeToGet const &id, edm::InputTag const &tag) |
ConsumesCollector | consumesCollector () |
Use a ConsumesCollector to gather consumes information from helper functions. More... | |
template<typename ProductType , BranchType B = InEvent> | |
void | consumesMany () |
void | consumesMany (const TypeToGet &id) |
template<BranchType B> | |
void | consumesMany (const TypeToGet &id) |
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event> | |
auto | esConsumes () |
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event> | |
auto | esConsumes (ESInputTag const &tag) |
template<Transition Tr = Transition::Event> | |
constexpr auto | esConsumes () |
template<Transition Tr = Transition::Event> | |
auto | esConsumes (ESInputTag tag) |
template<Transition Tr = Transition::Event> | |
ESGetTokenGeneric | esConsumes (eventsetup::EventSetupRecordKey const &iRecord, eventsetup::DataKey const &iKey) |
Used with EventSetupRecord::doGet. More... | |
template<typename ProductType , BranchType B = InEvent> | |
EDGetTokenT< ProductType > | mayConsume (edm::InputTag const &tag) |
EDGetToken | mayConsume (const TypeToGet &id, edm::InputTag const &tag) |
template<BranchType B> | |
EDGetToken | mayConsume (const TypeToGet &id, edm::InputTag const &tag) |
void | resetItemsToGetFrom (BranchType iType) |
Definition at line 50 of file EDProducerBase.h.
Definition at line 56 of file EDProducerBase.h.
EDProducerBase::EDProducerBase | ( | ParameterSet const & | pset | ) |
Definition at line 45 of file EDProducerBase.cc.
|
override |
Definition at line 52 of file EDProducerBase.cc.
|
static |
Definition at line 264 of file EDProducerBase.cc.
References edm::limited::kBaseType().
|
inlineprivatevirtual |
|
privatevirtual |
Definition at line 252 of file EDProducerBase.cc.
Referenced by doRespondToCloseOutputFile().
|
inline |
Definition at line 77 of file EDProducerBase.h.
References edm::LimitedTaskQueue::concurrencyLimit(), and queue_.
|
private |
Definition at line 94 of file EDProducerBase.cc.
References doAccessInputProcessBlock_(), moduleDescription_, and edm::ProcessBlock::setConsumer().
|
privatevirtual |
|
private |
|
private |
Definition at line 139 of file EDProducerBase.cc.
References edm::BeginLuminosityBlock, c, edm::ProducerBase::commit_(), doBeginLuminosityBlock_(), doBeginLuminosityBlockProduce_(), doBeginLuminosityBlockSummary_(), edm::EDConsumerBase::esGetTokenIndices(), info(), moduleDescription_, edm::LuminosityBlock::setConsumer(), and edm::LuminosityBlock::setProducer().
|
privatevirtual |
|
privatevirtual |
|
privatevirtual |
|
private |
Definition at line 84 of file EDProducerBase.cc.
References edm::ProducerBase::commit_(), doBeginProcessBlock_(), doBeginProcessBlockProduce_(), moduleDescription_, edm::ProcessBlock::setConsumer(), and edm::ProcessBlock::setProducer().
|
privatevirtual |
|
privatevirtual |
|
private |
Definition at line 111 of file EDProducerBase.cc.
References edm::BeginRun, c, edm::ProducerBase::commit_(), doBeginRun_(), doBeginRunProduce_(), doBeginRunSummary_(), edm::EDConsumerBase::esGetTokenIndices(), info(), moduleDescription_, and alignCSCRings::r.
|
privatevirtual |
|
privatevirtual |
|
privatevirtual |
|
private |
Definition at line 171 of file EDProducerBase.cc.
References doBeginStream_().
|
privatevirtual |
|
private |
|
private |
Definition at line 155 of file EDProducerBase.cc.
References c, edm::ProducerBase::commit_(), doEndLuminosityBlock_(), doEndLuminosityBlockProduce_(), doEndLuminosityBlockSummary_(), edm::EndLuminosityBlock, edm::EDConsumerBase::esGetTokenIndices(), info(), moduleDescription_, edm::LuminosityBlock::setConsumer(), and edm::LuminosityBlock::setProducer().
|
privatevirtual |
|
privatevirtual |
|
privatevirtual |
|
private |
Definition at line 101 of file EDProducerBase.cc.
References edm::ProducerBase::commit_(), doEndProcessBlock_(), doEndProcessBlockProduce_(), moduleDescription_, edm::ProcessBlock::setConsumer(), and edm::ProcessBlock::setProducer().
|
privatevirtual |
|
privatevirtual |
|
private |
Definition at line 125 of file EDProducerBase.cc.
References c, edm::ProducerBase::commit_(), doEndRun_(), doEndRunProduce_(), doEndRunSummary_(), edm::EndRun, edm::EDConsumerBase::esGetTokenIndices(), info(), moduleDescription_, and alignCSCRings::r.
|
privatevirtual |
|
privatevirtual |
|
privatevirtual |
|
private |
Definition at line 172 of file EDProducerBase.cc.
References doEndStream_().
|
privatevirtual |
|
private |
Definition at line 54 of file EDProducerBase.cc.
References c, edm::ProducerBase::commit_(), MillePedeFileConverter_cfg::e, edm::EDConsumerBase::esGetTokenIndices(), edm::Event, info(), moduleDescription_, previousParentageIds_, previousParentages_, produce(), and edm::Event::streamID().
|
private |
Definition at line 70 of file EDProducerBase.cc.
References edm::PreallocationConfiguration::numberOfLuminosityBlocks(), edm::PreallocationConfiguration::numberOfStreams(), preallocate(), preallocLumis(), preallocLumisSummary(), preallocStreams(), previousParentageIds_, and previousParentages_.
|
inlineprivate |
Definition at line 106 of file EDProducerBase.h.
|
inlineprivate |
Definition at line 104 of file EDProducerBase.h.
|
inlineprivate |
Definition at line 105 of file EDProducerBase.h.
References clearInputProcessBlockCaches().
|
inlineprivate |
Definition at line 103 of file EDProducerBase.h.
|
private |
Definition at line 190 of file EDProducerBase.cc.
References edm::BeginLuminosityBlock, c, doStreamBeginLuminosityBlock_(), edm::EDConsumerBase::esGetTokenIndices(), info(), moduleDescription_, and edm::LuminosityBlock::setConsumer().
|
privatevirtual |
Definition at line 226 of file EDProducerBase.cc.
Referenced by doStreamBeginLuminosityBlock().
|
private |
Definition at line 173 of file EDProducerBase.cc.
References edm::BeginRun, c, doStreamBeginRun_(), edm::EDConsumerBase::esGetTokenIndices(), info(), moduleDescription_, and alignCSCRings::r.
|
privatevirtual |
|
private |
Definition at line 203 of file EDProducerBase.cc.
References c, doStreamEndLuminosityBlock_(), doStreamEndLuminosityBlockSummary_(), edm::EndLuminosityBlock, edm::EDConsumerBase::esGetTokenIndices(), info(), moduleDescription_, and edm::LuminosityBlock::setConsumer().
|
privatevirtual |
Definition at line 227 of file EDProducerBase.cc.
Referenced by doStreamEndLuminosityBlock().
|
privatevirtual |
Definition at line 228 of file EDProducerBase.cc.
Referenced by doStreamEndLuminosityBlock().
|
private |
Definition at line 181 of file EDProducerBase.cc.
References c, doStreamEndRun_(), doStreamEndRunSummary_(), edm::EndRun, edm::EDConsumerBase::esGetTokenIndices(), info(), moduleDescription_, and alignCSCRings::r.
|
privatevirtual |
|
privatevirtual |
|
inlineprivatevirtual |
|
static |
Definition at line 254 of file EDProducerBase.cc.
References edm::ConfigurationDescriptions::addDefault(), and submitPVResolutionJobs::desc.
|
inlineprivatevirtual |
Definition at line 155 of file EDProducerBase.h.
|
inlineprivate |
Definition at line 157 of file EDProducerBase.h.
|
inline |
Definition at line 68 of file EDProducerBase.h.
References moduleDescription_.
|
inlineprivate |
Definition at line 115 of file EDProducerBase.h.
|
privatevirtual |
|
privatevirtual |
|
privatevirtual |
|
privatevirtual |
|
static |
Definition at line 260 of file EDProducerBase.cc.
References edm::edmodule_mightGet_config().
|
privatepure virtual |
Referenced by doEvent().
|
inline |
|
inlineprivate |
Definition at line 108 of file EDProducerBase.h.
References callgraph::module, moduleDescription_, and edm::ProducerBase::registerProducts().
|
inlineprivate |
Definition at line 159 of file EDProducerBase.h.
References moduleDescription_.
|
pure virtual |
Implemented in edm::limited::EDProducer< T >.
|
pure virtual |
Implemented in edm::limited::EDProducer< T >.
|
pure virtual |
Implemented in edm::limited::EDProducer< T >.
|
pure virtual |
Implemented in edm::limited::EDProducer< T >.
|
pure virtual |
Implemented in edm::limited::EDProducer< T >.
|
pure virtual |
Implemented in edm::limited::EDProducer< T >.
|
inlineprivate |
Definition at line 111 of file EDProducerBase.h.
|
friend |
Definition at line 58 of file EDProducerBase.h.
|
friend |
Definition at line 53 of file EDProducerBase.h.
|
friend |
Definition at line 55 of file EDProducerBase.h.
|
private |
Definition at line 160 of file EDProducerBase.h.
Referenced by doAccessInputProcessBlock(), doBeginLuminosityBlock(), doBeginProcessBlock(), doBeginRun(), doEndLuminosityBlock(), doEndProcessBlock(), doEndRun(), doEvent(), doStreamBeginLuminosityBlock(), doStreamBeginRun(), doStreamEndLuminosityBlock(), doStreamEndRun(), moduleDescription(), registerProductsAndCallbacks(), and setModuleDescription().
|
private |
Definition at line 162 of file EDProducerBase.h.
Referenced by doEvent(), and doPreallocate().
|
private |
Definition at line 161 of file EDProducerBase.h.
Referenced by doEvent(), and doPreallocate().
|
private |
Definition at line 163 of file EDProducerBase.h.
Referenced by concurrencyLimit(), and queue().