Go to the documentation of this file. 1 #ifndef FWCore_Framework_ModuleHolder_h
2 #define FWCore_Framework_ModuleHolder_h
31 class ModuleDescription;
32 class ProductRegistry;
33 class ExceptionToActionTable;
34 class PreallocationConfiguration;
void replaceModuleFor(Worker *iWorker) const override
virtual void preallocate(PreallocationConfiguration const &)=0
ModuleHolderT(std::shared_ptr< T > iModule, Maker const *iMaker)
virtual ModuleDescription const & moduleDescription() const =0
std::shared_ptr< T > module() const
ModuleHolder(Maker const *iMaker)
void preallocate(PreallocationConfiguration const &iPrealloc) override
virtual std::unique_ptr< OutputModuleCommunicator > createOutputModuleCommunicator()=0
void setModuleDescription(ModuleDescription const &iDesc) override
std::shared_ptr< T > m_mod
~ModuleHolderT() override
virtual void setModuleDescription(ModuleDescription const &iDesc)=0
T const & get(Event const &event, InputTag const &tag) noexcept(false)
ModuleDescription const & moduleDescription() const override
virtual void replaceModuleFor(Worker *) const =0
virtual void registerProductsAndCallbacks(ProductRegistry *)=0
std::unique_ptr< OutputModuleCommunicator > createOutputModuleCommunicator() override
roAction_t actions[nactions]
std::unique_ptr< Worker > makeWorker(ExceptionToActionTable const *actions) const
void registerProductsAndCallbacks(ProductRegistry *iReg) override