func_common.hpp
Go to the documentation of this file.
1 
36 #pragma once
37 
38 #include "setup.hpp"
39 #include "precision.hpp"
40 #include "type_int.hpp"
41 #include "_fixes.hpp"
42 
43 namespace glm
44 {
47 
54  template <typename genType>
55  GLM_FUNC_DECL genType abs(genType const & x);
56 
63  template <typename genType>
64  GLM_FUNC_DECL genType sign(genType const & x);
65 
72  template <typename genType>
73  GLM_FUNC_DECL genType floor(genType const & x);
74 
82  template <typename genType>
83  GLM_FUNC_DECL genType trunc(genType const & x);
84 
95  template <typename genType>
96  GLM_FUNC_DECL genType round(genType const & x);
97 
107  template <typename genType>
108  GLM_FUNC_DECL genType roundEven(genType const & x);
109 
117  template <typename genType>
118  GLM_FUNC_DECL genType ceil(genType const & x);
119 
126  template <typename genType>
127  GLM_FUNC_DECL genType fract(genType const & x);
128 
136  template <typename genType>
137  GLM_FUNC_DECL genType mod(
138  genType const & x,
139  genType const & y);
140 
148  template <typename genType>
149  GLM_FUNC_DECL genType mod(
150  genType const & x,
151  typename genType::value_type const & y);
152 
162  template <typename genType>
163  GLM_FUNC_DECL genType modf(
164  genType const & x,
165  genType & i);
166 
173  template <typename genType>
174  GLM_FUNC_DECL genType min(
175  genType const & x,
176  genType const & y);
177 
178  template <typename genType>
179  GLM_FUNC_DECL genType min(
180  genType const & x,
181  typename genType::value_type const & y);
182 
189  template <typename genType>
190  GLM_FUNC_DECL genType max(
191  genType const & x,
192  genType const & y);
193 
194  template <typename genType>
195  GLM_FUNC_DECL genType max(
196  genType const & x,
197  typename genType::value_type const & y);
198 
206  template <typename genType>
207  GLM_FUNC_DECL genType clamp(
208  genType const & x,
209  genType const & minVal,
210  genType const & maxVal);
211 
212  template <typename genType, precision P>
213  GLM_FUNC_DECL genType clamp(
214  genType const & x,
215  typename genType::value_type const & minVal,
216  typename genType::value_type const & maxVal);
217 
260  template <typename T, typename U, precision P, template <typename, precision> class vecType>
261  GLM_FUNC_DECL vecType<T, P> mix(
262  vecType<T, P> const & x,
263  vecType<T, P> const & y,
264  vecType<U, P> const & a);
265 
266  template <typename T, typename U, precision P, template <typename, precision> class vecType>
267  GLM_FUNC_DECL vecType<T, P> mix(
268  vecType<T, P> const & x,
269  vecType<T, P> const & y,
270  U const & a);
271 
272  template <typename genTypeT, typename genTypeU>
273  GLM_FUNC_DECL genTypeT mix(
274  genTypeT const & x,
275  genTypeT const & y,
276  genTypeU const & a);
277 
282  template <typename genType>
283  GLM_FUNC_DECL genType step(
284  genType const & edge,
285  genType const & x);
286 
291  template <template <typename, precision> class vecType, typename T, precision P>
292  GLM_FUNC_DECL vecType<T, P> step(
293  T const & edge,
294  vecType<T, P> const & x);
295 
310  template <typename genType>
311  GLM_FUNC_DECL genType smoothstep(
312  genType const & edge0,
313  genType const & edge1,
314  genType const & x);
315 
316  template <typename genType>
317  GLM_FUNC_DECL genType smoothstep(
318  typename genType::value_type const & edge0,
319  typename genType::value_type const & edge1,
320  genType const & x);
321 
334  template <typename genType>
335  GLM_FUNC_DECL typename genType::bool_type isnan(genType const & x);
336 
347  template <typename genType>
348  GLM_FUNC_DECL typename genType::bool_type isinf(genType const & x);
349 
356  GLM_FUNC_DECL int floatBitsToInt(float const & v);
357 
364  template <template <typename, precision> class vecType, precision P>
365  GLM_FUNC_DECL vecType<int, P> floatBitsToInt(vecType<float, P> const & v);
366 
373  GLM_FUNC_DECL uint floatBitsToUint(float const & v);
374 
381  template <template <typename, precision> class vecType, precision P>
382  GLM_FUNC_DECL vecType<uint, P> floatBitsToUint(vecType<float, P> const & v);
383 
392  GLM_FUNC_DECL float intBitsToFloat(int const & v);
393 
402  template <template <typename, precision> class vecType, precision P>
403  GLM_FUNC_DECL vecType<float, P> intBitsToFloat(vecType<int, P> const & v);
404 
413  GLM_FUNC_DECL float uintBitsToFloat(uint const & v);
414 
423  template <template <typename, precision> class vecType, precision P>
424  GLM_FUNC_DECL vecType<float, P> uintBitsToFloat(vecType<uint, P> const & v);
425 
432  template <typename genType>
433  GLM_FUNC_DECL genType fma(genType const & a, genType const & b, genType const & c);
434 
449  template <typename genType, typename genIType>
450  GLM_FUNC_DECL genType frexp(genType const & x, genIType & exp);
451 
463  template <typename genType, typename genIType>
464  GLM_FUNC_DECL genType ldexp(genType const & x, genIType const & exp);
465 
467 }//namespace glm
468 
469 #include "func_common.inl"
470 
GLM_FUNC_DECL uint floatBitsToUint(float const &v)
GLM_FUNC_DECL genType ldexp(genType const &x, genIType const &exp)
GLM_FUNC_DECL genType round(genType const &x)
GLM_FUNC_DECL genType min(genType const &x, genType const &y)
GLM_FUNC_DECL float uintBitsToFloat(uint const &v)
GLM_FUNC_DECL genType mod(genType const &x, genType const &y)
GLM_FUNC_DECL genType trunc(genType const &x)
GLM_FUNC_DECL genType frexp(genType const &x, genIType &exp)
T
GLM_FUNC_DECL genType::bool_type isinf(genType const &x)
GLM_FUNC_DECL vecType< T, P > mix(vecType< T, P > const &x, vecType< T, P > const &y, vecType< U, P > const &a)
unsigned int uint
Definition: posegraph3.hh:51
GLM_FUNC_DECL genType step(genType const &edge, genType const &x)
GLM_FUNC_DECL genType sign(genType const &x)
GLM_FUNC_DECL genType fract(genType const &x)
GLM_FUNC_DECL genType modf(genType const &x, genType &i)
GLM_FUNC_DECL genType floor(genType const &x)
GLM_FUNC_DECL genType abs(genType const &x)
GLM_FUNC_DECL genType clamp(genType const &x, genType const &minVal, genType const &maxVal)
GLM_FUNC_DECL int floatBitsToInt(float const &v)
precision
Definition: precision.hpp:33
GLM_FUNC_DECL genType exp(genType const &x)
GLM_FUNC_DECL genType max(genType const &x, genType const &y)
GLM_FUNC_DECL genType::bool_type isnan(genType const &x)
GLM_FUNC_DECL genType fma(genType const &a, genType const &b, genType const &c)
GLM_FUNC_DECL genType ceil(genType const &x)
#define GLM_FUNC_DECL
Definition: setup.hpp:728
GLM_FUNC_DECL genType smoothstep(genType const &edge0, genType const &edge1, genType const &x)
GLM_FUNC_DECL float intBitsToFloat(int const &v)
GLM_FUNC_DECL genType roundEven(genType const &x)


rtabmap
Author(s): Mathieu Labbe
autogenerated on Mon Jan 23 2023 03:37:28