ADTF  3.13.2
adtf::ucom::ant Namespace Reference

Namespace for all functionality provided since v3.0. More...

Namespaces

 detail
 Namespace for all internally used uCOM functionality implemented.
 

Classes

class  cClassInfo
 The Helper Storage Class for a IClassInfo. More...
 
class  cEventSource
 The class cEventSource provides a basic implementation of IEventSource and wraps code to manage lists of pointers to IEventSink interfaces. More...
 
class  class_factory
 The class class_factory provides a template based implementation of the IClassFactory interface, that can create exactly one kind of object for the class. More...
 
class  cLockedObject
 The IStream interface provides defines methods for streaming data. More...
 
class  cPlugin
 
class  cPluginInfo
 Plugin Info default interface implementation. More...
 
class  cPooledClassFactory
 
class  cService
 
class  cServiceLevelmachine
 
class  cSharedLockedObject
 The IStream interface provides defines methods for streaming data. More...
 
class  cStream
 The cStream Class provides a basic, simple implementation for IStream interface. More...
 
struct  default_object
 Declares the class to use when implementing IObject::GetInterface using inheritance. More...
 
class  default_object< inherit_from< Parents... >, expose_interfaces< Interfaces... >, Child >
 Used to implement IObject::GetInterface() methods with given interfaces to expose. More...
 
class  enable_object_ptr_from_this
 Safely retrieve a valid object_ptr<> instance to *this when all we have is *this. More...
 
struct  expose_interfaces
 Meta struct template evaluated at compile time when compiling default_object. More...
 
class  extend_object
 Used to implement IObject::GetInterface() methods with given interfaces to expose. More...
 
struct  forward_iterator
 POD forward iterator type using a forward iterator interface to iterate over a sequence. More...
 
class  IBidirectionalIterator
 Bidirectional iterator interface details Additionally providing method Previous() for POD bidirectional iterators. More...
 
class  IClassFactory
 The IClassFactory interface provides methods for creating new class instances. More...
 
class  IClassInfo
 @ brief The IClassInfo interface provides a standardized way to access type information. More...
 
class  IDevice
 The IDevice interface wraps I/O devices. More...
 
class  IEventSink
 The class IEventSink provides a generic event listener interface for Internal Events. More...
 
class  IEventSource
 The class IEventSource provides a generic event provider interface. More...
 
class  IForwardIterator
 Forward iterator interface providing method Next() usable by POD forward iterators. More...
 
class  IInputStream
 An interface for reading data from a stream. More...
 
class  ILockedObject
 The ILockedObject interface defines exclusive locking of an object. More...
 
class  ILogger
 Interface for a logger. More...
 
struct  inherit_from
 Meta struct template evaluated at compile time when compiling default_object. More...
 
class  interface_expose
 Meta template struct used to expose all interfaces. More...
 
class  IObject
 Base class for every interface type within the uCOM. More...
 
class  iobject_enum
 Interface definition for a container of objects. More...
 
class  iobject_ptr
 Base object pointer to realize binary compatible reference counting in interface methods. More...
 
class  iobject_ptr< const T >
 Base object pointer to realize binary compatible reference counting in interface methods. More...
 
class  iobject_ptr_base
 Base class for iobject_ptr<T> defining their commonly used interface methods. More...
 
class  iobject_ptr_locked
 Interfaces for a guarded exclusive lock. More...
 
class  iobject_ptr_shared_locked
 Interfaces for a guarded shared lock. More...
 
class  IObjectCompatibility
 This class defines an enumeration for the IObject::GetInterface method. More...
 
class  IObjectInfo
 The IObjectInfo interface provides methods for getting and setting class information. More...
 
class  IObjectPool
 The IObjectPool interface provides methods for managing pools of objects. More...
 
class  IOutputStream
 An interface for writing data to a stream. More...
 
class  IPlugin
 Plugin interface. More...
 
class  IPluginInfo
 Plugin interface. More...
 
class  IPluginLogging
 Interface for logging. More...
 
class  IRandomAccessIterator
 Random access iterator interface. More...
 
class  IRuntime
 The IRuntime interface controls global system startup and shutdown. More...
 
class  IRuntimeHook
 The IRuntimeHook interface provides a hook callback interface. More...
 
class  IScriptable
 The IScriptable interface provides a generic way to implement scripting capabilities. More...
 
class  ISerializable
 The ISerializable interface provides a generic way to implement object serialization. More...
 
class  IService
 The IService interface provides defines methods for system services. More...
 
class  ISharedLockedObject
 The ISharedLockedObject interface defines shared locking of an object. More...
 
class  IStream
 The IStream interface provides defines methods for streaming data. More...
 
struct  iterator_adapter
 Adapter for begin and end iterators - usable as return and parameter value in interfaces. More...
 
