Inherits adtf::ucom::ant::iobject_ptr< T >.
Inherited by adtf::ucom::ant::detail::object_ptr_const_delegate< T, StorageType >, and adtf::ucom::ant::detail::object_ptr_delegate< T, StorageType >.
|
|
::std::conditional_t<::std::is_same_v< std::remove_const_t< T >, IObject >, std::conditional_t<!::std::is_const_v< T > &&!::std::is_const_v< StorageType >, object_ptr_const_iobject_delegate< StorageType >, object_ptr_storage< StorageType > >, std::conditional_t<::std::is_const_v< T >||::std::is_const_v< StorageType >, ::std::conditional_t<::std::is_const_v< StorageType >, object_ptr_const_iobject_delegate< StorageType >, object_ptr_iobject_delegate< StorageType > >, object_ptr_const_delegate< const T, StorageType > > > | m_oDelegate |
| |
|
|
typedef IObject | object_type |
| | Provided for single point of const correct type access.
|
| |
|
typedef T | element_type |
| | Contained type to manage an object of.
|
| |
|
| ~iobject_ptr ()=default |
| | Destructor.
|
| |
|
| ~iobject_ptr_base ()=default |
| | Destructor.
|
| |
◆ Get()
template<typename T, typename StorageType>
|
|
inlinefinaloverridevirtual |
◆ GetObjPtrRef()
template<typename T, typename StorageType>
|
|
inlineconstexprfinaloverridevirtualnoexcept |
◆ operator->()
template<typename T, typename StorageType>
|
|
inlinefinaloverridevirtualnoexcept |
◆ Reset()
template<typename T, typename StorageType>
|
|
inlinefinaloverridevirtualnoexcept |
Reset this object_ptr<> with the content of another iobject_ptr<>
- Parameters
-
| [in] | i_oOther | Contains the shared object to reset this type with |
- Postcondition
- Reference counter increased by one. If another object is already managed, the reference count for this object gets decreased by one.
- Returns
- Standard error code.
- Return values
-
| ERR_NOERROR | Everything went fine |
| ERR_NO_INTERFACE | Managed resource owned by i_oOther does not expose interface type T. *this is reset to nullptr |
Implements adtf::ucom::ant::iobject_ptr_base< T >.
The documentation for this class was generated from the following file:
- src/libraries/ucom3/include/adtfucom3/object_ptr/object_ptr.h