Line 36: |
Line 36: |
| | 8 || u32 || ReferenceCount | | | 8 || u32 || ReferenceCount |
| |- | | |- |
− | | 0x10 || u64 || ? | + | | 0x10 || [[#KRedBlackTreeNode]] || Intrusive red-black tree node, replaces the Intrusive list node from previous versions. |
− | |-
| |
− | | 0x18 || ptr || ?
| |
− | |-
| |
− | | 0x20 || u64 || ?
| |
− | |-
| |
− | | 0x28 || u64 || ?
| |
| |} | | |} |
| | | |
Line 151: |
Line 145: |
| |- | | |- |
| | 8 || [[#KLinkedListNode]] || Bounds (first, last) | | | 8 || [[#KLinkedListNode]] || Bounds (first, last) |
| + | |} |
| + | |
| + | = KRedBlackTreeNode = |
| + | Size: 0x20 |
| + | |
| + | Note: This is BSD sys/tree.h's RB_ENTRY(...). |
| + | |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Offset || Type || Description |
| + | |- |
| + | | 0 || KRedBlackTreeNode* || Left Child |
| + | |- |
| + | | 8 || KRedBlackTreeNode* || Right Child |
| + | |- |
| + | | 0x10 || KRedBlackTreeNode* || Parent |
| + | |- |
| + | | 0x18 || int || Color |
| + | |} |
| + | |
| + | = KRedBlackTree = |
| + | Size: 0x8 |
| + | |
| + | Note: This is BSD sys/tree.h's RB_HEAD(..., KRedBlackTreeNode); |
| + | |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Offset || Type || Description |
| + | |- |
| + | | 0 || KRedBlackTreeNode* || Root |
| + | |- |
| |} | | |} |
| | | |
Line 578: |
Line 603: |
| [2.0.0] Size: 8 | | [2.0.0] Size: 8 |
| | | |
− | [6.0.0]? Size: 0x10 | + | [5.0.0] Size: 0x10 |
| | | |
| <div style="display: inline-block"> | | <div style="display: inline-block"> |
Line 609: |
Line 634: |
| {| class="wikitable" border="1" | | {| class="wikitable" border="1" |
| |- | | |- |
− | ! 6.0.0 Offset || Type || Description | + | ! 5.0.0 Offset || Type || Description |
| |- | | |- |
| | 0 || u16 || HandleId | | | 0 || u16 || HandleId |
| |- | | |- |
− | | 2 || u8 || ObjectType | + | | 2 || u16 || ObjectType |
| |- | | |- |
− | | 4 || u32 || ObjectCompressedPtr
| + | | 8 || [[#KAutoObject]]* || object |
− | |-
| |
− | | 8 || ptr || ? | |
| |} | | |} |
| </div> | | </div> |
Line 1,045: |
Line 1,068: |
| | | |
| = KPort = | | = KPort = |
− | Size: 0xA8 | + | [1.0.0] Size: 0xA8 |
| + | |
| + | [7.0.0] Size: 0x110 |
| | | |
| Inherits from: [[#KAutoObject]] | | Inherits from: [[#KAutoObject]] |
| | | |
| + | |
| + | <div style="display: inline-block;"> |
| {| class="wikitable" border="1" | | {| class="wikitable" border="1" |
| |- | | |- |
− | ! Offset | + | ! 1.0.0 Offset |
| ! Type | | ! Type |
| ! Description | | ! Description |
Line 1,067: |
Line 1,094: |
| | 0xA1 || bool || IsLight | | | 0xA1 || bool || IsLight |
| |} | | |} |
| + | </div> |
| + | |
| + | <div style="display: inline-block; vertical-align:top;"> |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! 7.0.0 Offset |
| + | ! Type |
| + | ! Description |
| + | |- |
| + | | 0 || [[#KAutoObject]] || Inheritance |
| + | |- |
| + | | 0x30 || [[#KServerPort]] || ServerSide |
| + | |- |
| + | | 0xA0 || [[#KClientPort]] || ClientSide |
| + | |- |
| + | | 0xF8 || u64 || |
| + | |- |
| + | | 0x100 || char* || NamePtr |
| + | |- |
| + | | 0x108 || bool || HasInited |
| + | |- |
| + | | 0x109 || bool || IsLight |
| + | |} |
| + | </div> |
| | | |
| == KServerPort == | | == KServerPort == |
Line 1,147: |
Line 1,198: |
| | 0x50 || [[#KSessionRequest]]* || ActiveRequest | | | 0x50 || [[#KSessionRequest]]* || ActiveRequest |
| |- | | |- |
− | | 0x58 || || | + | | 0x58 || [[#KMutex]] || lock |
| |} | | |} |
| | | |
Line 1,702: |
Line 1,753: |
| ! Offset || Type || Description | | ! Offset || Type || Description |
| |- | | |- |
− | | 0 || [[#KIrqReciever*]] || Receiver | + | | 0 || [[#KInterruptReceiver]]* || Receiver |
| |- | | |- |
| | 8 || u8 || State0 | | | 8 || u8 || State0 |