Difference between revisions of "KSemaphore"

From 3dbrew
Jump to navigation Jump to search
Line 32: Line 32:
 
| 0x14
 
| 0x14
 
| u32
 
| u32
| Pointer to KSemaphoreInterrupt vtable
+
| Pointer to KSemaphoreInterruptEvent vtable
 
|-
 
|-
 
| 0x18
 
| 0x18
 
| u32
 
| u32
| Pointer to object (...)
+
| Pointer to object it's waiting on(?)
 
|-
 
|-
 
| 0x1C
 
| 0x1C

Revision as of 06:36, 14 February 2016

class KSemaphore extends KSynchronizationObject;

Size : 0x2C bytes

Offset Type Description
0x0 u32 Pointer to vtable
0x4 u32 Reference count
0x8 u32 Count of KThreads that sync with this object - number of nodes in the linked list below
0xC KLinkedListNode* Pointer to first KLinkedListNode in list of KThreads that sync with this semaphore
0x10 KLinkedListNode* Pointer to last KLinkedListNode in list of KThreads that sync with this semaphore
0x14 u32 Pointer to KSemaphoreInterruptEvent vtable
0x18 u32 Pointer to object it's waiting on(?)
0x1C u32 Priority
0x20 u32 Count
0x24 u32 Max count
0x28 KProcess* Owner