Gaudi Framework, version v21r6

Home   Generated: 11 Nov 2009

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 
00029 class GAUDI_API IAIDATupleSvc : virtual public IDataProviderSvc {
00030 
00031 public:
00033   DeclareInterfaceID(IAIDATupleSvc,3,0);
00034 
00035   // ===================================
00036   // Book a tuple in the transient store
00037   // ===================================
00038   virtual AIDA::ITuple* book( const std::string& fullPath,
00039                               const std::string& title,
00040                               const std::string& columns ) = 0;
00041 
00042 
00043   // =======================================
00044   // Register a tuple in the transient store
00045   // =======================================
00046   virtual StatusCode registerObject( const std::string& dirPath,
00047                                      const std::string& objPath,
00048                                      AIDA::ITuple* tObj ) = 0;
00049 
00050 
00051   virtual StatusCode registerObject( DataObject* pParent,
00052                                      const std::string& objPath,
00053                                      AIDA::ITuple* tObj ) = 0;
00054 
00055 
00056   // =========================================
00057   // Unregister a tuple in the transient store
00058   // =========================================
00059   virtual StatusCode unregisterObject( AIDA::ITuple* tObj ) = 0;
00060 
00061   virtual StatusCode unregisterObject( AIDA::ITuple* tObj,
00062                                        const std::string& objectPath ) = 0;
00063 
00064 
00065   // ====================================
00066   // Retrieve a tuple from the data store
00067   // ====================================
00068   virtual StatusCode retrieveObject( const std::string& fullPath,
00069                                      AIDA::ITuple*& tObj ) = 0;
00070 
00071   virtual StatusCode retrieveObject( const std::string& parentPath,
00072                                      const std::string& objPath,
00073                                      AIDA::ITuple*& tObj ) = 0;
00074 
00075   virtual StatusCode retrieveObject( DataObject* parentObj,
00076                                      const std::string& objPath,
00077                                      AIDA::ITuple*& tObj ) = 0;
00078 
00079 
00080   // ==============================
00081   // Find a tuple in the data store
00082   // ==============================
00083   virtual StatusCode findObject( const std::string& fullPath,
00084                                  AIDA::ITuple*& tObj ) = 0;
00085 
00086   virtual StatusCode findObject( IRegistry* pDirectory,
00087                                  const std::string& path,
00088                                  AIDA::ITuple*& tObj ) = 0;
00089 
00090   virtual StatusCode findObject( const std::string& parentPath,
00091                                  const std::string& objPath,
00092                                  AIDA::ITuple*& tObj ) = 0;
00093 
00094   virtual StatusCode findObject( DataObject* parentObj,
00095                                  const std::string& objPath,
00096                                  AIDA::ITuple*& tObj ) = 0;
00097 
00099   virtual void setCriteria(  AIDA::ITuple*& tObj,
00100                              const std::string& criteria ) = 0;
00101 
00102 
00103   // ==============
00104   // Helper methods
00105   // ==============
00106 
00107         //Create all directories in a given full path
00108         virtual DataObject* createPath( const std::string& newPath )= 0;
00109 
00110   //Create a sub-directory in a directory.
00111         virtual DataObject* createDirectory(const std::string& parentDir,
00112                                                                                                   const std::string& subDir)    = 0;
00113 
00114   virtual StatusCode myTest() = 0;
00115 
00116   //virtual std::string storeName(AIDA::ITuple*& tObj) = 0;
00117 };
00118 
00119 #endif //GAUDIKERNEL_IAIDATUPLESVC_H

Generated at Wed Nov 11 16:22:59 2009 for Gaudi Framework, version v21r6 by Doxygen version 1.5.6 written by Dimitri van Heesch, © 1997-2004