| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

In This Package:

IAIDATupleSvc.h

Go to the documentation of this file.
00001 // $Id: IAIDATupleSvc.h,v 1.2 2005/12/06 18:55:19 hmd Exp $
00002 #ifndef GAUDIKERNEL_IAIDATUPLESVC_H
00003 #define GAUDIKERNEL_IAIDATUPLESVC_H 1
00004 
00005 //Include files:
00006 #include "GaudiKernel/IDataProviderSvc.h"
00007 
00008 //Forward declarations:
00009 class DataObject;
00010 
00011 //Added to allow use of AIDA in applications
00012 //without prefix AIDA:: (as before):
00013 namespace AIDA {
00014         class ITuple;
00015         class IAnnotation;
00016 }
00017 
00018 using AIDA::ITuple;
00019 using AIDA::IAnnotation;
00020 
00021 
00022 //Declaration of the interface ID (interface id, major version, minor version)
00023 static const InterfaceID IID_IAIDATupleSvc(120, 2, 0);
00024 
00025 
00034 class IAIDATupleSvc : virtual public IDataProviderSvc {
00035     
00036 public:
00037 
00038         //Retrieve interface ID
00039         static const InterfaceID& interfaceID() { return IID_IAIDATupleSvc; }
00040 
00041   // ===================================
00042   // Book a tuple in the transient store
00043   // ===================================
00044   virtual AIDA::ITuple* book(   const std::string& fullPath,
00045                                     const std::string& title,
00046                                     const std::string& columns  ) = 0;
00047  
00048 
00049   // =======================================
00050   // Register a tuple in the transient store
00051   // =======================================
00052   virtual StatusCode registerObject( const std::string& dirPath,
00053                                      const std::string& objPath,
00054                                      AIDA::ITuple* tObj ) = 0;
00055     
00056 
00057   virtual StatusCode registerObject( DataObject* pParent,
00058                                      const std::string& objPath,
00059                                      AIDA::ITuple* tObj ) = 0;
00060   
00061 
00062   // =========================================
00063   // Unregister a tuple in the transient store
00064   // =========================================
00065   virtual StatusCode unregisterObject( AIDA::ITuple* tObj ) = 0;
00066   
00067   virtual StatusCode unregisterObject( AIDA::ITuple* tObj,
00068                                        const std::string& objectPath ) = 0;
00069   
00070 
00071   // ====================================
00072   // Retrieve a tuple from the data store
00073   // ====================================
00074   virtual StatusCode retrieveObject( const std::string& fullPath,
00075                                      AIDA::ITuple*& tObj ) = 0;
00076 
00077   virtual StatusCode retrieveObject( const std::string& parentPath,
00078                                      const std::string& objPath,
00079                                      AIDA::ITuple*& tObj ) = 0;
00080   
00081   virtual StatusCode retrieveObject( DataObject* parentObj,
00082                                      const std::string& objPath,
00083                                      AIDA::ITuple*& tObj ) = 0;
00084 
00085 
00086   // ==============================
00087   // Find a tuple in the data store
00088   // ==============================
00089   virtual StatusCode findObject( const std::string& fullPath,
00090                                  AIDA::ITuple*& tObj ) = 0;
00091 
00092   virtual StatusCode findObject( IRegistry* pDirectory,
00093                                  const std::string& path,
00094                                  AIDA::ITuple*& tObj ) = 0;
00095 
00096   virtual StatusCode findObject( const std::string& parentPath,
00097                                  const std::string& objPath,
00098                                  AIDA::ITuple*& tObj ) = 0;
00099 
00100   virtual StatusCode findObject( DataObject* parentObj,
00101                                  const std::string& objPath,
00102                                  AIDA::ITuple*& tObj ) = 0;
00103 
00105   virtual void setCriteria(  AIDA::ITuple*& tObj,
00106                              const std::string& criteria ) = 0;
00107 
00108 
00109   // ==============
00110   // Helper methods
00111   // ==============
00112         
00113         //Create all directories in a given full path
00114         virtual DataObject* createPath( const std::string& newPath )= 0;
00115 
00116   //Create a sub-directory in a directory.
00117         virtual DataObject* createDirectory(const std::string& parentDir,
00118                                                                                                   const std::string& subDir)    = 0;
00119 
00120   virtual StatusCode myTest() = 0;
00121 
00122   //virtual std::string storeName(AIDA::ITuple*& tObj) = 0;  
00123 };
00124 
00125 #endif //GAUDIKERNEL_IAIDATUPLESVC_H
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

Generated on Mon Apr 11 19:56:57 2011 for GaudiKernel by doxygen 1.4.7