Epok Engine

PSYQO SDK

psyqo::Kernel::waitForStatus

Function template · 1 overload

Function template

Waits for a specific status to be set in a register.

Belongs to
psyqo::Kernel
Header
kernel.hh
Overloads
1

Declaration

static · template
Declaration
template <typename T> static void waitForStatus(T mask, T expected, const volatile T* value)

Waits for a specific status to be set in a register.

ParameterTypeMeaning
maskTThe mask to apply to the register.
expectedTThe expected value of the register after applying the mask.
valueconst volatile T *The address of the register to wait for.

Returns: Nothing (void).

Example

C++ example
#include "psyqo/kernel.hh"

// Replace these template arguments with types or values accepted by the declaration:
// T

// Assume these named values have been initialized with valid data:
// T mask
// T expected
// const volatile T * value

psyqo::Kernel::waitForStatus<T>(mask, expected, value);

Why use it

Template dispatch is resolved at compile time and normally adds no runtime indirection.

Trade-offs and warnings

Every instantiated type must satisfy the header's compile-time requirements; extra instantiations can increase code size. Pointer/reference arguments are borrowed unless the source contract says otherwise; keep them valid for the complete operation and never assume null is accepted.

Declared in https://github.com/pcsx-redux/nugget/blob/6186b131aacc5853a9161fb076ed34ffe504552d/psyqo/kernel.hh:118

Related members