00001
00002
00004
00005
00006
00007
00009
00010
00012
00013
00014
00016
00017 #ifndef glm_gtx_fast_square_root
00018 #define glm_gtx_fast_square_root
00019
00020
00021 #include "../glm.hpp"
00022
00023 namespace glm
00024 {
00025 namespace test{
00026 void main_gtx_fast_square_root();
00027 }
00028
00029 namespace gtx{
00031 namespace fast_square_root
00032 {
00035 template <typename genType>
00036 genType fastSqrt(genType const & x);
00037
00040 template <typename genType>
00041 genType fastInverseSqrt(genType const & x);
00042
00045 template <typename genType>
00046 typename genType::value_type fastLength(genType const & x);
00047
00050 template <typename genType>
00051 typename genType::value_type fastDistance(genType const & x, genType const & y);
00052
00055 template <typename genType>
00056 genType fastNormalize(genType const & x);
00057
00058 }
00059 }
00060 }
00061
00062 #define GLM_GTX_fast_square_root namespace gtx::fast_square_root
00063 #ifndef GLM_GTX_GLOBAL
00064 namespace glm {using GLM_GTX_fast_square_root;}
00065 #endif//GLM_GTX_GLOBAL
00066
00067 #include "fast_square_root.inl"
00068
00069 #endif//glm_gtx_fast_square_root