![]() |
|
|
Generated: 18 Jul 2008 |
00001 #ifndef GAUDIKERNEL_INTUPLESVC_H 00002 #define GAUDIKERNEL_INTUPLESVC_H 00003 00004 // Framework include files 00005 #include "GaudiKernel/IDataProviderSvc.h" 00006 #include "GaudiKernel/ClassID.h" 00007 00008 00009 // Forward declarations 00010 namespace NTuple { 00011 class Tuple; 00012 class Directory; 00013 } 00014 00015 // Declaration of the interface ID ( interface id, major version, minor version) 00016 static const InterfaceID IID_INTupleSvc(120, 1 , 0); 00017 00018 00041 class INTupleSvc : virtual public IDataProviderSvc { 00042 public: 00044 static const InterfaceID& interfaceID() { return IID_INTupleSvc; } 00046 virtual StatusCode create(const CLID& typ, const std::string& title, NTuple::Tuple*& refpTuple) = 0; 00056 virtual NTuple::Tuple* book (const std::string& fullPath, const CLID& type, const std::string& title) = 0; 00068 virtual NTuple::Tuple* book (const std::string& dirPath, const std::string& relPath, const CLID& type, const std::string& title) = 0; 00079 virtual NTuple::Tuple* book (const std::string& dirPath, long id, const CLID& type, const std::string& title) = 0; 00091 virtual NTuple::Tuple* book (DataObject* pParent, const std::string& relPath, const CLID& type, const std::string& title) = 0; 00101 virtual NTuple::Tuple* book (DataObject* pParent, long id, const CLID& type, const std::string& title) = 0; 00109 virtual NTuple::Directory* createDirectory (DataObject* pParent, const std::string& title) = 0; 00117 virtual NTuple::Directory* createDirectory (DataObject* pParent, long id) = 0; 00125 virtual NTuple::Directory* createDirectory (const std::string& dirPath, long id) = 0; 00133 virtual NTuple::Directory* createDirectory (const std::string& dirPath, const std::string& title) = 0; 00138 virtual NTuple::Directory* createDirectory (const std::string& fullPath) = 0; 00144 virtual NTuple::Tuple* access(const std::string& fullPath, const std::string& filename) = 0; 00145 00150 virtual StatusCode save(const std::string& fullPath) = 0; 00151 00156 virtual StatusCode save(NTuple::Tuple* tuple) = 0; 00157 00164 virtual StatusCode save(DataObject* pParent, const std::string& relPath) = 0; 00165 00170 virtual StatusCode writeRecord( NTuple::Tuple* tuple) = 0; 00171 00176 virtual StatusCode writeRecord(const std::string& fullPath) = 0; 00177 00184 virtual StatusCode writeRecord( DataObject* pParent, const std::string& relPath) = 0; 00185 00190 virtual StatusCode readRecord(NTuple::Tuple* tuple) = 0; 00191 00196 virtual StatusCode readRecord(const std::string& fullPath) = 0; 00197 00204 virtual StatusCode readRecord(DataObject* pParent, const std::string& relPath) = 0; 00205 00206 }; 00207 00208 #endif // INTERFACES_INTUPLESVC_H