| The Gaudi Framework v32r1 (f65d50dc)

INTupleSvc.h
Go to the documentation of this file.
1 #ifndef GAUDIKERNEL_INTUPLESVC_H
2 #define GAUDIKERNEL_INTUPLESVC_H
3
4 // Framework include files
5 #include "GaudiKernel/ClassID.h"
6 #include "GaudiKernel/IDataProviderSvc.h"
7
8 // Forward declarations
9 namespace NTuple {
10 class Tuple;
11 struct Directory;
12 } // namespace NTuple
13
36 class GAUDI_API INTupleSvc : virtual public IDataProviderSvc {
37 public:
39 DeclareInterfaceID( INTupleSvc, 2, 0 );
41 virtual StatusCode create( const CLID& typ, const std::string& title, NTuple::Tuple*& refpTuple ) = 0;
51 virtual NTuple::Tuple* book( const std::string& fullPath, const CLID& type, const std::string& title ) = 0;
63 virtual NTuple::Tuple* book( const std::string& dirPath, const std::string& relPath, const CLID& type,
64 const std::string& title ) = 0;
75 virtual NTuple::Tuple* book( const std::string& dirPath, long id, const CLID& type, const std::string& title ) = 0;
87 virtual NTuple::Tuple* book( DataObject* pParent, const std::string& relPath, const CLID& type,
88 const std::string& title ) = 0;
98 virtual NTuple::Tuple* book( DataObject* pParent, long id, const CLID& type, const std::string& title ) = 0;
106 virtual NTuple::Directory* createDirectory( DataObject* pParent, const std::string& title ) = 0;
114 virtual NTuple::Directory* createDirectory( DataObject* pParent, long id ) = 0;
122 virtual NTuple::Directory* createDirectory( const std::string& dirPath, long id ) = 0;
130 virtual NTuple::Directory* createDirectory( const std::string& dirPath, const std::string& title ) = 0;
135 virtual NTuple::Directory* createDirectory( const std::string& fullPath ) = 0;
141 virtual NTuple::Tuple* access( const std::string& fullPath, const std::string& filename ) = 0;
142
147 virtual StatusCode save( const std::string& fullPath ) = 0;
148
153 virtual StatusCode save( NTuple::Tuple* tuple ) = 0;
154
161 virtual StatusCode save( DataObject* pParent, const std::string& relPath ) = 0;
162
167 virtual StatusCode writeRecord( NTuple::Tuple* tuple ) = 0;
168
173 virtual StatusCode writeRecord( const std::string& fullPath ) = 0;
174
181 virtual StatusCode writeRecord( DataObject* pParent, const std::string& relPath ) = 0;
182
187 virtual StatusCode readRecord( NTuple::Tuple* tuple ) = 0;
188
193 virtual StatusCode readRecord( const std::string& fullPath ) = 0;
194
201 virtual StatusCode readRecord( DataObject* pParent, const std::string& relPath ) = 0;
202 };
203
204 #endif // INTERFACES_INTUPLESVC_H
ClassID.h
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:87
graphanalysis.filename
string filename
Definition: graphanalysis.py:119
IDataProviderSvc
Data provider interface definition.
Definition: IDataProviderSvc.h:43
NTuple
NTuple name space.
Definition: INTupleSvc.h:9
std::string
STL class.
INTupleSvc
Definition: INTupleSvc.h:36
IDataProviderSvc.h
StatusCode
This class is used for returning status codes from appropriate routines.
Definition: StatusCode.h:50
gaudirun.type
type
Definition: gaudirun.py:142
IDataProviderSvc::DeclareInterfaceID
DeclareInterfaceID(IDataProviderSvc, 4, 0)
InterfaceID.
CLID
unsigned int CLID
Class ID definition.
Definition: ClassID.h:8
NTuple::Tuple
Abstract base class which allows the user to interact with the actual N tuple implementation.
Definition: NTuple.h:375
NTuple::Directory
Small class representing an N tuple directory in the transient store.
Definition: NTuple.h:901
GAUDI_API
#define GAUDI_API
Definition: Kernel.h:71
DataObject
A DataObject is the base class of any identifiable object on any data store.
Definition: DataObject.h:30