1 #ifndef GIM_GEOM_TYPES_H_INCLUDED 2 #define GIM_GEOM_TYPES_H_INCLUDED 3 4 /*! \file gim_geom_types.h 5 \author Francisco Leon Najera 6 */ 7 /* 8 ----------------------------------------------------------------------------- 9 This source file is part of GIMPACT Library. 10 11 For the latest info, see http://gimpact.sourceforge.net/ 12 13 Copyright (c) 2006 Francisco Leon Najera. C.C. 80087371. 14 email: projectileman@yahoo.com 15 16 This library is free software; you can redistribute it and/or 17 modify it under the terms of EITHER: 18 (1) The GNU Lesser General Public License as published by the Free 19 Software Foundation; either version 2.1 of the License, or (at 20 your option) any later version. The text of the GNU Lesser 21 General Public License is included with this library in the 22 file GIMPACT-LICENSE-LGPL.TXT. 23 (2) The BSD-style license that is included with this library in 24 the file GIMPACT-LICENSE-BSD.TXT. 25 (3) The zlib/libpng license that is included with this library in 26 the file GIMPACT-LICENSE-ZLIB.TXT. 27 28 This library is distributed in the hope that it will be useful, 29 but WITHOUT ANY WARRANTY; without even the implied warranty of 30 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the files 31 GIMPACT-LICENSE-LGPL.TXT, GIMPACT-LICENSE-ZLIB.TXT and GIMPACT-LICENSE-BSD.TXT for more details. 32 33 ----------------------------------------------------------------------------- 34 */ 35 36 37 #include "gim_math.h" 38 39 40 41 //! Short Integer vector 2D 42 typedef GSHORT vec2s[2]; 43 //! Integer vector 3D 44 typedef GSHORT vec3s[3]; 45 //! Integer vector 4D 46 typedef GSHORT vec4s[4]; 47 48 //! Short Integer vector 2D 49 typedef GUSHORT vec2us[2]; 50 //! Integer vector 3D 51 typedef GUSHORT vec3us[3]; 52 //! Integer vector 4D 53 typedef GUSHORT vec4us[4]; 54 55 //! Integer vector 2D 56 typedef GINT vec2i[2]; 57 //! Integer vector 3D 58 typedef GINT vec3i[3]; 59 //! Integer vector 4D 60 typedef GINT vec4i[4]; 61 62 //! Unsigned Integer vector 2D 63 typedef GUINT vec2ui[2]; 64 //! Unsigned Integer vector 3D 65 typedef GUINT vec3ui[3]; 66 //! Unsigned Integer vector 4D 67 typedef GUINT vec4ui[4]; 68 69 //! Float vector 2D 70 typedef GREAL vec2f[2]; 71 //! Float vector 3D 72 typedef GREAL vec3f[3]; 73 //! Float vector 4D 74 typedef GREAL vec4f[4]; 75 76 //! Double vector 2D 77 typedef GREAL2 vec2d[2]; 78 //! Float vector 3D 79 typedef GREAL2 vec3d[3]; 80 //! Float vector 4D 81 typedef GREAL2 vec4d[4]; 82 83 //! Matrix 2D, row ordered 84 typedef GREAL mat2f[2][2]; 85 //! Matrix 3D, row ordered 86 typedef GREAL mat3f[3][3]; 87 //! Matrix 4D, row ordered 88 typedef GREAL mat4f[4][4]; 89 90 //! Quaternion 91 typedef GREAL quatf[4]; 92 93 //typedef struct _aabb3f aabb3f; 94 95 96 97 #endif // GIM_GEOM_TYPES_H_INCLUDED 98