CMS 3D CMS Logo

List of all members | Public Member Functions | Private Member Functions | Friends
edm::stream::EDProducerAdaptorBase Class Reference

#include "FWCore/Framework/interface/stream/EDProducerAdaptorBase.h"

Inheritance diagram for edm::stream::EDProducerAdaptorBase:
edm::stream::ProducingModuleAdaptorBase< EDProducerBase >

Public Member Functions

 EDProducerAdaptorBase ()
 
std::string workerType () const
 
- Public Member Functions inherited from edm::stream::ProducingModuleAdaptorBase< EDProducerBase >
std::vector< ConsumesInfoconsumesInfo () const
 
void convertCurrentProcessAlias (std::string const &processName)
 
virtual bool hasAccumulator () const =0
 
virtual bool hasAcquire () const =0
 
std::vector< edm::ProductResolverIndex > const & indiciesForPutProducts (BranchType iBranchType) const
 
void itemsMayGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
void itemsToGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
std::vector< ProductResolverIndexAndSkipBit > const & itemsToGetFrom (BranchType) const
 
const ModuleDescriptionmoduleDescription () const
 
void modulesWhoseProductsAreConsumed (std::vector< ModuleDescription const * > &modules, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const
 
 ProducingModuleAdaptorBase ()
 
void registerProductsAndCallbacks (ProducingModuleAdaptorBase const *, ProductRegistry *reg)
 
void resolvePutIndicies (BranchType iBranchType, ModuleToResolverIndicies const &iIndicies, std::string const &moduleLabel)
 
void updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet)
 
void updateLookup (eventsetup::ESRecordsToProxyIndices const &)
 
virtual bool wantsGlobalLuminosityBlocks () const =0
 
virtual bool wantsGlobalRuns () const =0
 
bool wantsStreamLuminosityBlocks () const
 
bool wantsStreamRuns () const
 
virtual ~ProducingModuleAdaptorBase ()
 

Private Member Functions

void doAcquire (EventPrincipal const &, EventSetupImpl const &, ActivityRegistry *, ModuleCallingContext const *, WaitingTaskWithArenaHolder &)
 
bool doEvent (EventPrincipal const &, EventSetupImpl const &, ActivityRegistry *, ModuleCallingContext const *)
 
 EDProducerAdaptorBase (const EDProducerAdaptorBase &)=delete
 
const EDProducerAdaptorBaseoperator= (const EDProducerAdaptorBase &)=delete
 
void preActionBeforeRunEventAsync (WaitingTask *iTask, ModuleCallingContext const &iModuleCallingContext, Principal const &iPrincipal) const
 

Friends

template<typename T >
class edm::maker::ModuleHolderT
 
template<typename T >
class edm::WorkerT
 

Additional Inherited Members

- Public Types inherited from edm::stream::ProducingModuleAdaptorBase< EDProducerBase >
using ModuleToResolverIndicies = std::unordered_multimap< std::string, std::tuple< edm::TypeID const *, const char *, edm::ProductResolverIndex >>
 
- Protected Member Functions inherited from edm::stream::ProducingModuleAdaptorBase< EDProducerBase >
void commit (Run &iRun)
 
void commit (LuminosityBlock &iLumi)
 
void commit (Event &iEvent, I *iID)
 
const EDConsumerBaseconsumer ()
 
void createStreamModules (F iFunc)
 
const ProducerBaseproducer ()
 
- Protected Attributes inherited from edm::stream::ProducingModuleAdaptorBase< EDProducerBase >
std::vector< EDProducerBase * > m_streamModules
 

Detailed Description

Description: [one line class summary]

Usage: <usage>

Definition at line 48 of file EDProducerAdaptorBase.h.

Constructor & Destructor Documentation

edm::stream::EDProducerAdaptorBase::EDProducerAdaptorBase ( )

Definition at line 44 of file EDProducerAdaptorBase.cc.

44 {}
edm::stream::EDProducerAdaptorBase::EDProducerAdaptorBase ( const EDProducerAdaptorBase )
privatedelete

Member Function Documentation

void edm::stream::EDProducerAdaptorBase::doAcquire ( EventPrincipal const &  ep,
EventSetupImpl const &  ci,
ActivityRegistry act,
ModuleCallingContext const *  mcc,
WaitingTaskWithArenaHolder holder 
)
private

Definition at line 62 of file EDProducerAdaptorBase.cc.

References EnergyCorrector::c, MillePedeFileConverter_cfg::e, edm::Event, mod(), edm::Event::setConsumer(), edm::Event::setProducerForAcquire(), and edm::EventPrincipal::streamID().

66  {
67  assert(ep.streamID() < m_streamModules.size());
68  auto mod = m_streamModules[ep.streamID()];
69  Event e(ep, moduleDescription(), mcc);
70  e.setConsumer(mod);
71  e.setProducerForAcquire(mod, nullptr, mod->gotBranchIDsFromAcquire_);
72  EventAcquireSignalsSentry sentry(act, mcc);
73  const EventSetup c{ci, static_cast<unsigned int>(Transition::Event), mod->esGetTokenIndices(Transition::Event)};
74  mod->doAcquire_(e, c, holder);
75  }
T mod(const T &a, const T &b)
Definition: ecalDccMap.h:4
bool edm::stream::EDProducerAdaptorBase::doEvent ( EventPrincipal const &  ep,
EventSetupImpl const &  ci,
ActivityRegistry act,
ModuleCallingContext const *  mcc 
)
private

Definition at line 46 of file EDProducerAdaptorBase.cc.

References EnergyCorrector::c, MillePedeFileConverter_cfg::e, edm::Event, mod(), edm::Event::setConsumer(), edm::Event::setProducer(), and edm::EventPrincipal::streamID().

49  {
50  assert(ep.streamID() < m_streamModules.size());
51  auto mod = m_streamModules[ep.streamID()];
52  Event e(ep, moduleDescription(), mcc);
53  e.setConsumer(mod);
54  e.setProducer(mod, &mod->previousParentage_, &mod->gotBranchIDsFromAcquire_);
55  EventSignalsSentry sentry(act, mcc);
56  const EventSetup c{ci, static_cast<unsigned int>(Transition::Event), mod->esGetTokenIndices(Transition::Event)};
57  mod->produce(e, c);
58  commit(e, &mod->previousParentageId_);
59  return true;
60  }
T mod(const T &a, const T &b)
Definition: ecalDccMap.h:4
const EDProducerAdaptorBase& edm::stream::EDProducerAdaptorBase::operator= ( const EDProducerAdaptorBase )
privatedelete
void edm::stream::EDProducerAdaptorBase::preActionBeforeRunEventAsync ( WaitingTask iTask,
ModuleCallingContext const &  iModuleCallingContext,
Principal const &  iPrincipal 
) const
inlineprivate

Definition at line 82 of file EDProducerAdaptorBase.h.

84  {}
std::string edm::stream::EDProducerAdaptorBase::workerType ( ) const
inline

Definition at line 63 of file EDProducerAdaptorBase.h.

References edm::Worker::operator=().

63 { return "WorkerT<EDProducerAdaptorBase>"; }

Friends And Related Function Documentation

template<typename T >
friend class edm::maker::ModuleHolderT
friend

Definition at line 51 of file EDProducerAdaptorBase.h.

template<typename T >
friend class edm::WorkerT
friend

Definition at line 53 of file EDProducerAdaptorBase.h.