Updated 'force' API

This commit is contained in:
Christophe Riccio 2011-01-26 12:05:11 +00:00
parent 8f700a05ef
commit 088c7d1188

View File

@ -2,7 +2,7 @@
// OpenGL Mathematics Copyright (c) 2005 - 2011 G-Truc Creation (www.g-truc.net)
///////////////////////////////////////////////////////////////////////////////////////////////////
// Created : 2006-11-13
// Updated : 2010-01-28
// Updated : 2011-01-26
// Licence : This source is under MIT License
// File : glm/setup.hpp
///////////////////////////////////////////////////////////////////////////////////////////////////
@ -213,8 +213,11 @@
/////////////////
// C++ Version //
#define GLM_LANG_CXX 0
#define GLM_LANG_CXX98 1
#define GLM_LANG_CXX0X 2
#define GLM_LANG_CXXMS 3
#define GLM_LANG_CXXGNU 4
#if(defined(GLM_FORCE_CXX98))
# define GLM_LANG GLM_LANG_CXX98
@ -222,8 +225,12 @@
# define GLM_LANG GLM_LANG_CXX0X
#elif(GLM_COMPILER == GLM_COMPILER_VC2010) //_MSC_EXTENSIONS for MS language extensions
# define GLM_LANG GLM_LANG_CXX0X
#else
#elif(((GLM_COMPILER & GLM_COMPILER_GCC) == GLM_COMPILER_GCC) && defined(__STRICT_ANSI__))
# define GLM_LANG GLM_LANG_CXX98
#elif(((GLM_COMPILER & GLM_COMPILER_VC) == GLM_COMPILER_VC) && !defined(_MSC_EXTENSIONS))
# define GLM_LANG GLM_LANG_CXX98
#else
# define GLM_LANG GLM_LANG_CXX
#endif
#if(defined(GLM_MESSAGES) && !defined(GLM_MESSAGE_LANG_DISPLAYED))
@ -303,19 +310,19 @@
///////////////////////////////////////////////////////////////////////////////////////////////////
// Components
//#define GLM_FORCE_ONLY_XYZW
#define GLM_COMPONENT_GLSL_NAMES 0
#define GLM_COMPONENT_ONLY_XYZW 1 // To disable multiple vector component names access.
#define GLM_COMPONENT_MS_EXT 2 // To use anonymous union to provide multiple component names access for class valType. Visual C++ only.
//! By default:
// #define GLM_COMPONENT GLM_COMPONENT_GLSL_NAMES
#ifndef GLM_COMPONENT
#ifndef GLM_FORCE_ONLY_XYZW
# if((GLM_COMPILER & GLM_COMPILER_VC) && defined(_MSC_EXTENSIONS))
# define GLM_COMPONENT GLM_COMPONENT_MS_EXT
# else
# define GLM_COMPONENT GLM_COMPONENT_GLSL_NAMES
# endif
#else
# define GLM_COMPONENT GLM_COMPONENT_ONLY_XYZW
#endif
#if((GLM_COMPONENT == GLM_COMPONENT_MS_EXT) && !(GLM_COMPILER & GLM_COMPILER_VC))
@ -348,6 +355,21 @@
# define GLM_STATIC_ASSERT(x, message)
#endif//GLM_LANG
///////////////////////////////////////////////////////////////////////////////////////////////////
// inline
#if(defined(GLM_FORCE_INLINE))
# if((GLM_COMPILER & GLM_COMPILER_VC) && (GLM_COMPILER >= GLM_COMPILER_VC2005))
# define GLM_INLINE __forceinline
# elif((GLM_COMPILER & GLM_COMPILER_GCC) && (GLM_COMPILER >= GLM_COMPILER_VC2005))
# define GLM_INLINE __attribute__((always_inline))
# else
# define GLM_INLINE inline
# endif//GLM_COMPILER
#else
# define GLM_INLINE inline
#endif//defined(GLM_FORCE_INLINE)
///////////////////////////////////////////////////////////////////////////////////////////////////
// Swizzle operators
@ -357,13 +379,6 @@
#define GLM_SWIZZLE_STQP 0x00000008
#define GLM_SWIZZLE_FULL (GLM_SWIZZLE_XYZW | GLM_SWIZZLE_RGBA | GLM_SWIZZLE_STQP)
//! By default:
// #define GLM_SWIZZLE GLM_SWIZZLE_NONE
//#ifndef GLM_SWIZZLE
//# define GLM_SWIZZLE GLM_SWIZZLE_NONE
//#endif//GLM_SWIZZLE
#if(defined(GLM_MESSAGES) && !defined(GLM_MESSAGE_SWIZZLE_DISPLAYED))
# define GLM_MESSAGE_SWIZZLE_DISPLAYED
# if !defined(GLM_SWIZZLE)|| (defined(GLM_SWIZZLE) && GLM_SWIZZLE == GLM_SWIZZLE_NONE)
@ -392,6 +407,4 @@
#define GLM_PRECISION_MEDIUMP_UINT 0x00120000
#define GLM_PRECISION_HIGHP_UINT 0x00130000
///////////////////////////////////////////////////////////////////////////////////////////////////
#endif//glm_setup