• Main Page
  • Related Pages
  • Modules
  • Namespaces
  • Classes
  • Files
  • File List
  • File Members

Defines.h

Go to the documentation of this file.
00001 // GMTL is (C) Copyright 2001-2010 by Allen Bierbaum
00002 // Distributed under the GNU Lesser General Public License 2.1 with an
00003 // addendum covering inlined code. (See accompanying files LICENSE and
00004 // LICENSE.addendum or http://www.gnu.org/copyleft/lesser.txt)
00005 
00006 #ifndef _GMTL_DEFINES_H
00007 #define _GMTL_DEFINES_H
00008 
00009 namespace gmtl
00010 {
00023    enum VectorIndex { Xelt = 0, Yelt = 1, Zelt = 2, Welt = 3 };
00024 
00032    enum PlaneSide
00033    {
00034       ON_PLANE,
00035       POS_SIDE,
00036       NEG_SIDE
00037    };
00038 
00043    const float GMTL_EPSILON = 1.0e-6f;
00044    const float GMTL_MAT_EQUAL_EPSILON = 0.001f;  // Epsilon for matrices to be equal
00045    const float GMTL_VEC_EQUAL_EPSILON = 0.0001f; // Epsilon for vectors to be equal
00048 #define GMTL_NEAR(x,y,eps) (gmtl::Math::abs((x)-(y))<(eps))
00049 
00050 }
00051 
00052 // Platform-specific settings.
00053 #if defined(__sun) || defined(__APPLE__) || defined(__hpux) ||  \
00054     defined(_XOPEN_SOURCE)
00055 #define NO_ACOSF 1
00056 #define NO_ASINF 1
00057 #define NO_TANF 1
00058 #define NO_ATAN2F 1
00059 #define NO_COSF 1
00060 #define NO_SINF 1
00061 #define NO_TANF 1
00062 #define NO_SQRTF 1
00063 #define NO_LOGF 1
00064 #define NO_EXPF 1
00065 #define NO_POWF 1
00066 #define NO_CEILF 1
00067 #define NO_FLOORF 1
00068 #endif
00069 
00070 #if defined(_MSC_VER) && _MSC_VER < 1310
00071 #define GMTL_NO_METAPROG
00072 #endif
00073 
00074 
00075 #endif

Generated on Sun Sep 19 2010 14:35:14 for GenericMathTemplateLibrary by  doxygen 1.7.1