CavalierContours icon indicating copy to clipboard operation
CavalierContours copied to clipboard

Create Stable C API Release

Open jbuckmccready opened this issue 5 years ago • 1 comments

Create version tags and create a stable C API interface that follows semantic versioning (https://semver.org/). A C API will make it easy to create bindings from other languages and allow for changes and updates to the underlying C++ implementation without breaking users.

A potentially small overhead will be incurred in copying from the C API structures/arrays to the C++ structures but should be negligible for the algorithms being used (offsetting, combining, etc.).

jbuckmccready avatar Apr 05 '20 05:04 jbuckmccready

Initial pass at C API is done, not all tests are fully implemented. Plan is to wrap C API in another .NET project to verify the API is clean/not cumbersome to use (and allows for minimal allocations via pooling).

jbuckmccready avatar Apr 17 '20 07:04 jbuckmccready