Clutter Engine 0.0.1
Loading...
Searching...
No Matches
associated_min_max.hpp
Go to the documentation of this file.
1
13
14#pragma once
15
16// Dependency:
17#include "../glm.hpp"
18
19#if GLM_MESSAGES == GLM_ENABLE && !defined(GLM_EXT_INCLUDED)
20# ifndef GLM_ENABLE_EXPERIMENTAL
21# pragma message("GLM: GLM_GTX_associated_min_max is an experimental extension and may change in the future. Use #define GLM_ENABLE_EXPERIMENTAL before including it, if you really want to use it.")
22# else
23# pragma message("GLM: GLM_GTX_associated_min_max extension included")
24# endif
25#endif
26
27namespace glm
28{
31
34 template<typename T, typename U, qualifier Q>
35 GLM_FUNC_DECL U associatedMin(T x, U a, T y, U b);
36
39 template<length_t L, typename T, typename U, qualifier Q>
40 GLM_FUNC_DECL vec<2, U, Q> associatedMin(
41 vec<L, T, Q> const& x, vec<L, U, Q> const& a,
42 vec<L, T, Q> const& y, vec<L, U, Q> const& b);
43
46 template<length_t L, typename T, typename U, qualifier Q>
47 GLM_FUNC_DECL vec<L, U, Q> associatedMin(
48 T x, const vec<L, U, Q>& a,
49 T y, const vec<L, U, Q>& b);
50
53 template<length_t L, typename T, typename U, qualifier Q>
54 GLM_FUNC_DECL vec<L, U, Q> associatedMin(
55 vec<L, T, Q> const& x, U a,
56 vec<L, T, Q> const& y, U b);
57
60 template<typename T, typename U>
61 GLM_FUNC_DECL U associatedMin(
62 T x, U a,
63 T y, U b,
64 T z, U c);
65
68 template<length_t L, typename T, typename U, qualifier Q>
69 GLM_FUNC_DECL vec<L, U, Q> associatedMin(
70 vec<L, T, Q> const& x, vec<L, U, Q> const& a,
71 vec<L, T, Q> const& y, vec<L, U, Q> const& b,
72 vec<L, T, Q> const& z, vec<L, U, Q> const& c);
73
76 template<typename T, typename U>
77 GLM_FUNC_DECL U associatedMin(
78 T x, U a,
79 T y, U b,
80 T z, U c,
81 T w, U d);
82
85 template<length_t L, typename T, typename U, qualifier Q>
86 GLM_FUNC_DECL vec<L, U, Q> associatedMin(
87 vec<L, T, Q> const& x, vec<L, U, Q> const& a,
88 vec<L, T, Q> const& y, vec<L, U, Q> const& b,
89 vec<L, T, Q> const& z, vec<L, U, Q> const& c,
90 vec<L, T, Q> const& w, vec<L, U, Q> const& d);
91
94 template<length_t L, typename T, typename U, qualifier Q>
95 GLM_FUNC_DECL vec<L, U, Q> associatedMin(
96 T x, vec<L, U, Q> const& a,
97 T y, vec<L, U, Q> const& b,
98 T z, vec<L, U, Q> const& c,
99 T w, vec<L, U, Q> const& d);
100
103 template<length_t L, typename T, typename U, qualifier Q>
104 GLM_FUNC_DECL vec<L, U, Q> associatedMin(
105 vec<L, T, Q> const& x, U a,
106 vec<L, T, Q> const& y, U b,
107 vec<L, T, Q> const& z, U c,
108 vec<L, T, Q> const& w, U d);
109
112 template<typename T, typename U>
113 GLM_FUNC_DECL U associatedMax(T x, U a, T y, U b);
114
117 template<length_t L, typename T, typename U, qualifier Q>
118 GLM_FUNC_DECL vec<2, U, Q> associatedMax(
119 vec<L, T, Q> const& x, vec<L, U, Q> const& a,
120 vec<L, T, Q> const& y, vec<L, U, Q> const& b);
121
124 template<length_t L, typename T, typename U, qualifier Q>
125 GLM_FUNC_DECL vec<L, T, Q> associatedMax(
126 T x, vec<L, U, Q> const& a,
127 T y, vec<L, U, Q> const& b);
128
131 template<length_t L, typename T, typename U, qualifier Q>
132 GLM_FUNC_DECL vec<L, U, Q> associatedMax(
133 vec<L, T, Q> const& x, U a,
134 vec<L, T, Q> const& y, U b);
135
138 template<typename T, typename U>
139 GLM_FUNC_DECL U associatedMax(
140 T x, U a,
141 T y, U b,
142 T z, U c);
143
146 template<length_t L, typename T, typename U, qualifier Q>
147 GLM_FUNC_DECL vec<L, U, Q> associatedMax(
148 vec<L, T, Q> const& x, vec<L, U, Q> const& a,
149 vec<L, T, Q> const& y, vec<L, U, Q> const& b,
150 vec<L, T, Q> const& z, vec<L, U, Q> const& c);
151
154 template<length_t L, typename T, typename U, qualifier Q>
155 GLM_FUNC_DECL vec<L, T, Q> associatedMax(
156 T x, vec<L, U, Q> const& a,
157 T y, vec<L, U, Q> const& b,
158 T z, vec<L, U, Q> const& c);
159
162 template<length_t L, typename T, typename U, qualifier Q>
163 GLM_FUNC_DECL vec<L, U, Q> associatedMax(
164 vec<L, T, Q> const& x, U a,
165 vec<L, T, Q> const& y, U b,
166 vec<L, T, Q> const& z, U c);
167
170 template<typename T, typename U>
171 GLM_FUNC_DECL U associatedMax(
172 T x, U a,
173 T y, U b,
174 T z, U c,
175 T w, U d);
176
179 template<length_t L, typename T, typename U, qualifier Q>
180 GLM_FUNC_DECL vec<L, U, Q> associatedMax(
181 vec<L, T, Q> const& x, vec<L, U, Q> const& a,
182 vec<L, T, Q> const& y, vec<L, U, Q> const& b,
183 vec<L, T, Q> const& z, vec<L, U, Q> const& c,
184 vec<L, T, Q> const& w, vec<L, U, Q> const& d);
185
188 template<length_t L, typename T, typename U, qualifier Q>
189 GLM_FUNC_DECL vec<L, U, Q> associatedMax(
190 T x, vec<L, U, Q> const& a,
191 T y, vec<L, U, Q> const& b,
192 T z, vec<L, U, Q> const& c,
193 T w, vec<L, U, Q> const& d);
194
197 template<length_t L, typename T, typename U, qualifier Q>
198 GLM_FUNC_DECL vec<L, U, Q> associatedMax(
199 vec<L, T, Q> const& x, U a,
200 vec<L, T, Q> const& y, U b,
201 vec<L, T, Q> const& z, U c,
202 vec<L, T, Q> const& w, U d);
203
205} //namespace glm
206
207#include "associated_min_max.inl"
GLM_FUNC_DECL U associatedMax(T x, U a, T y, U b)
Definition associated_min_max.inl:165
GLM_FUNC_DECL U associatedMin(T x, U a, T y, U b)
Definition associated_min_max.inl:7
Core features
Definition common.hpp:21