ADTF  3.18.2
runtime_behaviour.h
Go to the documentation of this file.
1 
7 #pragma once
8 #include "runner_intf.h"
10 
11 namespace adtf
12 {
13 namespace streaming
14 {
15 namespace ant
16 {
17 
22  {
25 
26 
27  protected:
31  virtual ~cRuntimeBehaviour();
32 
33  public: // implements IRuntimeBehaviour
37  tResult FindRunner(const char* strName, ucom::ant::iobject_ptr<ucom::ant::IObject>& pRunner) const;
40 
52 
64  virtual tResult RegisterRunner(const char* strName, base::ant::IRunnable& oRunnable);
65 
75 
81 
103  };
104 
112  template<typename Interface>
113  class runtime_behaviour : public ucom::catwo::object<IRuntimeBehaviour, Interface>, public cRuntimeBehaviour
114  {
115  public:
118  {
119  return cRuntimeBehaviour::GetRunners(lstRunners);
120  }
122  tResult FindRunner(const char* strName, ucom::ant::iobject_ptr<adtf::ucom::ant::IObject>& pRunner) const override
123  {
124  return cRuntimeBehaviour::FindRunner(strName, pRunner);
125  }
127  tResult GetInnerPipes(ucom::ant::iobject_list<ITriggerPipe>& lstInnerTriggerPipes) const override
128  {
129  return cRuntimeBehaviour::GetInnerPipes(lstInnerTriggerPipes);
130  }
131  };
132 
133 
134 } //namespace ant
135 
137 using ant::runtime_behaviour;
138 
139 } //namespace streaming
140 } // namespace adtf
The Runnable interface defines common methods for a running component.
Definition: runnable_intf.h:26
Default implementation for the IRuntimeBehaviour.
tResult ReleaseRunners()
Release every registered Runners
tResult ReleaseTriggerPipes()
Release and unregister every registered TriggerPipes.
tResult GetRunners(ucom::ant::iobject_list< IRunner > &lstRunners) const
copydoc IRuntimeBehaviour::GetRunners
tResult GetInnerPipes(ucom::ant::iobject_list< ITriggerPipe > &lstInnerpTriggerPipe) const
copydoc IRuntimeBehaviour::GetInnerPipes
virtual tResult UnregisterRunner(const ucom::ant::iobject_ptr< IRunner > &pRunner)
Unregisters a Runner.
virtual tResult RegisterRunner(const char *strName, base::ant::IRunnable &oRunnable)
Create and Registers a IRunner object for your oRunnable with the name strName.
virtual tResult UnregisterInnerPipe(const ucom::ant::iobject_ptr< ITriggerPipe > &pTriggerPipe)
Unregisters an inner ITriggerPipe object.
virtual tResult RegisterRunner(const ucom::ant::iobject_ptr< IRunner > &pRunner)
Registers and publishes a IRunner object to the IRuntimeBehaviour.
A_UTILS_D(cRuntimeBehaviour)
private _d-pointer
virtual tResult RegisterInnerPipe(const ucom::ant::iobject_ptr< ITriggerPipe > &pTriggerPipe)
Registers and publishes an inner ITriggerPipe object to the IRuntimeBehaviour.
tResult FindRunner(const char *strName, ucom::ant::iobject_ptr< ucom::ant::IObject > &pRunner) const
copydoc IRuntimeBehaviour::FindRunner
Default Class Template for a Runtime Behaviour implementation.
tResult FindRunner(const char *strName, ucom::ant::iobject_ptr< adtf::ucom::ant::IObject > &pRunner) const override
Find a Runner with the name of strName (only const access)
tResult GetInnerPipes(ucom::ant::iobject_list< ITriggerPipe > &lstInnerTriggerPipes) const override
Returns the current internal TriggerPipes.
tResult GetRunners(ucom::ant::iobject_list< IRunner > &lstRunners) const override
Returns the current Runners.
Base object pointer to realize binary compatible reference counting in interface methods.
Use this template if you want to implement an ucom::ant::IObject based Interface and/or subclass an e...
Definition: object.h:379
Namespace for entire ADTF SDK.
Copyright © Audi Electronics Venture GmbH.
Copyright © Audi Electronics Venture GmbH.