CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Protected Member Functions
edm::eventsetup::DataProxyTemplate< RecordT, DataT > Class Template Referenceabstract

#include <DataProxyTemplate.h>

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

Public Types

typedef RecordT record_type
 
typedef DataT value_type
 

Public Member Functions

 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
 
virtual void initializeForNewIOV ()
 
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

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

Detailed Description

template<class RecordT, class DataT>
class edm::eventsetup::DataProxyTemplate< RecordT, DataT >

Definition at line 48 of file DataProxyTemplate.h.

Member Typedef Documentation

◆ record_type

template<class RecordT , class DataT >
typedef RecordT edm::eventsetup::DataProxyTemplate< RecordT, DataT >::record_type

Definition at line 51 of file DataProxyTemplate.h.

◆ value_type

template<class RecordT , class DataT >
typedef DataT edm::eventsetup::DataProxyTemplate< RecordT, DataT >::value_type

Definition at line 50 of file DataProxyTemplate.h.

Constructor & Destructor Documentation

◆ DataProxyTemplate()

template<class RecordT , class DataT >
edm::eventsetup::DataProxyTemplate< RecordT, DataT >::DataProxyTemplate ( )
inline

Definition at line 53 of file DataProxyTemplate.h.

53 {}

Member Function Documentation

◆ getImpl()

template<class RecordT , class DataT >
const void* edm::eventsetup::DataProxyTemplate< RecordT, DataT >::getImpl ( const EventSetupRecordImpl ,
const DataKey iKey,
EventSetupImpl const *   
)
inlineoverridevirtual

This is the function which does the real work of getting the data if it is not already cached. The returning 'void const*' must point to an instance of the class type corresponding to the type designated in iKey. So if iKey refers to a base class interface the pointer must be a pointer to that base class interface and not a pointer to an inheriting class instance.

Implements edm::eventsetup::DataProxy.

Definition at line 55 of file DataProxyTemplate.h.

57  {
58  assert(iRecord.key() == RecordT::keyForClass());
59  RecordT rec;
60  rec.setImpl(&iRecord, std::numeric_limits<unsigned int>::max(), nullptr, iEventSetupImpl, true);
61  return this->make(rec, iKey);
62  }

References cms::cuda::assert(), edm::eventsetup::EventSetupRecordImpl::key(), edm::eventsetup::DataProxyTemplate< RecordT, DataT >::make(), and SiStripPI::max.

◆ make()

template<class RecordT , class DataT >
virtual const DataT* edm::eventsetup::DataProxyTemplate< RecordT, DataT >::make ( const RecordT &  ,
const DataKey  
)
protectedpure virtual
cms::cuda::assert
assert(be >=bs)
SiStripPI::max
Definition: SiStripPayloadInspectorHelper.h:169
edm::eventsetup::DataProxyTemplate::make
virtual const DataT * make(const RecordT &, const DataKey &)=0