Main Page | Modules | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members | File Members

Virq Class Reference

#include <virq.h>

Inheritance diagram for Virq:

Irq Observer Irq_alloc Sender List of all members.

Public Member Functions

 Virq (unsigned irqnum)
bool alloc (Receiver *t, bool)
 Bind a receiver to this virtual interrupt.
bool free (Receiver *t)
 Release an virtual interrupt.
void hit ()
 The corresponding virtual interrupt occurred -- handle it.
void notify ()
void acknowledge ()

Private Member Functions

 Virq ()
 Virq (Virq &)

Constructor & Destructor Documentation

Virq::Virq  )  [private]
 

Virq::Virq Virq  )  [private]
 

Virq::Virq unsigned  irqnum  )  [inline, explicit]
 


Member Function Documentation

void Virq::acknowledge  )  [virtual]
 

Implements Irq_alloc.

bool Virq::alloc Receiver t,
bool 
[inline, virtual]
 

Bind a receiver to this virtual interrupt.

Parameters:
t the receiver that wants to receive IPC messages for this IRQ
ack_in_kernel if true, the kernel will acknowledge the interrupt, as opposed to user-level acknowledgement
Returns:
true if the binding could be established

Implements Irq_alloc.

bool Virq::free Receiver t  )  [inline, virtual]
 

Release an virtual interrupt.

Parameters:
t the receiver that owns the IRQ
Returns:
true if t really was the owner of the IRQ and operation was successful

Implements Irq_alloc.

void Virq::hit  )  [inline]
 

The corresponding virtual interrupt occurred -- handle it.

This method checks whether the attached receiver is ready to receive an IRQ message, and if so, restarts it so that it can pick up the IRQ message using ipc_receiver_ready().

void Virq::notify  )  [inline, virtual]
 

Implements Observer.


The documentation for this class was generated from the following files:
Generated on Mon Sep 26 14:20:18 2005 for Fiasco by  doxygen 1.4.2