0.9.6
associated_min_max.hpp
Go to the documentation of this file.
1 
42 #pragma once
43 
44 // Dependency:
45 #include "../glm.hpp"
46 
47 #if(defined(GLM_MESSAGES) && !defined(GLM_EXT_INCLUDED))
48 # pragma message("GLM: GLM_GTX_associated_min_max extension included")
49 #endif
50 
51 namespace glm
52 {
55 
58  template<typename T, typename U, precision P>
59  GLM_FUNC_DECL U associatedMin(T x, U a, T y, U b);
60 
63  template<typename T, typename U, precision P, template <typename, precision> class vecType>
64  GLM_FUNC_DECL tvec2<U, P> associatedMin(
65  vecType<T, P> const & x, vecType<U, P> const & a,
66  vecType<T, P> const & y, vecType<U, P> const & b);
67 
70  template<typename T, typename U, precision P, template <typename, precision> class vecType>
71  GLM_FUNC_DECL vecType<U, P> associatedMin(
72  T x, const vecType<U, P>& a,
73  T y, const vecType<U, P>& b);
74 
77  template<typename T, typename U, precision P, template <typename, precision> class vecType>
78  GLM_FUNC_DECL vecType<U, P> associatedMin(
79  vecType<T, P> const & x, U a,
80  vecType<T, P> const & y, U b);
81 
84  template<typename T, typename U>
85  GLM_FUNC_DECL U associatedMin(
86  T x, U a,
87  T y, U b,
88  T z, U c);
89 
92  template<typename T, typename U, precision P, template <typename, precision> class vecType>
93  GLM_FUNC_DECL vecType<U, P> associatedMin(
94  vecType<T, P> const & x, vecType<U, P> const & a,
95  vecType<T, P> const & y, vecType<U, P> const & b,
96  vecType<T, P> const & z, vecType<U, P> const & c);
97 
100  template<typename T, typename U>
101  GLM_FUNC_DECL U associatedMin(
102  T x, U a,
103  T y, U b,
104  T z, U c,
105  T w, U d);
106 
109  template<typename T, typename U, precision P, template <typename, precision> class vecType>
110  GLM_FUNC_DECL vecType<U, P> associatedMin(
111  vecType<T, P> const & x, vecType<U, P> const & a,
112  vecType<T, P> const & y, vecType<U, P> const & b,
113  vecType<T, P> const & z, vecType<U, P> const & c,
114  vecType<T, P> const & w, vecType<U, P> const & d);
115 
118  template<typename T, typename U, precision P, template <typename, precision> class vecType>
119  GLM_FUNC_DECL vecType<U, P> associatedMin(
120  T x, vecType<U, P> const & a,
121  T y, vecType<U, P> const & b,
122  T z, vecType<U, P> const & c,
123  T w, vecType<U, P> const & d);
124 
127  template<typename T, typename U, precision P, template <typename, precision> class vecType>
128  GLM_FUNC_DECL vecType<U, P> associatedMin(
129  vecType<T, P> const & x, U a,
130  vecType<T, P> const & y, U b,
131  vecType<T, P> const & z, U c,
132  vecType<T, P> const & w, U d);
133 
136  template<typename T, typename U>
137  GLM_FUNC_DECL U associatedMax(T x, U a, T y, U b);
138 
141  template<typename T, typename U, precision P, template <typename, precision> class vecType>
142  GLM_FUNC_DECL tvec2<U, P> associatedMax(
143  vecType<T, P> const & x, vecType<U, P> const & a,
144  vecType<T, P> const & y, vecType<U, P> const & b);
145 
148  template<typename T, typename U, precision P, template <typename, precision> class vecType>
149  GLM_FUNC_DECL vecType<T, P> associatedMax(
150  T x, vecType<U, P> const & a,
151  T y, vecType<U, P> const & b);
152 
155  template<typename T, typename U, precision P, template <typename, precision> class vecType>
156  GLM_FUNC_DECL vecType<U, P> associatedMax(
157  vecType<T, P> const & x, U a,
158  vecType<T, P> const & y, U b);
159 
162  template<typename T, typename U>
163  GLM_FUNC_DECL U associatedMax(
164  T x, U a,
165  T y, U b,
166  T z, U c);
167 
170  template<typename T, typename U, precision P, template <typename, precision> class vecType>
171  GLM_FUNC_DECL vecType<U, P> associatedMax(
172  vecType<T, P> const & x, vecType<U, P> const & a,
173  vecType<T, P> const & y, vecType<U, P> const & b,
174  vecType<T, P> const & z, vecType<U, P> const & c);
175 
178  template<typename T, typename U, precision P, template <typename, precision> class vecType>
179  GLM_FUNC_DECL vecType<T, P> associatedMax(
180  T x, vecType<U, P> const & a,
181  T y, vecType<U, P> const & b,
182  T z, vecType<U, P> const & c);
183 
186  template<typename T, typename U, precision P, template <typename, precision> class vecType>
187  GLM_FUNC_DECL vecType<U, P> associatedMax(
188  vecType<T, P> const & x, U a,
189  vecType<T, P> const & y, U b,
190  vecType<T, P> const & z, U c);
191 
194  template<typename T, typename U>
195  GLM_FUNC_DECL U associatedMax(
196  T x, U a,
197  T y, U b,
198  T z, U c,
199  T w, U d);
200 
203  template<typename T, typename U, precision P, template <typename, precision> class vecType>
204  GLM_FUNC_DECL vecType<U, P> associatedMax(
205  vecType<T, P> const & x, vecType<U, P> const & a,
206  vecType<T, P> const & y, vecType<U, P> const & b,
207  vecType<T, P> const & z, vecType<U, P> const & c,
208  vecType<T, P> const & w, vecType<U, P> const & d);
209 
212  template<typename T, typename U, precision P, template <typename, precision> class vecType>
213  GLM_FUNC_DECL vecType<U, P> associatedMax(
214  T x, vecType<U, P> const & a,
215  T y, vecType<U, P> const & b,
216  T z, vecType<U, P> const & c,
217  T w, vecType<U, P> const & d);
218 
221  template<typename T, typename U, precision P, template <typename, precision> class vecType>
222  GLM_FUNC_DECL vecType<U, P> associatedMax(
223  vecType<T, P> const & x, U a,
224  vecType<T, P> const & y, U b,
225  vecType<T, P> const & z, U c,
226  vecType<T, P> const & w, U d);
227 
229 } //namespace glm
230 
231 #include "associated_min_max.inl"
GLM_FUNC_DECL vecType< U, P > associatedMin(vecType< T, P > const &x, U a, vecType< T, P > const &y, U b, vecType< T, P > const &z, U c, vecType< T, P > const &w, U d)
Minimum comparison between 4 variables and returns 4 associated variable values.
Definition: _noise.hpp:39
GLM_FUNC_DECL vecType< U, P > associatedMax(vecType< T, P > const &x, U a, vecType< T, P > const &y, U b, vecType< T, P > const &z, U c, vecType< T, P > const &w, U d)
Maximum comparison between 4 variables and returns 4 associated variable values.