- Main Page
- Namespaces
- Files

- File List

# extented_min_max.hpp

    00001
    00002 // OpenGL Mathematics Copyright (c) 2005 - 2009 G-Truc Creation (www.g-truc.net)
    00004 // Created : 2007-03-14
    00005 // Updated : 2007-08-14
    00006 // Licence : This source is under MIT License
    00007 // File    : gtx_extented_min_max.h
    00009 // Dependency:
    00010 // - GLM core
    00011 // - GLM_GTX_half_float
    00012 // - GLM_GTX_double_float
    00014
    00015 #ifndef glm_gtx_extented_min_max
    00016 #define glm_gtx_extented_min_max
    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_ext_gtx_extented_min_max();
    00027         }//namespace test
    00028
    00029         namespace gtx{
    00031         namespace extented_min_max
    00032         {
    00033                 template <typename T> T min(const T x, const T y, const T z);
    00034                 template <typename T> T min(const T x, const T y, const T z, const T w);
    00035
    00036                 template <typename T> detail::tvec2<T> min(const detail::tvec2<T>& x, const T y, const T z);
    00037                 template <typename T> detail::tvec3<T> min(const detail::tvec3<T>& x, const T y, const T z);
    00038                 template <typename T> detail::tvec4<T> min(const detail::tvec4<T>& x, const T y, const T z);
    00039
    00040                 template <typename T> detail::tvec2<T> min(const detail::tvec2<T>& x, const T y, const T z, const T w);
    00041                 template <typename T> detail::tvec3<T> min(const detail::tvec3<T>& x, const T y, const T z, const T w);
    00042                 template <typename T> detail::tvec4<T> min(const detail::tvec4<T>& x, const T y, const T z, const T w);
    00043
    00044                 template <typename T> detail::tvec2<T> min(const detail::tvec2<T>& x, const detail::tvec2<T>& y, const detail::tvec2<T>& z);
    00045                 template <typename T> detail::tvec3<T> min(const detail::tvec3<T>& x, const detail::tvec3<T>& y, const detail::tvec3<T>& z);
    00046                 template <typename T> detail::tvec4<T> min(const detail::tvec4<T>& x, const detail::tvec4<T>& y, const detail::tvec4<T>& z);
    00047
    00048                 template <typename T> detail::tvec2<T> min(const detail::tvec2<T>& x, const detail::tvec2<T>& y, const detail::tvec2<T>& z, const detail::tvec2<T>& w);
    00049                 template <typename T> detail::tvec3<T> min(const detail::tvec3<T>& x, const detail::tvec3<T>& y, const detail::tvec3<T>& z, const detail::tvec3<T>& w);
    00050                 template <typename T> detail::tvec4<T> min(const detail::tvec4<T>& x, const detail::tvec4<T>& y, const detail::tvec4<T>& z, const detail::tvec4<T>& w);
    00051
    00052                 template <typename T> T max(const T x, const T y, const T z);
    00053                 template <typename T> T max(const T x, const T y, const T z, const T w);
    00054
    00055                 template <typename T> detail::tvec2<T> max(const detail::tvec2<T>& x, const T y, const T z);
    00056                 template <typename T> detail::tvec3<T> max(const detail::tvec3<T>& x, const T y, const T z);
    00057                 template <typename T> detail::tvec4<T> max(const detail::tvec4<T>& x, const T y, const T z);
    00058
    00059                 template <typename T> detail::tvec2<T> max(const detail::tvec2<T>& x, const T y, const T z, const T w);
    00060                 template <typename T> detail::tvec3<T> max(const detail::tvec3<T>& x, const T y, const T z, const T w);
    00061                 template <typename T> detail::tvec4<T> max(const detail::tvec4<T>& x, const T y, const T z, const T w);
    00062
    00063                 template <typename T> detail::tvec2<T> max(const detail::tvec2<T>& x, const detail::tvec2<T>& y, const detail::tvec2<T>& z);
    00064                 template <typename T> detail::tvec3<T> max(const detail::tvec3<T>& x, const detail::tvec3<T>& y, const detail::tvec3<T>& z);
    00065                 template <typename T> detail::tvec4<T> max(const detail::tvec4<T>& x, const detail::tvec4<T>& y, const detail::tvec4<T>& z);
    00066
    00067                 template <typename T> detail::tvec2<T> max(const detail::tvec2<T>& x, const detail::tvec2<T>& y, const detail::tvec2<T>& z, const detail::tvec2<T>& w);
    00068                 template <typename T> detail::tvec3<T> max(const detail::tvec3<T>& x, const detail::tvec3<T>& y, const detail::tvec3<T>& z, const detail::tvec3<T>& w);
    00069                 template <typename T> detail::tvec4<T> max(const detail::tvec4<T>& x, const detail::tvec4<T>& y, const detail::tvec4<T>& z, const detail::tvec4<T>& w);
    00070
    00071         }//namespace extented_min_max
    00072         }//namespace gtx
    00073 }//namespace glm
    00074
    00075 #define GLM_GTX_extented_min_max namespace gtx::extented_min_max
    00076 #ifndef GLM_GTX_GLOBAL
    00077 namespace glm {using GLM_GTX_extented_min_max;}
    00078 #endif//GLM_GTX_GLOBAL
    00079
    00080 #include "extented_min_max.inl"
    00081
    00082 #endif//glm_gtx_extented_min_max