StuBS
Gate Class Referenceabstract

Class of objects that are capable of handling interrupts. More...

#include <interrupt/gate.h>

Inheritance diagram for Gate:
[legend]

Public Member Functions

 Gate ()
 Is this epiloque already marked for execution Add a member that stores the information whether a Gate has already been queued.
 
virtual ~Gate ()
 Destructor.
 
virtual void trigger ()=0
 Device-specific interrupt handler.
 

Private Member Functions

 Gate (const Gate &)=delete
 
Gateoperator= (const Gate &)=delete
 

Detailed Description

Class of objects that are capable of handling interrupts.

All objects to be assigned in Plugbox must be derived from this class.

Each inheriting class must define the virtual method Gate::trigger().

Constructor & Destructor Documentation

◆ Gate() [1/2]

Gate::Gate ( const Gate )
privatedelete

◆ Gate() [2/2]

Gate::Gate ( )
inline

Is this epiloque already marked for execution Add a member that stores the information whether a Gate has already been queued.

Note
For MPStuBS, an epilogue might be queued on every core. Hence, you need multiple instances of queued. Have a look at PerCore.
Todo:
Add member

Constructor

◆ ~Gate()

virtual Gate::~Gate ( )
inlinevirtual

Destructor.

Classes with virtual methods should always have a virtual destructor (which can be empty as well). In StuBS this will calm the compiler, on other systems this will guarantee that delete will free the memory for objects of the derived classes correctly.

Member Function Documentation

◆ operator=()

Gate & Gate::operator= ( const Gate )
privatedelete

◆ trigger()

virtual void Gate::trigger ( )
pure virtual

Device-specific interrupt handler.

This method is executed immediately after the interrupt occurs (asynchronously). Since it is implemented as a pure virtual method, it must be implemented by each derived classes.

Implemented in Mouse, Keyboard, and Panic.


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