CMS 3D CMS Logo

Public Types | Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes

DataProxy< RecordT, DataT > Class Template Reference

#include <FWCore/Framework/interface/DataProxy.h>

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

List of all members.

Public Types

typedef boost::shared_ptr
< cond::PayloadProxy< DataT > > 
DataP
typedef DataProxy< RecordT, DataT > self

Public Member Functions

 DataProxy (boost::shared_ptr< cond::PayloadProxy< DataT > > pdata)

Protected Member Functions

virtual void invalidateCache ()
virtual void invalidateTransientCache ()
virtual const DataT * make (const RecordT &, const edm::eventsetup::DataKey &)

Private Member Functions

const DataProxyoperator= (const DataProxy &)

Private Attributes

boost::shared_ptr
< cond::PayloadProxy< DataT > > 
m_data

Detailed Description

template<class RecordT, class DataT>
class DataProxy< RecordT, DataT >

Description: Base class for data Proxies held by a EventSetupRecord

Usage: This class defines the interface used to handle retrieving data from an EventSetup Record.

Definition at line 14 of file DataProxy.h.


Member Typedef Documentation

template<class RecordT , class DataT >
typedef boost::shared_ptr<cond::PayloadProxy<DataT> > DataProxy< RecordT, DataT >::DataP

Definition at line 17 of file DataProxy.h.

template<class RecordT , class DataT >
typedef DataProxy<RecordT,DataT> DataProxy< RecordT, DataT >::self

Definition at line 16 of file DataProxy.h.


Constructor & Destructor Documentation

template<class RecordT , class DataT >
DataProxy< RecordT, DataT >::DataProxy ( boost::shared_ptr< cond::PayloadProxy< DataT > >  pdata) [inline, explicit]

Definition at line 19 of file DataProxy.h.

                                                                      : m_data(pdata) { 
 
  }

Member Function Documentation

template<class RecordT , class DataT >
virtual void DataProxy< RecordT, DataT >::invalidateCache ( ) [inline, protected, virtual]

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 35 of file DataProxy.h.

                                 {
    // don't, preserve data for future access
    // m_data->invalidateCache();
  }
template<class RecordT , class DataT >
virtual void DataProxy< RecordT, DataT >::invalidateTransientCache ( ) [inline, protected, virtual]

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 39 of file DataProxy.h.

References DataProxy< RecordT, DataT >::m_data.

                                          {
    m_data->invalidateCache();
  }
template<class RecordT , class DataT >
virtual const DataT* DataProxy< RecordT, DataT >::make ( const RecordT &  ,
const edm::eventsetup::DataKey  
) [inline, protected, virtual]

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

Definition at line 31 of file DataProxy.h.

References DataProxy< RecordT, DataT >::m_data.

                                                                         {
    m_data->make();
    return &(*m_data)();
  }
template<class RecordT , class DataT >
const DataProxy& DataProxy< RecordT, DataT >::operator= ( const DataProxy< RecordT, DataT > &  ) [private]

Member Data Documentation

template<class RecordT , class DataT >
boost::shared_ptr<cond::PayloadProxy<DataT> > DataProxy< RecordT, DataT >::m_data [private]