associated_min_max.hpp

00001 
00002 // OpenGL Mathematics Copyright (c) 2005 - 2011 G-Truc Creation (www.g-truc.net)
00004 // Created : 2008-03-10
00005 // Updated : 2008-03-15
00006 // Licence : This source is under MIT License
00007 // File    : gtx_associated_min_max.hpp
00009 // Dependency:
00010 // - GLM core
00011 // - GLM_GTX_extented_min_max
00013 
00014 #ifndef glm_gtx_associated_min_max
00015 #define glm_gtx_associated_min_max
00016 
00017 // Dependency:
00018 #include "../glm.hpp"
00019 
00020 #if(defined(GLM_MESSAGES) && !defined(glm_ext))
00021 #       pragma message("GLM: GLM_GTX_associated_min_max extension included")
00022 #endif
00023 
00024 namespace glm
00025 {
00026         namespace test{
00027                 void main_gtx_associated_min_max();
00028         }//namespace test
00029 
00030         namespace gtx
00031         {
00033                 namespace associated_min_max
00034                 {
00037 
00039                         template<typename genTypeT, typename genTypeU>
00040                         genTypeU associatedMin(
00041                                 const genTypeT& x, const genTypeU& a, 
00042                                 const genTypeT& y, const genTypeU& b);
00043 
00045                         template<typename genTypeT, typename genTypeU>
00046                         genTypeU associatedMin(
00047                                 const genTypeT& x, const genTypeU& a, 
00048                                 const genTypeT& y, const genTypeU& b, 
00049                                 const genTypeT& z, const genTypeU& c);
00050 
00052                         template<typename genTypeT, typename genTypeU>
00053                         genTypeU associatedMin(
00054                                 const genTypeT& x, const genTypeU& a, 
00055                                 const genTypeT& y, const genTypeU& b, 
00056                                 const genTypeT& z, const genTypeU& c, 
00057                                 const genTypeT& w, const genTypeU& d);
00058 
00060                         template<typename genTypeT, typename genTypeU>
00061                         genTypeU associatedMax(
00062                                 const genTypeT& x, const genTypeU& a, 
00063                                 const genTypeT& y, const genTypeU& b);
00064 
00066                         template<typename genTypeT, typename genTypeU>
00067                         genTypeU associatedMax(
00068                                 const genTypeT& x, const genTypeU& a, 
00069                                 const genTypeT& y, const genTypeU& b, 
00070                                 const genTypeT& z, const genTypeU& c);
00071 
00073                         template<typename genTypeT, typename genTypeU>
00074                         genTypeU associatedMax(
00075                                 const genTypeT& x, const genTypeU& a, 
00076                                 const genTypeT& y, const genTypeU& b, 
00077                                 const genTypeT& z, const genTypeU& c, 
00078                                 const genTypeT& w, const genTypeU& d);
00080 
00081                 }//namespace associated_min_max
00082 
00083                 bool test();
00084         }//namespace gtx
00085 }//namespace glm
00086 
00087 #include "associated_min_max.inl"
00088 
00089 namespace glm{using namespace gtx::associated_min_max;}
00090 
00091 #endif//glm_gtx_associated_min_max