Go to the documentation of this file. 1 #ifndef FWCore_Framework_limited_outputmoduleAbilityToImplementor_h
2 #define FWCore_Framework_limited_outputmoduleAbilityToImplementor_h
31 class ModuleCallingContext;
34 namespace outputmodule {
50 template <
typename T,
typename C>
74 template <
typename T,
typename C>
98 std::unique_ptr<std::shared_ptr<C>[]>
caches_;
101 template <
typename T>
109 template <
typename C>
114 template <
typename C>
virtual void globalEndLuminosityBlock(LuminosityBlockForOutput const &) const =0
~RunCacheHolder() noexcept(false) override
constexpr element_type const * get() const
virtual std::shared_ptr< C > globalBeginLuminosityBlock(LuminosityBlockForOutput const &) const =0
void preallocLumis(unsigned int iNLumis) final
LuminosityBlockCacheHolder< T, C > & operator=(LuminosityBlockCacheHolder< T, C > const &)=delete
virtual std::shared_ptr< C > globalBeginRun(RunForOutput const &) const =0
RunCacheHolder(edm::ParameterSet const &iPSet)
edm::limited::outputmodule::RunCacheHolder< edm::limited::OutputModuleBase, C > Type
void doBeginLuminosityBlock_(LuminosityBlockForOutput const &lp) final
void doBeginRun_(RunForOutput const &rp) final
C const * runCache(edm::RunIndex iID) const
std::unique_ptr< std::shared_ptr< C >[]> caches_
RunCacheHolder< T, C > & operator=(RunCacheHolder< T, C > const &)=delete
void doEndLuminosityBlock_(LuminosityBlockForOutput const &lp) final
C const * luminosityBlockCache(edm::LuminosityBlockIndex iID) const
LuminosityBlockCacheHolder(edm::ParameterSet const &iPSet)
edm::limited::outputmodule::LuminosityBlockCacheHolder< edm::limited::OutputModuleBase, C > Type
~LuminosityBlockCacheHolder() noexcept(false) override
edm::propagate_const< std::shared_ptr< C > > cache_
virtual void globalEndRun(RunForOutput const &) const =0
void doEndRun_(RunForOutput const &rp) final