CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Types | Private Member Functions | Private Attributes
edm::eventsetup::EventSetupProvider Class Reference

#include <EventSetupProvider.h>

Public Types

typedef std::pair< DataType,
DataLabel
DataKeyInfo
 
typedef std::string DataLabel
 
typedef std::string DataType
 
typedef std::map
< ComponentDescription,
RecordToDataMap
PreferredProviderInfo
 
typedef std::string RecordName
 
typedef std::multimap
< RecordName, DataKeyInfo
RecordToDataMap
 

Public Member Functions

void add (std::shared_ptr< DataProxyProvider >)
 
void add (std::shared_ptr< EventSetupRecordIntervalFinder >)
 
void addRecordToEventSetup (EventSetupRecord &iRecord)
 
void checkESProducerSharing (EventSetupProvider &precedingESProvider, std::set< ParameterSetIDHolder > &sharingCheckDone, std::map< EventSetupRecordKey, std::vector< ComponentDescription const * > > &referencedESProducers, EventSetupsController &esController)
 
void clearInitializationData ()
 
bool doRecordsMatch (EventSetupProvider &precedingESProvider, EventSetupRecordKey const &eventSetupRecordKey, std::map< EventSetupRecordKey, bool > &allComponentsMatch, EventSetupsController const &esController)
 
EventSetup const & eventSetup () const
 
EventSetup const & eventSetupForInstance (IOVSyncValue const &)
 
 EventSetupProvider (unsigned subProcessIndex=0U, PreferredProviderInfo const *iInfo=0)
 
void fillReferencedDataKeys (EventSetupRecordKey const &eventSetupRecordKey)
 
void finishConfiguration ()
 
void forceCacheClear ()
 Used when testing that all code properly updates on IOV changes of all Records. More...
 
std::set< ComponentDescriptionproxyProviderDescriptions () const
 
void replaceExisting (std::shared_ptr< DataProxyProvider >)
 
void resetRecordPlusDependentRecords (EventSetupRecordKey const &)
 Used when we need to force a Record to reset all its proxies. More...
 
void resetRecordToProxyPointers ()
 
unsigned subProcessIndex () const
 
virtual ~EventSetupProvider ()
 

Static Public Member Functions

static void logInfoWhenSharing (ParameterSet const &iConfiguration)
 

Protected Member Functions

template<typename T >
void insert (std::auto_ptr< T > iRecordProvider)
 

Private Types

typedef std::map
< EventSetupRecordKey,
std::shared_ptr
< EventSetupRecordProvider > > 
Providers
 

Private Member Functions

 EventSetupProvider (EventSetupProvider const &)
 
void insert (EventSetupRecordKey const &, std::auto_ptr< EventSetupRecordProvider >)
 
EventSetupProvider const & operator= (EventSetupProvider const &)
 

Private Attributes

std::unique_ptr< std::vector
< std::shared_ptr
< DataProxyProvider > > > 
dataProviders_
 
EventSetup eventSetup_
 
std::unique_ptr< std::vector
< std::shared_ptr
< EventSetupRecordIntervalFinder > > > 
finders_
 
std::unique_ptr
< EventSetupKnownRecordsSupplier
knownRecordsSupplier_
 
bool mustFinishConfiguration_
 
std::unique_ptr
< PreferredProviderInfo
preferredProviderInfo_
 
Providers providers_
 
std::unique_ptr< std::map
< ParameterSetIDHolder,
std::set< EventSetupRecordKey > > > 
psetIDToRecordKey_
 
std::unique_ptr< std::set
< EventSetupRecordKey > > 
recordsWithALooperProxy_
 
std::unique_ptr< std::map
< EventSetupRecordKey,
std::vector< std::shared_ptr
< EventSetupRecordIntervalFinder > > > > 
recordToFinders_
 
std::unique_ptr< std::map
< EventSetupRecordKey,
std::map< DataKey,
ComponentDescription > > > 
recordToPreferred_
 
