| The Gaudi Framework v32r1 (f65d50dc)

IFileCatalogMgr.h
Go to the documentation of this file.
1 #ifndef GAUDIFILECATALOG_IFILECATALOGMGR_H
2 #define GAUDIFILECATALOG_IFILECATALOGMGR_H
3
4 #include "GaudiKernel/IInterface.h"
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:
28 DeclareInterfaceID( IFileCatalogMgr, 2, 0 );
29
31 typedef std::vector<IFileCatalog*> Catalogs;
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 */
Gaudi::IFileCatalogMgr::Catalogs
std::vector< IFileCatalog * > Catalogs
Public type definitions.
Definition: IFileCatalogMgr.h:31
std::string
STL class.
IInterface
Definition of the basic interface.
Definition: IInterface.h:244
Gaudi::IFileCatalog
File catalog interface.
Definition: IFileCatalog.h:26
DeclareInterfaceID
#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
std::vector< IFileCatalog * >
Gaudi::IFileCatalogMgr
File catalog manager.
Definition: IFileCatalogMgr.h:25
GAUDI_API
#define GAUDI_API
Definition: Kernel.h:71
IInterface.h
Gaudi
Header file for std:chrono::duration-based Counters.
Definition: __init__.py:1