ADTF  3.18.2
trigger_pipe_source< INTERFACE >

Default implementation class template for a ITriggerPipeSource. More...

Inheritance diagram for trigger_pipe_source< INTERFACE >:
[legend]

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
 Registers the pSubRun as SubItem of the source. More...
 
tResult UnregisterSubItem (const adtf::ucom::ant::iobject_ptr< ITriggerPipeItem > &pSubRun) override
 Unregisters the pSubRun from the source. More...
 
tResult ChangePriority (const adtf::ucom::ant::iobject_ptr< ITriggerPipeItem > &pSubRun, ITriggerPipeItem::tPriority ui32Prio) override
 Changes the priority of the pSubRun. More...
 
tResult GetSubItems (adtf::ucom::ant::iobject_enum< const ITriggerPipeItem > &lstSubItems) const override
 Retrieves a list of the registered Items. More...
 
- Public Member Functions inherited from object< ITriggerPipeSource, ITriggerPipeSource >
tResult GetInterface (const char *i_strIID, void *&o_pInterface) override
 Query interfaces on an object. More...
 
tResult GetInterface (const char *i_strIID, const void *&o_pInterface) const override
 Provides const correct interface querying. More...
 
void Destroy () const override
 Destruct and deallocate instantiations of type IObject. More...
 
- Public Member Functions inherited from IObject
 ADTF_IID (IObject, "object.ant.ucom.adtf.iid")
 Marks the IObject to be castable with the ucom_cast() More...
 

Additional Inherited Members

- Protected Member Functions inherited from IObject
 ~IObject ()=default
 Protected destructor --> Use implemented Destroy() instead of delete!
 
- Protected Member Functions inherited from cTriggerPipeSourceImpl
 cTriggerPipeSourceImpl ()
 CTOR.
 
virtual ~cTriggerPipeSourceImpl ()=default
 DTOR.
 
tResult RegisterSubItem (const adtf::ucom::ant::iobject_ptr< ITriggerPipeItem > &pSubRun, ITriggerPipeItem::tPriority ui32Prio)
 Registers the pSubRun as SubItem of the source. More...
 
tResult UnregisterSubItem (const adtf::ucom::ant::iobject_ptr< ITriggerPipeItem > &pSubRun)
 Unregisters the pSubRun from the source. More...
 
tResult ChangePriority (const adtf::ucom::ant::iobject_ptr< ITriggerPipeItem > &pSubRun, ITriggerPipeItem::tPriority ui32Prio)
 Changes the priority of the pSubRun. More...
 
tResult GetSubItems (adtf::ucom::ant::iobject_enum< const ITriggerPipeItem > &lstSubItems) const
 Retrieves a list of the registered Items. More...
 
tResult RunSubs (tTimeStamp tmTimeofActivation, adtf::base::ant::IRunnable::tActivationType ui32ActivationType, const void *pvUserData, size_t nUserDataSize)
 Then the Registered subitems will be called in order of ITriggerPipeItem::tPriority. More...
 
tResult RunSubs (base::flash::tNanoSeconds tmTimeofActivation, adtf::base::ant::IRunnable::tActivationType ui32ActivationType, const void *pvUserData, size_t nUserDataSize)
 
- Static Protected Attributes inherited from cTriggerPipeSourceImpl
static adtf::base::IRunnablem_pNothingToDoRunnable
 internal runnable implementation to prevent nullpointer checks
 

Detailed Description

template<typename INTERFACE = ITriggerPipeSource>
class adtf::streaming::ant::trigger_pipe_source< INTERFACE >

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
INTERFACEThe interface type derived from ITriggerPipeSource.

Definition at line 94 of file triggerpipe.h.

Member Function Documentation

◆ ChangePriority()

tResult 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.

Definition at line 133 of file triggerpipe.h.

References cTriggerPipeSourceImpl::ChangePriority().

◆ GetSubItems()

tResult 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.

Definition at line 139 of file triggerpipe.h.

References cTriggerPipeSourceImpl::GetSubItems().

◆ RegisterSubItem()

tResult 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.

Definition at line 106 of file triggerpipe.h.

References adtf::streaming::ant::check_loop_call_in_trigger_pipe(), iobject_ptr_base< T >::Get(), adtf::streaming::ant::get_named_graph_object_full_name(), LOG_DUMP, cTriggerPipeSourceImpl::RegisterSubItem(), and RETURN_IF_FAILED.

◆ UnregisterSubItem()

tResult 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.

Definition at line 128 of file triggerpipe.h.

References cTriggerPipeSourceImpl::UnregisterSubItem().