All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
DataHandle.h
Go to the documentation of this file.
1 #ifndef GAUDIKERNEL_DATAHANDLE
2 #define GAUDIKERNEL_DATAHANDLE 1
3 
5 
6 //---------------------------------------------------------------------------
7 
21 //---------------------------------------------------------------------------
22 
23 class IDataHandleHolder;
24 
25 namespace Gaudi {
26 
27 class DataHandle {
28 public:
29 
30  enum Mode {
31  Reader = 1<<2,
32  Writer = 1<<4,
34  };
35 
36 
37  DataHandle() : m_key("NONE"), m_owner(0), m_mode(Reader) {};
40  m_key(k), m_owner(owner), m_mode(a){};
41 
42  virtual ~DataHandle(){}
43 
44  virtual void setOwner(IDataHandleHolder* o) { m_owner = o; }
45  virtual IDataHandleHolder* owner() const { return m_owner; }
46 
47  virtual Mode mode() const { return m_mode; }
48 
49  virtual void setKey(const DataObjID& key) { m_key = key; }
50  virtual void updateKey(const std::string& key) { m_key.updateKey(key); }
51 
52  virtual const std::string& objKey() const { return m_key.key(); }
53  virtual const DataObjID& fullKey() const { return m_key; }
54 
55  virtual void reset(bool) {};
56  virtual StatusCode commit() { return StatusCode::SUCCESS; }
57 
58  virtual const std::string pythonRepr() const;
59 
60 protected:
61  virtual void setMode(const Mode& mode) { m_mode = mode; }
62 
65 
66 private:
68 
69 };
70 
71 }
72 
73 #endif
virtual void setKey(const DataObjID &key)
Definition: DataHandle.h:49
virtual void reset(bool)
Definition: DataHandle.h:55
virtual void setOwner(IDataHandleHolder *o)
Definition: DataHandle.h:44
virtual const std::string & objKey() const
Definition: DataHandle.h:52
virtual Mode mode() const
Definition: DataHandle.h:47
void updateKey(const std::string &key)
Definition: DataObjID.h:109
virtual ~DataHandle()
Definition: DataHandle.h:42
STL class.
virtual const DataObjID & fullKey() const
Definition: DataHandle.h:53
DataObjID m_key
Definition: DataHandle.h:63
DataHandle(const DataObjID &k, Mode a=Reader, IDataHandleHolder *owner=0)
Definition: DataHandle.h:38
This class is used for returning status codes from appropriate routines.
Definition: StatusCode.h:26
const std::string & key() const
Definition: DataObjID.h:49
IDataHandleHolder * m_owner
Definition: DataHandle.h:64
virtual void updateKey(const std::string &key)
Definition: DataHandle.h:50
virtual void setMode(const Mode &mode)
Definition: DataHandle.h:61
virtual StatusCode commit()
Definition: DataHandle.h:56
virtual const std::string pythonRepr() const
Definition: DataHandle.cpp:10
Helper functions to set/get the application return code.
Definition: __init__.py:1
virtual IDataHandleHolder * owner() const
Definition: DataHandle.h:45