The Pedigree Project  0.1
Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Member Functions | List of all members
InterruptManager Class Referenceabstract

Handles interrupts and interrupt registrations from kernel components. More...

#include <InterruptManager.h>

+ Inheritance diagram for InterruptManager:
+ Collaboration diagram for InterruptManager:

Public Member Functions

virtual bool registerInterruptHandler (size_t nInterruptNumber, InterruptHandler *pHandler)=0
 
virtual bool registerInterruptHandlerDebugger (size_t nInterruptNumber, InterruptHandler *pHandler)=0
 
virtual size_t getBreakpointInterruptNumber () PURE=0
 
virtual size_t getDebugInterruptNumber () PURE=0
 

Static Public Member Functions

static InterruptManagerinstance ()
 

Protected Member Functions

 InterruptManager ()
 
virtual ~InterruptManager ()
 

Private Member Functions

 InterruptManager (const InterruptManager &)
 
InterruptManageroperator= (const InterruptManager &)
 

Detailed Description

Handles interrupts and interrupt registrations from kernel components.

The interrupt manager allows interrupt handler registrations and handles interrupts.

Definition at line 34 of file include/pedigree/kernel/processor/InterruptManager.h.

Constructor & Destructor Documentation

InterruptManager::InterruptManager ( )
protecteddefault

The constructor

InterruptManager::~InterruptManager ( )
protectedvirtualdefault

The destructor

InterruptManager::InterruptManager ( const InterruptManager )
private

The copy-constructor

Note
Not implemented (singleton)

Member Function Documentation

virtual size_t InterruptManager::getBreakpointInterruptNumber ( )
pure virtual

Get the interrupt number of the breakpoint exception

Returns
the interrupt number of the breakpoint exception

Implemented in MIPS32InterruptManager, X64InterruptManager, X86InterruptManager, PPC32InterruptManager, ARM926EInterruptManager, ARMV7InterruptManager, and HostedInterruptManager.

Referenced by Debugger::initialise().

+ Here is the caller graph for this function:

virtual size_t InterruptManager::getDebugInterruptNumber ( )
pure virtual

Get the interrupt number of the debug exception

Returns
the interrupt number of the debug exception

Implemented in MIPS32InterruptManager, X64InterruptManager, X86InterruptManager, PPC32InterruptManager, ARM926EInterruptManager, ARMV7InterruptManager, and HostedInterruptManager.

InterruptManager & InterruptManager::instance ( )
static
InterruptManager& InterruptManager::operator= ( const InterruptManager )
private

The copy-constructor

Note
Not implemented (singleton)
virtual bool InterruptManager::registerInterruptHandler ( size_t  nInterruptNumber,
InterruptHandler pHandler 
)
pure virtual

Register an interrupt handler

Parameters
[in]nInterruptNumberthe interrupt's number
[in]pHandlerthe interrupt handler
Returns
true, if successfully registered, false otherwise

Implemented in X64InterruptManager, PPC32InterruptManager, X86InterruptManager, ARM926EInterruptManager, ARMV7InterruptManager, MIPS32InterruptManager, and HostedInterruptManager.

Referenced by MIPS32TlbManager::initialise(), NMFaultHandler::initialise(), Heathrow::initialise(), HostedIrqManager::initialise(), Pic::initialise(), GPTimer::initialise(), OpenPic::initialise(), Ehci::initialiseController(), and ArmBeagleSerial::setBase().

+ Here is the caller graph for this function:

virtual bool InterruptManager::registerInterruptHandlerDebugger ( size_t  nInterruptNumber,
InterruptHandler pHandler 
)
pure virtual

Register an interrupt handler (for the kernel debugger)

Parameters
[in]nInterruptNumberthe interrupt's number
[in]pHandlerthe interrupt handler
Returns
true, if successfully registered, false otherwise

Implemented in MIPS32InterruptManager, X64InterruptManager, X86InterruptManager, PPC32InterruptManager, ARM926EInterruptManager, ARMV7InterruptManager, and HostedInterruptManager.


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