ADTF
Loading...
Searching...
No Matches
adtf::streaming::trigger_pipe_source< INTERFACES > Class Template Reference

#include <triggerpipe.h>

Inherits adtf::ucom::catwo::object< Bases >, and detail::cTriggerPipeSourceBase.

Public Member Functions

 trigger_pipe_source ()=default
 CTOR.
 
virtual ~trigger_pipe_source ()=default
 DTOR.
 
tResult RegisterSubItem (const adtf::ucom::ant::iobject_ptr< ITriggerPipeItem > &pSubRun, ITriggerPipeItem::tPriority ui32Prio) override
 
tResult UnregisterSubItem (const adtf::ucom::ant::iobject_ptr< ITriggerPipeItem > &pSubRun) override
 
tResult ChangePriority (const adtf::ucom::ant::iobject_ptr< ITriggerPipeItem > &pSubRun, ITriggerPipeItem::tPriority ui32Prio) override
 
tResult GetSubItems (adtf::ucom::ant::iobject_enum< const ITriggerPipeItem > &lstSubItems) const override
 
tResult GetName (base::ant::IString &&strName) const
 
tResult SetName (const char *strName)
 
tResult SetParent (const ucom::ant::IObject *oParentObject)
 
tResult GetParent (const ucom::ant::IObject *&poParentObject) const
 
- Public Member Functions inherited from adtf::ucom::catwo::object< Bases >
tResult GetInterface (const char *i_strIID, void *&o_pInterface) override
 Query interfaces on an object.
 
tResult GetInterface (const char *i_strIID, const void *&o_pInterface) const override
 Provides const correct interface querying.
 
void Destroy () const override
 Switch from non-virtual destructor to virtual destructor.
 
- Public Member Functions inherited from adtf::ucom::ant::IObject
 ADTF_IID (IObject, "object.ant.ucom.adtf.iid")
 

Additional Inherited Members

- Protected Member Functions inherited from adtf::ucom::ant::IObject
 ~IObject ()=default
 Protected destructor --> Only the final implementation can be destroyed!
 

Detailed Description

template<typename... INTERFACES>
class adtf::streaming::trigger_pipe_source< INTERFACES >

Default implementation class template for a ITriggerPipeSource. This template helps to use the default implementation in certain classes and will prevent multiple inheritance.

Template Parameters
INTERFACESAll needed ucom interfaces to expose, non-ucom interfaces and base classes to derive from.
Remarks
interface ant::ITriggerPipeSource will be always exposed by default.
It is important to add interfaces in the right order. See adtf::ucom::object for more details.

Member Function Documentation

◆ ChangePriority()

template<typename... INTERFACES>
tResult adtf::streaming::trigger_pipe_source< INTERFACES >::ChangePriority ( const adtf::ucom::ant::iobject_ptr< ITriggerPipeItem > & pSubRun,
ITriggerPipeItem::tPriority ui32Prio )
inlineoverride

Changes the priority of the pSubRun.

Parameters
[in]pSubRunTriggerPipeItem to register.
[in]ui32PrioPriority of Run call.
Returns
Standard Result Code.

◆ GetName()

template<typename... INTERFACES>
tResult adtf::streaming::trigger_pipe_source< INTERFACES >::GetName ( base::ant::IString && strName) const
inline

Gets the Name of the object to the IString rvalue reference strName.

Parameters
[in]strNameString reference to return the name to
Returns
Result of adtf::base::IString::Set

◆ GetParent()

template<typename... INTERFACES>
tResult adtf::streaming::trigger_pipe_source< INTERFACES >::GetParent ( const ucom::ant::IObject *& poParentObject) const
inline

Retrieves the Parent of the object. Only ONE parent is possible !

Parameters
[in,out]poParentObjectParent Object reference where to retrieve to.
Warning
Make sure the parent lives longer than the child. Otherwise GetParent access could fail.
Returns
Standard Result Code
Return values
ERR_POINTERNo parent set.

◆ GetSubItems()

template<typename... INTERFACES>
tResult adtf::streaming::trigger_pipe_source< INTERFACES >::GetSubItems ( adtf::ucom::ant::iobject_enum< const ITriggerPipeItem > & lstSubItems) const
inlineoverride

Retrieves a list of the registered Items.

Parameters
[in]lstSubItemsenumeration interface where to push the object references to.
Returns
Standard Result Code.

◆ RegisterSubItem()

template<typename... INTERFACES>
tResult adtf::streaming::trigger_pipe_source< INTERFACES >::RegisterSubItem ( const adtf::ucom::ant::iobject_ptr< ITriggerPipeItem > & pSubRun,
ITriggerPipeItem::tPriority ui32Prio )
inlineoverride

Registers the pSubRun as SubItem of the source. The source will forward a Run call to every registered ITriggerPipeItem in order of ui32Prio.

Parameters
[in]pSubRunTriggerPipeItem to register.
[in]ui32PrioPriority of Run call.
Returns
Standard Result Code.

◆ SetName()

template<typename... INTERFACES>
tResult adtf::streaming::trigger_pipe_source< INTERFACES >::SetName ( const char * strName)
inline

Sets the Name of the object.

Parameters
[in]strNameName of the object to set.
Returns
Standard Result Code

◆ SetParent()

template<typename... INTERFACES>
tResult adtf::streaming::trigger_pipe_source< INTERFACES >::SetParent ( const ucom::ant::IObject * oParentObject)
inline

Sets the Parent of the object. Only ONE parent is possible !

Parameters
[in]oParentObjectParent Object reference to set.
Warning
Make sure the parent lives longer than the child. Otherwise GetParent access could fail.
Returns
Standard Result Code

◆ UnregisterSubItem()

template<typename... INTERFACES>
tResult adtf::streaming::trigger_pipe_source< INTERFACES >::UnregisterSubItem ( const adtf::ucom::ant::iobject_ptr< ITriggerPipeItem > & pSubRun)
inlineoverride

Unregisters the pSubRun from the source.

Parameters
[in]pSubRunTriggerPipeItem to unregister.
Returns
Standard Result Code.

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