Oakfield API Documentation 1.0.0
Numerical core APIs
Loading...
Searching...
No Matches
SimSplitDescriptor Struct Reference

Full declarative description of a split operator sequence. More...

#include <operator_split.h>

Collaboration diagram for SimSplitDescriptor:

Public Attributes

const char * name
 
const SimSplitPortports
 
size_t port_count
 
const SimSplitSubstepsubsteps
 
size_t substep_count
 
void * state
 
const char *(* symbolic )(const void *state)
 
SimResult(* save_state )(struct SimContext *ctx, struct SimOperator *self, void *userdata)
 
SimResult(* restore_state )(struct SimContext *ctx, struct SimOperator *self, void *userdata)
 
void(* destroy )(void *state)
 
SimOperatorInfo info
 
SimOperatorConfig config
 
const void * catalog_metadata
 
SimSplitScratchRequest scratch
 

Detailed Description

Full declarative description of a split operator sequence.

The descriptor, port array, substep array, and access arrays are cloned during registration, but the state pointer remains caller-provided shared state. When the registered substep operators are destroyed, the optional destroy callback receives that shared state once.

Member Data Documentation

◆ catalog_metadata

const void* SimSplitDescriptor::catalog_metadata

Optional catalog/runtime metadata.

◆ config

SimOperatorConfig SimSplitDescriptor::config

Configuration copied onto each generated operator.

◆ destroy

void(* SimSplitDescriptor::destroy) (void *state)

Optional shared-state teardown.

◆ info

SimOperatorInfo SimSplitDescriptor::info

Metadata copied onto each generated operator.

◆ name

const char* SimSplitDescriptor::name

Container name; must be non-NULL.

◆ port_count

size_t SimSplitDescriptor::port_count

Number of entries in ports.

◆ ports

const SimSplitPort* SimSplitDescriptor::ports

Bound ports, copied during registration.

◆ restore_state

SimResult(* SimSplitDescriptor::restore_state) (struct SimContext *ctx, struct SimOperator *self, void *userdata)

Optional restore hook.

◆ save_state

SimResult(* SimSplitDescriptor::save_state) (struct SimContext *ctx, struct SimOperator *self, void *userdata)

Optional snapshot hook.

◆ scratch

SimSplitScratchRequest SimSplitDescriptor::scratch

Optional scratch requirements.

◆ state

void* SimSplitDescriptor::state

Shared user state passed to substeps and hooks.

◆ substep_count

size_t SimSplitDescriptor::substep_count

Number of substeps; must be nonzero.

◆ substeps

const SimSplitSubstep* SimSplitDescriptor::substeps

Substeps, copied during registration.

◆ symbolic

const char *(* SimSplitDescriptor::symbolic) (const void *state)

Optional symbolic form callback.


The documentation for this struct was generated from the following file: