CMS 3D CMS Logo

List of all members | Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes
DataProxy< RecordT, DataT, Initializer > Class Template Reference

#include <DataProxy.h>

Inheritance diagram for DataProxy< RecordT, DataT, Initializer >:
edm::eventsetup::DataProxyTemplate< RecordT, DataT > edm::eventsetup::DataProxy

Public Member Functions

 DataProxy (std::shared_ptr< cond::persistency::PayloadProxy< DataT >> pdata)
 
- Public Member Functions inherited from edm::eventsetup::DataProxyTemplate< RecordT, DataT >
 DataProxyTemplate ()
 
const void * getImpl (const EventSetupRecordImpl &iRecord, const DataKey &iKey, EventSetupImpl const *iEventSetupImpl) override
 
- Public Member Functions inherited from edm::eventsetup::DataProxy
bool cacheIsValid () const
 
 DataProxy ()
 
 DataProxy (DataProxy const &)=delete
 
void doGet (EventSetupRecordImpl const &, DataKey const &, bool iTransiently, ActivityRegistry const *, EventSetupImpl const *) const
 
void const * get (EventSetupRecordImpl const &, DataKey const &, bool iTransiently, ActivityRegistry const *, EventSetupImpl const *) const
 
void invalidate ()
 
DataProxy const & operator= (DataProxy const &)=delete
 
ComponentDescription const * providerDescription () const
 returns the description of the DataProxyProvider which owns this Proxy More...
 
void resetIfTransient ()
 
void setProviderDescription (ComponentDescription const *iDesc)
 
virtual ~DataProxy ()
 

Protected Member Functions

void invalidateCache () override
 
void invalidateTransientCache () override
 
const DataT * make (const RecordT &, const edm::eventsetup::DataKey &) override
 
- Protected Member Functions inherited from edm::eventsetup::DataProxy
void clearCacheIsValid ()
 
virtual void const * getImpl (EventSetupRecordImpl const &, DataKey const &iKey, EventSetupImpl const *)=0
 

Private Member Functions

void initializeForNewIOV () override
 
const DataProxyoperator= (const DataProxy &)=delete
 

Private Attributes

std::shared_ptr< cond::persistency::PayloadProxy< DataT > > m_data
 
Initializer m_initializer
 

Additional Inherited Members

- Public Types inherited from edm::eventsetup::DataProxyTemplate< RecordT, DataT >
typedef RecordT record_type
 
typedef DataT value_type
 

Detailed Description

template<class RecordT, class DataT, typename Initializer = cond::DefaultInitializer<DataT>>
class DataProxy< RecordT, DataT, Initializer >

Definition at line 26 of file DataProxy.h.

Constructor & Destructor Documentation

template<class RecordT , class DataT , typename Initializer = cond::DefaultInitializer<DataT>>
DataProxy< RecordT, DataT, Initializer >::DataProxy ( std::shared_ptr< cond::persistency::PayloadProxy< DataT >>  pdata)
inlineexplicit

Definition at line 28 of file DataProxy.h.

28 : m_data(pdata) {}
std::shared_ptr< cond::persistency::PayloadProxy< DataT > > m_data
Definition: DataProxy.h:57

Member Function Documentation

template<class RecordT , class DataT , typename Initializer = cond::DefaultInitializer<DataT>>
void DataProxy< RecordT, DataT, Initializer >::initializeForNewIOV ( )
inlineoverrideprivatevirtual

Reimplemented from edm::eventsetup::DataProxy.

Definition at line 53 of file DataProxy.h.

53 { m_data->initializeForNewIOV(); }
std::shared_ptr< cond::persistency::PayloadProxy< DataT > > m_data
Definition: DataProxy.h:57
template<class RecordT , class DataT , typename Initializer = cond::DefaultInitializer<DataT>>
void DataProxy< RecordT, DataT, Initializer >::invalidateCache ( )
inlineoverrideprotectedvirtual

indicates that the Proxy should invalidate any cached information as that information has 'expired' (i.e. we have moved to a new IOV)

Implements edm::eventsetup::DataProxy.

Definition at line 43 of file DataProxy.h.

43  {
44  // don't, preserve data for future access
45  // m_data->invalidateCache();
46  }
template<class RecordT , class DataT , typename Initializer = cond::DefaultInitializer<DataT>>
void DataProxy< RecordT, DataT, Initializer >::invalidateTransientCache ( )
inlineoverrideprotectedvirtual

indicates that the Proxy should invalidate any cached information as that information was accessed transiently and therefore is not intended to be kept over the entire IOV. Default is to call invalidateCache().

Reimplemented from edm::eventsetup::DataProxy.

Definition at line 47 of file DataProxy.h.

47 {}
template<class RecordT , class DataT , typename Initializer = cond::DefaultInitializer<DataT>>
const DataT* DataProxy< RecordT, DataT, Initializer >::make ( const RecordT &  ,
const edm::eventsetup::DataKey  
)
inlineoverrideprotectedvirtual

Implements edm::eventsetup::DataProxyTemplate< RecordT, DataT >.

Definition at line 38 of file DataProxy.h.

38  {
39  m_data->make();
40  m_initializer(const_cast<DataT&>((*m_data)()));
41  return &(*m_data)();
42  }
Initializer m_initializer
Definition: DataProxy.h:58
std::shared_ptr< cond::persistency::PayloadProxy< DataT > > m_data
Definition: DataProxy.h:57
template<class RecordT , class DataT , typename Initializer = cond::DefaultInitializer<DataT>>
const DataProxy& DataProxy< RecordT, DataT, Initializer >::operator= ( const DataProxy< RecordT, DataT, Initializer > &  )
privatedelete

Member Data Documentation

template<class RecordT , class DataT , typename Initializer = cond::DefaultInitializer<DataT>>
std::shared_ptr<cond::persistency::PayloadProxy<DataT> > DataProxy< RecordT, DataT, Initializer >::m_data
private

Definition at line 57 of file DataProxy.h.

template<class RecordT , class DataT , typename Initializer = cond::DefaultInitializer<DataT>>
Initializer DataProxy< RecordT, DataT, Initializer >::m_initializer
private

Definition at line 58 of file DataProxy.h.