ADTF
object_ptr_base< T, true, TChild >

Base class for object_ptr<> specialized for T with an ADTF_IID() defined. More...

Inheritance diagram for object_ptr_base< T, true, TChild >:
[legend]

Public Member Functions

 operator iobject_ptr< object_type > & ()
 Implicit cast operator to iobject_ptr<IObject> More...
 
 operator const iobject_ptr< object_type > & () const
 Implicit cast operator to const iobject_ptr<IObject> More...
 
- Public Member Functions inherited from object_ptr_const_conversion< T >
 __attribute__ ((noinline)) operator const iobject_ptr< const T > &() const override
 Enable implicit conversion to const value type for pointer-like behavior. More...
 
- Public Member Functions inherited from iobject_ptr< T >
virtual operator const iobject_ptr< const T > & () const =0
 Enable implicit conversion to const value type for pointer-like behavior. More...
 
- Public Member Functions inherited from iobject_ptr_base< T >
virtual T * Get () const =0
 Get raw pointer to shared object. More...
 
virtual tResult Reset (const iobject_ptr< T > &i_oOther)=0
 Reset this object_ptr<> with the content of another iobject_ptr<> More...
 
virtual T * operator-> () const =0
 Operator-> overload to treat object_ptr<> types like real pointers. More...
 

Protected Member Functions

constexpr object_ptr_base ()
 Used to test whether object_ptr<IObject> is not inherited from this base.
 
- Protected Member Functions inherited from object_ptr_const_conversion< T >
 object_ptr_const_conversion ()=default
 CTOR.
 
 ~object_ptr_const_conversion ()=default
 DTOR.
 
- Protected Member Functions inherited from iobject_ptr< T >
 ~iobject_ptr ()=default
 Destructor.
 
- Protected Member Functions inherited from iobject_ptr_base< T >
 ~iobject_ptr_base ()=default
 Destructor.
 

Private Types

typedef iobject_ptr< T >::object_type object_type
 const correct IObject type
 

Additional Inherited Members

- Public Types inherited from iobject_ptr< T >
typedef IObject object_type
 Provided for single point of const correct type access.
 
- Public Types inherited from iobject_ptr_base< T >
typedef T element_type
 Contained type to manage an object of.
 

Detailed Description

template<typename T, typename TChild>
class adtf::ucom::ant::object_ptr_base< T, true, TChild >

Base class for object_ptr<> specialized for T with an ADTF_IID() defined.

Template Parameters
TType of the shared resource to manage.

Definition at line 103 of file object_ptr.h.

Member Function Documentation

◆ operator const iobject_ptr< object_type > &()

operator const iobject_ptr< object_type > & ( ) const
inline

Implicit cast operator to const iobject_ptr<IObject>

Returns
Reference to iobject_ptr of base class IObject
Return values
iobject_ptr<IObject>if T is non-const
iobject_ptr<constIObject> if T is const

Definition at line 126 of file object_ptr.h.

◆ operator iobject_ptr< object_type > &()

operator iobject_ptr< object_type > & ( )
inline

Implicit cast operator to iobject_ptr<IObject>

Returns
Reference to iobject_ptr of base class IObject
Return values
iobject_ptr<IObject>if T is non-const
iobject_ptr<constIObject> if T is const

Definition at line 115 of file object_ptr.h.