CMS 3D CMS Logo

ProxyFactoryBase.h
Go to the documentation of this file.
1 #ifndef FWCore_Framework_ProxyFactoryBase_h
2 #define FWCore_Framework_ProxyFactoryBase_h
3 // -*- C++ -*-
4 //
5 // Package: Framework
6 // Class : ProxyFactoryBase
7 //
16 //
17 // Author: Chris Jones
18 // Created: Thu Apr 7 21:50:36 CDT 2005
19 //
20 
21 // system include files
22 #include <memory>
23 #include <string>
24 
25 // user include files
27 
28 namespace edm {
29  namespace eventsetup {
30 
31  class DataProxy;
32 
34  public:
35  ProxyFactoryBase() = default;
36  ProxyFactoryBase(const ProxyFactoryBase&) = delete;
37  const ProxyFactoryBase& operator=(const ProxyFactoryBase&) = delete;
38  virtual ~ProxyFactoryBase() = default;
39 
40  virtual std::unique_ptr<DataProxy> makeProxy(unsigned int iovIndex) = 0;
41 
42  virtual DataKey makeKey(const std::string& iName) const = 0;
43  };
44  } // namespace eventsetup
45 } // namespace edm
46 #endif
virtual std::unique_ptr< DataProxy > makeProxy(unsigned int iovIndex)=0
const ProxyFactoryBase & operator=(const ProxyFactoryBase &)=delete
virtual ~ProxyFactoryBase()=default
virtual DataKey makeKey(const std::string &iName) const =0
HLT enums.