Changes

Jump to navigation Jump to search
827 bytes added ,  16:52, 2 December 2016
Created page with "Abstract base class for all interrupt events. Size: 0x4 bytes {| class="wikitable" border="1" |- ! Offset ! Type ! Description |- | 0x0 | void ** | Pointer to vtable |}..."
Abstract base class for all interrupt events.

Size: 0x4 bytes

{| class="wikitable" border="1"
|-
! Offset
! Type
! Description
|-
| 0x0
| void **
| Pointer to vtable
|}

This abstract base class defines <code>virtual KSchedulableInterruptEvent* handleInterruptAndGetKSchedulableInterruptEvent(u32 interruptID) = 0</code>. It's actually the function called by the IRQ handler, which returns a [[KSchedulableInterruptEvent|KSchedulableInterruptEvent]] to call the second virtual method of (which signals the object) after a reschedule.

If either NULL or 1 is returned, nothing will be signaled. If NULL is returned, no post-interrupt rescheduling will be done.

The kernel uses the [[KSchedulableInterruptEvent|KEventInterruptEvent]] field of a [[KEvent|KEvent]] when binding public interrupts per svcBindInterrupt request.

Navigation menu