| The Gaudi Framework v30r0 (c919700c)

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- File List
- File Members

IFileAccess.h
Go to the documentation of this file.
1 #ifndef GaudiKernel_IFileAccess_H
2 #define GaudiKernel_IFileAccess_H
3
4 // Include Files
5 #include "GaudiKernel/IInterface.h"
6 #include <istream>
7 #include <memory>
8 #include <string>
9 #include <vector>
10
18 class GAUDI_API IFileAccess : virtual public IInterface
19 {
20 public:
22 DeclareInterfaceID( IFileAccess, 3, 0 );
23
27 virtual std::unique_ptr<std::istream> open( const std::string& url ) = 0;
28
30 virtual const std::vector<std::string>& protocols() const = 0;
31 };
32
33 #endif // GaudiKernel_IFileAccess_H
std::string
STL class.
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
IInterface
Definition of the basic interface.
Definition: IInterface.h:277
std::vector< std::string >
std::unique_ptr
STL class.
IFileAccess
Abstract interface for a service or tool implementing a read access to files.
Definition: IFileAccess.h:18
GAUDI_API
#define GAUDI_API
Definition: Kernel.h:110
IInterface.h