- Main Page
- Modules
- Namespaces
- Classes
- Files

- File List

glm.hpp

    00001
    00002 // OpenGL Mathematics Copyright (c) 2005 - 2011 G-Truc Creation (www.g-truc.net)
    00004 // Created : 2005-01-14
    00005 // Updated : 2011-01-19
    00006 // Licence : This source is under MIT License
    00007 // File    : glm/glm.hpp
    00009
    00010 #include "core/_fixes.hpp"
    00011
    00012 #ifndef glm_glm
    00013 #define glm_glm
    00014
    00015 #include <cmath>
    00016 #include <climits>
    00017 #include <cfloat>
    00018 #include <limits>
    00019 #include "core/setup.hpp"
    00020
    00021 #if(defined(GLM_MESSAGES) && !defined(GLM_MESSAGE_CORE_INCLUDED_DISPLAYED))
    00022 #       define GLM_MESSAGE_CORE_INCLUDED_DISPLAYED
    00023 #       pragma message("GLM: Core library included")
    00024 #endif//GLM_MESSAGE
    00025
    00027 namespace glm
    00028 {
    00030         namespace core
    00031         {
    00036                 namespace type
    00037                 {
    00038                         namespace precision{}
    00039                 }
    00040
    00043                 namespace function{}
    00044         }//namespace core
    00045
    00047         namespace gtc{}
    00048
    00051         namespace gtx{}
    00052
    00054         namespace virtrev{}
    00055
    00056         using namespace core::type;
    00057         using namespace core::type::precision;
    00058         using namespace core::function;
    00059 }//namespace glm
    00060
    00061 #include "./core/_detail.hpp"
    00062 #include "./core/type.hpp"
    00063
    00064 #include "./core/func_trigonometric.hpp"
    00065 #include "./core/func_exponential.hpp"
    00066 #include "./core/func_common.hpp"
    00067 #include "./core/func_packing.hpp"
    00068 #include "./core/func_geometric.hpp"
    00069 #include "./core/func_matrix.hpp"
    00070 #include "./core/func_vector_relational.hpp"
    00071 #include "./core/func_integer.hpp"
    00072 #include "./core/func_noise.hpp"
    00073 #include "./core/_swizzle.hpp"
    00074
    00076 // check type sizes
    00077 #ifndef GLM_STATIC_ASSERT_NULL
    00078         GLM_STATIC_ASSERT(sizeof(glm::detail::int8) == 1, "int8 size isn't 1 byte on this platform");
    00079         GLM_STATIC_ASSERT(sizeof(glm::detail::int16) == 2, "int16 size isn't 2 bytes on this platform");
    00080         GLM_STATIC_ASSERT(sizeof(glm::detail::int32) == 4, "int32 size isn't 4 bytes on this platform");
    00081         GLM_STATIC_ASSERT(sizeof(glm::detail::int64) == 8, "int64 size isn't 8 bytes on this platform");
    00082
    00083         GLM_STATIC_ASSERT(sizeof(glm::detail::uint8) == 1, "uint8 size isn't 1 byte on this platform");
    00084         GLM_STATIC_ASSERT(sizeof(glm::detail::uint16) == 2, "uint16 size isn't 2 bytes on this platform");
    00085         GLM_STATIC_ASSERT(sizeof(glm::detail::uint32) == 4, "uint32 size isn't 4 bytes on this platform");
    00086         GLM_STATIC_ASSERT(sizeof(glm::detail::uint64) == 8, "uint64 size isn't 8 bytes on this platform");
    00087
    00088         GLM_STATIC_ASSERT(sizeof(glm::detail::float16) == 2, "float16 size isn't 2 bytes on this platform");
    00089         GLM_STATIC_ASSERT(sizeof(glm::detail::float32) == 4, "float32 size isn't 4 bytes on this platform");
    00090         GLM_STATIC_ASSERT(sizeof(glm::detail::float64) == 8, "float64 size isn't 8 bytes on this platform");
    00091 #endif//GLM_STATIC_ASSERT_NULL
    00092
    00093 #endif//glm_glm