CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
PluginFactoryManager.h
Go to the documentation of this file.
1 #ifndef FWCore_PluginManager_PluginFactoryManager_h
2 #define FWCore_PluginManager_PluginFactoryManager_h
3 // -*- C++ -*-
4 //
5 // Package: PluginManager
6 // Class : PluginFactoryManager
7 //
16 //
17 // Original Author: Chris Jones
18 // Created: Wed Apr 4 12:49:41 EDT 2007
19 //
20 
21 // system include files
22 #include <string>
23 #include <vector>
25 
26 // user include files
27 
28 // forward declarations
29 namespace edmplugin {
30  class PluginFactoryBase;
31  class DummyFriend;
33 {
34 
35  public:
36  friend class DummyFriend;
37 
39 
40  typedef std::vector<const PluginFactoryBase*>::const_iterator const_iterator;
41  // ---------- const member functions ---------------------
42  const_iterator begin() const;
43  const_iterator end() const;
44 
45  // ---------- static member functions --------------------
46  static PluginFactoryManager* get();
47 
48  // ---------- member functions ---------------------------
49  void addFactory(const PluginFactoryBase*);
51 
52  private:
54  PluginFactoryManager(const PluginFactoryManager&); // stop default
55 
56  const PluginFactoryManager& operator=(const PluginFactoryManager&); // stop default
57 
58  // ---------- member data --------------------------------
59  std::vector<const PluginFactoryBase*> factories_;
60 
61 };
62 
63 }
64 #endif
const PluginFactoryManager & operator=(const PluginFactoryManager &)
edm::signalslot::Signal< void(const PluginFactoryBase *)> newFactory_
void addFactory(const PluginFactoryBase *)
std::vector< const PluginFactoryBase * > factories_
std::vector< const PluginFactoryBase * >::const_iterator const_iterator