conworlds

annotate src/vr/vr_impl.h @ 7:bd8202d6d28d

some progress...
author John Tsiombikas <nuclear@member.fsf.org>
date Fri, 22 Aug 2014 16:55:16 +0300
parents 8b7da5ab814e
children 90abf4b93cc9
rev   line source
nuclear@4 1 #ifndef VR_IMPL_H_
nuclear@4 2 #define VR_IMPL_H_
nuclear@4 3
nuclear@7 4 #include "vr.h"
nuclear@7 5 #include "opt.h"
nuclear@7 6
nuclear@4 7 struct vr_module {
nuclear@4 8 char *name;
nuclear@4 9
nuclear@4 10 int (*init)(void);
nuclear@4 11 void (*cleanup)(void);
nuclear@4 12
nuclear@7 13 int (*set_option)(const char *opt, enum opt_type type, void *valp);
nuclear@7 14 int (*get_option)(const char *opt, enum opt_type type, void *valp);
nuclear@7 15
nuclear@7 16 void (*translation)(int eye, float *vec);
nuclear@7 17 void (*rotation)(int eye, float *quat);
nuclear@7 18
nuclear@7 19 void (*proj_matrix)(int eye, float znear, float zfar, float *mat);
nuclear@4 20
nuclear@5 21 void (*begin)(int eye);
nuclear@5 22 void (*end)(void);
nuclear@5 23 void (*present)(void);
nuclear@7 24
nuclear@7 25 void (*set_eye_texture)(int eye, unsigned int tex, float umin, float vmin, float umax, float vmax);
nuclear@7 26
nuclear@7 27 void (*recenter)(void);
nuclear@4 28 };
nuclear@4 29
nuclear@4 30 void vr_init_modules(void);
nuclear@4 31
nuclear@4 32 void vr_clear_modules(void);
nuclear@4 33 void vr_register_module(struct vr_module *mod);
nuclear@4 34
nuclear@4 35 int vr_get_num_modules(void);
nuclear@4 36 struct vr_module *vr_get_module(int idx);
nuclear@4 37
nuclear@4 38 void vr_activate_module(int idx);
nuclear@4 39
nuclear@4 40 int vr_get_num_active_modules(void);
nuclear@4 41 struct vr_module *vr_get_active_module(int idx);
nuclear@4 42
nuclear@4 43 #endif /* VR_IMPL_H_ */