ADTF  3.18.3
ILockedObjectabstract

The ILockedObject interface defines exclusive locking of an object. More...

Inheritance diagram for ILockedObject:
[legend]

Public Member Functions

 ADTF_IID (ILockedObject, "lockedobject.ant.ucom.adtf.iid")
 Marks the ILockedObject to be castable with the ucom_cast<> More...
 
virtual tResult Lock () const =0
 Locks the object for exclusive use. More...
 
virtual tResult Unlock () const =0
 Unlocks the object for exclusive use. More...
 
- Public Member Functions inherited from IObject
 ADTF_IID (IObject, "object.ant.ucom.adtf.iid")
 Marks the IObject to be castable with the ucom_cast() More...
 

Protected Member Functions

 ~ILockedObject ()=default
 Protected destructor --> Use implemented Destroy() instead of delete!
 
- Protected Member Functions inherited from IObject
 ~IObject ()=default
 Protected destructor --> Use implemented Destroy() instead of delete!
 

Detailed Description

The ILockedObject interface defines exclusive locking of an object.

Definition at line 23 of file lockedobject_intf.h.

Member Function Documentation

◆ ADTF_IID()

ADTF_IID ( ILockedObject  ,
"lockedobject.ant.ucom.adtf.iid"   
)

Marks the ILockedObject to be castable with the ucom_cast<>

See also
ADTF_IID(_interface, _striid)

◆ Lock()

virtual tResult Lock ( ) const
pure virtual

Locks the object for exclusive use.

For your own convinience use object_ptr_locked as lock guard!

Return values
ERR_NOERRORsucceeded lock. DO NOT Forget to unlock!

◆ Unlock()

virtual tResult Unlock ( ) const
pure virtual

Unlocks the object for exclusive use.

For your own convinience use object_ptr_locked as lock guard!

Return values
ERR_NOERRORsucceeded unlock.

Referenced by object_ptr_locked< T >::UnlockObject().