The Pedigree Project  0.1
Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | Static Private Attributes | List of all members
HostedSchedulerTimer Class Reference
+ Inheritance diagram for HostedSchedulerTimer:
+ Collaboration diagram for HostedSchedulerTimer:

Public Member Functions

virtual bool registerHandler (TimerHandler *handler)
 
bool initialise () INITIALISATION_ONLY
 
void uninitialise ()
 

Static Public Member Functions

static HostedSchedulerTimerinstance ()
 

Protected Member Functions

 HostedSchedulerTimer () INITIALISATION_ONLY
 
virtual ~HostedSchedulerTimer ()
 
- Protected Member Functions inherited from SchedulerTimer
 SchedulerTimer ()
 
virtual ~SchedulerTimer ()
 

Private Member Functions

 HostedSchedulerTimer (const HostedSchedulerTimer &)
 
HostedSchedulerTimeroperator= (const HostedSchedulerTimer &)
 
virtual bool irq (irq_id_t number, InterruptState &state)
 
virtual ~IrqHandler ()
 

Private Attributes

irq_id_t m_IrqId
 
__pedigree_hosted::timer_t m_Timer
 
TimerHandlerm_Handler
 

Static Private Attributes

static HostedSchedulerTimer m_Instance
 

Detailed Description

Definition at line 37 of file kernel/machine/hosted/SchedulerTimer.h.

Constructor & Destructor Documentation

HostedSchedulerTimer::HostedSchedulerTimer ( )
protected

The default constructor

Definition at line 89 of file hosted/SchedulerTimer.cc.

virtual HostedSchedulerTimer::~HostedSchedulerTimer ( )
inlineprotectedvirtual

The destructor

Definition at line 61 of file kernel/machine/hosted/SchedulerTimer.h.

HostedSchedulerTimer::HostedSchedulerTimer ( const HostedSchedulerTimer )
private

The copy-constructor

Note
NOT implemented

Member Function Documentation

bool HostedSchedulerTimer::initialise ( )

Initialises the class

Returns
true, if successful, false otherwise
Todo:
error message or something

Definition at line 42 of file hosted/SchedulerTimer.cc.

References IrqManager::registerIsaIrqHandler().

Referenced by HostedMachine::initialise().

+ Here is the caller graph for this function:

static HostedSchedulerTimer& HostedSchedulerTimer::instance ( )
inlinestatic

Get the HostedSchedulerTimer class instance

Definition at line 41 of file kernel/machine/hosted/SchedulerTimer.h.

References INITIALISATION_ONLY.

Referenced by HostedMachine::getSchedulerTimer(), and HostedMachine::initialise().

+ Here is the caller graph for this function:

bool HostedSchedulerTimer::irq ( irq_id_t  number,
InterruptState &  state 
)
privatevirtual

Called when the handler is registered with the irq manager and the irq occurred

Note
If this function returns false you have to call IrqManager::acknowledgeIrq() when you removed the interrupt reason.
Parameters
[in]numberthe irq number
Returns
should return true, if the interrupt reason was removed, or false otherwise

Implements IrqHandler.

Definition at line 93 of file hosted/SchedulerTimer.cc.

References LIKELY, m_Handler, and TimerHandler::timer().

HostedSchedulerTimer& HostedSchedulerTimer::operator= ( const HostedSchedulerTimer )
private

The assignment operator

Note
NOT implemented
void HostedSchedulerTimer::uninitialise ( )

Uninitialises the class

Definition at line 77 of file hosted/SchedulerTimer.cc.

References IrqManager::unregisterHandler().

Member Data Documentation

TimerHandler* HostedSchedulerTimer::m_Handler
private

The scheduler

Definition at line 82 of file kernel/machine/hosted/SchedulerTimer.h.

Referenced by irq().

HostedSchedulerTimer HostedSchedulerTimer::m_Instance
staticprivate

The HostedSchedulerTimer class instance

Definition at line 85 of file kernel/machine/hosted/SchedulerTimer.h.


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