00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef HMDMGR_H
00023 #define HMDMGR_H
00024
00025 #if defined(VMDUSEOPENHMD)
00026 struct ohmd_context;
00027 struct ohmd_device;
00028 #endif
00029
00030 class HMDMgr {
00031 private:
00032 #if defined(VMDUSEOPENHMD)
00033 ohmd_context *ctx;
00034 ohmd_device *hmd;
00035 #endif
00036
00037 int hmdcount;
00038
00039 public:
00040 HMDMgr(void);
00041 ~HMDMgr(void);
00042
00043 void reset_orientation(void);
00044 int device_count(void);
00045 void update(void);
00046 void get_rot_quat(float *, int doupdate);
00047 void rot_point_quat(float *p, const float *op);
00048 void rot_basis_quat(float *u, float *v, float *w,
00049 const float *ou, const float *ov, const float *ow);
00050 #if 0
00051 int device_list(int **, char ***);
00052 #endif
00053
00054 };
00055
00056 #endif
00057