Browse Source

AP_HAL_VRBRAIN: move delay callback handling to base HAL Scheduler class

master
Peter Barker 7 years ago committed by Andrew Tridgell
parent
commit
864f41406d
  1. 11
      libraries/AP_HAL_VRBRAIN/Scheduler.cpp
  2. 3
      libraries/AP_HAL_VRBRAIN/Scheduler.h

11
libraries/AP_HAL_VRBRAIN/Scheduler.cpp

@ -184,9 +184,7 @@ void VRBRAINScheduler::delay(uint16_t ms)
!_vrbrain_thread_should_exit) { !_vrbrain_thread_should_exit) {
delay_microseconds_semaphore(1000); delay_microseconds_semaphore(1000);
if (_min_delay_cb_ms <= ms) { if (_min_delay_cb_ms <= ms) {
if (_delay_cb) { call_delay_cb();
_delay_cb();
}
} }
} }
perf_end(_perf_delay); perf_end(_perf_delay);
@ -195,13 +193,6 @@ void VRBRAINScheduler::delay(uint16_t ms)
} }
} }
void VRBRAINScheduler::register_delay_callback(AP_HAL::Proc proc,
uint16_t min_time_ms)
{
_delay_cb = proc;
_min_delay_cb_ms = min_time_ms;
}
void VRBRAINScheduler::register_timer_process(AP_HAL::MemberProc proc) void VRBRAINScheduler::register_timer_process(AP_HAL::MemberProc proc)
{ {
for (uint8_t i = 0; i < _num_timer_procs; i++) { for (uint8_t i = 0; i < _num_timer_procs; i++) {

3
libraries/AP_HAL_VRBRAIN/Scheduler.h

@ -50,7 +50,6 @@ public:
void delay(uint16_t ms); void delay(uint16_t ms);
void delay_microseconds(uint16_t us); void delay_microseconds(uint16_t us);
void delay_microseconds_boost(uint16_t us); void delay_microseconds_boost(uint16_t us);
void register_delay_callback(AP_HAL::Proc, uint16_t min_time_ms);
void register_timer_process(AP_HAL::MemberProc); void register_timer_process(AP_HAL::MemberProc);
void register_io_process(AP_HAL::MemberProc); void register_io_process(AP_HAL::MemberProc);
void register_timer_failsafe(AP_HAL::Proc, uint32_t period_us); void register_timer_failsafe(AP_HAL::Proc, uint32_t period_us);
@ -67,8 +66,6 @@ public:
private: private:
bool _initialized; bool _initialized;
volatile bool _hal_initialized; volatile bool _hal_initialized;
AP_HAL::Proc _delay_cb;
uint16_t _min_delay_cb_ms;
AP_HAL::Proc _failsafe; AP_HAL::Proc _failsafe;
volatile bool _timer_suspended; volatile bool _timer_suspended;

Loading…
Cancel
Save