Add interrupt support to `vwpp::Task` interface
rneswold opened this issue · 0 comments
rneswold commented
Add a nested class for vwpp::Task
that encompasses interrupt management.
- Creating the object attaches it to the vector table.
- Destroying the object will unregister it.
- The interrupt handler should be pure virtual. It'll have one parameter; a
vwpp::IntLock const&
.
This might be a small hierarchy of abstract classes, depending if we need to handle VME interrupts differently than PCI interrupts
IntBase --+--> VMEInt -----> UserVMEInt
\-> PCIInt -----> UserPCIInt
This also brings up the idea of creating a vwpp::IntUnlock
object, in case an interrupt routine wants to re-enable interrupts.