aboutsummaryrefslogtreecommitdiff
path: root/include/libsurvive/survive_api.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/libsurvive/survive_api.h')
-rw-r--r--include/libsurvive/survive_api.h30
1 files changed, 30 insertions, 0 deletions
diff --git a/include/libsurvive/survive_api.h b/include/libsurvive/survive_api.h
new file mode 100644
index 0000000..30e30ac
--- /dev/null
+++ b/include/libsurvive/survive_api.h
@@ -0,0 +1,30 @@
+#include "survive_types.h"
+#include <stdbool.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+ struct SurviveAsyncContext;
+ typedef struct SurviveAsyncContext SurviveAsyncContext;
+
+ SURVIVE_EXPORT SurviveAsyncContext *survive_asyc_init(int argc, char *const *argv);
+ SURVIVE_EXPORT void survive_async_close(SurviveAsyncContext* actx);
+
+ SURVIVE_EXPORT void survive_async_start_thread(SurviveAsyncContext* actx);
+ SURVIVE_EXPORT int survive_async_stop_thread(SurviveAsyncContext* actx);
+ SURVIVE_EXPORT bool survive_async_is_running(SurviveAsyncContext* actx);
+
+ struct SurviveAsyncObject;
+ typedef struct SurviveAsyncObject SurviveAsyncObject;
+
+ SURVIVE_EXPORT const SurviveAsyncObject* survive_async_get_first_tracked(SurviveAsyncContext* actx);
+ SURVIVE_EXPORT const SurviveAsyncObject* survive_async_get_next_tracked(SurviveAsyncContext* actx, const SurviveAsyncObject* curr);
+ SURVIVE_EXPORT const SurviveAsyncObject* survive_async_get_next_updated(SurviveAsyncContext* actx);
+
+ SURVIVE_EXPORT survive_timecode survive_async_object_get_latest_pose(const SurviveAsyncObject* sao, SurvivePose* pose);
+ SURVIVE_EXPORT const char* survive_async_object_name(SurviveAsyncObject* sao);
+
+#ifdef __cplusplus
+}
+#endif