Go to the documentation of this file. 1 #ifndef FWCore_Framework_limited_implementors_h
2 #define FWCore_Framework_limited_implementors_h
43 template <
typename T,
typename C>
90 template <
typename T,
typename C>
114 template <
typename T,
typename C>
140 std::unique_ptr<std::shared_ptr<C>[]>
caches_;
143 template <
typename T,
typename C>
146 template <
typename T,
typename C>
161 std::lock_guard<std::mutex> guard(
mutex_);
176 template <
typename T,
typename C>
179 template <
typename T,
typename C>
197 std::lock_guard<std::mutex> guard(
mutex_);
217 std::unique_ptr<std::shared_ptr<C>[]>
caches_;
221 template <
typename T>
235 template <
typename T>
249 template <
typename T,
typename C>
250 class EndRunSummaryProducer :
public RunSummaryCacheHolder<T, C> {
265 template <
typename T>
278 template <
typename T>
291 template <
typename T,
typename S>
292 class EndLuminosityBlockSummaryProducer :
public LuminosityBlockSummaryCacheHolder<T, S> {
312 template <
typename T>
virtual void globalEndRun(edm::Run const &, edm::EventSetup const &) const =0
void doBeginLuminosityBlockSummary_(edm::LuminosityBlock const &lb, EventSetup const &c) final
~EndLuminosityBlockProducer() noexcept(false) override
virtual void streamBeginRun(edm::StreamID, edm::Run const &, edm::EventSetup const &) const
virtual std::unique_ptr< C > beginStream(edm::StreamID) const =0
void doEndRunProduce_(Run &rp, EventSetup const &c) final
void preallocLumisSummary(unsigned int iNLumis) final
void doEndRunSummary_(Run const &rp, EventSetup const &c) final
~RunCacheHolder() noexcept(false) override
BeginLuminosityBlockProducer(edm::ParameterSet const &iPSet)
~EndRunSummaryProducer() noexcept(false) override
virtual void globalEndLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) const =0
void doBeginRun_(Run const &rp, EventSetup const &c) final
~BeginLuminosityBlockProducer() noexcept(false) override
LuminosityBlockIndex index() const
void doEndRun_(Run const &rp, EventSetup const &c) final
BeginRunProducer & operator=(BeginRunProducer const &)=delete
EndLuminosityBlockSummaryProducer & operator=(EndLuminosityBlockSummaryProducer const &)=delete
EndRunProducer & operator=(EndRunProducer const &)=delete
virtual void streamEndRun(edm::StreamID, edm::Run const &, edm::EventSetup const &) const
LuminosityBlockCacheHolder(edm::ParameterSet const &iPSet)
virtual std::shared_ptr< C > globalBeginRun(edm::Run const &, edm::EventSetup const &) const =0
void doEndStream_(StreamID id) final
EndRunSummaryProducer(edm::ParameterSet const &iPSet)
unsigned int value() const
BeginLuminosityBlockProducer & operator=(BeginLuminosityBlockProducer const &)=delete
virtual void globalEndLuminosityBlockSummary(edm::LuminosityBlock const &, edm::EventSetup const &, C *) const =0
void doEndLuminosityBlockProduce_(LuminosityBlock &lb, EventSetup const &c) final
RunCacheHolder(edm::ParameterSet const &iPSet)
edm::propagate_const< std::shared_ptr< C > > cache_
virtual void streamEndRunSummary(StreamID, edm::Run const &, edm::EventSetup const &, C *) const =0
std::unique_ptr< std::shared_ptr< C >[]> caches_
void doStreamBeginLuminosityBlock_(StreamID id, LuminosityBlock const &lbp, EventSetup const &c) final
void doEndLuminosityBlockSummary_(LuminosityBlock const &lb, EventSetup const &c) final
LuminosityBlockSummaryCacheHolder(edm::ParameterSet const &iPSet)
element_type const * get() const
C const * runCache(edm::RunIndex iID) const
void preallocStreams(unsigned int iNStreams) final
virtual std::shared_ptr< C > globalBeginLuminosityBlock(edm::LuminosityBlock const &, edm::EventSetup const &) const =0
virtual void globalBeginLuminosityBlockProduce(edm::LuminosityBlock &, edm::EventSetup const &) const =0
~LuminosityBlockCacheHolder() noexcept(false) override
void doBeginLuminosityBlockProduce_(LuminosityBlock &lb, EventSetup const &c) final
void doBeginLuminosityBlock_(LuminosityBlock const &lp, EventSetup const &c) final
virtual void accumulate(StreamID streamID, Event const &ev, EventSetup const &es) const =0
~Accumulator() noexcept(false) override
C const * luminosityBlockCache(edm::LuminosityBlockIndex iID) const
~EndRunProducer() noexcept(false) override
void doEndLuminosityBlock_(LuminosityBlock const &lp, EventSetup const &c) final
RunSummaryCacheHolder< T, C > & operator=(RunSummaryCacheHolder< T, C > const &)=delete
void doEndRunProduce_(Run &rp, EventSetup const &c) final
RunSummaryCacheHolder(edm::ParameterSet const &iPSet)
virtual void globalEndRunSummary(edm::Run const &, edm::EventSetup const &, C *) const =0
void doStreamEndLuminosityBlock_(StreamID id, LuminosityBlock const &lbp, EventSetup const &c) final
static boost::mutex mutex
std::shared_ptr< C > cache_
C * streamCache(edm::StreamID iID) const
Accumulator(edm::ParameterSet const &iPSet)
Accumulator & operator=(Accumulator const &)=delete
EndRunSummaryProducer & operator=(EndRunSummaryProducer const &)=delete
EmptyType(edm::ParameterSet const &)
void doStreamEndLuminosityBlockSummary_(StreamID id, LuminosityBlock const &lb, EventSetup const &c) final
virtual std::shared_ptr< C > globalBeginRunSummary(edm::Run const &, edm::EventSetup const &) const =0
void doStreamEndRunSummary_(StreamID id, Run const &rp, EventSetup const &c) final
void maybeClearCache(LuminosityBlock const &) final
virtual void globalEndRunProduce(edm::Run &, edm::EventSetup const &) const =0
virtual void streamEndLuminosityBlockSummary(StreamID, edm::LuminosityBlock const &, edm::EventSetup const &, C *) const =0
~EndLuminosityBlockSummaryProducer() noexcept(false) override
void produce(StreamID streamID, Event &ev, EventSetup const &es) const final
T const & get(Event const &event, InputTag const &tag) noexcept(false)
LuminosityBlockSummaryCacheHolder< T, C > & operator=(LuminosityBlockSummaryCacheHolder< T, C > const &)=delete
virtual void globalEndLuminosityBlockProduce(edm::LuminosityBlock &, edm::EventSetup const &) const =0
StreamCacheHolder(edm::ParameterSet const &iPSet)
std::vector< C * > caches_
void doStreamBeginRun_(StreamID id, Run const &rp, EventSetup const &c) final
~BeginRunProducer() noexcept(false) override
void doBeginRunProduce_(Run &rp, EventSetup const &c) final
void doEndLuminosityBlockProduce_(LuminosityBlock &lb, EventSetup const &c) final
virtual std::shared_ptr< C > globalBeginLuminosityBlockSummary(edm::LuminosityBlock const &, edm::EventSetup const &) const =0
EndLuminosityBlockProducer & operator=(EndLuminosityBlockProducer const &)=delete
virtual void streamEndLuminosityBlock(edm::StreamID, edm::LuminosityBlock const &, edm::EventSetup const &) const
EndLuminosityBlockSummaryProducer(edm::ParameterSet const &iPSet)
EndRunProducer(edm::ParameterSet const &iPSet)
virtual void globalEndLuminosityBlockProduce(edm::LuminosityBlock &, edm::EventSetup const &, S const *) const =0
~StreamCacheHolder() override
~RunSummaryCacheHolder() noexcept(false) override
virtual void streamBeginLuminosityBlock(edm::StreamID, edm::LuminosityBlock const &, edm::EventSetup const &) const
void doBeginStream_(StreamID id) final
virtual void maybeClearCache(LuminosityBlock const &lb)
virtual void globalBeginRunProduce(edm::Run &, edm::EventSetup const &) const =0
StreamCacheHolder< T, C > & operator=(StreamCacheHolder< T, C > const &)=delete
std::unique_ptr< std::shared_ptr< C >[]> caches_
void doBeginRunSummary_(edm::Run const &rp, EventSetup const &c) final
void preallocLumis(unsigned int iNLumis) final
~LuminosityBlockSummaryCacheHolder() noexcept(false) override
RunCacheHolder< T, C > & operator=(RunCacheHolder< T, C > const &)=delete
LuminosityBlockCacheHolder< T, C > & operator=(LuminosityBlockCacheHolder< T, C > const &)=delete
virtual void globalEndRunProduce(edm::Run &, edm::EventSetup const &, C const *) const =0
virtual void endStream(edm::StreamID) const
EndLuminosityBlockProducer(edm::ParameterSet const &iPSet)
BeginRunProducer(edm::ParameterSet const &iPSet)
void doStreamEndRun_(StreamID id, Run const &rp, EventSetup const &c) final
bool hasAccumulator() const override