# GLM: fast_exponential.hpp Source File

- Main Page
- Namespaces
- Files

- File List

# fast_exponential.hpp

    00001
    00002 // OpenGL Mathematics Copyright (c) 2005 - 2009 G-Truc Creation (www.g-truc.net)
    00004 // Created : 2006-01-09
    00005 // Updated : 2006-11-13
    00006 // Licence : This source is under MIT License
    00007 // File    : glm/gtx/fast_exponential.hpp
    00009 // Dependency:
    00010 // - GLM core
    00011 // - GLM_GTX_half
    00012 // - GLM_GTX_double
    00014
    00015 #ifndef glm_gtx_fast_exponential
    00016 #define glm_gtx_fast_exponential
    00017
    00018 // Dependency:
    00019 #include "../glm.hpp"
    00020 #include "../gtc/half_float.hpp"
    00021 #include "../gtc/double_float.hpp"
    00022
    00023 namespace glm
    00024 {
    00025         namespace test{
    00026                 void main_gtx_fast_exponential();
    00027         }//namespace test
    00028
    00029         namespace gtx{
    00031         namespace fast_exponential
    00032         {
    00033                 using namespace gtc::half_float;
    00034                 using namespace gtc::double_float;
    00035
    00038                 template <typename valType>
    00039                 valType fastPow(
    00040                         valType const & x,
    00041                         valType const & y);
    00042
    00045                 template <typename T, typename U>
    00046                 T fastPow(
    00047                         const T& x,
    00048                         const U& y);
    00049
    00052                 template <typename T>
    00053                 T fastExp(const T& x);
    00054
    00057                 template <typename T>
    00058                 T fastLog(const T& x);
    00059
    00062                 template <typename T>
    00063                 T fastExp2(const T& x);
    00064
    00067                 template <typename T>
    00068                 T fastLog2(const T& x);
    00069
    00072                 template <typename T>
    00073                 T fastLn(const T& x);
    00074
    00075         }//namespace fast_exponential
    00076         }//namespace gtx
    00077 }//namespace glm
    00078
    00079 #define GLM_GTX_fast_exponential namespace gtx::fast_exponential
    00080 #ifndef GLM_GTX_GLOBAL
    00081 namespace glm {using GLM_GTX_fast_exponential;}
    00082 #endif//GLM_GTX_GLOBAL
    00083
    00084 #include "fast_exponential.inl"
    00085
    00086 #endif//glm_gtx_fast_exponential