| The Gaudi Framework v28r2-patches (bc4ad17a)

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- File List
- File Members

IAIDATupleSvc.h
Go to the documentation of this file.
1 #ifndef GAUDIKERNEL_IAIDATUPLESVC_H
2 #define GAUDIKERNEL_IAIDATUPLESVC_H 1
3
4 //Include files:
5 #include "GaudiKernel/IDataProviderSvc.h"
6
7 //Forward declarations:
8 class DataObject;
9
10 //Added to allow use of AIDA in applications
11 //without prefix AIDA:: (as before):
12 namespace AIDA {
13 class ITuple;
14 class IAnnotation;
15 }
16
17 using AIDA::ITuple;
18 using AIDA::IAnnotation;
19
28 class GAUDI_API IAIDATupleSvc : virtual public IDataProviderSvc {
29
30 public:
32 DeclareInterfaceID(IAIDATupleSvc,3,0);
33
34 // ===================================
35 // Book a tuple in the transient store
36 // ===================================
37 virtual AIDA::ITuple* book( const std::string& fullPath,
38 const std::string& title,
39 const std::string& columns ) = 0;
40
41
42 // =======================================
43 // Register a tuple in the transient store
44 // =======================================
45 virtual StatusCode registerObject( const std::string& dirPath,
46 const std::string& objPath,
47 AIDA::ITuple* tObj ) = 0;
48
49
50 virtual StatusCode registerObject( DataObject* pParent,
51 const std::string& objPath,
52 AIDA::ITuple* tObj ) = 0;
53
54
55 // =========================================
56 // Unregister a tuple in the transient store
57 // =========================================
58 virtual StatusCode unregisterObject( AIDA::ITuple* tObj ) = 0;
59
60 virtual StatusCode unregisterObject( AIDA::ITuple* tObj,
61 const std::string& objectPath ) = 0;
62
63
64 // ====================================
65 // Retrieve a tuple from the data store
66 // ====================================
67 virtual StatusCode retrieveObject( const std::string& fullPath,
68 AIDA::ITuple*& tObj ) = 0;
69
70 virtual StatusCode retrieveObject( const std::string& parentPath,
71 const std::string& objPath,
72 AIDA::ITuple*& tObj ) = 0;
73
74 virtual StatusCode retrieveObject( DataObject* parentObj,
75 const std::string& objPath,
76 AIDA::ITuple*& tObj ) = 0;
77
78 // ==============================
79 // Find a tuple in the data store
80 // ==============================
81 virtual StatusCode findObject( const std::string& fullPath,
82 AIDA::ITuple*& tObj ) = 0;
83
84 virtual StatusCode findObject( IRegistry* pDirectory,
85 const std::string& path,
86 AIDA::ITuple*& tObj ) = 0;
87
88 virtual StatusCode findObject( const std::string& parentPath,
89 const std::string& objPath,
90 AIDA::ITuple*& tObj ) = 0;
91
92 virtual StatusCode findObject( DataObject* parentObj,
93 const std::string& objPath,
94 AIDA::ITuple*& tObj ) = 0;
95
97 virtual void setCriteria( AIDA::ITuple*& tObj,
98 const std::string& criteria ) = 0;
99
100 // ==============
101 // Helper methods
102 // ==============
103
104 //Create all directories in a given full path
105 virtual DataObject* createPath( const std::string& newPath )= 0;
106
107 //Create a sub-directory in a directory.
108 virtual DataObject* createDirectory(const std::string& parentDir,
109 const std::string& subDir) = 0;
110
111 virtual StatusCode myTest() = 0;
112 };
113
114 #endif //GAUDIKERNEL_IAIDATUPLESVC_H
GaudiPython.HistoUtils.path
path
Definition: HistoUtils.py:772
Gaudi::Histos::book
GAUDI_API AIDA::IHistogram1D * book(IHistogramSvc *svc, const std::string &path, const Gaudi::Histo1DDef &hist)
helper function to book 1D-histogram
Definition: HistoDef.cpp:124
DeclareInterfaceID
#define DeclareInterfaceID(iface, major, minor)
Macro to declare the interface ID when using the new mechanism of extending and implementing interfac...
Definition: IInterface.h:14
IDataProviderSvc
Data provider interface definition.
Definition: IDataProviderSvc.h:45
AIDA
GaudiKernel.
Definition: Fill.h:8
std::string
STL class.
IDataProviderSvc.h
StatusCode
This class is used for returning status codes from appropriate routines.
Definition: StatusCode.h:26
IRegistry
The IRegistry represents the entry door to the environment any data object residing in a transient da...
Definition: IRegistry.h:22
IAIDATupleSvc
Definition of the IAIDATupleSvc interface class.
Definition: IAIDATupleSvc.h:28
GAUDI_API
#define GAUDI_API
Definition: Kernel.h:107
DataObject
A DataObject is the base class of any identifiable object on any data store.
Definition: DataObject.h:30