1 #pragma once
2 #include <OgreVector3.h>
3 #include <OgreQuaternion.h>
4 #include "../vdrift/mathvector.h"
5 #include "../vdrift/quaternion.h"
6 #include "../half.hpp"
7 
8 
9 struct Axes
10 {
11 	static void Init();
12 	static Ogre::Quaternion qFixCar,qFixWh;
13 
14 	//  to ogre from vdrift
15 	static void toOgre(Ogre::Vector3& vOut, const MATHVECTOR<float,3>& vIn);
16 	static Ogre::Vector3 toOgre(const MATHVECTOR<float,3>& vIn);
17 
18 	static Ogre::Quaternion toOgre(const QUATERNION<float>& vIn);  // car
19 	static Ogre::Quaternion toOgre(const QUATERNION<double>& vIn);
20 	static Ogre::Quaternion toOgreW(const QUATERNION<half_float::half>& vIn);  // wheels
21 	static Ogre::Quaternion toOgreW(const QUATERNION<float>& vIn);
22 	static Ogre::Quaternion toOgreW(const QUATERNION<double>& vIn);
23 };
24