1 #ifndef Framework_ESProxyFactoryProducer_h
2 #define Framework_ESProxyFactoryProducer_h
57 #include "boost/shared_ptr.hpp"
65 namespace eventsetup {
71 boost::shared_ptr<ProxyFactoryBase> iFactory)
106 template<
class TFactory>
108 const std::string& iLabel = std::string()) {
109 std::auto_ptr<eventsetup::ProxyFactoryBase>
temp(iFactory.release());
111 eventsetup::EventSetupRecordKey::makeKey<typename TFactory::record_type>(),
117 std::auto_ptr<eventsetup::ProxyFactoryBase>& iFactory,
118 const std::string& iLabel= std::string() );
virtual ~ESProxyFactoryProducer()
virtual void registerProxies(const eventsetup::EventSetupRecordKey &iRecord, KeyedProxies &aProxyList)
override DataProxyProvider method
std::multimap< eventsetup::EventSetupRecordKey, eventsetup::FactoryInfo > record2Factories_
virtual void registerFactoryWithKey(const eventsetup::EventSetupRecordKey &iRecord, std::auto_ptr< eventsetup::ProxyFactoryBase > &iFactory, const std::string &iLabel=std::string())
virtual void newInterval(const eventsetup::EventSetupRecordKey &iRecordType, const ValidityInterval &iInterval)
overrides DataProxyProvider method
std::vector< std::pair< DataKey, boost::shared_ptr< DataProxy > > > KeyedProxies
const ESProxyFactoryProducer & operator=(const ESProxyFactoryProducer &)
FactoryInfo(const DataKey &iKey, boost::shared_ptr< ProxyFactoryBase > iFactory)
boost::shared_ptr< ProxyFactoryBase > factory_
void registerFactory(std::auto_ptr< TFactory > iFactory, const std::string &iLabel=std::string())