Loading [MathJax]/extensions/tex2jax.js
The Gaudi Framework  v31r0 (aeb156f0)
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
IFileCatalogMgr.h
Go to the documentation of this file.
1 #ifndef GAUDIFILECATALOG_IFILECATALOGMGR_H
2 #define GAUDIFILECATALOG_IFILECATALOGMGR_H
3 
5 #include <string>
6 #include <vector>
7 
8 /*
9  * Gaudi namespace declaration
10  */
11 namespace Gaudi {
12 
13  // Forward declarations
14  class IFileCatalog;
15 
25  class GAUDI_API IFileCatalogMgr : virtual public IInterface {
26  public:
29 
32 
34  virtual IFileCatalog* findCatalog( const std::string& connect, bool must_be_writable ) const = 0;
37  virtual void addCatalog( const std::string& connect ) = 0;
39  virtual void addCatalog( IFileCatalog* cat ) = 0;
41  virtual void removeCatalog( const std::string& connect ) = 0;
43  virtual void removeCatalog( const IFileCatalog* cat ) = 0;
45  virtual Catalogs& catalogs() = 0;
47  virtual const Catalogs& catalogs() const = 0;
49  virtual IFileCatalog* writeCatalog( const std::string& fid = "" ) const = 0;
51  virtual void setWriteCatalog( IFileCatalog* cat ) = 0;
53  virtual void setWriteCatalog( const std::string& connect ) = 0;
54  };
55 } /* End namespace Gaudi */
56 #endif /* GAUDIFILECATALOG_IFILECATALOGMGR_H */
std::vector< IFileCatalog * > Catalogs
Public type definitions.
STL class.
#define DeclareInterfaceID(iface, major, minor)
Macro to declare the interface ID when using the new mechanism of extending and implementing interfac...
Definition: IInterface.h:13
Definition of the basic interface.
Definition: IInterface.h:244
File catalog interface.
Definition: IFileCatalog.h:26
File catalog manager.
#define GAUDI_API
Definition: Kernel.h:71
Helper functions to set/get the application return code.
Definition: __init__.py:1