ADTF
Loading...
Searching...
No Matches
adtf::ucom::object_ptr_locked< T > Class Template Reference

#include <lockedobject_intf.h>

Inherits adtf::ucom::ant::iobject_ptr_locked< T >, and adtf::ucom::ant::detail::object_ptr_locked_common< T >.

Public Member Functions

 object_ptr_locked ()=default
 CTOR.
 
 object_ptr_locked (object_ptr_locked &&o_oOther)=default
 
 ~object_ptr_locked ()
 DTOR.
 
object_ptr_lockedoperator= (object_ptr_locked &&o_oOther)
 
object_ptr_lockedoperator= (std::nullptr_t)
 null assignment-operator to Reset the value
 
virtual T * Get () const override
 
virtual tResult Reset (const iobject_ptr< T > &i_oOther) override
 
- Public Member Functions inherited from adtf::ucom::ant::iobject_ptr_locked< T >
virtual tResult Reset (const iobject_ptr< T > &i_oOther)=0
 
- Public Member Functions inherited from adtf::ucom::ant::detail::object_ptr_locked_common< T >
T * operator-> () const
 arrow access
 
T & operator* () const
 
 operator bool () const
 

Protected Member Functions

void UnlockObject () override
 unlock the object
 
- Protected Member Functions inherited from adtf::ucom::ant::detail::object_ptr_locked_common< T >
 object_ptr_locked_common (object_ptr_locked_common &&o_oOther)
 
tResult Reset (const iobject_ptr< T > &i_oOther)
 
void Release ()
 
void Swap (object_ptr_locked_common &i_oOther)
 
T * GetPtr () const
 

Additional Inherited Members

- Protected Attributes inherited from adtf::ucom::ant::detail::object_ptr_locked_common< T >
object_ptr< T > m_pObjectPtr
 

Detailed Description

template<typename T>
class adtf::ucom::object_ptr_locked< T >

Implementation for a exclusive lock guard.

This template can be used with any implementation for ILockedObject.

Template Parameters
TType for a ILockedObject derived interface.

Constructor & Destructor Documentation

◆ object_ptr_locked()

template<typename T>
adtf::ucom::ant::object_ptr_locked< T >::object_ptr_locked ( object_ptr_locked< T > && o_oOther)
default

move-CTOR

Parameters
o_oOther[in] ...

Member Function Documentation

◆ Get()

template<typename T>
virtual T * adtf::ucom::ant::object_ptr_locked< T >::Get ( ) const
inlineoverridevirtual

returns the value as pointer

Returns
the pointer to the value of the locked object.

Implements adtf::ucom::ant::iobject_ptr_locked< T >.

◆ operator=()

template<typename T>
object_ptr_locked & adtf::ucom::ant::object_ptr_locked< T >::operator= ( object_ptr_locked< T > && o_oOther)
inline

move-assignment-operator

Parameters
o_oOther[in] ...

◆ UnlockObject()

template<typename T>
void adtf::ucom::ant::object_ptr_locked< T >::UnlockObject ( )
inlineoverrideprotectedvirtual

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