pySimBlocks.blocks.systems.sofa.sofa_exchange_i_o¶
- class pySimBlocks.blocks.systems.sofa.sofa_exchange_i_o.SofaExchangeIO(name: str, input_keys: list[str], output_keys: list[str], slider_params: Dict[str, List[float]] | None = None, sample_time: float | None = None)[source]¶
Bases:
BlockSOFA exchange interface block.
Acts as a data exchange boundary between a pySimBlocks model and an external SOFA controller. Input and output ports are declared dynamically from
input_keysandoutput_keys. The block is stateless and performs no computation — outputs are produced by upstream blocks in the pySimBlocks model through normal signal propagation.- input_keys¶
Names of the input ports fed by the SOFA controller.
- output_keys¶
Names of the output ports consumed by the SOFA controller.
- slider_params¶
Optional ImGui slider configuration, mapping
"BlockName.attr"to[min, max]bounds.
- direct_feedthrough = False¶
True if outputs depend directly on inputs.
- is_source = False¶
True if the block produces signals with no inputs.
- classmethod adapt_params(params: Dict[str, Any], params_dir: Path | None = None) Dict[str, Any][source]¶
Strip the
scene_filekey which is not used by this block.- Parameters:
params – Raw parameter dict loaded from the YAML project file.
params_dir – Directory of the project file. Not used here.
- Returns:
Parameter dict with
scene_fileremoved.