std::unique_ptr< std::map
< EventSetupRecordKey,
std::map< DataKey,
ComponentDescription const * > > > 
referencedDataKeys_
 
unsigned subProcessIndex_
 

Detailed Description

Definition at line 50 of file EventSetupProvider.h.

Member Typedef Documentation

Definition at line 56 of file EventSetupProvider.h.

Definition at line 55 of file EventSetupProvider.h.

Definition at line 54 of file EventSetupProvider.h.

Definition at line 58 of file EventSetupProvider.h.

Definition at line 128 of file EventSetupProvider.h.

Definition at line 53 of file EventSetupProvider.h.

Definition at line 57 of file EventSetupProvider.h.

Constructor & Destructor Documentation

EventSetupProvider::EventSetupProvider ( unsigned  subProcessIndex = 0U,
PreferredProviderInfo const *  iInfo = 0 
)

Definition at line 65 of file EventSetupProvider.cc.

EventSetupProvider::~EventSetupProvider ( )
virtual

Definition at line 88 of file EventSetupProvider.cc.

edm::eventsetup::EventSetupProvider::EventSetupProvider ( EventSetupProvider const &  )
private

Member Function Documentation

void EventSetupProvider::add ( std::shared_ptr< DataProxyProvider iProvider)
void EventSetupProvider::add ( std::shared_ptr< EventSetupRecordIntervalFinder iFinder)

Definition at line 134 of file EventSetupProvider.cc.

Referenced by counter.Counter::register().

void EventSetupProvider::addRecordToEventSetup ( EventSetupRecord iRecord)

Definition at line 736 of file EventSetupProvider.cc.

void EventSetupProvider::checkESProducerSharing ( EventSetupProvider precedingESProvider,
std::set< ParameterSetIDHolder > &  sharingCheckDone,
std::map< EventSetupRecordKey, std::vector< ComponentDescription const * > > &  referencedESProducers,
EventSetupsController esController 
)

Definition at line 453 of file EventSetupProvider.cc.

void EventSetupProvider::clearInitializationData ( )

Definition at line 726 of file EventSetupProvider.cc.

bool EventSetupProvider::doRecordsMatch ( EventSetupProvider precedingESProvider,
EventSetupRecordKey const &  eventSetupRecordKey,
std::map< EventSetupRecordKey, bool > &  allComponentsMatch,
EventSetupsController const &  esController 
)

Definition at line 613 of file EventSetupProvider.cc.

EventSetup const& edm::eventsetup::EventSetupProvider::eventSetup ( ) const
inline

Definition at line 71 of file EventSetupProvider.h.

References eventSetup_.

EventSetup const & EventSetupProvider::eventSetupForInstance ( IOVSyncValue const &  iValue)

Definition at line 745 of file EventSetupProvider.cc.

void EventSetupProvider::fillReferencedDataKeys ( EventSetupRecordKey const &  eventSetupRecordKey)

Definition at line 698 of file EventSetupProvider.cc.

void EventSetupProvider::finishConfiguration ( )

Definition at line 282 of file EventSetupProvider.cc.

void EventSetupProvider::forceCacheClear ( )

Used when testing that all code properly updates on IOV changes of all Records.

Definition at line 443 of file EventSetupProvider.cc.

template<typename T >
void edm::eventsetup::EventSetupProvider::insert ( std::auto_ptr< T iRecordProvider)
inlineprotected

Definition at line 111 of file EventSetupProvider.h.

References edm::eventsetup::heterocontainer::makeKey(), and groupFilesInBlocks::temp.

111  {
112  std::auto_ptr<EventSetupRecordProvider> temp(iRecordProvider.release());
114  typename T::RecordType,
115  eventsetup::EventSetupRecordKey>(),
116  temp);
117  }
Key makeKey(const IdTag &iIdTag)
Definition: HCMethods.h:28
void insert(std::auto_ptr< T > iRecordProvider)
void EventSetupProvider::insert ( EventSetupRecordKey const &  iKey,
std::auto_ptr< EventSetupRecordProvider iProvider 
)
private

