CMS 3D CMS Logo

List of all members | Public Member Functions | Private Member Functions | Private Attributes | Friends
edm::global::impl::LuminosityBlockSummaryCacheHolder< T, C > Class Template Referenceabstract

#include <implementors.h>

Inheritance diagram for edm::global::impl::LuminosityBlockSummaryCacheHolder< T, C >:

Public Member Functions

 LuminosityBlockSummaryCacheHolder ()=default
 
 LuminosityBlockSummaryCacheHolder (LuminosityBlockSummaryCacheHolder< T, C > const &)=delete
 
LuminosityBlockSummaryCacheHolder< T, C > & operator= (LuminosityBlockSummaryCacheHolder< T, C > const &)=delete
 
 ~LuminosityBlockSummaryCacheHolder ()(false) override
 

Private Member Functions

void doBeginLuminosityBlockSummary_ (edm::LuminosityBlock const &lb, EventSetup const &c) final
 
void doEndLuminosityBlockSummary_ (LuminosityBlock const &lb, EventSetup const &c) final
 
void doStreamEndLuminosityBlockSummary_ (StreamID id, LuminosityBlock const &lb, EventSetup const &c) final
 
virtual std::shared_ptr< C > globalBeginLuminosityBlockSummary (edm::LuminosityBlock const &, edm::EventSetup const &) const =0
 
virtual void globalEndLuminosityBlockSummary (edm::LuminosityBlock const &, edm::EventSetup const &, C *) const =0
 
virtual void streamEndLuminosityBlockSummary (StreamID, edm::LuminosityBlock const &, edm::EventSetup const &, C *) const =0
 

Private Attributes

std::shared_ptr< C > cache_
 
std::mutex mutex_
 

Friends

class EndLuminosityBlockSummaryProducer< T, C >
 

Detailed Description

template<typename T, typename C>
class edm::global::impl::LuminosityBlockSummaryCacheHolder< T, C >

Definition at line 179 of file implementors.h.

Constructor & Destructor Documentation

template<typename T, typename C>
edm::global::impl::LuminosityBlockSummaryCacheHolder< T, C >::~LuminosityBlockSummaryCacheHolder ( )
inlineoverride

Definition at line 184 of file implementors.h.

184 {};

Member Function Documentation

template<typename T, typename C>
void edm::global::impl::LuminosityBlockSummaryCacheHolder< T, C >::doBeginLuminosityBlockSummary_ ( edm::LuminosityBlock const &  lb,
EventSetup const &  c 
)
inlinefinalprivate

Definition at line 189 of file implementors.h.

189  {
191  }
virtual std::shared_ptr< C > globalBeginLuminosityBlockSummary(edm::LuminosityBlock const &, edm::EventSetup const &) const =0
template<typename T, typename C>
void edm::global::impl::LuminosityBlockSummaryCacheHolder< T, C >::doEndLuminosityBlockSummary_ ( LuminosityBlock const &  lb,
EventSetup const &  c 
)
inlinefinalprivate

Definition at line 197 of file implementors.h.

197  {
199  }
virtual void globalEndLuminosityBlockSummary(edm::LuminosityBlock const &, edm::EventSetup const &, C *) const =0
template<typename T, typename C>
void edm::global::impl::LuminosityBlockSummaryCacheHolder< T, C >::doStreamEndLuminosityBlockSummary_ ( StreamID  id,
LuminosityBlock const &  lb,
EventSetup const &  c 
)
inlinefinalprivate

Definition at line 193 of file implementors.h.

193  {
194  std::lock_guard<std::mutex> guard(mutex_);
195  streamEndLuminosityBlockSummary(id, lb, c, cache_.get());
196  }
virtual void streamEndLuminosityBlockSummary(StreamID, edm::LuminosityBlock const &, edm::EventSetup const &, C *) const =0
template<typename T, typename C>
virtual std::shared_ptr<C> edm::global::impl::LuminosityBlockSummaryCacheHolder< T, C >::globalBeginLuminosityBlockSummary ( edm::LuminosityBlock const &  ,
edm::EventSetup const &   
) const
privatepure virtual
template<typename T, typename C>
virtual void edm::global::impl::LuminosityBlockSummaryCacheHolder< T, C >::globalEndLuminosityBlockSummary ( edm::LuminosityBlock const &  ,
edm::EventSetup const &  ,
C *   
) const
privatepure virtual
template<typename T, typename C>
LuminosityBlockSummaryCacheHolder<T, C>& edm::global::impl::LuminosityBlockSummaryCacheHolder< T, C >::operator= ( LuminosityBlockSummaryCacheHolder< T, C > const &  )
delete
template<typename T, typename C>
virtual void edm::global::impl::LuminosityBlockSummaryCacheHolder< T, C >::streamEndLuminosityBlockSummary ( StreamID  ,
edm::LuminosityBlock const &  ,
edm::EventSetup const &  ,
C *   
) const
privatepure virtual

Friends And Related Function Documentation

template<typename T, typename C>
friend class EndLuminosityBlockSummaryProducer< T, C >
friend

Definition at line 184 of file implementors.h.

Member Data Documentation

template<typename T, typename C>
std::shared_ptr<C> edm::global::impl::LuminosityBlockSummaryCacheHolder< T, C >::cache_
private

Definition at line 211 of file implementors.h.

template<typename T, typename C>
std::mutex edm::global::impl::LuminosityBlockSummaryCacheHolder< T, C >::mutex_
private

Definition at line 212 of file implementors.h.