1 #ifndef FWCore_Framework_ProxyArgumentFactoryTemplate_h
2 #define FWCore_Framework_ProxyArgumentFactoryTemplate_h
32 namespace eventsetup {
36 template <
class ProxyType,
class CallbackType>
47 std::unique_ptr<DataProxy>
makeProxy(
unsigned int iovIndex)
override {
59 return std::make_unique<ProxyType>(
callback_->second);
63 return DataKey(DataKey::makeTypeTag<typename ProxyType::ValueType>(), iName.c_str());
67 std::shared_ptr<std::pair<unsigned int, std::shared_ptr<CallbackType>>>
callback_;
DataKey makeKey(const std::string &iName) const override
std::shared_ptr< std::pair< unsigned int, std::shared_ptr< CallbackType > > > callback_
const ProxyArgumentFactoryTemplate & operator=(const ProxyArgumentFactoryTemplate &)=delete
std::unique_ptr< DataProxy > makeProxy(unsigned int iovIndex) override
typename ProxyType::RecordType RecordType
ProxyArgumentFactoryTemplate(std::shared_ptr< std::pair< unsigned int, std::shared_ptr< CallbackType >>> callback)