Skip to main content

Crate axiolid_capi

Crate axiolid_capi 

Source
Expand description

Versioned C ABI for Axiolid’s supported application facade.

ABI functions never unwind. Handles are globally unique scalar tokens; ownership transfers are documented per function and no Rust allocation crosses the boundary.

Structs§

AxiolidBounds
Axis-aligned mesh bounds.
AxiolidCapabilityDescriptor
Stable, pointer-free capability description. String lengths exclude padding.
AxiolidContextConfig
Hard allocation budgets and provider selection for one context.
AxiolidContextHandle
Globally unique opaque context token. Zero is always invalid.
AxiolidErrorInfo
Structured portion of a context-owned error record.
AxiolidMeasurements
Surface and signed-volume measurements.
AxiolidMeshAudit
Stable mesh-audit summary.
AxiolidMeshHandle
Globally unique opaque mesh token owned by an Axiolid context.
AxiolidResultHandle
Globally unique opaque operation-result token owned by a context.
AxiolidTolerance
Caller-supplied tolerance in model units and radians.
AxiolidTransform
Column-major affine transform.
AxiolidVersion
Semantic ABI and package version.

Enums§

AxiolidExactness
Exactness promise in a capability descriptor.
AxiolidGeometryKind
Representation stored by an operation result.
AxiolidOperation
Operation identifier in a capability descriptor.
AxiolidRepresentation
Representation identifier in a capability descriptor.
AxiolidStatus
v0.4 ABI status code.

Constants§

AXIOLID_BOOLEAN_DIFFERENCE
AXIOLID_BOOLEAN_INTERSECTION
AXIOLID_BOOLEAN_SYMMETRIC_DIFFERENCE
AXIOLID_BOOLEAN_UNION
AXIOLID_PROVIDER_PORTABLE

Functions§

axiolid_v0_4_boolean⚠
Execute a tolerance-bounded mesh Boolean and return an owned result handle.
axiolid_v0_4_capability_count⚠
Query the number of capabilities callable through this ABI context.
axiolid_v0_4_capability_get⚠
Copy one capability descriptor into caller-owned storage.
axiolid_v0_4_context_create⚠
Create and transfer ownership of a context handle to the caller.
axiolid_v0_4_context_destroy
Destroy a context and all child objects it owns.
axiolid_v0_4_context_last_error_info⚠
Copy structured metadata for the context’s most recent error.
axiolid_v0_4_context_last_error_message⚠
Copy the last error message into a caller-owned UTF-8 buffer.
axiolid_v0_4_context_live_object_counts⚠
Query live child-object counts for leak checks and shutdown assertions.
axiolid_v0_4_exact_boolean⚠
Exact Boolean is not part of v0.4; this function fails closed by contract.
axiolid_v0_4_exact_extrude_rectangle⚠
Construct an exact rectangular prism; no mesh fallback is permitted.
axiolid_v0_4_mesh_audit⚠
Audit mesh topology under an explicit tolerance.
axiolid_v0_4_mesh_bounds⚠
Compute axis-aligned bounds for a non-empty mesh.
axiolid_v0_4_mesh_copy⚠
Copy an indexed mesh into exactly-sized, caller-owned output buffers.
axiolid_v0_4_mesh_counts⚠
Query vertex and triangle counts before allocating export buffers.
axiolid_v0_4_mesh_destroy
Destroy a mesh handle. Repeated destruction returns InvalidHandle.
axiolid_v0_4_mesh_import⚠
Import an indexed triangle mesh. Input buffers are borrowed for this call only.
axiolid_v0_4_mesh_measure⚠
Measure surface area and signed volume under an explicit tolerance.
axiolid_v0_4_mesh_transform⚠
Apply a finite affine transform to mesh positions in place.
axiolid_v0_4_result_destroy
Destroy an operation result and its owned geometry.
axiolid_v0_4_result_kind⚠
Query whether a result owns an exact B-rep or triangle mesh.
axiolid_v0_4_result_take_mesh⚠
Consume a mesh result and transfer its mesh to a new context-owned mesh handle.
axiolid_v0_4_subtract_many⚠
Subtract a borrowed array of mesh handles from one subject mesh.
axiolid_v0_4_version⚠
Write the ABI/package version to caller-owned memory.

Type Aliases§

AxiolidBooleanOperator
Stable Boolean operand. An integer alias keeps unknown C values defined.
AxiolidProviderProfile
Stable provider bundle selection. Integer form makes unknown C values rejectable.