diff options
-rw-r--r-- | opentrack-api/opentrack-guts.h | 10 | ||||
-rw-r--r-- | opentrack-api/opentrack.h | 20 |
2 files changed, 21 insertions, 9 deletions
diff --git a/opentrack-api/opentrack-guts.h b/opentrack-api/opentrack-guts.h index 1061d75d..3f8806cc 100644 --- a/opentrack-api/opentrack-guts.h +++ b/opentrack-api/opentrack-guts.h @@ -11,9 +11,15 @@ #include <iostream> #include <cstring> +#ifdef __GNUC__ +# define OPENTRACK_HIDDEN __attribute__((visibility ("hidden"))) +#else +# define OPENTRACK_HIDDEN +#endif + typedef ITracker* opentrack_tracker; -class opentrack_meta { +class OPENTRACK_HIDDEN opentrack_meta { public: Metadata* meta; QString path; @@ -29,7 +35,7 @@ public: } }; -typedef class opentrack_ctx { +typedef class OPENTRACK_HIDDEN opentrack_ctx { public: QDir dir; char** list; diff --git a/opentrack-api/opentrack.h b/opentrack-api/opentrack.h index 8d28b5b8..95339d08 100644 --- a/opentrack-api/opentrack.h +++ b/opentrack-api/opentrack.h @@ -25,6 +25,12 @@ typedef opentrack_opaque_tracker* opentrack_tracker; # endif #endif +#ifdef __GNUC__ +# define OPENTRACK_VISIBLE __attribute__((visibility ("default"))) +#else +# define OPENTRACK_VISIBLE +#endif + /* for `opentrack_tracker_tick', individual headpose elts */ #ifndef IN_OPENTRACK enum opentrack_dof { @@ -38,20 +44,20 @@ enum opentrack_dof { }; #endif -opentrack opentrack_make_ctx(const char* dir); -void opentrack_finalize_ctx(opentrack self); +opentrack OPENTRACK_VISIBLE opentrack_make_ctx(const char* dir); +void OPENTRACK_VISIBLE opentrack_finalize_ctx(opentrack self); /* no need to free the return value; invalid to modify it */ -const char** opentrack_enum_trackers(opentrack self); +const char** OPENTRACK_VISIBLE opentrack_enum_trackers(opentrack self); /* * don't `opentrack_tracker_tick an unstarted tracker, it's invalid to do so * it's also invalid to start a finalized tracker */ -opentrack_tracker opentrack_make_tracker(opentrack ctx, const char* name); -void opentrack_tracker_start(opentrack self, opentrack_tracker tracker); -int opentrack_tracker_tick(opentrack_tracker tracker, double* headpose); -void opentrack_finalize_tracker(opentrack_tracker tracker); +opentrack_tracker OPENTRACK_VISIBLE opentrack_make_tracker(opentrack ctx, const char* name); +void OPENTRACK_VISIBLE opentrack_tracker_start(opentrack self, opentrack_tracker tracker); +int OPENTRACK_VISIBLE opentrack_tracker_tick(opentrack_tracker tracker, double* headpose); +void OPENTRACK_VISIBLE opentrack_finalize_tracker(opentrack_tracker tracker); #ifdef __cplusplus } #endif |