00001
00002
00004
00005
00006
00007
00009
00010
00012
00013 #ifndef glm_gtx_optimum_pow
00014 #define glm_gtx_optimum_pow
00015
00016
00017 #include "../glm.hpp"
00018
00019 namespace glm
00020 {
00021 namespace test{
00022 void main_gtx_optimum_pow();
00023 }
00024
00025 namespace gtx{
00027 namespace optimum_pow
00028 {
00031 template <typename genType>
00032 genType pow2(const genType& x);
00033
00036 template <typename genType>
00037 genType pow3(const genType& x);
00038
00041 template <typename genType>
00042 genType pow4(const genType& x);
00043
00046 bool powOfTwo(int num);
00047
00050 detail::tvec2<bool> powOfTwo(const detail::tvec2<int>& x);
00051
00054 detail::tvec3<bool> powOfTwo(const detail::tvec3<int>& x);
00055
00058 detail::tvec4<bool> powOfTwo(const detail::tvec4<int>& x);
00059
00060 }
00061 }
00062 }
00063
00064 #define GLM_GTX_optimum_pow namespace gtx::optimum_pow
00065 #ifndef GLM_GTX_GLOBAL
00066 namespace glm {using GLM_GTX_optimum_pow;}
00067 #endif//GLM_GTX_GLOBAL
00068
00069 #include "optimum_pow.inl"
00070
00071 #endif//glm_gtx_optimum_pow