ReXGlue SDK
Toggle main menu visibility
Loading...
Searching...
No Matches
object_block.h
Go to the documentation of this file.
1
10
11
#pragma once
12
13
#include <
rex/platform.h
>
14
#include <
rex/types.h
>
15
16
namespace
rex::kernel
{
17
18
class
GuestAddressSpace
;
19
class
WorkspaceHeap
;
20
21
struct
ObjectBlock
{
22
u32
address
= 0;
23
bool
owned
=
false
;
24
WorkspaceHeap
*
workspace
=
nullptr
;
25
};
26
27
enum class
ObjectBlockHeap : u8 {
28
kSystem,
29
kWorkspace,
30
};
31
40
REX_KERNEL_API
ObjectBlock
AllocObjectBlock
(
kernel::GuestAddressSpace
*
memory
, u32 size,
41
u32 type_address,
WorkspaceHeap
* workspace =
nullptr
);
42
49
REX_KERNEL_API
void
FreeObjectBlock
(
kernel::GuestAddressSpace
*
memory
, u32 address,
50
WorkspaceHeap
* workspace =
nullptr
);
51
52
}
// namespace rex::kernel
rex::kernel::GuestAddressSpace
Definition
heap.h:594
rex::kernel::WorkspaceHeap
Definition
guest_allocator.h:179
rex::kernel
Definition
export.h:24
rex::kernel::AllocObjectBlock
ObjectBlock AllocObjectBlock(kernel::GuestAddressSpace *memory, u32 size, u32 type_address, WorkspaceHeap *workspace=nullptr)
rex::kernel::FreeObjectBlock
void FreeObjectBlock(kernel::GuestAddressSpace *memory, u32 address, WorkspaceHeap *workspace=nullptr)
rex::memory
Definition
endian.h:27
platform.h
Platform flags, packing macros and export markers.
REX_KERNEL_API
#define REX_KERNEL_API
Definition
platform.h:297
rex::kernel::ObjectBlock
Definition
object_block.h:21
rex::kernel::ObjectBlock::address
u32 address
Definition
object_block.h:22
rex::kernel::ObjectBlock::owned
bool owned
Definition
object_block.h:23
rex::kernel::ObjectBlock::workspace
WorkspaceHeap * workspace
Definition
object_block.h:24
types.h
Integer types, byte order wrappers and size literals.
rex
kernel
object
object_block.h
Generated by
1.18.0