1 #ifndef GAUDIFILECATALOG_IFILECATALOG_H 2 #define GAUDIFILECATALOG_IFILECATALOG_H 34 using Factory = Gaudi::PluginService::Factory<IInterface*( const std::string&, IMessageSvc* )>;
48 virtual void init() = 0;
50 virtual void commit() = 0;
52 virtual void rollback() = 0;
54 virtual bool readOnly()
const = 0;
56 virtual bool dirty()
const = 0;
58 virtual void getPFN(
const std::string& fid, Files& files )
const = 0;
60 virtual void getLFN(
const std::string& fid, Files& files )
const = 0;
62 virtual void getFID( Strings& fids )
const = 0;
64 virtual bool existsPFN(
const std::string& pfn )
const = 0;
68 virtual bool existsLFN(
const std::string& lfn )
const = 0;
72 virtual bool existsFID(
const std::string& fid )
const = 0;
74 virtual void deleteFID(
const std::string& FileID )
const = 0;
80 virtual void registerFID(
const std::string& fid )
const = 0;
84 virtual void deletePFN(
const std::string& pfn )
const = 0;
92 virtual void dropMetaData(
const std::string& fid )
const = 0;
std::pair< std::string, std::string > NamedItem
Public type definitions.
std::vector< NamedItem > Files
std::vector< std::string > Strings
std::vector< NamedItem > Attributes
#define DeclareInterfaceID(iface, major, minor)
Macro to declare the interface ID when using the new mechanism of extending and implementing interfac...
Definition of the basic interface.
The IMessage is the interface implemented by the message service.
Gaudi::PluginService::Factory< IInterface *(const std::string &, IMessageSvc *)> Factory
Helper functions to set/get the application return code.