Definition at line 108 of file EventSetupProvider.cc.

void EventSetupProvider::logInfoWhenSharing ( ParameterSet const &  iConfiguration)
static

Definition at line 804 of file EventSetupProvider.cc.

EventSetupProvider const& edm::eventsetup::EventSetupProvider::operator= ( EventSetupProvider const &  )
private
std::set< ComponentDescription > EventSetupProvider::proxyProviderDescriptions ( ) const

Definition at line 778 of file EventSetupProvider.cc.

void EventSetupProvider::replaceExisting ( std::shared_ptr< DataProxyProvider dataProxyProvider)
void EventSetupProvider::resetRecordPlusDependentRecords ( EventSetupRecordKey const &  iKey)

Used when we need to force a Record to reset all its proxies.

Definition at line 423 of file EventSetupProvider.cc.

void EventSetupProvider::resetRecordToProxyPointers ( )

Definition at line 713 of file EventSetupProvider.cc.

unsigned edm::eventsetup::EventSetupProvider::subProcessIndex ( ) const
inline

Definition at line 104 of file EventSetupProvider.h.

References subProcessIndex_.

Member Data Documentation

std::unique_ptr<std::vector<std::shared_ptr<DataProxyProvider> > > edm::eventsetup::EventSetupProvider::dataProviders_
private

Definition at line 138 of file EventSetupProvider.h.

EventSetup edm::eventsetup::EventSetupProvider::eventSetup_
private

Definition at line 127 of file EventSetupProvider.h.

Referenced by eventSetup().

std::unique_ptr<std::vector<std::shared_ptr<EventSetupRecordIntervalFinder> > > edm::eventsetup::EventSetupProvider::finders_
private

Definition at line 137 of file EventSetupProvider.h.

std::unique_ptr<EventSetupKnownRecordsSupplier> edm::eventsetup::EventSetupProvider::knownRecordsSupplier_
private

Definition at line 130 of file EventSetupProvider.h.

bool edm::eventsetup::EventSetupProvider::mustFinishConfiguration_
private

Definition at line 131 of file EventSetupProvider.h.

std::unique_ptr<PreferredProviderInfo> edm::eventsetup::EventSetupProvider::preferredProviderInfo_
private

Definition at line 136 of file EventSetupProvider.h.

Providers edm::eventsetup::EventSetupProvider::providers_
private

Definition at line 129 of file EventSetupProvider.h.

std::unique_ptr<std::map<ParameterSetIDHolder, std::set<EventSetupRecordKey> > > edm::eventsetup::EventSetupProvider::psetIDToRecordKey_
private

Definition at line 141 of file EventSetupProvider.h.

std::unique_ptr<std::set<EventSetupRecordKey> > edm::eventsetup::EventSetupProvider::recordsWithALooperProxy_
private

Definition at line 143 of file EventSetupProvider.h.

std::unique_ptr<std::map<EventSetupRecordKey, std::vector<std::shared_ptr<EventSetupRecordIntervalFinder> > > > edm::eventsetup::EventSetupProvider::recordToFinders_
private

Definition at line 140 of file EventSetupProvider.h.

std::unique_ptr<std::map<EventSetupRecordKey, std::map<DataKey, ComponentDescription> > > edm::eventsetup::EventSetupProvider::recordToPreferred_
private

Definition at line 142 of file EventSetupProvider.h.

std::unique_ptr<std::map<EventSetupRecordKey, std::map<DataKey, ComponentDescription const*> > > edm::eventsetup::EventSetupProvider::referencedDataKeys_
private

Definition at line 139 of file EventSetupProvider.h.

unsigned edm::eventsetup::EventSetupProvider::subProcessIndex_
private

Definition at line 132 of file EventSetupProvider.h.

Referenced by subProcessIndex().