Gaudi Framework, version v24r2

Home   Generated: Wed Dec 4 2013
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
NTupleSvc.h
Go to the documentation of this file.
1 // $Id: NTupleSvc.h,v 1.9 2006/11/30 14:57:04 mato Exp $
2 #ifndef GAUDI_NTUPLESVC_H
3 #define GAUDI_NTUPLESVC_H 1
4 
5 // Framework include files
8 #include "GaudiKernel/DataSvc.h"
9 
10 // STL include files
11 #include <map>
12 
13 // Forward declarations
14 template <class TYPE> class SvcFactory;
15 
27 class NTupleSvc : public extends2<DataSvc, INTupleSvc, IDataSourceMgr>
28 {
29 private:
30 protected:
31  struct Connection {
35  };
36  friend class SvcFactory<NTupleSvc>;
40 
41 private:
42 public:
44  virtual StatusCode initialize();
46  virtual StatusCode reinitialize();
48  virtual StatusCode finalize();
50  virtual IConversionSvc* getDataLoader(IRegistry* pReg);
51 
53  virtual NTuple::Directory* createDirectory (DataObject* pParent, const std::string& title);
55  virtual NTuple::Directory* createDirectory (DataObject* pParent, long id);
57  virtual NTuple::Directory* createDirectory (const std::string& dirPath, long id);
59  virtual NTuple::Directory* createDirectory (const std::string& dirPath, const std::string& title);
61  virtual NTuple::Directory* createDirectory (const std::string& fullPath);
62 
64  virtual StatusCode create(const CLID& typ, const std::string& title, NTuple::Tuple*& refpTuple);
66  virtual NTuple::Tuple* book (const std::string& fullPath, const CLID& type, const std::string& title);
68  virtual NTuple::Tuple* book (const std::string& dirPath, const std::string& relPath, const CLID& type, const std::string& title);
70  virtual NTuple::Tuple* book (const std::string& dirPath, long id, const CLID& type, const std::string& title);
72  virtual NTuple::Tuple* book (DataObject* pParent, const std::string& relPath, const CLID& type, const std::string& title);
74  virtual NTuple::Tuple* book (DataObject* pParent, long id, const CLID& type, const std::string& title);
76  virtual NTuple::Tuple* access(const std::string& fullPath, const std::string& filename);
78  virtual StatusCode save(const std::string& fullPath);
80  virtual StatusCode save(NTuple::Tuple* tuple);
82  virtual StatusCode save(DataObject* pParent, const std::string& relPath);
84  virtual StatusCode writeRecord( NTuple::Tuple* tuple );
86  virtual StatusCode writeRecord( const std::string& fullPath );
88  virtual StatusCode writeRecord( DataObject* pParent, const std::string& relPath );
90  virtual StatusCode readRecord( NTuple::Tuple* tuple );
92  virtual StatusCode readRecord( const std::string& fullPath );
94  virtual StatusCode readRecord( DataObject* pParent, const std::string& relPath);
95 
97  virtual bool isConnected(const std::string& identifier) const;
99  virtual StatusCode connect(const std::string& ident);
101  virtual StatusCode connect(const std::string& ident, std::string& logname);
103  virtual StatusCode disconnect(const std::string& nam);
105  virtual StatusCode disconnectAll();
106 
108  NTupleSvc(const std::string& name, ISvcLocator* svc);
110  virtual ~NTupleSvc();
111 protected:
112 
115  const std::string& typ,
116  const std::vector<Prop>& props,
117  IConversionSvc*& pSvc);
121  StatusCode attachTuple(const std::string& filename, const std::string& logname, const char typ, const long t);
124 
131 };
132 
133 #endif // GAUDI_NTUPLESVC_H

Generated at Wed Dec 4 2013 14:33:11 for Gaudi Framework, version v24r2 by Doxygen version 1.8.2 written by Dimitri van Heesch, © 1997-2004