rusEFI
The most advanced open source ECU
Loading...
Searching...
No Matches
periodic_task.cpp
Go to the documentation of this file.
1/*
2 * @file periodic_task.cpp
3 *
4 * @date: Jul 8, 2019
5 * @author Andrey Belomutskiy, (c) 2012-2020
6 */
7
8#include "periodic_task.h"
9#include "os_util.h"
10#include "perf_trace.h"
11
12#if !EFI_UNIT_TEST
13void runAndScheduleNext(virtual_timer_t *vtp, PeriodicTimerController *controller) {
14 {
16 controller->PeriodicTask();
17 }
18
19 chVTSetAny(vtp, TIME_MS2I(controller->getPeriodMs()), (vtfunc_t) &runAndScheduleNext, controller);
20}
21#endif /* EFI_UNIT_TEST */
virtual int getPeriodMs()=0
virtual void PeriodicTask()=0
void chVTSetAny(virtual_timer_t *vtp, systime_t time, vtfunc_t vtfunc, void *par)
Definition os_util.cpp:27
@ PeriodicTimerControllerPeriodicTask
void runAndScheduleNext(virtual_timer_t *vtp, PeriodicTimerController *controller)