CMS 3D CMS Logo

ProxyFactoryBase.h
Go to the documentation of this file.
1 #ifndef Framework_ProxyFactoryBase_h
2 #define 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 // forward declarations
29 namespace edm {
30  namespace eventsetup {
31  class DataProxy;
33 {
34 
35  public:
37  virtual ~ProxyFactoryBase() {}
38 
39  // ---------- const member functions ---------------------
40  virtual std::unique_ptr<DataProxy> makeProxy() const = 0;
41 
42  virtual DataKey makeKey(const std::string& iName) const = 0;
43  // ---------- static member functions --------------------
44 
45  // ---------- member functions ---------------------------
46 
47  private:
48  ProxyFactoryBase(const ProxyFactoryBase&) = delete; // stop default
49 
50  const ProxyFactoryBase& operator=(const ProxyFactoryBase&) = delete; // stop default
51 
52  // ---------- member data --------------------------------
53 
54 };
55 
56  }
57 }
58 
59 #endif
virtual DataKey makeKey(const std::string &iName) const =0
const ProxyFactoryBase & operator=(const ProxyFactoryBase &)=delete
HLT enums.
virtual std::unique_ptr< DataProxy > makeProxy() const =0