29#if EFI_SIGNAL_EXECUTOR_ONE_TIMER
54 if (deltaTimeNt >= TOO_FAR_INTO_FUTURE_NT) {
56 int32_t intDeltaTimeNt = (int32_t)deltaTimeNt;
65 chibios_rt::CriticalSectionLocker csl;
70 if (needToResetTimer) {
78 chibios_rt::CriticalSectionLocker csl;
86 chibios_rt::CriticalSectionLocker csl;
125 }
while (didExecute);
148 if (!nextEventTimeNt) {
SingleTimerExecutor scheduler
TunerStudioOutputChannels outputChannels
bool insertTask(scheduling_s *scheduling, efitick_t timeX, action_s const &action)
expected< efitick_t > getNextEventTime(efitick_t nowUs) const
bool executeOne(efitick_t now)
void remove(scheduling_s *scheduling)
void executeAllPendingActions()
void schedule(const char *msg, scheduling_s *scheduling, efitick_t timeNt, action_s const &action) override
Schedule an action to be executed in the future.
int executeAllPendingActionsInvocationCounter
void cancel(scheduling_s *scheduling) override
Cancel the specified scheduling_s so that, if currently scheduled, it does not execute.
void scheduleTimerCallback()
static EngineAccessor engine
static constexpr engine_configuration_s * engineConfiguration
void firmwareError(ObdCode code, const char *fmt,...)
void setHardwareSchedulerTimer(efitick_t nowNt, efitick_t setTimeNt)
void initMicrosecondTimer()
@ RUNTIME_CRITICAL_TASK_TIMER_OVERFLOW
@ SingleTimerExecutorDoExecute
@ SingleTimerExecutorScheduleByTimestamp
@ SingleTimerExecutorScheduleTimerCallback
void globalTimerCallback()
void initSingleTimerExecutorHardware()
void executorStatistics()
uint32_t hwSetTimerDuration