ADTF
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
adtf_runtime.h
Go to the documentation of this file.
1
7#pragma once
8
11
12namespace adtf
13{
14namespace base
15{
16namespace ant
17{
18
44
45}
46
47namespace quiet
48{
49
54class cADTFRuntime : public ucom::catwo::object<ucom::ant::detail::cRuntime, IADTFRuntime>
55{
57
58 public:
65 cADTFRuntime(const adtf::util::cCommandLine& oCommandline);
66
67 // called with tADTFRunLevel range
68 tResult SetRunLevel(int8_t i8RunlevelToChangeTo, bool bWait=true) override;
69
70 // returns values within tADTFRunLevel range
71 int8_t GetRunLevel() const override;
72
73 tResult SetMicroRunLevel(tADTFMicroRunLevel nRunlevelToChangeTo, bool bWait=true) override;
74
75 tADTFMicroRunLevel GetMicroRunLevel() const override;
76
77 // called with tADTFRunLevel range
78 tResult RegisterObject(const ucom::ant::iobject_ptr<ucom::ant::IObject>& pObject,
79 const char* strNameOID,
80 int8_t nRunLevel,
81 uint32_t ui32Flags = 0) override;
82
83 // called with tADTFRunLevel range
84 tResult RegisterPlugin(const char* strUrl,
85 int8_t nRunLevel,
87 uint32_t ui32Flags=0) override;
105 tResult Exec(int8_t i8FirstRunlevelToSet, std::function<void()> fnStartup);
114 tResult Exec(int8_t i8FirstRunlevelToSet, std::function<void()> fnStartup, bool bContinueInCaseOfError);
115 tResult Exec(int8_t i8FirstRunlevelToSet);
116
117 tResult ExecMicro(tADTFMicroRunLevel nFirstMicroRunlevelToSet, std::function<void()> fnStartup, bool bContinueInCaseOfError);
118
119 protected:
120 // this is called from the base class with our micro runlevel identifiers.
121 const char* GetRunLevelString(int8_t i8Runlevel) const override;
122
123 // this is called from the base class with our micro runlevel identifiers.
124 tResult ChangeRunLevel(int8_t i8RunLevelToChangeTo) override;
125
126 bool StartedCompletedImplementation() const;
127};
128
129}
130
131namespace spider
132{
133
137class cADTFRuntime: public ucom::catwo::object<quiet::cADTFRuntime, ucom::spider::IRuntimeStartup>
138{
139public:
141 using base_type::base_type;
142
143 bool StartupCompleted() const override;
144};
145
146}
147
149using spider::cADTFRuntime;
152
153}
154}
Copyright © Audi Electronics Venture GmbH.
Copyright © Audi Electronics Venture GmbH.
A_UTILS_NS::cResult tResult
For backwards compatibility and to bring latest version into scope.
tResult Exec(int8_t i8FirstRunlevelToSet, std::function< void()> fnStartup)
Launches the system and create a adtf::base::ant::cADTFRuntime.
ucom::catwo::object< ucom::ant::detail::cRuntime, IADTFRuntime > base_type
base type
cADTFRuntime(const adtf::util::cCommandLine &oCommandline)
CTOR with commandline arguments.
tResult Exec(int8_t i8FirstRunlevelToSet, std::function< void()> fnStartup, bool bContinueInCaseOfError)
@ RL_Shutdown
The system is shut down.
@ RL_Internal
Invalid run level that signals unmanaged modules.
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:397
#define A_UTILS_D(__pclassname_)
Helper macro for d-pattern definitions.
Definition d_ptr.h:270
Namespace for all functionality of the ADTF Base SDK provided since v3.0.
tADTFRunLevel
The ADTF Runtime Level State are used to define a ADTF Runtime specialization for a adtf::ucom::ant::...
@ RL_Shutdown
The system is shut down.
@ RL_Internal
internal runlevel Is not for users !
@ RL_Max
maximum level that can be reached
@ RL_Session
The session level.
@ RL_FilterGraph
The Filtergraph level.
@ RL_StreamingGraph
The Streaminggraph level.
@ RL_System
The system level.
@ RL_Running
The Running level.
Namespace for all functionality of the ADTF Base SDK provided since v3.18.
Namespace for the ADTF Base SDK.
cADTFRuntime cRuntime
Type definition for the Default Runtime of ADTF.
Namespace for entire ADTF SDK.