RLMeshModelVtable
Corners write OWNED values into pre-zeroed out slots. On nonzero the library frees rows already written. context(s) is NULL unless the corner's bit is set in context_corners.
struct RLMeshModelVtableFields
- struct_size
size_t struct_size - predict
RLMeshStatus (*predict)(void* user_data, const RLMeshValue* observation, const RLMeshPredictContext* context, RLMeshValue** out_action) - predict_chunk
RLMeshStatus (*predict_chunk)(void* user_data, const RLMeshValue* observation, uint32_t execution_horizon, const RLMeshPredictContext* context, RLMeshValue** out_chunk) - predict_batch
RLMeshStatus (*predict_batch)(void* user_data, const RLMeshValue* const* observations, size_t count, const RLMeshPredictContext* const* contexts, RLMeshValue** out_actions) - predict_chunk_batch
RLMeshStatus (*predict_chunk_batch)(void* user_data, const RLMeshValue* const* observations, size_t count, uint32_t execution_horizon, const RLMeshPredictContext* const* contexts, RLMeshValue** out_chunks) - on_episode_end
RLMeshStatus (*on_episode_end)(void* user_data, const char* episode_id) - close
RLMeshStatus (*close)(void* user_data) - load
RLMeshStatus (*load)(void* user_data, const RLMeshValue* kwargs) - loaded_native_chunk
RLMeshStatus (*loaded_native_chunk)(void* user_data, bool* out_has, uint32_t* out) - free_user_data
void (*free_user_data)(void* user_data) - context_corners0; bits of non-NULL slots only, else RLMESH_ERR_TYPE.
- _reserved0
uint32_t _reserved0 - spec{RLMESH_SPEC_KIND_NONE, NULL}.
- allow_fusiontrue.
- has_native_chunk
bool has_native_chunk - _reserved1false.
- native_chunkstatic K for describe; 0 with has_native_chunk: ValueError class.
- workflow_editionNULL = None.
- load_keysNULL = None: every key reaches load.
- load_keys_lenentries, deep-copied; non-NULL with 0 = []; NULL with >0: RLMESH_ERR_TYPE.
struct_size
field[source]size_t struct_sizepredict
field[source]RLMeshStatus (
*predict
)(void* user_data, const RLMeshValue* observation, const RLMeshPredictContext* context, RLMeshValue** out_action)predict_chunk
field[source]RLMeshStatus (
*predict_chunk
)(void* user_data, const RLMeshValue* observation, uint32_t execution_horizon, const RLMeshPredictContext* context, RLMeshValue** out_chunk)predict_batch
field[source]RLMeshStatus (
*predict_batch
)(void* user_data, const RLMeshValue* const* observations, size_t count, const RLMeshPredictContext* const* contexts, RLMeshValue** out_actions)predict_chunk_batch
field[source]RLMeshStatus (
*predict_chunk_batch
)(void* user_data, const RLMeshValue* const* observations, size_t count, uint32_t execution_horizon, const RLMeshPredictContext* const* contexts, RLMeshValue** out_chunks)on_episode_end
field[source]RLMeshStatus (*on_episode_end)(void* user_data, const char* episode_id)close
field[source]RLMeshStatus (*close)(void* user_data)load
field[source]RLMeshStatus (*load)(void* user_data, const RLMeshValue* kwargs)loaded_native_chunk
field[source]RLMeshStatus (
*loaded_native_chunk
)(void* user_data, bool* out_has, uint32_t* out)free_user_data
field[source]void (*free_user_data)(void* user_data)context_corners
field[source]uint32_t context_corners0; bits of non-NULL slots only, else RLMESH_ERR_TYPE
_reserved0
field[source]uint32_t _reserved0spec
field[source]RLMeshSpecArg spec{RLMESH_SPEC_KIND_NONE, NULL}
allow_fusion
field[source]bool allow_fusiontrue
has_native_chunk
field[source]bool has_native_chunk_reserved1
field[source]uint8_t _reserved1[2]false
native_chunk
field[source]uint32_t native_chunkstatic K for describe; 0 with has_native_chunk: ValueError class
workflow_edition
field[source]const char* workflow_editionNULL = None
load_keys
field[source]const RLMeshLoadKey* load_keysNULL = None: every key reaches load
load_keys_len
field[source]size_t load_keys_lenentries, deep-copied; non-NULL with 0 = []; NULL with >0: RLMESH_ERR_TYPE