Sen API
Sen Libraries
Toggle main menu visibility
Loading...
Searching...
No Matches
runtime_6/src/runtime.h
Go to the documentation of this file.
1
// === runtime.h =======================================================================================================
2
// Sen Infrastructure
3
// Released under the Apache License v2.0 (SPDX-License-Identifier Apache-2.0).
4
// See the LICENSE.txt file for more information.
5
// © Airbus SAS, Airbus Helicopters, and Airbus Defence and Space SAU/GmbH/SAS.
6
// =====================================================================================================================
7
8
#ifndef SEN_LIBS_KERNEL_TEST_INTEGRATION_RUNTIME_COMPATIBILITY_RUNTIME_6_SRC_RUNTIME_H
9
#define SEN_LIBS_KERNEL_TEST_INTEGRATION_RUNTIME_COMPATIBILITY_RUNTIME_6_SRC_RUNTIME_H
10
11
// test_helpers
12
#include "test_helpers/test_helpers.stl.h"
13
14
// sen
15
#include "
sen/kernel/component_api.h
"
16
#include "stl/runtime/runtime.stl.h"
17
#include "stl/sen/kernel/kernel_objects.stl.h"
18
19
// std
20
#include <bitset>
21
22
namespace
sen::test::runtime
23
{
24
25
class
TestClassImpl
final:
public
TestClassBase
26
{
27
public
:
28
SEN_NOCOPY_NOMOVE(TestClassImpl)
29
30
public
:
31
using
TestClassBase::TestClassBase;
32
~TestClassImpl
()
override
=
default
;
33
34
protected
:
// TestClassBase
35
TestEnum
testMethodImpl
(
const
runtime::TestSequence2& arg1,
36
const
runtime::TestStructBase& arg3,
37
const
runtime::TestVariant& arg2)
override
;
38
void
emitEventsImpl
()
override
;
39
};
40
41
class
TesterImpl
final:
public
TesterBase
42
{
43
public
:
44
SEN_NOCOPY_NOMOVE(
TesterImpl
)
45
46
public
:
47
using
TesterBase::TesterBase;
48
~TesterImpl
()
override
=
default
;
49
50
public
:
// NativeObject
51
void
registered
(
sen::kernel::RegistrationApi
& api)
override
;
52
53
protected
:
// TesterBase
54
void
doTestsImpl
(std::promise<TestResult>&& promise)
override
;
55
void
checkLocalStateImpl
(std::promise<TestResult>&& promise)
override
;
56
void
shutdownKernelImpl
()
override
;
57
58
private
:
59
void
checkRemote(
u32
flagToSet);
60
61
private
:
62
std::shared_ptr<TestClassImpl> localObj_;
63
std::shared_ptr<sen::Subscription<TestClassInterface>> remoteObjSub_;
64
TestClassInterface* remoteObj_ =
nullptr
;
65
std::promise<TestResult> promise_;
66
std::bitset<15> localFlags_;
67
std::bitset<17> remoteFlags_;
68
bool
testMethodPassed_ =
false
;
69
bool
testEventPassed_ =
true
;
70
std::shared_ptr<sen::Subscription<sen::kernel::KernelApiInterface>> kernelApiSub_;
71
sen::kernel::KernelApiInterface* kernelApiObj_ =
nullptr
;
72
};
73
74
}
// namespace sen::test::runtime
75
76
#endif
// SEN_LIBS_KERNEL_TEST_INTEGRATION_RUNTIME_COMPATIBILITY_RUNTIME_6_SRC_RUNTIME_H
sen::kernel::RegistrationApi
API for objects when registered.
Definition
component_api.h:212
sen::test::runtime::TestClassImpl
Definition
runtime_1/src/runtime.h:25
sen::test::runtime::TestClassImpl::~TestClassImpl
~TestClassImpl() override=default
sen::test::runtime::TestClassImpl::emitEventsImpl
void emitEventsImpl() override
sen::test::runtime::TestClassImpl::testMethodImpl
TestEnum testMethodImpl(const runtime::TestSequence2 &arg1, const runtime::TestStructBase &arg3, const runtime::TestVariant &arg2) override
sen::test::runtime::TesterImpl
Definition
runtime_1/src/runtime.h:40
sen::test::runtime::TesterImpl::shutdownKernelImpl
void shutdownKernelImpl() override
sen::test::runtime::TesterImpl::doTestsImpl
void doTestsImpl(std::promise< TestResult > &&promise) override
sen::test::runtime::TesterImpl::checkLocalStateImpl
void checkLocalStateImpl(std::promise< TestResult > &&promise) override
sen::test::runtime::TesterImpl::registered
void registered(sen::kernel::RegistrationApi &api) override
sen::test::runtime::TesterImpl::~TesterImpl
~TesterImpl() override=default
component_api.h
u32
uint32_t u32
Definition
numbers.h:25
sen::test::runtime
Definition
runtime_1/src/runtime.h:22
libs
kernel
test
integration
runtime_compatibility
runtime_6
src
runtime.h
Generated by
1.17.0