2 #if CONFIG_HAL_BOARD == HAL_BOARD_SITL 29 _sitlState(sitlState),
30 _stopped_clock_usec(0)
109 "PANIC: scheduler system initialized called more than once");
111 int exceptions = FE_OVERFLOW | FE_DIVBYZERO;
114 exceptions |= FE_INVALID;
117 feenableexcept(exceptions);
119 feclearexcept(exceptions);
164 }
else if (called_from_isr) {
190 }
else if (called_from_isr) {
static uint8_t _num_io_procs
AP_HAL::UARTDriver * uartE
void stop_clock(uint64_t time_usec)
static AP_HAL::MemberProc _io_proc[SITL_SCHEDULER_MAX_TIMER_PROCS]
void resume_timer_procs()
static bool _should_reboot
static bool _in_timer_proc
void suspend_timer_procs()
AP_HAL::UARTDriver * uartB
void register_timer_process(AP_HAL::MemberProc)
virtual void _timer_tick(void)
AP_HAL::UARTDriver * uartC
virtual void printf(const char *,...) FMT_PRINTF(2
uint8_t _nested_atomic_ctr
AP_HAL::UARTDriver * uartF
static volatile bool _timer_suspended
static AP_HAL::MemberProc _timer_proc[SITL_SCHEDULER_MAX_TIMER_PROCS]
AP_HAL::UARTDriver * uartD
static volatile bool _timer_event_missed
static void _run_timer_procs(bool called_from_isr)
virtual void call_delay_cb()
uint16_t _min_delay_cb_ms
void delay_microseconds(uint16_t us)
static void _run_io_procs(bool called_from_isr)
static uint8_t _num_timer_procs
static AP_HAL::Proc _failsafe
#define SITL_SCHEDULER_MAX_TIMER_PROCS
AP_HAL::UARTDriver * uartA
void reboot(bool hold_in_bootloader)
static SITL_State sitlState
void panic(const char *errormsg,...) FMT_PRINTF(1
void system_initialized()
void wait_clock(uint64_t wait_time_usec)
void register_io_process(AP_HAL::MemberProc)
void register_timer_failsafe(AP_HAL::Proc, uint32_t period_us)
uint64_t _stopped_clock_usec