StuBS
|
The Ticker device demonstrates HPET interrupts. More...
#include <device/ticker.h>
Public Member Functions | |
Ticker () | |
bool | windup (uint64_t us) |
Windup / initialize. | |
bool | prologue () override |
Prologue of timer interrupts. | |
void | epilogue () override |
Epilogue of timer interrupts. | |
uint64_t | interval () const |
Retrieve the interrupt interval. | |
void | activate () |
Activate the timer. | |
void | stop () |
Stop the timer. | |
Public Member Functions inherited from Gate | |
Gate () | |
Constructor. | |
virtual | ~Gate () |
Destructor. | |
bool | is_queued () const |
Status about the epilogue. | |
void | set_queued (bool val) |
Set epilogue status. | |
Private Member Functions | |
Ticker (const Ticker &)=delete | |
Ticker & | operator= (const Ticker &)=delete |
Private Attributes | |
uint64_t | counter |
uint64_t | usecs |
HPET::Comparator * | comparator |
Additional Inherited Members | |
Protected Member Functions inherited from Queue< T, ContainerType >::Node | |
Node () | |
The Ticker device demonstrates HPET interrupts.
Periodic HPET interrupts increase the counter, which is displayed on a designated spot on the screen and shows the current systems runtime.
|
inline |
Windup / initialize.
Assigns itself to the Plugbox and initializes a HPET::Comparator in such a way that regular interrupts are triggered approx. every us
microseconds when Ticker::activate() is called.
us | Desired interrupt interval in microseconds. |
|
overridevirtual |
Prologue of timer interrupts.
true
if the interrupt was issued by the HPET and Ticker::epilogue should be executed. Implements Gate.
|
overridevirtual |
Epilogue of timer interrupts.
Increases and displays the counter value (uptime)
Reimplemented from Gate.
|
inline |
Retrieve the interrupt interval.
|
inline |
Activate the timer.
|
inline |
Stop the timer.
|
private |
|
private |
|
private |