]> Dogcows Code - chaz/yoink/blobdiff - src/math.hh
big batch of progress
[chaz/yoink] / src / math.hh
index 78f4efdba03535b3382c151674710ad737cfcc07..ab80dcc35af94cf3677ffa9d4e83224eb3824045 100644 (file)
 
 *******************************************************************************/
 
+#ifndef _MATH_HH_
+#define _MATH_HH_
+
 /**
  * @file math.hh
  * General math-related types and functions.
  */
 
-#ifndef _MATH_HH_
-#define _MATH_HH_
-
 #include <cmath>
+#include <cml/cml.h>
+
+#include <iostream>
 
 
 namespace dc {
 
 
-typedef double scalar;         ///< Scalar variable.
+// Basic types.
+
+typedef float                          scalar;                         ///< Scalar type.
+
+typedef cml::vector2f          vector2;
+typedef cml::vector3f          vector3;
+typedef cml::vector4f          vector4;
 
+typedef cml::matrix33f_c       matrix3;
+typedef cml::matrix44f_c       matrix4;
 
-// Here's a simple way to check the equality of floating-point variables more
-// reliably using approximation.
+typedef cml::quaternionf_p     quaternion;
 
-const scalar default_epsilon = 0.00001;                ///< @see equals()
+typedef vector4                                color;
 
 
+const scalar default_epsilon = 0.00001;
+
 /**
  * Check the equality of scalars with a certain degree of error allowed.
  */
@@ -61,6 +73,7 @@ inline bool equals(scalar a, scalar b, scalar epsilon = default_epsilon)
 
 } // namespace dc
 
-
 #endif // _MATH_HH_
 
+/** vim: set ts=4 sw=4 tw=80: *************************************************/
+
This page took 0.018666 seconds and 4 git commands to generate.