aboutsummaryrefslogtreecommitdiff
path: root/src/poser.c
diff options
context:
space:
mode:
authorJustin Berger <j.david.berger@gmail.com>2018-03-11 16:24:13 -0600
committerJustin Berger <j.david.berger@gmail.com>2018-03-12 09:53:17 -0600
commitee0fd0be34cd6715b704be534b7e97087905571f (patch)
treec651c71625a8dbecc0b8293a1701a648eb836984 /src/poser.c
parent12f864db460dc6318694ec9e6d65f7740ae85749 (diff)
downloadlibsurvive-ee0fd0be34cd6715b704be534b7e97087905571f.tar.gz
libsurvive-ee0fd0be34cd6715b704be534b7e97087905571f.tar.bz2
Redirected posers to used passed in callbacks
Diffstat (limited to 'src/poser.c')
-rw-r--r--src/poser.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/src/poser.c b/src/poser.c
new file mode 100644
index 0000000..73fc7e8
--- /dev/null
+++ b/src/poser.c
@@ -0,0 +1,20 @@
+#include <stdint.h>
+
+#include "poser.h"
+#include "survive_internal.h"
+
+void PoserData_poser_raw_pose_func(PoserData *poser_data, SurviveObject *so, uint8_t lighthouse, FLT *pose) {
+ if (poser_data->rawposeproc) {
+ poser_data->rawposeproc(so, lighthouse, pose, poser_data->userdata);
+ } else {
+ so->ctx->rawposeproc(so, lighthouse, pose);
+ }
+}
+
+void PoserData_lighthouse_pose_func(PoserData *poser_data, SurviveObject *so, uint8_t lighthouse, SurvivePose *pose) {
+ if (poser_data->lighthouseposeproc) {
+ poser_data->lighthouseposeproc(so, lighthouse, pose, poser_data->userdata);
+ } else {
+ so->ctx->lighthouseposeproc(so->ctx, lighthouse, pose);
+ }
+}