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§
- Axiolid
Bounds - Axis-aligned mesh bounds.
- Axiolid
Capability Descriptor - Stable, pointer-free capability description. String lengths exclude padding.
- Axiolid
Context Config - Hard allocation budgets and provider selection for one context.
- Axiolid
Context Handle - Globally unique opaque context token. Zero is always invalid.
- Axiolid
Error Info - Structured portion of a context-owned error record.
- Axiolid
Measurements - Surface and signed-volume measurements.
- Axiolid
Mesh Audit - Stable mesh-audit summary.
- Axiolid
Mesh Handle - Globally unique opaque mesh token owned by an Axiolid context.
- Axiolid
Result Handle - Globally unique opaque operation-result token owned by a context.
- Axiolid
Tolerance - Caller-supplied tolerance in model units and radians.
- Axiolid
Transform - Column-major affine transform.
- Axiolid
Version - Semantic ABI and package version.
Enums§
- Axiolid
Exactness - Exactness promise in a capability descriptor.
- Axiolid
Geometry Kind - Representation stored by an operation result.
- Axiolid
Operation - Operation identifier in a capability descriptor.
- Axiolid
Representation - Representation identifier in a capability descriptor.
- Axiolid
Status - 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§
- Axiolid
Boolean Operator - Stable Boolean operand. An integer alias keeps unknown C values defined.
- Axiolid
Provider Profile - Stable provider bundle selection. Integer form makes unknown C values rejectable.