ATLAS Offline Software
MyLockableDataObj.h
Go to the documentation of this file.
1 // This file's extension implies that it's C, but it's really -*- C++ -*-.
2 
3 /*
4  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
5 */
6 
7 
8 #ifndef ATHEXSTOREGATEEXAMPLE_MYLOCKABLEDATAOBJ
9 #define ATHEXSTOREGATEEXAMPLE_MYLOCKABLEDATAOBJ
10 
11 
12 #include "AthenaKernel/ILockable.h"
13 
14 
19 {
20 public:
21  MyLockableDataObj() : m_locked (false) {}
22  virtual void lock() { m_locked = true; }
23 
24  bool m_locked;
25 };
26 
27 #include "AthenaKernel/CLASS_DEF.h"
29 
30 
31 #endif // not ATHEXSTOREGATEEXAMPLE_MYLOCKABLEDATAOBJ
32 
33 
ILockable.h
Interface to allow an object to lock itself when made const in SG.
MyLockableDataObj
To test SG lock functionality.
Definition: MyLockableDataObj.h:19
MyLockableDataObj::lock
virtual void lock()
Lock this object.
Definition: MyLockableDataObj.h:22
CLASS_DEF
#define CLASS_DEF(NAME, CID, VERSION)
associate a clid and a version to a type eg
Definition: Control/AthenaKernel/AthenaKernel/CLASS_DEF.h:64
MyLockableDataObj::m_locked
bool m_locked
Definition: MyLockableDataObj.h:24
ILockable
Interface to allow an object to lock itself when made const in SG.
Definition: ILockable.h:32
CLASS_DEF.h
macros to associate a CLID to a type
MyLockableDataObj::MyLockableDataObj
MyLockableDataObj()
Definition: MyLockableDataObj.h:21