Loading [MathJax]/extensions/tex2jax.js
The Gaudi Framework  v28r2p1 (f1a77ff4)
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
IPartitionControl.h
Go to the documentation of this file.
1 #ifndef GAUDIKERNEL_IPARTITIONCONTROL_H
2 #define GAUDIKERNEL_IPARTITIONCONTROL_H
3 
4 // Framework include files
6 
7 // C++ include files
8 #include <string>
9 
66 class GAUDI_API IPartitionControl: virtual public IInterface {
67 public:
70 
72 
83  virtual StatusCode create(const std::string& name,
84  const std::string& type) = 0;
85 
87 
99  virtual StatusCode create(const std::string& name,
100  const std::string& type,
101  IInterface*& pPartition) = 0;
102 
104 
112  virtual StatusCode drop(const std::string& name) = 0;
113 
115 
125  virtual StatusCode drop(IInterface* pPartition) = 0;
126 
128 
138  virtual StatusCode activate(const std::string& name) = 0;
139 
141 
154  virtual StatusCode activate(IInterface* pPartition) = 0;
155 
157 
164  virtual StatusCode get(const std::string& name, IInterface*& pPartition) const = 0;
165 
167 
174  virtual StatusCode activePartition(std::string& name, IInterface*& pPartition) const = 0;
175 
176  // Return codes:
177  enum { PARTITION_NOT_PRESENT = 2,
178  PARTITION_EXISTS = 4,
179  NO_ACTIVE_PARTITION = 6
180  };
181 };
182 #endif // GAUDIKERNEL_IPARTITIONCONTROL_H
#define DeclareInterfaceID(iface, major, minor)
Macro to declare the interface ID when using the new mechanism of extending and implementing interfac...
Definition: IInterface.h:14
STL class.
This class is used for returning status codes from appropriate routines.
Definition: StatusCode.h:26
Definition of the basic interface.
Definition: IInterface.h:234
Create / access partitions.
#define GAUDI_API
Definition: Kernel.h:107