29 #ifndef __VMML__VMMLIB_TYPES__HPP__    30 #define __VMML__VMMLIB_TYPES__HPP__    32 #include <sys/types.h>    35 typedef UINT8 uint8_t;
    42 template< 
size_t M, 
size_t N, 
typename T > 
class Matrix;
    43 template< 
size_t M, 
typename T > 
class vector;
    44 template< 
typename T > 
class AABB;
    45 template< 
typename T > 
class Frustum;
    48 template< 
typename T > 
class Ray;
 Represents a frustum, following OpenGL conventions. 
vector< 2, int > Vector2i
A 2-component int vector. 
vector< 4, double > Vector4d
A 4-component double vector. 
vector< 2, float > Vector2f
A 2-component float vector. 
vector< 3, double > Vector3d
A 3-component double vector. 
Matrix< 2, 2, float > Matrix2f
A 2x2 float matrix. 
FrustumCuller< double > FrustumCullerd
A double frustum culler. 
Helper class to perform OpenGL view frustum culling. 
Matrix< 4, 4, double > Matrix4d
A 4x4 double matrix. 
AABB< double > AABBd
A double bounding box. 
Quaternion< double > Quaterniond
A double quaternion. 
Matrix< 3, 3, float > Matrix3f
A 3x3 float matrix. 
vector< 3, uint8_t > Vector3ub
A 3-component byte vector. 
Ray< double > Rayd
A double ray. 
vector< 4, uint8_t > Vector4ub
A 4-component byte vector. 
heavily inspired by boost::enable_if http://www.boost.org, file: boost/utility/enable_if.hpp, Copyright 2003 Jaakko Järvi, Jeremiah Willcock, Andrew Lumsdaine 
vector< 2, unsigned > Vector2ui
A 2-component unsigned int vector. 
An axis-aligned bounding box. 
Ray< float > Rayf
A float ray. 
vector< 4, int > Vector4i
A 4-component int vector. 
Matrix< 4, 4, float > Matrix4f
A 4x4 float matrix. 
vector< 2, double > Vector2d
A 2-component double vector. 
vector< 3, float > Vector3f
A 3-component float vector. 
vector< 4, unsigned > Vector4ui
A 4-component unsigned int vector. 
vector< 4, float > Vector4f
A 4-component float vector. 
Matrix< 3, 3, double > Matrix3d
A 3x3 double matrix. 
Matrix< 2, 2, double > Matrix2d
A 2x2 double matrix. 
Frustum< double > Frustumd
A double frustum. 
Frustum< float > Frustumf
A float frustum. 
vector< 3, int > Vector3i
A 3-component int vector. 
AABB< float > AABBf
A float bounding box. 
Matrix with R rows and C columns of element type T. 
vector< 3, unsigned > Vector3ui
A 3-component unsigned int vector. 
Quaternion< float > Quaternionf
A float quaternion. 
FrustumCuller< float > FrustumCullerf
A float frustum culler.