X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=KernelLand%2FKernel%2Finclude%2Fevents.h;h=17143e862aa078d99a4de7d1fc52e9839e2ddfa8;hb=13078002b01ee4f63eb2001d2ef479a2a006ea32;hp=675c3dbc5c3ac5760f92295481fa259e36ccdd64;hpb=51ab5f489bc356940c95cc936fd0508e8f07ea97;p=tpg%2Facess2.git diff --git a/KernelLand/Kernel/include/events.h b/KernelLand/Kernel/include/events.h index 675c3dbc..17143e86 100644 --- a/KernelLand/Kernel/include/events.h +++ b/KernelLand/Kernel/include/events.h @@ -10,13 +10,35 @@ #include +/** + * \name Event Values + * \{ + */ +//! Fired when a VFS wait is ready [used in select(2)] #define THREAD_EVENT_VFS 0x00000001 +//! Fired when an IPC Message arrives #define THREAD_EVENT_IPCMSG 0x00000002 +//! Fired when a signal (e.g. SIGINT) is asserted #define THREAD_EVENT_SIGNAL 0x00000004 +//! Timer event fire #define THREAD_EVENT_TIMER 0x00000008 +//! General purpose event for short waits +//! e.g. waiting for an IRQ in a Read() call +#define THREAD_EVENT_SHORTWAIT 0x00000010 +//! Fired when a child process quits +#define THREAD_EVENT_DEADCHILD 0x00000020 + +#define THREAD_EVENT_USER1 0x10000000 +#define THREAD_EVENT_USER2 0x20000000 +#define THREAD_EVENT_USER3 0x40000000 +#define THREAD_EVENT_USER4 0x80000000 +/** + * \} + */ // === FUNCTIONS === extern void Threads_PostEvent(tThread *Thread, Uint32 EventMask); +extern void Threads_ClearEvent(Uint32 EventMask); extern Uint32 Threads_WaitEvents(Uint32 EventMask); #endif