ATLAS Offline Software
Public Member Functions | List of all members
ILockable Class Referenceabstract

Interface to allow an object to lock itself when made const in SG. More...

#include <ILockable.h>

Inheritance diagram for ILockable:
Collaboration diagram for ILockable:

Public Member Functions

virtual ~ILockable ()
 Destructor. More...
 
virtual void lock ()=0
 Lock this object. More...
 

Detailed Description

Interface to allow an object to lock itself when made const in SG.

An object recorded in StoreGate can be ‘locked’ by a call to StoreGateSvc::setConst(). Normally, this just sets a flag in the DataProxy, which tells StoreGate not to allow non-const retrieves. However, sometimes the object itself should know about this; for example, when a container with an auxiliary store is locked. If an object in StoreGate derives from ILockable, then a setConst() operation will call lock() on the object.

Definition at line 31 of file ILockable.h.

Constructor & Destructor Documentation

◆ ~ILockable()

virtual ILockable::~ILockable ( )
inlinevirtual

Destructor.

Definition at line 35 of file ILockable.h.

35 {}

Member Function Documentation

◆ lock()

virtual void ILockable::lock ( )
pure virtual

Lock this object.

When an object in StoreGate is locked via StoreGateSvc::setConst, StoreGate will call this method on the object, provided the object derives from ILockable.

Implemented in SG::AuxVectorData, TileMutableDataContainer< BASE_T >, TileMutableDataContainer< TileBeamElemContainer >, xAOD::AuxContainerBase, xAOD::ShallowAuxContainer, xAOD::AuxInfoBase, xAOD::ByteStreamAuxContainer_v1, SG::ThinningDecision, and MyLockableDataObj.


The documentation for this class was generated from the following file: