ReXGlue SDK
Toggle main menu visibility
Loading...
Searching...
No Matches
kernel_hook.h
Go to the documentation of this file.
1
10
11
#pragma once
12
13
#include <atomic>
14
15
#include <
rex/platform.h
>
16
#include <
rex/types.h
>
17
#include <
rex/ppc/context.h
>
18
19
namespace
rex::ppc
{
20
22
struct
KernelHooks
{
24
BoundThread
(*
get_bound_thread
)();
26
PPCFunc* (*resolve_function)(u32 guest_address);
28
void (*
check_hook_context
)(
const
PPCContext
& ctx,
const
char
* name);
30
void (*
check_bound_detour_local_writes
)(
const
char
* name,
const
PPCContext
& at_entry,
31
const
PPCContext
& at_exit, std::atomic_flag& warned);
33
void (*
check_bound_detour_arguments
)(
const
char
* name, PPCFunc* host, u8 declared_gpr,
34
u16 declared_fpr);
35
};
36
43
REX_PPC_API
void
SetKernelHooks
(
const
KernelHooks
* hooks);
44
45
}
// namespace rex::ppc
context.h
rex::ppc
Definition
title_runtime.h:33
rex::ppc::SetKernelHooks
REX_PPC_API void SetKernelHooks(const KernelHooks *hooks)
platform.h
Platform flags, packing macros and export markers.
REX_PPC_API
#define REX_PPC_API
Definition
platform.h:194
PPCContext
Definition
context.h:387
rex::ppc::BoundThread
Definition
context.h:719
rex::ppc::KernelHooks
Definition
kernel_hook.h:22
rex::ppc::KernelHooks::check_hook_context
void(*) check_hook_context(const PPCContext &ctx, const char *name)
Definition
kernel_hook.h:28
rex::ppc::KernelHooks::get_bound_thread
BoundThread(*) get_bound_thread()
Definition
kernel_hook.h:24
rex::ppc::KernelHooks::check_bound_detour_local_writes
void(*) check_bound_detour_local_writes(const char *name, const PPCContext &at_entry, const PPCContext &at_exit, std::atomic_flag &warned)
Definition
kernel_hook.h:30
rex::ppc::KernelHooks::check_bound_detour_arguments
void(*) check_bound_detour_arguments(const char *name, PPCFunc *host, u8 declared_gpr, u16 declared_fpr)
Definition
kernel_hook.h:33
types.h
Integer types, byte order wrappers and size literals.
rex
ppc
kernel_hook.h
Generated by
1.18.0