| The Gaudi Framework v32r1 (f65d50dc)

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 public:
21 DeclareInterfaceID( IFileAccess, 3, 0 );
22
26 virtual std::unique_ptr<std::istream> open( const std::string& url ) = 0;
27
29 virtual const std::vector<std::string>& protocols() const = 0;
30 };
31
32 #endif // GaudiKernel_IFileAccess_H
std::string
STL class.
IInterface
Definition of the basic interface.
Definition: IInterface.h:244
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< 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:71
IInterface.h