1 #ifndef Framework_EventSetupProvider_h
2 #define Framework_EventSetupProvider_h
28 #include "boost/shared_ptr.hpp"
38 namespace eventsetup {
73 void add(boost::shared_ptr<DataProxyProvider>);
74 void add(boost::shared_ptr<EventSetupRecordIntervalFinder>);
87 void insert(std::auto_ptr<T> iRecordProvider) {
88 std::auto_ptr<EventSetupRecordProvider>
temp(iRecordProvider.release());
90 typename T::RecordType,
105 typedef std::map<EventSetupRecordKey, boost::shared_ptr<EventSetupRecordProvider> >
Providers;
110 std::auto_ptr<std::vector<boost::shared_ptr<EventSetupRecordIntervalFinder> > >
finders_;
111 std::auto_ptr<std::vector<boost::shared_ptr<DataProxyProvider> > >
dataProviders_;
void finishConfiguration()
EventSetupProvider(const PreferredProviderInfo *iInfo=0)
std::auto_ptr< PreferredProviderInfo > preferredProviderInfo_
void resetRecordPlusDependentRecords(const EventSetupRecordKey &)
Used when we need to force a Record to reset all its proxies.
std::pair< DataType, DataLabel > DataKeyInfo
std::auto_ptr< std::vector< boost::shared_ptr< EventSetupRecordIntervalFinder > > > finders_
void forceCacheClear()
Used when testing that all code properly updates on IOV changes of all Records.
EventSetup const & eventSetupForInstance(const IOVSyncValue &)
const EventSetupProvider & operator=(const EventSetupProvider &)
bool mustFinishConfiguration_
void addRecordToEventSetup(T &iRecord)
void insert(std::auto_ptr< T > iRecordProvider)
std::auto_ptr< std::vector< boost::shared_ptr< DataProxyProvider > > > dataProviders_
void add(boost::shared_ptr< DataProxyProvider >)
void add(const T &iRecord)
virtual ~EventSetupProvider()
EventSetup const & eventSetup() const
std::map< EventSetupRecordKey, boost::shared_ptr< EventSetupRecordProvider > > Providers
Key makeKey(const IdTag &)
std::map< ComponentDescription, RecordToDataMap > PreferredProviderInfo
std::multimap< RecordName, DataKeyInfo > RecordToDataMap
std::set< ComponentDescription > proxyProviderDescriptions() const