Files
linuxcncWebWASM/coverage/kinematics-abi-contract.json

232 lines
5.5 KiB
JSON

{
"abi_version": 1,
"context_id": "linuxcnc-2.10.0-pre0-wasm-m1-py-c1",
"contract_sha256": "3c338760a86122d25b76e5a27e26b9c79d8579e1ca96638ed932b8ca8e41283a",
"declared_functions": [
"sim_kinematics_forward",
"sim_kinematics_forward_ex",
"sim_kinematics_home",
"sim_kinematics_init",
"sim_kinematics_inverse",
"sim_kinematics_inverse_ex",
"sim_kinematics_state_hash",
"sim_kinematics_validate_pose"
],
"enums": {
"sim_kinematics_mode": [
{
"name": "SIM_KIN_MODE_DEFAULT",
"value": 0
},
{
"name": "SIM_KIN_MODE_IDENTITY",
"value": 1
},
{
"name": "SIM_KIN_MODE_FORWARD_ONLY",
"value": 2
},
{
"name": "SIM_KIN_MODE_INVERSE_ONLY",
"value": 3
},
{
"name": "SIM_KIN_MODE_BOTH",
"value": 4
}
],
"sim_kinematics_result": [
{
"name": "SIM_KIN_OK",
"value": 0
},
{
"name": "SIM_KIN_ERR_ARGUMENT",
"value": -700
},
{
"name": "SIM_KIN_ERR_NONFINITE",
"value": -701
},
{
"name": "SIM_KIN_ERR_RANGE",
"value": -702
},
{
"name": "SIM_KIN_ERR_CONFIGURATION",
"value": -703
},
{
"name": "SIM_KIN_ERR_SINGULAR",
"value": -704
},
{
"name": "SIM_KIN_ERR_UNKNOWN_TYPE",
"value": -705
},
{
"name": "SIM_KIN_ERR_UNSUPPORTED",
"value": -706
}
],
"sim_kinematics_type": [
{
"name": "SIM_KIN_TRIVKINS",
"value": 1
},
{
"name": "SIM_KIN_XYZAC_TRT",
"value": 2
},
{
"name": "SIM_KIN_XYZBC_TRT",
"value": 3
},
{
"name": "SIM_KIN_XYZBCW",
"value": 4
},
{
"name": "SIM_KIN_COREXY",
"value": 5
},
{
"name": "SIM_KIN_ROSE",
"value": 6
},
{
"name": "SIM_KIN_MAXKINS",
"value": 7
},
{
"name": "SIM_KIN_ROTATEKINS",
"value": 8
},
{
"name": "SIM_KIN_5AXISKINS",
"value": 9
},
{
"name": "SIM_KIN_SCARA",
"value": 10
},
{
"name": "SIM_KIN_PUMA",
"value": 11
},
{
"name": "SIM_KIN_SCORBOT",
"value": 12
},
{
"name": "SIM_KIN_GENSER",
"value": 13
}
]
},
"errors": {
"SIM_KIN_ERR_ARGUMENT": -700,
"SIM_KIN_ERR_CONFIGURATION": -703,
"SIM_KIN_ERR_NONFINITE": -701,
"SIM_KIN_ERR_RANGE": -702,
"SIM_KIN_ERR_SINGULAR": -704,
"SIM_KIN_ERR_UNKNOWN_TYPE": -705,
"SIM_KIN_ERR_UNSUPPORTED": -706,
"SIM_KIN_OK": 0
},
"exported_functions": [
"sim_kinematics_forward",
"sim_kinematics_forward_ex",
"sim_kinematics_home",
"sim_kinematics_init",
"sim_kinematics_inverse",
"sim_kinematics_inverse_ex",
"sim_kinematics_state_hash",
"sim_kinematics_validate_pose"
],
"inputs": {
"cmake": "wasm-core/CMakeLists.txt",
"cmake_sha256": "e9296a3983a531e4e6864d05e2e97c8dbf29e0dc9e45942ecc1a0a7222b3a660",
"header": "wasm-core/include/sim_kinematics.h",
"header_sha256": "5fd01043d705486b0d365e36109c3b0e0d39f220c2cec313b5b747dca06148bc"
},
"missing_required_exports": [],
"numeric_policy": {
"fast_math": false,
"fp_contract": "off",
"iteration_limit": 100000,
"nonfinite": "SIM_KIN_ERR_NONFINITE",
"state_hash": "FNV-1a-64"
},
"required_functions": [
"sim_kinematics_init",
"sim_kinematics_forward",
"sim_kinematics_forward_ex",
"sim_kinematics_inverse",
"sim_kinematics_inverse_ex",
"sim_kinematics_home",
"sim_kinematics_validate_pose",
"sim_kinematics_state_hash"
],
"schema": "kinematics-abi-contract.v1",
"status": "verified",
"structs": {
"sim_kinematics": [
"sim_kinematics_config config;",
"int axis_joint[SIM_KIN_MAX_JOINTS];",
"uint32_t configured;",
"uint64_t forward_flags;",
"uint64_t inverse_flags;",
"sim_posemath_pose last_pose;",
"double last_residual;",
"uint32_t last_iterations;",
"uint32_t branch_id;",
"int32_t revolution_count;",
"uint32_t previous_quadrant;"
],
"sim_kinematics_config": [
"int type;",
"int mode;",
"uint32_t joint_count;",
"uint32_t kinematics_joint_count;",
"uint32_t extra_joint_count;",
"char coordinates[16];",
"double x_rot_point;",
"double y_rot_point;",
"double z_rot_point;",
"double x_offset;",
"double y_offset;",
"double z_offset;",
"double tool_offset;",
"double pivot_length;",
"double scara_d1;",
"double scara_d2;",
"double scara_d3;",
"double scara_d4;",
"double scara_d5;",
"double scara_d6;",
"double puma_a2;",
"double puma_a3;",
"double puma_d3;",
"double puma_d4;",
"double puma_d6;",
"uint32_t dh_joint_count;",
"double dh_a[SIM_KIN_MAX_JOINTS];",
"double dh_alpha[SIM_KIN_MAX_JOINTS];",
"double dh_d[SIM_KIN_MAX_JOINTS];",
"uint32_t max_iterations;",
"double convergence_tolerance;",
"uint8_t limit_enabled[SIM_KIN_MAX_JOINTS];",
"double joint_min[SIM_KIN_MAX_JOINTS];",
"double joint_max[SIM_KIN_MAX_JOINTS];"
],
"sim_kinematics_result_info": [
"uint64_t forward_flags;",
"uint64_t inverse_flags;",
"double residual;",
"uint32_t iterations;",
"uint32_t branch_id;"
]
}
}