IIoComponentMgr.h
Go to the documentation of this file.
1 // IIoComponentMgr.h
3 // Header file for class IIoComponentMgr
4 // Author: S.Binet<binet@cern.ch>
6 #ifndef GAUDIKERNEL_IIOCOMPONENTMGR_H
7 #define GAUDIKERNEL_IIOCOMPONENTMGR_H 1
8 
12 // STL includes
13 #include <string>
14 
15 // GaudiKernel includes
17 #include "GaudiKernel/StatusCode.h"
18 
19 // forward declare
20 class IIoComponent;
21 
23 {
24  public:
26 
28  // Public enums:
30  public:
31  struct IoMode {
32  enum Type {
33  READ = 0,
35  RW,
37  };
38  };
39 
41  // Public methods:
43  public:
44 
51  virtual
52  StatusCode io_register (IIoComponent* iocomponent) = 0;
53 
60  virtual
61  StatusCode io_register (IIoComponent* iocomponent,
63  const std::string& fname,
64  const std::string& pfn="") = 0;
65 
66 
70  virtual
71  StatusCode io_update (IIoComponent* iocomponent,
72  const std::string& old_fname,
73  const std::string& new_fname) = 0;
74 
78  virtual
79  StatusCode io_update (IIoComponent* iocomponent,
80  const std::string& work_dir) = 0;
81 
82  // VT. new method
85  virtual
86  StatusCode io_update_all (const std::string& work_dir) = 0;
87 
90  virtual
91  bool io_hasitem (IIoComponent* iocomponent) const = 0;
92 
96  virtual
97  bool io_contains (IIoComponent* iocomponent,
98  const std::string& fname) const = 0;
99 
103  virtual
104  StatusCode io_retrieve (IIoComponent* iocomponent,
105  std::string& fname) = 0;
106 
111  virtual
112  StatusCode io_reinitialize () = 0;
113 
118  virtual
119  StatusCode io_finalize () = 0;
120 
121 };
122 
123 
124 #endif //> !GAUDIKERNEL_IIOCOMPONENTMGR_H
DeclareInterfaceID(INamedInterface, 1, 0)
InterfaceID.
STL class.
This class is used for returning status codes from appropriate routines.
Definition: StatusCode.h:26
IInterface compliant class extending IInterface with the name() method.
#define GAUDI_API
Definition: Kernel.h:107