Main Page   Modules   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

Defines.h

Go to the documentation of this file.
00001 /************************************************************** ggt-head beg
00002  *
00003  * GGT: Generic Graphics Toolkit
00004  *
00005  * Original Authors:
00006  *   Allen Bierbaum
00007  *
00008  * -----------------------------------------------------------------
00009  * File:          $RCSfile: Defines.h,v $
00010  * Date modified: $Date: 2003/03/03 00:54:04 $
00011  * Version:       $Revision: 1.7 $
00012  * -----------------------------------------------------------------
00013  *
00014  *********************************************************** ggt-head end */
00015 /*************************************************************** ggt-cpr beg
00016 *
00017 * GGT: The Generic Graphics Toolkit
00018 * Copyright (C) 2001,2002 Allen Bierbaum
00019 *
00020 * This library is free software; you can redistribute it and/or
00021 * modify it under the terms of the GNU Lesser General Public
00022 * License as published by the Free Software Foundation; either
00023 * version 2.1 of the License, or (at your option) any later version.
00024 *
00025 * This library is distributed in the hope that it will be useful,
00026 * but WITHOUT ANY WARRANTY; without even the implied warranty of
00027 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
00028 * Lesser General Public License for more details.
00029 *
00030 * You should have received a copy of the GNU Lesser General Public
00031 * License along with this library; if not, write to the Free Software
00032 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
00033 *
00034  ************************************************************ ggt-cpr end */
00035 #ifndef _GMTL_DEFINES_H
00036 #define _GMTL_DEFINES_H
00037 
00038 namespace gmtl
00039 {
00052    enum VectorIndex { Xelt = 0, Yelt = 1, Zelt = 2, Welt = 3 };
00053 
00061    enum PlaneSide
00062    {
00063       ON_PLANE,
00064       POS_SIDE,
00065       NEG_SIDE
00066    };
00067 
00072    const float GMTL_EPSILON = 1.0e-6f;
00073    const float GMTL_MAT_EQUAL_EPSILON = 0.001f;  // Epsilon for matrices to be equal
00074    const float GMTL_VEC_EQUAL_EPSILON = 0.0001f; // Epsilon for vectors to be equal
00077 #define GMTL_NEAR(x,y,eps) (gmtl::Math::abs((x)-(y))<(eps))
00078 
00079 };
00080 
00081 // Platform-specific settings.
00082 #if defined(__sun) || defined(__APPLE__) || defined(__hpux)
00083 #define NO_ACOSF 1
00084 #define NO_ASINF 1
00085 #define NO_TANF 1
00086 #define NO_ATAN2F 1
00087 #define NO_COSF 1
00088 #define NO_SINF 1
00089 #define NO_TANF 1
00090 #define NO_SQRTF 1
00091 #define NO_LOGF 1
00092 #define NO_EXPF 1
00093 #define NO_POWF 1
00094 #define NO_CEILF 1
00095 #define NO_FLOORF 1
00096 #endif
00097 
00098 
00099 #endif

Generated on Mon Apr 7 15:28:54 2003 for GenericMathTemplateLibrary by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002