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"