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

In This Package:

IDataManagerSvc.h

Go to the documentation of this file.
00001 // $Header: /local/reps/Gaudi/GaudiKernel/GaudiKernel/IDataManagerSvc.h,v 1.6 2001/11/20 11:15:52 mato Exp $
00002 #ifndef GAUDIKERNEL_IDATAMANAGERSVC_H
00003 #define GAUDIKERNEL_IDATAMANAGERSVC_H
00004 
00005 // Include files
00006 #include <string>
00007 #include <vector>
00008 #include "GaudiKernel/ClassID.h"
00009 #include "GaudiKernel/IInterface.h"
00010 
00011 // Forward declarations
00012 // Generic interface to data object class
00013 class DataObject;
00014 // Interface to persistency service
00015 class IConversionSvc;
00016 // Data agent
00017 class IDataStoreAgent;
00018 // Opaque addresses
00019 class IOpaqueAddress;
00020 // Registry entry definition
00021 class IRegistry;
00022 
00023 
00024 // Declaration of the interface ID ( interface id, major version, minor version) 
00025 static const InterfaceID IID_IDataManagerSvc("IDataManagerSvc", 1 , 0); 
00026 
00027 
00049 class IDataManagerSvc : virtual public IInterface {
00050  public:
00052   static const InterfaceID& interfaceID() { return IID_IDataManagerSvc; }
00053 
00055   virtual CLID rootCLID() const = 0;
00056 
00058   virtual std::string rootName() const = 0;
00059 
00065   virtual StatusCode setDataLoader( IConversionSvc* svc ) = 0;
00066 
00073   virtual StatusCode objectParent( const DataObject* pObject, 
00074                                    IRegistry*& refpParent) = 0;
00075 
00082   virtual StatusCode objectParent( const IRegistry* pRegistry, 
00083                                    IRegistry*& refpParent) = 0;
00084 
00093   virtual StatusCode objectLeaves( const DataObject*  pObject, 
00094                                   std::vector<IRegistry*>& refLeaves) = 0;
00095 
00104   virtual StatusCode objectLeaves( const IRegistry*   pRegistry, 
00105                                   std::vector<IRegistry*>& refLeaves) = 0;
00106 
00111   virtual StatusCode clearSubTree ( const std::string& sub_path ) = 0;
00112 
00118   virtual StatusCode clearSubTree( DataObject* pObject ) = 0;
00119  
00123   virtual StatusCode clearStore() = 0;
00124 
00129   virtual StatusCode traverseSubTree( const std::string& sub_path,
00130                                       IDataStoreAgent* pAgent ) = 0;
00131   
00138   virtual StatusCode traverseSubTree( DataObject* pObject, 
00139                                       IDataStoreAgent* pAgent ) = 0;
00140   
00144   virtual StatusCode traverseTree( IDataStoreAgent* pAgent) = 0;
00145   
00152   virtual StatusCode setRoot( const std::string& root_name, 
00153                               DataObject* pObject ) = 0;
00154   
00161   virtual StatusCode setRoot( const std::string& root_path, 
00162                               IOpaqueAddress* pRootAddr) = 0;
00163 
00171   virtual StatusCode registerAddress( const std::string& fullPath, 
00172                                       IOpaqueAddress* pAddress) = 0;
00173 
00182   virtual StatusCode registerAddress( DataObject* parentObj, 
00183                                       const std::string& objectPath, 
00184                                       IOpaqueAddress* pAddress) = 0;
00185 
00194   virtual StatusCode registerAddress( IRegistry* parentObj, 
00195                                       const std::string& objectPath, 
00196                                       IOpaqueAddress* pAddress) = 0;
00197 
00203   virtual StatusCode unregisterAddress(const std::string& fullPath) = 0;
00204 
00212   virtual StatusCode unregisterAddress(DataObject* pParent, 
00213                                        const std::string& objPath) = 0;
00214 
00222   virtual StatusCode unregisterAddress(IRegistry* pParent, const std::string& objPath) = 0;
00223 };
00224 
00225 #endif  // GAUDIKERNEL_IDATAMANAGERSVC_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