Mark3 Realtime Kernel
Mark3::TimerScheduler Class Reference

The TimerScheduler Class. This implements a "Static" class used to manage a global list of timers used throughout the system. More...

#include <timerscheduler.h>

Static Public Member Functions

static void Init ()
 Init Initialize the timer scheduler. Must be called before any timer, or timer-derived functions are used. More...
 
static void Add (Timer *pclListNode_)
 Add Add a timer to the timer scheduler. Adding a timer implicitly starts the timer as well. More...
 
static void Remove (Timer *pclListNode_)
 Remove Remove a timer from the timer scheduler. May implicitly stop the timer if this is the only active timer scheduled. More...
 
static void Process ()
 Process This function must be called on timer expiry (from the timer's ISR context). This will result in all timers being updated based on the epoch that just elapsed. The next timer epoch is set based on the next Timer object to expire. More...
 

Static Private Attributes

static TimerList m_clTimerList
 TimerList object manipu32ated by the Timer Scheduler. More...
 

Detailed Description

The TimerScheduler Class. This implements a "Static" class used to manage a global list of timers used throughout the system.

Definition at line 38 of file timerscheduler.h.

Member Function Documentation

◆ Add()

static void Mark3::TimerScheduler::Add ( Timer pclListNode_)
inlinestatic

Add Add a timer to the timer scheduler. Adding a timer implicitly starts the timer as well.

Parameters
pclListNode_Pointer to the timer list node to add

Definition at line 54 of file timerscheduler.h.

◆ Init()

static void Mark3::TimerScheduler::Init ( void  )
inlinestatic

Init Initialize the timer scheduler. Must be called before any timer, or timer-derived functions are used.

Definition at line 46 of file timerscheduler.h.

◆ Process()

static void Mark3::TimerScheduler::Process ( void  )
inlinestatic

Process This function must be called on timer expiry (from the timer's ISR context). This will result in all timers being updated based on the epoch that just elapsed. The next timer epoch is set based on the next Timer object to expire.

Definition at line 70 of file timerscheduler.h.

◆ Remove()

static void Mark3::TimerScheduler::Remove ( Timer pclListNode_)
inlinestatic

Remove Remove a timer from the timer scheduler. May implicitly stop the timer if this is the only active timer scheduled.

Parameters
pclListNode_Pointer to the timer list node to remove

Definition at line 62 of file timerscheduler.h.

Member Data Documentation

◆ m_clTimerList

TimerList Mark3::TimerScheduler::m_clTimerList
staticprivate

TimerList object manipu32ated by the Timer Scheduler.

Definition at line 74 of file timerscheduler.h.


The documentation for this class was generated from the following files: