Gaudi Framework, version v23r5

Home   Generated: Wed Nov 28 2012
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
IoComponentMgr.h
Go to the documentation of this file.
1 
2 // IoComponentMgr.h
3 // Header file for class IoComponentMgr
4 // Author: S.Binet<binet@cern.ch>
6 #ifndef GAUDIMP_IOCOMPONENTMGR_H
7 #define GAUDIMP_IOCOMPONENTMGR_H 1
8 
9 // Python includes
10 #include <Python.h>
11 
12 // STL includes
13 #include <string>
14 #include <map>
15 #include <list>
16 
17 // FrameWork includes
18 #include "GaudiKernel/Service.h"
19 
20 // GaudiKernel
23 
24 // Forward declaration
25 class ISvcLocator;
26 template <class TYPE> class SvcFactory;
27 
28 
29 class IoComponentMgr: public extends1<Service, IIoComponentMgr> {
30 
31  friend class SvcFactory<IoComponentMgr>;
32 
34  // Public methods:
36  public:
37 
38  // Copy constructor:
39 
41  IoComponentMgr( const std::string& name, ISvcLocator* pSvcLocator );
42 
44  virtual ~IoComponentMgr();
45 
46  // Assignment operator:
47  //IoComponentMgr &operator=(const IoComponentMgr &alg);
48 
50 
51  virtual StatusCode initialize();
52  virtual StatusCode finalize();
53 
55 
57  // Const methods:
59 
62  virtual
63  bool io_hasitem (IIoComponent* iocomponent) const;
64 
68  virtual
69  bool io_contains (IIoComponent* iocomponent,
70  const std::string& fname) const;
71 
73  // Non-const methods:
75 
82  virtual
83  StatusCode io_register (IIoComponent* iocomponent);
84 
91  virtual
92  StatusCode io_register (IIoComponent* iocomponent,
94  const std::string& fname);
95 
99  virtual
100  StatusCode io_retrieve (IIoComponent* iocomponent,
101  std::string& fname);
102 
107  virtual
109 
114  virtual
116 
118  // Private data:
120  private:
121 
123  IoComponentMgr();
124 
125  mutable MsgStream m_log;
126 
130 
134 
138  PyObject *m_dict;
139 
142 
143 };
144 
145 
146 #endif //> !GAUDIMP_IOCOMPONENTMGR_H

Generated at Wed Nov 28 2012 12:17:16 for Gaudi Framework, version v23r5 by Doxygen version 1.8.2 written by Dimitri van Heesch, © 1997-2004