GLM Version 0.9.0

optimum_pow.hpp

00001 
00002 // OpenGL Mathematics Copyright (c) 2005 - 2011 G-Truc Creation (www.g-truc.net)
00004 // Created : 2005-12-21
00005 // Updated : 2006-11-13
00006 // Licence : This source is under MIT License
00007 // File    : glm/gtx/optimum_pow.h
00009 // Dependency:
00010 // - GLM core
00012 
00013 #ifndef glm_gtx_optimum_pow
00014 #define glm_gtx_optimum_pow
00015 
00016 // Dependency:
00017 #include "../glm.hpp"
00018 
00019 namespace glm
00020 {
00021         namespace test{
00022                 void main_gtx_optimum_pow();
00023         }//namespace test
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     }//namespace optimum_pow
00061     }//namespace gtx
00062 }//namespace glm
00063 
00064 #include "optimum_pow.inl"
00065 
00066 namespace glm{using namespace gtx::optimum_pow;}
00067 
00068 #endif//glm_gtx_optimum_pow