Line data Source code
1 : // Copyright 2024 Accenture.
2 :
3 : #include "async/AsyncBinding.h"
4 :
5 : namespace async
6 : {
7 : using AdapterType = AsyncBindingType::AdapterType;
8 :
9 1 : void execute(ContextType const context, RunnableType& runnable)
10 : {
11 1 : AdapterType::execute(context, runnable);
12 1 : }
13 :
14 1 : void schedule(
15 : ContextType const context,
16 : RunnableType& runnable,
17 : TimeoutType& timeout,
18 : uint32_t const delay,
19 : TimeUnitType const unit)
20 : {
21 1 : AdapterType::schedule(context, runnable, timeout, delay, unit);
22 1 : }
23 :
24 1 : void scheduleAtFixedRate(
25 : ContextType const context,
26 : RunnableType& runnable,
27 : TimeoutType& timeout,
28 : uint32_t const period,
29 : TimeUnitType const unit)
30 : {
31 1 : AdapterType::scheduleAtFixedRate(context, runnable, timeout, period, unit);
32 1 : }
33 :
34 : } // namespace async
35 :
36 : extern "C"
37 : {
38 1 : void vApplicationIdleHook() { ::async::AdapterType::callIdleTaskFunction(); }
39 :
40 1 : void vApplicationGetIdleTaskMemory(
41 : StaticTask_t** const ppxIdleTaskTCBBuffer,
42 : StackType_t** const ppxIdleTaskStackBuffer,
43 : uint32_t* const pulIdleTaskStackSize)
44 : {
45 1 : ::async::AdapterType::getTaskMemory<::async::AdapterType::TASK_IDLE>(
46 : ppxIdleTaskTCBBuffer, ppxIdleTaskStackBuffer, pulIdleTaskStackSize);
47 1 : }
48 :
49 1 : void vApplicationGetTimerTaskMemory(
50 : StaticTask_t** const ppxTimerTaskTCBBuffer,
51 : StackType_t** const ppxTimerTaskStackBuffer,
52 : uint32_t* const pulTimerTaskStackSize)
53 : {
54 1 : ::async::AdapterType::getTaskMemory<::async::AdapterType::TASK_TIMER>(
55 : ppxTimerTaskTCBBuffer, ppxTimerTaskStackBuffer, pulTimerTaskStackSize);
56 1 : }
57 :
58 : } // extern "C"
|