struct  iterator_adapter< T, pointer_iterator >
 Adapter for beginning and end iterators which are pointers (e.g. More...
 
class  level_machine
 Generator template to create a Basic Level Machine implmentation. More...
 
class  object_enum
 container type template for a set of object_ptr This template will provide a container for object_ptr with type T and implements a filtered interface for iobject_enum wtih type INTERFACE_TYPE More...
 
class  object_enum_base
 basic object interface implementation template. More...
 
class  object_ptr
 Object pointer implementation used for reference counting on objects of type IObject. More...
 
class  object_ptr_base
 Base class for object_ptr<> More...
 
class  object_ptr_base< const IObject >
 Specialized for child class being object_ptr<const IObject> (no conversion operator necessary) More...
 
class  object_ptr_base< IObject >
 Specialized for child class being object_ptr<IObject> (only implicit conversion to const necessary) More...
 
class  object_ptr_base< T, tFalse, TChild >
 Base class for object_ptr<> specialized for T without an ADTF_IID() defined. More...
 
class  object_ptr_base< T, tTrue, TChild >
 Base class for object_ptr<> specialized for T with an ADTF_IID() defined. More...
 
class  object_ptr_const_conversion
 Enables implicit conversion operators to iobject_ptr<const T> More...
 
class  object_ptr_const_conversion< const T >
 Disables implicit conversion operators to iobject_ptr<const T> (implemented through inheritance) More...
 
class  object_ptr_locked
 Implementation for a exclusive lock guard. More...
 
class  object_ptr_shared_locked
 Implementation for a shared lock guard. More...
 
struct  plugin_initializer
 
class  plugin_template
 
struct  plugin_version_default
 
struct  pointer_iterator
 Empty struct template to specialize implementations of iterator interfaces. More...
 
struct  tDependencyDescription
 Dependency description usable for ADTF_CLASS_DEPENDENCIES() More...
 
struct  tNamedVersion
 Named version information consisting of the modules name and its adtf_util::tVersion. More...
 
struct  ucom_type_streamer
 Helper template for writing and reading types. More...
 
struct  ucom_type_streamer< adtf_util::cString >
 Specialize cString writing. More...
 
class  weak_object_ptr
 Implementation of a weak pointer for usage with iobject_ptr and object_ptr. More...
 

Typedefs

template<typename T >
using iobject_list = iobject_enum< T >
 alias type for iobject_enum. More...
 
template<typename T >
using iobject_vector = iobject_enum< T >
 alias type for iobject_enum. More...
 
template<typename T , typename INTERFACE_TYPE = T>
using object_list = object_enum< T, INTERFACE_TYPE, std::list >
 Implementation of an iobject_list<INTERFACE_TYPE> interface by using a std::list as container type. More...
 
template<typename T , typename INTERFACE_TYPE = T>
using object_vector = object_enum< T, INTERFACE_TYPE, std::vector >
 Implementation of an iobject_vector<INTERFACE_TYPE> interface by using a std::vector as container type. More...
 
typedef UCOM_PLUGIN_IMPORT tInt32(UCOM_PLUGIN_CALLTYPE * fnUCOMGetVersion) (const tChar *strVersionID, tUInt32 *pui32UCOMMajor, tUInt32 *pui32UCOMMinor, tUInt32 *pui32UCOMPatch)
 function for the c - Plugin Entry to load a plugin
 
typedef UCOM_PLUGIN_IMPORT tInt32(UCOM_PLUGIN_CALLTYPE * fnUCOMLoadPlugin) (tVoid *pvRuntimeInstance, tUInt32 ui32UCOMMajor, tUInt32 ui32UCOMMinor, tUInt32 ui32UCOMPatch, tVoid **ppvPluginObject, tHandle hModule)
 function for the c - Plugin Entry to load a plugin
 
typedef UCOM_PLUGIN_IMPORT tInt32(UCOM_PLUGIN_CALLTYPE * fnUCOMUnloadPlugin) ()
 function for the c - Plugin Entry to unload a plugin
 

Enumerations

enum  object_enum_push_option { eNone = 0x00, eNoDuplicates = 0x01 }
 Push option for object_enum_intf::PushObject. More...
 

Functions

template<typename Interface >
const tCharget_iid ()
 Get the interface id (IID) of the Interface type. More...
 
template<typename Interface >
const tCharget_iid (const Interface &)
 Convenience function usable with a reference to an object of type interface. More...
 
template<typename Interface >
const tCharget_iid (const Interface *)
 Convenience function usable with a pointer to an object of type interface. More...
 
template<typename classT >
constexpr iterator_adapter< const tDependencyDescription, pointer_iteratorget_class_dependencies ()
 Get the class dependencies (corresponding to the CID) of the Class type. More...
 
template<typename classT >
constexpr iterator_adapter< const tDependencyDescription, pointer_iteratorget_class_dependencies (const classT &)
 Convenience function usable with a reference to an object of type class. More...
 
template<typename classT >
constexpr iterator_adapter< const tDependencyDescription, pointer_iteratorget_class_dependencies (const classT *)
 Convenience function usable with a reference to an object of type class. More...
 
template<typename classT >
constexpr const tCharget_class_id ()
 Get the class id (CID) of the Class type. More...
 
template<typename classT >
constexpr const tCharget_class_id (const classT &)
 Convenience function usable with a reference to an object of type classT. More...
 
template<typename classT >
constexpr const tCharget_class_id (const classT *)
 Convenience function usable with a pointer to an object of type classT. More...
 
template<typename classT >
constexpr const tCharget_class_label ()
 Get the class label (corresponding to the CID) of the Class type (a readable name !) More...
 
template<typename classT >
constexpr const tCharget_class_label (const classT &)
 Convenience function usable with a reference to an object of type class. More...
 
template<typename classT >
constexpr const tCharget_class_label (const classT *)
 Convenience function usable with a pointer to an object of type class. More...
 
template<typename classT >
constexpr const cClassInfoget_class_info_reference ()
 Get reference to static class info constant of the classT type. More...
 
template<typename classT >
constexpr const cClassInfoget_class_info_reference (const classT *)
 Convenience function usable with a pointer to an object of type classT. More...
 
template<typename classT >
constexpr const cClassInfoget_class_info_reference (const classT &)
 Convenience function usable with a reference to an object of type classT. More...
 
template<typename classT >
object_ptr< const adtf::ucom::ant::IClassInfoget_class_info ()
 Get the class info of the Class type. More...
 
template<typename classT >
object_ptr< const adtf::ucom::ant::IClassInfoget_class_info (const classT &)
 Convenience function usable with a reference to an object of type classT. More...
 
template<typename classT >
object_ptr< const adtf::ucom::ant::IClassInfoget_class_info (const classT *)
 Convenience function usable with a pointer to an object of type classT. More...
 
template<typename ... Args>
constexpr tNamedVersion add_version (const tChar *i_strProduct, Args... args)
 Used for parameter list in ADTF_CLASS_DEPENDENCIES() to define version information. More...
 
template<typename classT >
constexpr iterator_adapter< const tNamedVersion, pointer_iteratorget_class_versions ()
 Get the class versions (corresponding to the CID) of the Class type. More...
 
template<typename classT >
constexpr iterator_adapter< const tNamedVersion, pointer_iteratorget_class_versions (const classT &)
 Convenience function usable with a reference to an object of type class. More...
 
template<typename classT >
constexpr iterator_adapter< const tNamedVersion, pointer_iteratorget_class_versions (const classT *)
 Convenience function usable with a pointer to an object of type class. More...
 
template<typename T >
tBool operator< (const forward_iterator< T > &oLHS, const forward_iterator< T > &oRHS) noexcept
 Less-than operator for forward_iterator. More...
 
template<typename T >
tBool operator> (const forward_iterator< T > &oLHS, const forward_iterator< T > &oRHS) noexcept
 Greater-than operator for forward_iterator. More...
 
template<typename T >
tBool operator<= (const forward_iterator< T > &oLHS, const forward_iterator< T > &oRHS) noexcept
 Less-than-or-equal operator for forward_iterator. More...
 
template<typename T >
tBool operator>= (const forward_iterator< T > &oLHS, const forward_iterator< T > &oRHS) noexcept
 Greater-than-or-equal operator for forward_iterator. More...
 
template<typename T >
tBool operator== (const forward_iterator< T > &oLHS, const forward_iterator< T > &oRHS) noexcept
 Equality operator for forward_iterator. More...
 
template<typename T >
tBool operator!= (const forward_iterator< T > &oLHS, const forward_iterator< T > &oRHS) noexcept
 Inequality operator for forward_iterator. More...
 
template<typename T , typename U >
tBool operator== (const iobject_ptr< T > &i_oLHS, const U *i_pRHS)
 Compare iobject_ptr<T> with plain pointer of the same type for equality. More...
 
template<typename T , typename U >
tBool operator== (const T *i_pLHS, const iobject_ptr< U > &i_oRHS)
 Compare iobject_ptr<T> with plain pointer of the same type for equality. More...
 
template<typename T , typename U >
tBool operator!= (const iobject_ptr< T > &i_oLHS, const U *i_pRHS)
 Compare iobject_ptr<T> with plain pointer of the same type for inequality. More...
 
template<typename T , typename U >
tBool operator!= (const T *i_pLHS, const iobject_ptr< U > &i_oRHS)
 Compare iobject_ptr<T> with plain pointer of the same type for inequality. More...
 
template<typename T , typename U >
tBool operator== (const iobject_ptr< T > &i_oLHS, const iobject_ptr< U > &i_oRHS)
 Compare two iobject_ptr with shared resource of same base for equality. More...
 
template<typename T , typename U >
tBool operator!= (const iobject_ptr< T > &i_oLHS, const iobject_ptr< U > &i_oRHS)
 Compare two iobject_ptr with shared resource of same base for inequality. More...
 
template<typename T , typename U >
tBool operator< (const iobject_ptr< T > &i_oLHS, const iobject_ptr< U > &i_oRHS)
 Less-than-operator for two iobject_ptr with shared resource of same base. More...
 
template<typename T , typename U >
tBool operator> (const iobject_ptr< T > &i_oLHS, const iobject_ptr< U > &i_oRHS)
 Greater-than-operator for two iobject_ptr with shared resource of same base. More...
 
template<typename T , typename U >
tBool operator<= (const iobject_ptr< T > &i_oLHS, const iobject_ptr< U > &i_oRHS)
 Less-than-or-equal-operator for two iobject_ptr with shared resource of same base. More...
 
template<typename T , typename U >
tBool operator>= (const iobject_ptr< T > &i_oLHS, const iobject_ptr< U > &i_oRHS)
 Greater-than-or-equal-operator for two iobject_ptr with shared resource of same base. More...
 
template<typename T >
tBool operator== (const iobject_ptr< T > &i_oLHS, std::nullptr_t)
 Compare iobject_ptr<T> with nullptr type for equality. More...
 
template<typename T >
tBool operator== (std::nullptr_t, const iobject_ptr< T > &i_oRHS)
 Compare iobject_ptr<T> with nullptr type for equality. More...
 
template<typename T >
tBool operator!= (const iobject_ptr< T > &i_oLHS, std::nullptr_t)
 Compare iobject_ptr<T> with nullptr type for inequality. More...
 
template<typename T >
tBool operator!= (std::nullptr_t, const iobject_ptr< T > &i_oRHS)
 Compare iobject_ptr<T> with nullptr type for inequality. More...
 
template<typename T >
tBool operator< (const iobject_ptr< T > &i_oLHS, std::nullptr_t)
 Check whether an iobject_ptr<T> contains a shared pointer less than nullptr. More...
 
template<typename T >
tBool operator< (std::nullptr_t, const iobject_ptr< T > &i_oRHS)
 Check whether an iobject_ptr<T> contains a shared pointer less than nullptr. More...
 
template<typename T >
tBool operator<= (const iobject_ptr< T > &i_oLHS, std::nullptr_t)
 Check whether an iobject_ptr<T> contains a shared pointer less than or equal to nullptr. More...
 
template<typename T >
tBool operator<= (std::nullptr_t, const iobject_ptr< T > &i_oRHS)
 Check whether an iobject_ptr<T> contains a shared pointer less than or equal to nullptr. More...
 
template<typename T >
tBool operator> (const iobject_ptr< T > &i_oLHS, std::nullptr_t)
 Check whether an iobject_ptr<T> contains a shared pointer greater than nullptr. More...
 
template<typename T >
tBool operator> (std::nullptr_t, const iobject_ptr< T > &i_oRHS)
 Check whether an iobject_ptr<T> contains a shared pointer greater than nullptr. More...
 
template<typename T >
tBool operator>= (const iobject_ptr< T > &i_oLHS, std::nullptr_t)
 Check whether an iobject_ptr<T> contains a shared pointer greater than or equal to nullptr. More...
 
template<typename T >
tBool operator>= (std::nullptr_t, const iobject_ptr< T > &i_oRHS)
 Check whether an iobject_ptr<T> contains a shared pointer greater than or equal to nullptr. More...
 
template<typename T , typename U >
object_ptr< T > ucom_object_ptr_cast (const iobject_ptr< U > &i_oOther)
 Create an object_ptr with a already shared resource of implicitly convertible type. More...
 
template<typename Implementation , typename ... Args>
std::enable_if< !std::is_base_of< enable_object_ptr_from_this< typename std::remove_cv< Implementation >::type >, typename std::remove_cv< Implementation >::type >::value, object_ptr< Implementation > >::type make_object_ptr (Args &&... args)
 Create an instance of type object_ptr with Implementation as the shared resource. More...
 
template<typename Implementation , typename ... Args>
std::enable_if< std::is_base_of< enable_object_ptr_from_this< typename std::remove_cv< Implementation >::type >, typename std::remove_cv< Implementation >::type >::value, object_ptr< Implementation > >::type make_object_ptr (Args &&... args)
 Create an instance of type object_ptr with Implementation as the shared resource. More...
 
template<typename T , typename U , template< typename > class TDest = iobject_ptr, template< typename > class TSrc = iobject_ptr>
tResult reset_object_ptr (TDest< const T > &o_oDest, const TSrc< U > &i_oSrc)
 Reset an iobject_ptr with const T. More...
 
template<typename T , template< typename > class TSrc = iobject_ptr>
tResult reset_object_ptr (iobject_ptr< const T > &o_oDest, const TSrc< T > &i_oSrc)
 Reset an iobject_ptr with const T - specialization for best performance. More...
 
tResult get_plugin (iobject_ptr< IPlugin > &pPlugin)
 Returns a reference to the plugin instance of the current module. More...
 
tResult ucom_write_to_stream_buffer (IOutputStream &oOutStream, const tVoid *pBuffer, tSize szBuffer, tSize &szCount)
 
tResult ucom_write_to_stream_string (IOutputStream &oOutStream, const adtf_util::cString &strValue, tSize &szCount)
 
tResult ucom_read_from_stream_buffer (const IInputStream &oInStream, tVoid *pBuffer, tSize szBuffer, tSize &szCount)
 
tResult ucom_read_from_stream_string (const IInputStream &oInStream, adtf_util::cString &strValue, tSize &szReadCount)
 
template<typename T >
tResult ucom_write_to_stream (IOutputStream &oOutStream, const T &oValue, tSize &szCount)
 
template<typename T >
tResult ucom_read_from_stream (const IInputStream &oInStream, T &oValue, tSize &szCount)
 
template<typename T >
IOutputStreamoperator<< (IOutputStream &oWriteStream, const T &oValue)
 
template<typename T >
const IInputStreamoperator>> (const IInputStream &oReadStream, T &oValue)
 
template<typename InterfacePointerType , typename ObjectPointerType >
InterfacePointerType ucom_cast (ObjectPointerType i_pObject)
 Used to cast arbitrary interface types within the UCOM. More...
 

Detailed Description

Namespace for all functionality provided since v3.0.

Typedef Documentation

◆ iobject_list

using iobject_list = iobject_enum < T >

alias type for iobject_enum.

Template Parameters
Tinterface object type to represent (this value type must derived from IObject)

Definition at line 387 of file object_list.h.

◆ iobject_vector

alias type for iobject_enum.

Template Parameters
Tinterface object type to represent (this value type must derived from IObject)

Definition at line 394 of file object_list.h.

◆ object_list

using object_list = object_enum < T, INTERFACE_TYPE, std::list>

Implementation of an iobject_list<INTERFACE_TYPE> interface by using a std::list as container type.

Template Parameters
Tobject type to store (this value type must derived from IObject)
INTERFACE_TYPEinterface type the implementation represents. (iobject_list<INTERFACE_TYPE>)

Definition at line 402 of file object_list.h.

◆ object_vector

using object_vector = object_enum < T, INTERFACE_TYPE, std::vector>

Implementation of an iobject_vector<INTERFACE_TYPE> interface by using a std::vector as container type.

Template Parameters
Tobject type to store (this value type must derived from IObject)
INTERFACE_TYPEinterface type the implementation represents. (iobject_vector<INTERFACE_TYPE>)

Definition at line 410 of file object_list.h.

Enumeration Type Documentation

◆ object_enum_push_option

Push option for object_enum_intf::PushObject.

Enumerator
eNone 

no push option set

eNoDuplicates 

filter duplicates on PushObject call

Definition at line 59 of file object_list.h.

Function Documentation

◆ add_version()

constexpr tNamedVersion adtf::ucom::ant::add_version ( const tChar i_strProduct,
Args...  args 
)

Used for parameter list in ADTF_CLASS_DEPENDENCIES() to define version information.

Template Parameters
Listof integral type used as integral types for adtf_util::tVersion
Parameters
[in]i_strProductName of the product the version is given for
[in]argsList of integral constants used as parameters for adtf_util::tVersion
Returns
Compile time constant of type tNamedVersion generated with i_strProduct and args

Definition at line 61 of file class_versions.h.

◆ get_class_dependencies() [1/3]

constexpr iterator_adapter<const tDependencyDescription, pointer_iterator> adtf::ucom::ant::get_class_dependencies ( )

Get the class dependencies (corresponding to the CID) of the Class type.

Template Parameters
classTClass type the version needs to be queried from. ADTF_CLASS_ID_NAME() is mandatory and ADTF_CLASS_DEPENDENCIES() is optional within public scope of classT to get the dependencies outside the class implementation.
Returns
iterator adapter instance containing begin and end iterators of the dependency container

Definition at line 96 of file class_dependencies.h.

◆ get_class_dependencies() [2/3]

constexpr iterator_adapter<const tDependencyDescription, pointer_iterator> adtf::ucom::ant::get_class_dependencies ( const classT &  )

Convenience function usable with a reference to an object of type class.

tDependencyDescription, pointer_iterator> get_class_dependencies() tDependencyDescription, pointer_iterator> get_class_dependencies()

Definition at line 113 of file class_dependencies.h.

◆ get_class_dependencies() [3/3]

constexpr iterator_adapter<const tDependencyDescription, pointer_iterator> adtf::ucom::ant::get_class_dependencies ( const classT *  )

Convenience function usable with a reference to an object of type class.

tDependencyDescription, pointer_iterator> get_class_dependencies() tDependencyDescription, pointer_iterator> get_class_dependencies()

Definition at line 124 of file class_dependencies.h.

◆ get_class_id() [1/3]

constexpr const tChar* adtf::ucom::ant::get_class_id ( )

Get the class id (CID) of the Class type.

Template Parameters
classTClass type the IID needs to be queried from. ADTF_CLASS_ID() needs to be implemented within public class scope of classT to get the CID outside the class implementation
Returns
The class identifier as string representation defined in ADTF_CLASS_ID()

Definition at line 110 of file class_id.h.

◆ get_class_id() [2/3]

constexpr const tChar* adtf::ucom::ant::get_class_id ( const classT &  )

Convenience function usable with a reference to an object of type classT.

Get the class id (CID) of the Class type.

Template Parameters
classTClass type the IID needs to be queried from. ADTF_CLASS_ID() needs to be implemented within public class scope of classT to get the CID outside the class implementation
Returns
The class identifier as string representation defined in ADTF_CLASS_ID()

Definition at line 125 of file class_id.h.

◆ get_class_id() [3/3]

constexpr const tChar* adtf::ucom::ant::get_class_id ( const classT *  )

Convenience function usable with a pointer to an object of type classT.

Get the class id (CID) of the Class type.

Template Parameters
classTClass type the IID needs to be queried from. ADTF_CLASS_ID() needs to be implemented within public class scope of classT to get the CID outside the class implementation
Returns
The class identifier as string representation defined in ADTF_CLASS_ID()

Definition at line 132 of file class_id.h.

◆ get_class_info() [1/3]

object_ptr<const adtf::ucom::ant::IClassInfo> adtf::ucom::ant::get_class_info ( )

Get the class info of the Class type.

Template Parameters
classTClass type the class info object needs to be queried from. ADTF_CLASS_ID() or ADTF_CLASS_ID_NAME() needs to be implemented within public class scope of classT
Returns
object pointer to IClassInfo

Definition at line 109 of file class_info.h.

◆ get_class_info() [2/3]

object_ptr<const adtf::ucom::ant::IClassInfo> adtf::ucom::ant::get_class_info ( const classT &  )

Convenience function usable with a reference to an object of type classT.

Get the class info of the Class type.

Template Parameters
classTClass type the class info object needs to be queried from. ADTF_CLASS_ID() or ADTF_CLASS_ID_NAME() needs to be implemented within public class scope of classT
Returns
object pointer to IClassInfo

Definition at line 120 of file class_info.h.

◆ get_class_info() [3/3]

object_ptr<const adtf::ucom::ant::IClassInfo> adtf::ucom::ant::get_class_info ( const classT *  )

Convenience function usable with a pointer to an object of type classT.

Get the class info of the Class type.

Template Parameters
classTClass type the class info object needs to be queried from. ADTF_CLASS_ID() or ADTF_CLASS_ID_NAME() needs to be implemented within public class scope of classT
Returns
object pointer to IClassInfo

Definition at line 130 of file class_info.h.

◆ get_class_info_reference() [1/3]

constexpr const cClassInfo& adtf::ucom::ant::get_class_info_reference ( )

Get reference to static class info constant of the classT type.

Template Parameters
classTClass type the static class info constant needs to be queried from. ADTF_CLASS_ID() or ADTF_CLASS_ID_NAME() needs to be implemented within public class scope of classT
Returns
Reference to static class info constant of type classT

Definition at line 69 of file class_info.h.

◆ get_class_info_reference() [2/3]

constexpr const cClassInfo& adtf::ucom::ant::get_class_info_reference ( const classT *  )

Convenience function usable with a pointer to an object of type classT.

Get reference to static class info constant of the classT type.

Template Parameters
classTClass type the static class info constant needs to be queried from. ADTF_CLASS_ID() or ADTF_CLASS_ID_NAME() needs to be implemented within public class scope of classT
Returns
Reference to static class info constant of type classT

Definition at line 85 of file class_info.h.

◆ get_class_info_reference() [3/3]

constexpr const cClassInfo& adtf::ucom::ant::get_class_info_reference ( const classT &  )

Convenience function usable with a reference to an object of type classT.

Get reference to static class info constant of the classT type.

Template Parameters
classTClass type the static class info constant needs to be queried from. ADTF_CLASS_ID() or ADTF_CLASS_ID_NAME() needs to be implemented within public class scope of classT
Returns
Reference to static class info constant of type classT

Definition at line 95 of file class_info.h.

◆ get_class_label() [1/3]

constexpr const tChar* adtf::ucom::ant::get_class_label ( )

Get the class label (corresponding to the CID) of the Class type (a readable name !)

Template Parameters
classTClass type the Label needs to be queried from. ADTF_CLASS_ID_LABEL() needs to be implemented within public class scope of the Class to get the CID outside the class implementation
Returns
The class identifier as string representation defined in ADTF_CLASS_ID_NAME()

Definition at line 143 of file class_id.h.

◆ get_class_label() [2/3]

constexpr const tChar* adtf::ucom::ant::get_class_label ( const classT &  )

Convenience function usable with a reference to an object of type class.

Get the class label (corresponding to the CID) of the Class type (a readable name !)

Template Parameters
classTClass type the Label needs to be queried from. ADTF_CLASS_ID_LABEL() needs to be implemented within public class scope of the Class to get the CID outside the class implementation
Returns
The class identifier as string representation defined in ADTF_CLASS_ID_NAME()

Definition at line 159 of file class_id.h.

◆ get_class_label() [3/3]

constexpr const tChar* adtf::ucom::ant::get_class_label ( const classT *  )

Convenience function usable with a pointer to an object of type class.

Get the class label (corresponding to the CID) of the Class type (a readable name !)

Template Parameters
classTClass type the Label needs to be queried from. ADTF_CLASS_ID_LABEL() needs to be implemented within public class scope of the Class to get the CID outside the class implementation
Returns
The class identifier as string representation defined in ADTF_CLASS_ID_NAME()

Definition at line 166 of file class_id.h.

◆ get_class_versions() [1/3]

constexpr iterator_adapter<const tNamedVersion, pointer_iterator> adtf::ucom::ant::get_class_versions ( )

Get the class versions (corresponding to the CID) of the Class type.

Template Parameters
classTClass type the version needs to be queried from. ADTF_CLASS_ID_NAME() is mandatory and ADTF_CLASS_VERSIONS() is optional within public class scope of classT to get the version outside the class implementation.
Returns
iterator adapter instance containing iterators to begin and end of the version container

Definition at line 78 of file class_versions.h.

◆ get_class_versions() [2/3]

constexpr iterator_adapter<const tNamedVersion, pointer_iterator> adtf::ucom::ant::get_class_versions ( const classT &  )

Convenience function usable with a reference to an object of type class.

tNamedVersion, pointer_iterator> get_class_versions() tNamedVersion, pointer_iterator> get_class_versions()

Definition at line 94 of file class_versions.h.

◆ get_class_versions() [3/3]

constexpr iterator_adapter<const tNamedVersion, pointer_iterator> adtf::ucom::ant::get_class_versions ( const classT *  )

Convenience function usable with a pointer to an object of type class.

tNamedVersion, pointer_iterator> get_class_versions() tNamedVersion, pointer_iterator> get_class_versions()

Definition at line 104 of file class_versions.h.

◆ get_iid() [1/3]

const tChar* adtf::ucom::ant::get_iid ( )

Get the interface id (IID) of the Interface type.

Template Parameters
InterfaceInterface type the IID needs to be queried from. ADTF_IID() needs to be implemented within public class scope of Interface, otherwise the build process gets canceled using a static_assert.
Returns
The interface id as string representation defined in implementation of ADTF_IID()

Definition at line 433 of file adtf_iid.h.

◆ get_iid() [2/3]

const tChar* adtf::ucom::ant::get_iid ( const Interface &  )

Convenience function usable with a reference to an object of type interface.

Get the interface id (IID) of the Interface type.

Template Parameters
InterfaceInterface type the IID needs to be queried from. ADTF_IID() needs to be implemented within public class scope of Interface, otherwise the build process gets canceled using a static_assert.
Returns
The interface id as string representation defined in implementation of ADTF_IID()

Definition at line 449 of file adtf_iid.h.

◆ get_iid() [3/3]

const tChar* adtf::ucom::ant::get_iid ( const Interface *  )

Convenience function usable with a pointer to an object of type interface.

Get the interface id (IID) of the Interface type.

Template Parameters
InterfaceInterface type the IID needs to be queried from. ADTF_IID() needs to be implemented within public class scope of Interface, otherwise the build process gets canceled using a static_assert.
Returns
The interface id as string representation defined in implementation of ADTF_IID()

Definition at line 458 of file adtf_iid.h.

◆ get_plugin()

tResult adtf::ucom::ant::get_plugin ( iobject_ptr< IPlugin > &  pPlugin)

Returns a reference to the plugin instance of the current module.

Parameters
[out]pPluginThe plugin.
Returns
Standard result.

◆ make_object_ptr() [1/2]

std::enable_if< !std::is_base_of < enable_object_ptr_from_this<typename std::remove_cv<Implementation>::type>, typename std::remove_cv<Implementation>::type >::value, object_ptr<Implementation> >::type adtf::ucom::ant::make_object_ptr ( Args &&...  args)
inline

Create an instance of type object_ptr with Implementation as the shared resource.

make_object_ptr can be used in complete analogy to std::make_shared or std::make_unique - to create an object of type object_ptr without the need to explicitly call new to allocate the shared resource. In fact, this function is the only valid way to create an object_ptr with a new shared resource.

Template Parameters
ImplementationType of the shared resource which is created using the default allocator new.
ArgsParameter pack forwarded to the constructor of Implementation during instantiation.
Parameters
[in]argsParameters forwared to the constructor of Implementation during instantiation.
Note
Due to the provided aliasing constructor in object_ptr, any created object_ptr with a concrete implementation of IObject can be implicitly converted to an object_ptr managing a pointer to an interface of this concrete implementation.
Return values
Onsuccess, the instance contains a newly allocated, reference counted object of type Implementation
Onfailure, the instance contains an object of nullptr_t
See also
Instantiating reference counted objects

Definition at line 143 of file object_ptr_utilities.h.

◆ make_object_ptr() [2/2]

std::enable_if< std::is_base_of < enable_object_ptr_from_this<typename std::remove_cv<Implementation>::type>, typename std::remove_cv<Implementation>::type >::value, object_ptr<Implementation> >::type adtf::ucom::ant::make_object_ptr ( Args &&...  args)
inline

Create an instance of type object_ptr with Implementation as the shared resource.

make_object_ptr can be used in complete analogy to std::make_shared or std::make_unique - to create an object of type object_ptr without the need to explicitly call new to allocate the shared resource. In fact, this function is the only valid way to create an object_ptr with a new shared resource.

Template Parameters
ImplementationType of the shared resource which is created using the default allocator new.
ArgsParameter pack forwarded to the constructor of Implementation during instantiation.
Parameters
[in]argsParameters forwarded to the constructor of Implementation during instantiation.
Note
Due to the provided aliasing constructor in object_ptr, any created object_ptr with a concrete implementation of IObject can be implicitly converted to an object_ptr managing a pointer to an interface of this concrete implementation.
Returns
An instance of object_ptr<Implementation>
Return values
Onsuccess, the instance contains a newly allocated, reference counted object of type Implementation
Onfailure, the instance contains an object of nullptr_t
See also
Instantiating reference counted objects

Definition at line 180 of file object_ptr_utilities.h.

References enable_object_ptr_from_this< T >::Assign().

◆ operator!=() [1/6]

tBool adtf::ucom::ant::operator!= ( const iobject_ptr< T > &  i_oLHS,
const U *  i_pRHS 
)

Compare iobject_ptr<T> with plain pointer of the same type for inequality.

Template Parameters
TType of the pointer to the shared resource
UType of the pointer to the shared resource (implicitly convertible to T)
Parameters
[in]i_oLHSShared object pointer containing the shared resource.
[in]i_pRHSOrdinary pointer to resource.
Returns
tFalse if i_oLHS and i_pRHS point to the same address, tTrue otherwise.

Definition at line 147 of file object_ptr_intf.h.

References operator==().

◆ operator!=() [2/6]

tBool adtf::ucom::ant::operator!= ( const T *  i_pLHS,
const iobject_ptr< U > &  i_oRHS 
)

Compare iobject_ptr<T> with plain pointer of the same type for inequality.

Template Parameters
TType of the pointer to the shared resource
UType of the pointer to the shared resource (implicitly convertible to T)
Parameters
[in]i_pLHSOrdinary pointer to resource.
[in]i_oRHSShared object pointer containing the shared resource.
Returns
tFalse if i_pLHS and i_oRHS point to the same address, tTrue otherwise.

Definition at line 161 of file object_ptr_intf.h.

References operator==().

◆ operator!=() [3/6]

tBool adtf::ucom::ant::operator!= ( const forward_iterator< T > &  oLHS,
const forward_iterator< T > &  oRHS 
)
inlinenoexcept

Inequality operator for forward_iterator.

Template Parameters
TValue type of the container the iterator operates on
Parameters
[in]oLHSLeft hand side iterator object
[in]oRHSRight hand side iterator object
Returns
tTrue if pointer to value of oLHS is not equal pointer to value of oRHS, tFalse otherwise

Definition at line 178 of file iterator_intf.h.

◆ operator!=() [4/6]

tBool adtf::ucom::ant::operator!= ( const iobject_ptr< T > &  i_oLHS,
const iobject_ptr< U > &  i_oRHS 
)

Compare two iobject_ptr with shared resource of same base for inequality.

Template Parameters
TType of the pointer to the shared resource
UType of the pointer to the shared resource (implicitly convertible to T)
Parameters
[in]i_oLHSLeft hand side shared object pointer containing the shared resource.
[in]i_oRHSRight hand side shared object pointer containing the shared resource.
Returns
tFalse if i_oLHS and i_oRHS contain the same shared resource, tTrue otherwise.

Definition at line 189 of file object_ptr_intf.h.

References operator==().

◆ operator!=() [5/6]

tBool adtf::ucom::ant::operator!= ( const iobject_ptr< T > &  i_oLHS,
std::nullptr_t   
)

Compare iobject_ptr<T> with nullptr type for inequality.

Template Parameters
TType of the pointer to the shared resource
Parameters
[in]i_oLHSShared object pointer containing the shared resource.
Returns
tFalse if i_oLHS contains a nullptr, tTrue otherwise.

Definition at line 282 of file object_ptr_intf.h.

References iobject_ptr_base< T >::Get().

◆ operator!=() [6/6]

tBool adtf::ucom::ant::operator!= ( std::nullptr_t  ,
const iobject_ptr< T > &  i_oRHS 
)

Compare iobject_ptr<T> with nullptr type for inequality.

Template Parameters
TType of the pointer to the shared resource
Parameters
[in]i_oRHSShared object pointer containing the shared resource.
Returns
tFalse if i_oRHS contains a nullptr, tTrue otherwise.

Definition at line 294 of file object_ptr_intf.h.

◆ operator<() [1/4]

tBool adtf::ucom::ant::operator< ( const forward_iterator< T > &  oLHS,
const forward_iterator< T > &  oRHS 
)
inlinenoexcept

Less-than operator for forward_iterator.

Template Parameters
TValue type of the container the iterator operates on
Parameters
[in]oLHSLeft hand side iterator object
[in]oRHSRight hand side iterator object
Returns
tTrue if pointer to value of oLHS is less than pointer to value of oRHS, tFalse otherwise

Definition at line 108 of file iterator_intf.h.

Referenced by operator<=(), operator>(), and operator>=().

◆ operator<() [2/4]

tBool adtf::ucom::ant::operator< ( const iobject_ptr< T > &  i_oLHS,
const iobject_ptr< U > &  i_oRHS 
)

Less-than-operator for two iobject_ptr with shared resource of same base.

Template Parameters
TType of the pointer to the shared resource
UType of the pointer to the shared resource (implicitly convertible to T)
Parameters
[in]i_oLHSLeft hand side shared object pointer containing the shared resource.
[in]i_oRHSRight hand side shared object pointer containing the shared resource.
Returns
tTrue if i_oLHS is less than i_oRHS, tFalse otherwise.

Definition at line 203 of file object_ptr_intf.h.

◆ operator<() [3/4]

tBool adtf::ucom::ant::operator< ( const iobject_ptr< T > &  i_oLHS,
std::nullptr_t   
)

Check whether an iobject_ptr<T> contains a shared pointer less than nullptr.

Template Parameters
TType of the pointer to the shared resource
Parameters
[in]i_oLHSShared object pointer containing the shared resource.
Returns
tTrue if i_oLHS is less than a nullptr, tFalse otherwise.

Definition at line 306 of file object_ptr_intf.h.

◆ operator<() [4/4]

tBool adtf::ucom::ant::operator< ( std::nullptr_t  ,
const iobject_ptr< T > &  i_oRHS 
)

Check whether an iobject_ptr<T> contains a shared pointer less than nullptr.

Template Parameters
TType of the pointer to the shared resource
Parameters
[in]i_oRHSShared object pointer containing the shared resource.
Returns
tFalse if i_oRHS is less than a nullptr, tTrue otherwise.

Definition at line 318 of file object_ptr_intf.h.

◆ operator<=() [1/4]

tBool adtf::ucom::ant::operator<= ( const forward_iterator< T > &  oLHS,
const forward_iterator< T > &  oRHS 
)
inlinenoexcept

Less-than-or-equal operator for forward_iterator.

Template Parameters
TValue type of the container the iterator operates on
Parameters
[in]oLHSLeft hand side iterator object
[in]oRHSRight hand side iterator object
Returns
tTrue if pointer to value of oLHS is less than or equal pointer to value of oRHS, tFalse otherwise

Definition at line 136 of file iterator_intf.h.

◆ operator<=() [2/4]

tBool adtf::ucom::ant::operator<= ( const iobject_ptr< T > &  i_oLHS,
const iobject_ptr< U > &  i_oRHS 
)

Less-than-or-equal-operator for two iobject_ptr with shared resource of same base.

Template Parameters
TType of the pointer to the shared resource
UType of the pointer to the shared resource (implicitly convertible to T)
Parameters
[in]i_oLHSLeft hand side shared object pointer containing the shared resource.
[in]i_oRHSRight hand side shared object pointer containing the shared resource.
Returns
tTrue if i_oLHS is less than or equal to i_oRHS, tFalse otherwise.

Definition at line 232 of file object_ptr_intf.h.

References operator>().

◆ operator<=() [3/4]

tBool adtf::ucom::ant::operator<= ( const iobject_ptr< T > &  i_oLHS,
std::nullptr_t   
)

Check whether an iobject_ptr<T> contains a shared pointer less than or equal to nullptr.

Template Parameters
TType of the pointer to the shared resource
Parameters
[in]i_oLHSShared object pointer containing the shared resource.
Returns
tTrue if i_oLHS is less than or equal to nullptr, tFalse otherwise.

Definition at line 330 of file object_ptr_intf.h.

References operator<().

◆ operator<=() [4/4]

tBool adtf::ucom::ant::operator<= ( std::nullptr_t  ,
const iobject_ptr< T > &  i_oRHS 
)

Check whether an iobject_ptr<T> contains a shared pointer less than or equal to nullptr.

Template Parameters
TType of the pointer to the shared resource
Parameters
[in]i_oRHSShared object pointer containing the shared resource.
Returns
tFalse if i_oRHS is less than or equal to nullptr, tTrue otherwise.

Definition at line 342 of file object_ptr_intf.h.

References operator<().

◆ operator==() [1/6]

tBool adtf::ucom::ant::operator== ( const iobject_ptr< T > &  i_oLHS,
const U *  i_pRHS 
)

Compare iobject_ptr<T> with plain pointer of the same type for equality.

Template Parameters
TType of the pointer to the shared resource
UType of the pointer to the shared resource (implicitly convertible to T)
Parameters
[in]i_oLHSShared object pointer containing the shared resource.
[in]i_pRHSOrdinary pointer to resource.
Returns
tTrue if i_oLHS and i_pRHS point to the same address, tFalse otherwise.

Definition at line 119 of file object_ptr_intf.h.

References iobject_ptr_base< T >::Get().

◆ operator==() [2/6]

tBool adtf::ucom::ant::operator== ( const T *  i_pLHS,
const iobject_ptr< U > &  i_oRHS 
)

Compare iobject_ptr<T> with plain pointer of the same type for equality.

Template Parameters
TType of the pointer to the shared resource
UType of the pointer to the shared resource (implicitly convertible to T)
Parameters
[in]i_pLHSOrdinary pointer to resource.
[in]i_oRHSShared object pointer containing the shared resource.
Returns
tTrue if i_pLHS and i_oRHS point to the same address, tFalse otherwise.

Definition at line 133 of file object_ptr_intf.h.

References operator==().

◆ operator==() [3/6]

tBool adtf::ucom::ant::operator== ( const forward_iterator< T > &  oLHS,
const forward_iterator< T > &  oRHS 
)
inlinenoexcept

Equality operator for forward_iterator.

Template Parameters
TValue type of the container the iterator operates on
Parameters
[in]oLHSLeft hand side iterator object
[in]oRHSRight hand side iterator object
Returns
tTrue if pointer to value of oLHS is equal pointer to value of oRHS, tFalse otherwise

Definition at line 164 of file iterator_intf.h.

Referenced by operator!=(), and operator==().

◆ operator==() [4/6]

tBool adtf::ucom::ant::operator== ( const iobject_ptr< T > &  i_oLHS,
const iobject_ptr< U > &  i_oRHS 
)

Compare two iobject_ptr with shared resource of same base for equality.

Template Parameters
TType of the pointer to the shared resource
UType of the pointer to the shared resource (implicitly convertible to T)
Parameters
[in]i_oLHSLeft hand side shared object pointer containing the shared resource.
[in]i_oRHSRight hand side shared object pointer containing the shared resource.
Returns
tTrue if i_oLHS and i_oRHS contain the same shared resource, tFalse otherwise.

Definition at line 175 of file object_ptr_intf.h.

References iobject_ptr_base< T >::Get().

◆ operator==() [5/6]

tBool adtf::ucom::ant::operator== ( const iobject_ptr< T > &  i_oLHS,
std::nullptr_t   
)

Compare iobject_ptr<T> with nullptr type for equality.

Template Parameters
TType of the pointer to the shared resource
Parameters
[in]i_oLHSShared object pointer containing the shared resource.
Returns
tTrue if i_oLHS contains a nullptr, tFalse otherwise.

Definition at line 258 of file object_ptr_intf.h.

References iobject_ptr_base< T >::Get().

◆ operator==() [6/6]

tBool adtf::ucom::ant::operator== ( std::nullptr_t  ,
const iobject_ptr< T > &  i_oRHS 
)

Compare iobject_ptr<T> with nullptr type for equality.

Template Parameters
TType of the pointer to the shared resource
Parameters
[in]i_oRHSShared object pointer containing the shared resource.
Returns
tTrue if i_oRHS contains a nullptr, tFalse otherwise.

Definition at line 270 of file object_ptr_intf.h.

◆ operator>() [1/4]

tBool adtf::ucom::ant::operator> ( const forward_iterator< T > &  oLHS,
const forward_iterator< T > &  oRHS 
)
inlinenoexcept

Greater-than operator for forward_iterator.

Template Parameters
TValue type of the container the iterator operates on
Parameters
[in]oLHSLeft hand side iterator object
[in]oRHSRight hand side iterator object
Returns
tTrue if pointer to value of oLHS is greater than pointer to value of oRHS, tFalse otherwise

Definition at line 122 of file iterator_intf.h.

Referenced by operator<=().

◆ operator>() [2/4]

tBool adtf::ucom::ant::operator> ( const iobject_ptr< T > &  i_oLHS,
const iobject_ptr< U > &  i_oRHS 
)

Greater-than-operator for two iobject_ptr with shared resource of same base.

Template Parameters
TType of the pointer to the shared resource
UType of the pointer to the shared resource (implicitly convertible to T)
Parameters
[in]i_oLHSLeft hand side shared object pointer containing the shared resource.
[in]i_oRHSRight hand side shared object pointer containing the shared resource.
Returns
tTrue if i_oLHS is greater than i_oRHS, tFalse otherwise.

Definition at line 218 of file object_ptr_intf.h.

References operator<().

◆ operator>() [3/4]

tBool adtf::ucom::ant::operator> ( const iobject_ptr< T > &  i_oLHS,
std::nullptr_t   
)

Check whether an iobject_ptr<T> contains a shared pointer greater than nullptr.

Template Parameters
TType of the pointer to the shared resource
Parameters
[in]i_oLHSShared object pointer containing the shared resource.
Returns
tTrue if i_oLHS is greater than a nullptr, tFalse otherwise.

Definition at line 354 of file object_ptr_intf.h.

References operator<().

◆ operator>() [4/4]

tBool adtf::ucom::ant::operator> ( std::nullptr_t  ,
const iobject_ptr< T > &  i_oRHS 
)

Check whether an iobject_ptr<T> contains a shared pointer greater than nullptr.

Template Parameters
TType of the pointer to the shared resource
Parameters
[in]i_oRHSShared object pointer containing the shared resource.
Returns
tFalse if i_oRHS is greater than a nullptr, tTrue otherwise.

Definition at line 366 of file object_ptr_intf.h.

References operator<().

◆ operator>=() [1/4]

tBool adtf::ucom::ant::operator>= ( const forward_iterator< T > &  oLHS,
const forward_iterator< T > &  oRHS 
)
inlinenoexcept

Greater-than-or-equal operator for forward_iterator.

Template Parameters
TValue type of the container the iterator operates on
Parameters
[in]oLHSLeft hand side iterator object
[in]oRHSRight hand side iterator object
Returns
tTrue if pointer to value of oLHS is greater than or equal pointer to value of oRHS, tFalse otherwise

Definition at line 150 of file iterator_intf.h.

◆ operator>=() [2/4]

tBool adtf::ucom::ant::operator>= ( const iobject_ptr< T > &  i_oLHS,
const iobject_ptr< U > &  i_oRHS 
)

Greater-than-or-equal-operator for two iobject_ptr with shared resource of same base.

Template Parameters
TType of the pointer to the shared resource
UType of the pointer to the shared resource (implicitly convertible to T)
Parameters
[in]i_oLHSLeft hand side shared object pointer containing the shared resource.
[in]i_oRHSRight hand side shared object pointer containing the shared resource.
Returns
tTrue if i_oLHS is greater than or equal to i_oRHS, tFalse otherwise.

Definition at line 246 of file object_ptr_intf.h.

References operator<().

◆ operator>=() [3/4]

tBool adtf::ucom::ant::operator>= ( const iobject_ptr< T > &  i_oLHS,
std::nullptr_t   
)

Check whether an iobject_ptr<T> contains a shared pointer greater than or equal to nullptr.

Template Parameters
TType of the pointer to the shared resource
Parameters
[in]i_oLHSShared object pointer containing the shared resource.
Returns
tTrue if i_oLHS is greater than or equal to nullptr, tFalse otherwise.

Definition at line 378 of file object_ptr_intf.h.

References operator<().

◆ operator>=() [4/4]

tBool adtf::ucom::ant::operator>= ( std::nullptr_t  ,
const iobject_ptr< T > &  i_oRHS 
)

Check whether an iobject_ptr<T> contains a shared pointer greater than or equal to nullptr.

Template Parameters
TType of the pointer to the shared resource
Parameters
[in]i_oRHSShared object pointer containing the shared resource.
Returns
tFalse if i_oRHS is greater than or equal to nullptr, tTrue otherwise.

Definition at line 390 of file object_ptr_intf.h.

References operator<().

◆ reset_object_ptr() [1/2]

tResult adtf::ucom::ant::reset_object_ptr ( TDest< const T > &  o_oDest,
const TSrc< U > &  i_oSrc 
)

Reset an iobject_ptr with const T.

Template Parameters
TType of the shared resource of the object_ptr to reset
UType of the shared resource managed by the object_ptr to convert from. Must be convertible to type T using ucom_cast()
TDestDestination object_ptr<> type to cast to
TSrcSrc object_ptr<> type to cast from
Parameters
[out]o_oDestGets reset with the object of const T
[in]i_oSrcProviding the object to reset o_oDest with.
Returns
Standard error code
Return values
ERR_NOERROREverything went fine
ERR_NO_INTERFACEType U does not expose interface type T (ucom_cast failed). *this is reset to nullptr
o_oDest.Reset(...)else

Definition at line 217 of file object_ptr_utilities.h.

References ucom_object_ptr_cast().

◆ reset_object_ptr() [2/2]

tResult adtf::ucom::ant::reset_object_ptr ( iobject_ptr< const T > &  o_oDest,
const TSrc< T > &  i_oSrc 
)

Reset an iobject_ptr with const T - specialization for best performance.

Template Parameters
TType of the shared resource of the object_ptr to reset
TSrcSrc object_ptr<> type to cast from
Parameters
[out]o_oDestGets reset with the object of const T
[in]i_oSrcProviding the object to reset o_oDest with.
Returns
Standard error code
Return values
o_oDest.Reset(...)else

Definition at line 247 of file object_ptr_utilities.h.

References iobject_ptr_base< T >::Reset().

◆ ucom_cast()

InterfacePointerType adtf::ucom::ant::ucom_cast ( ObjectPointerType  i_pObject)

Used to cast arbitrary interface types within the UCOM.

Template Parameters
InterfacePointerTypePointer to (optionally cv-qualified) complete interface type
Parameters
[in]i_pObjectPointer to object of type IObject which shall expose the queried interface.
Returns
Pointer to queried interface if the exposed interface could be found, nullptr otherwise.
Note
Works const-correct. If i_pObject is a const object of type IObject, this needs to be taken into consideration when giving the template parameter type.
See also
Page The ucom_cast<> in depth explanation for further information

Definition at line 126 of file ucom_cast.h.

Referenced by adtf::streaming::devil::add_graph_object(), adtf::streaming::hollow::get_child_objects(), trigger_pipe_source< INTERFACE >::RegisterSubItem(), ucom_object_ptr_cast(), object_ptr_locked< adtf::streaming::ant::ISampleBuffer >::UnlockObject(), and object_ptr_shared_locked< const adtf::streaming::ant::ISampleBuffer >::UnlockObject().

◆ ucom_object_ptr_cast()

object_ptr<T> adtf::ucom::ant::ucom_object_ptr_cast ( const iobject_ptr< U > &  i_oOther)

Create an object_ptr with a already shared resource of implicitly convertible type.

Template Parameters
TType of the shared resource of the object_ptr to create
UType of the shared resource managed by the object_ptr to convert from. Must be convertible to type T using ucom_cast()
Parameters
[in]i_oOtherThe source to create the new obejct_ptr from.
Returns
The new object_ptr managing the shared resource of type U converted to type T. If the ucom_cast failed, the returned object_ptr is empty.

Definition at line 103 of file object_ptr_utilities.h.

References iobject_ptr_base< T >::Get(), and ucom_cast().

Referenced by adtf::streaming::catwo::create_server(), adtf::streaming::ant::create_server(), adtf::streaming::flash::create_server(), adtf::streaming::elasto::create_weak_binding_server(), cGraphObject::CreateInterfaceServer(), object_ptr< const adtf::streaming::ant::IStreamType >::operator=(), and reset_object_ptr().


Copyright © Audi Electronics Venture GmbH. All rights reserved. (Generated on Tue Nov 16 2021 by doxygen 1.8.14)