The SDK exports a C API. You can call SDK functions from C, C++, Objective-C, or Swift directly. Other languages may require a bridge.
The C API defines a set of pseudo-objects that the SDK makes available for use by an application. Each object is represented in C by a distinct object type and a set of functions which share a common function name prefix. The function name prefix reflects the type of object on which the function can be called.
Memory is managed via reference counting. Use the ARKObjectRetain() API to increment the reference count and use ARKObjectRelease() to decrement the reference count. Once the reference count of an object reaches zero, the object and all the resources managed by the object are freed. You should generically request ARKObjectRetain() if you want to keep an object alive and ARKObjectRelease() if you no longer care about an object.