RLMeshRunContextVtable
Contexts are shared and retained independently from hook invocation. Every protocol slot is required; NULL slots fail with INVALID_ARGUMENT.
struct RLMeshRunContextVtableFields
- struct_size
size_t struct_size - contract
RLMeshStatus (*contract)(void* user_data, RLMeshEnvContract** out) - num_envs
RLMeshStatus (*num_envs)(void* user_data, uint64_t* out) - read
RLMeshStatus (*read)(void* user_data, const RLMeshValue* observation, const RLMeshReadItem* item, RLMeshValue** out) - frame_sources
RLMeshStatus (*frame_sources)(void* user_data, RLMeshFrameSources** out) - free_user_data
void (*free_user_data)(void* user_data)
struct_size
field[source]size_t struct_sizecontract
field[source]RLMeshStatus (*contract)(void* user_data, RLMeshEnvContract** out)num_envs
field[source]RLMeshStatus (*num_envs)(void* user_data, uint64_t* out)read
field[source]RLMeshStatus (
*read
)(void* user_data, const RLMeshValue* observation, const RLMeshReadItem* item, RLMeshValue** out)frame_sources
field[source]RLMeshStatus (*frame_sources)(void* user_data, RLMeshFrameSources** out)free_user_data
field[source]void (*free_user_data)(void* user_data)