Namespaces | Typedefs | Functions
compatibility.hpp File Reference
#include "../glm.hpp"
#include "../gtc/quaternion.hpp"
#include "compatibility.inl"
Include dependency graph for compatibility.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 glm
 

Typedefs

typedef bool glm::bool1
 boolean type with 1 component. (From GLM_GTX_compatibility extension) More...
 
typedef bool glm::bool1x1
 boolean matrix with 1 x 1 component. (From GLM_GTX_compatibility extension) More...
 
typedef detail::tvec2< bool, highp > glm::bool2
 boolean type with 2 components. (From GLM_GTX_compatibility extension) More...
 
typedef detail::tmat2x2< bool, highp > glm::bool2x2
 boolean matrix with 2 x 2 components. (From GLM_GTX_compatibility extension) More...
 
typedef detail::tmat2x3< bool, highp > glm::bool2x3
 boolean matrix with 2 x 3 components. (From GLM_GTX_compatibility extension) More...
 
typedef detail::tmat2x4< bool, highp > glm::bool2x4
 boolean matrix with 2 x 4 components. (From GLM_GTX_compatibility extension) More...
 
typedef detail::tvec3< bool, highp > glm::bool3
 boolean type with 3 components. (From GLM_GTX_compatibility extension) More...
 
typedef detail::tmat3x2< bool, highp > glm::bool3x2
 boolean matrix with 3 x 2 components. (From GLM_GTX_compatibility extension) More...
 
typedef detail::tmat3x3< bool, highp > glm::bool3x3
 boolean matrix with 3 x 3 components. (From GLM_GTX_compatibility extension) More...
 
typedef detail::tmat3x4< bool, highp > glm::bool3x4
 boolean matrix with 3 x 4 components. (From GLM_GTX_compatibility extension) More...
 
typedef detail::tvec4< bool, highp > glm::bool4
 boolean type with 4 components. (From GLM_GTX_compatibility extension) More...
 
typedef detail::tmat4x2< bool, highp > glm::bool4x2
 boolean matrix with 4 x 2 components. (From GLM_GTX_compatibility extension) More...
 
typedef detail::tmat4x3< bool, highp > glm::bool4x3
 boolean matrix with 4 x 3 components. (From GLM_GTX_compatibility extension) More...
 
typedef detail::tmat4x4< bool, highp > glm::bool4x4
 boolean matrix with 4 x 4 components. (From GLM_GTX_compatibility extension) More...
 
typedef double glm::double1
 double-precision floating-point vector with 1 component. (From GLM_GTX_compatibility extension) More...
 
typedef double glm::double1x1
 double-precision floating-point matrix with 1 component. (From GLM_GTX_compatibility extension) More...
 
typedef detail::tvec2< double, highp > glm::double2
 double-precision floating-point vector with 2 components. (From GLM_GTX_compatibility extension) More...
 
typedef detail::tmat2x2< double, highp > glm::double2x2
 double-precision floating-point matrix with 2 x 2 components. (From GLM_GTX_compatibility extension) More...
 
typedef detail::tmat2x3< double, highp > glm::double2x3
 double-precision floating-point matrix with 2 x 3 components. (From GLM_GTX_compatibility extension) More...
 
typedef detail::tmat2x4< double, highp > glm::double2x4
 double-precision floating-point matrix with 2 x 4 components. (From GLM_GTX_compatibility extension) More...
 
typedef detail::tvec3< double, highp > glm::double3
 double-precision floating-point vector with 3 components. (From GLM_GTX_compatibility extension) More...
 
typedef detail::tmat3x2< double, highp > glm::double3x2
 double-precision floating-point matrix with 3 x 2 components. (From GLM_GTX_compatibility extension) More...
 
typedef detail::tmat3x3< double, highp > glm::double3x3
 double-precision floating-point matrix with 3 x 3 components. (From GLM_GTX_compatibility extension) More...
 
typedef detail::tmat3x4< double, highp > glm::double3x4
 double-precision floating-point matrix with 3 x 4 components. (From GLM_GTX_compatibility extension) More...
 
typedef detail::tvec4< double, highp > glm::double4
 double-precision floating-point vector with 4 components. (From GLM_GTX_compatibility extension) More...
 
typedef detail::tmat4x2< double, highp > glm::double4x2
 double-precision floating-point matrix with 4 x 2 components. (From GLM_GTX_compatibility extension) More...
 
typedef detail::tmat4x3< double, highp > glm::double4x3
 double-precision floating-point matrix with 4 x 3 components. (From GLM_GTX_compatibility extension) More...
 
typedef detail::tmat4x4< double, highp > glm::double4x4
 double-precision floating-point matrix with 4 x 4 components. (From GLM_GTX_compatibility extension) More...
 
typedef float glm::float1
 single-precision floating-point vector with 1 component. (From GLM_GTX_compatibility extension) More...
 
typedef float glm::float1x1
 single-precision floating-point matrix with 1 component. (From GLM_GTX_compatibility extension) More...
 
typedef detail::tvec2< float, highp > glm::float2
 single-precision floating-point vector with 2 components. (From GLM_GTX_compatibility extension) More...
 
typedef detail::tmat2x2< float, highp > glm::float2x2
 single-precision floating-point matrix with 2 x 2 components. (From GLM_GTX_compatibility extension) More...
 
typedef detail::tmat2x3< float, highp > glm::float2x3
 single-precision floating-point matrix with 2 x 3 components. (From GLM_GTX_compatibility extension) More...
 
typedef detail::tmat2x4< float, highp > glm::float2x4
 single-precision floating-point matrix with 2 x 4 components. (From GLM_GTX_compatibility extension) More...
 
typedef detail::tvec3< float, highp > glm::float3
 single-precision floating-point vector with 3 components. (From GLM_GTX_compatibility extension) More...
 
typedef detail::tmat3x2< float, highp > glm::float3x2
 single-precision floating-point matrix with 3 x 2 components. (From GLM_GTX_compatibility extension) More...
 
typedef detail::tmat3x3< float, highp > glm::float3x3
 single-precision floating-point matrix with 3 x 3 components. (From GLM_GTX_compatibility extension) More...
 
typedef detail::tmat3x4< float, highp > glm::float3x4
 single-precision floating-point matrix with 3 x 4 components. (From GLM_GTX_compatibility extension) More...
 
typedef detail::tvec4< float, highp > glm::float4
 single-precision floating-point vector with 4 components. (From GLM_GTX_compatibility extension) More...
 
typedef detail::tmat4x2< float, highp > glm::float4x2
 single-precision floating-point matrix with 4 x 2 components. (From GLM_GTX_compatibility extension) More...
 
typedef detail::tmat4x3< float, highp > glm::float4x3
 single-precision floating-point matrix with 4 x 3 components. (From GLM_GTX_compatibility extension) More...
 
typedef detail::tmat4x4< float, highp > glm::float4x4
 single-precision floating-point matrix with 4 x 4 components. (From GLM_GTX_compatibility extension) More...
 
typedef int glm::int1
 integer vector with 1 component. (From GLM_GTX_compatibility extension) More...
 
typedef int glm::int1x1
 integer matrix with 1 component. (From GLM_GTX_compatibility extension) More...
 
typedef detail::tvec2< int, highp > glm::int2
 integer vector with 2 components. (From GLM_GTX_compatibility extension) More...
 
typedef detail::tmat2x2< int, highp > glm::int2x2
 integer matrix with 2 x 2 components. (From GLM_GTX_compatibility extension) More...
 
typedef detail::tmat2x3< int, highp > glm::int2x3
 integer matrix with 2 x 3 components. (From GLM_GTX_compatibility extension) More...
 
typedef detail::tmat2x4< int, highp > glm::int2x4
 integer matrix with 2 x 4 components. (From GLM_GTX_compatibility extension) More...
 
typedef detail::tvec3< int, highp > glm::int3
 integer vector with 3 components. (From GLM_GTX_compatibility extension) More...
 
typedef detail::tmat3x2< int, highp > glm::int3x2
 integer matrix with 3 x 2 components. (From GLM_GTX_compatibility extension) More...
 
typedef detail::tmat3x3< int, highp > glm::int3x3
 integer matrix with 3 x 3 components. (From GLM_GTX_compatibility extension) More...
 
typedef detail::tmat3x4< int, highp > glm::int3x4
 integer matrix with 3 x 4 components. (From GLM_GTX_compatibility extension) More...
 
typedef detail::tvec4< int, highp > glm::int4
 integer vector with 4 components. (From GLM_GTX_compatibility extension) More...
 
typedef detail::tmat4x2< int, highp > glm::int4x2
 integer matrix with 4 x 2 components. (From GLM_GTX_compatibility extension) More...
 
typedef detail::tmat4x3< int, highp > glm::int4x3
 integer matrix with 4 x 3 components. (From GLM_GTX_compatibility extension) More...
 
typedef detail::tmat4x4< int, highp > glm::int4x4
 integer matrix with 4 x 4 components. (From GLM_GTX_compatibility extension) More...
 

Functions

template<typename T , precision P>
GLM_FUNC_QUALIFIER T glm::atan2 (T x, T y)
 Arc tangent. Returns an angle whose tangent is y/x. The signs of x and y are used to determine what quadrant the angle is in. The range of values returned by this function is [-PI, PI]. Results are undefined if x and y are both 0. (From GLM_GTX_compatibility) More...
 
template<typename T , precision P>
GLM_FUNC_QUALIFIER detail::tvec2< T, Pglm::atan2 (const detail::tvec2< T, P > &x, const detail::tvec2< T, P > &y)
 Arc tangent. Returns an angle whose tangent is y/x. The signs of x and y are used to determine what quadrant the angle is in. The range of values returned by this function is [-PI, PI]. Results are undefined if x and y are both 0. (From GLM_GTX_compatibility) More...
 
template<typename T , precision P>
GLM_FUNC_QUALIFIER detail::tvec3< T, Pglm::atan2 (const detail::tvec3< T, P > &x, const detail::tvec3< T, P > &y)
 Arc tangent. Returns an angle whose tangent is y/x. The signs of x and y are used to determine what quadrant the angle is in. The range of values returned by this function is [-PI, PI]. Results are undefined if x and y are both 0. (From GLM_GTX_compatibility) More...
 
template<typename T , precision P>
GLM_FUNC_QUALIFIER detail::tvec4< T, Pglm::atan2 (const detail::tvec4< T, P > &x, const detail::tvec4< T, P > &y)
 Arc tangent. Returns an angle whose tangent is y/x. The signs of x and y are used to determine what quadrant the angle is in. The range of values returned by this function is [-PI, PI]. Results are undefined if x and y are both 0. (From GLM_GTX_compatibility) More...
 
template<typename genType >
GLM_FUNC_DECL bool glm::isfinite (genType const &x)
 Test whether or not a scalar or each vector component is a finite value. (From GLM_GTX_compatibility) More...
 
template<typename T , precision P>
GLM_FUNC_DECL detail::tvec2< bool, Pglm::isfinite (const detail::tvec2< T, P > &x)
 Test whether or not a scalar or each vector component is a finite value. (From GLM_GTX_compatibility) More...
 
template<typename T , precision P>
GLM_FUNC_DECL detail::tvec3< bool, Pglm::isfinite (const detail::tvec3< T, P > &x)
 Test whether or not a scalar or each vector component is a finite value. (From GLM_GTX_compatibility) More...
 
template<typename T , precision P>
GLM_FUNC_DECL detail::tvec4< bool, Pglm::isfinite (const detail::tvec4< T, P > &x)
 Test whether or not a scalar or each vector component is a finite value. (From GLM_GTX_compatibility) More...
 
template<typename T >
GLM_FUNC_QUALIFIER T glm::lerp (T x, T y, T a)
 Returns x * (1.0 - a) + y * a, i.e., the linear blend of x and y using the floating-point value a. The value for a is not restricted to the range [0, 1]. (From GLM_GTX_compatibility) More...
 
template<typename T , precision P>
GLM_FUNC_QUALIFIER detail::tvec2< T, Pglm::lerp (const detail::tvec2< T, P > &x, const detail::tvec2< T, P > &y, T a)
 Returns x * (1.0 - a) + y * a, i.e., the linear blend of x and y using the floating-point value a. The value for a is not restricted to the range [0, 1]. (From GLM_GTX_compatibility) More...
 
template<typename T , precision P>
GLM_FUNC_QUALIFIER detail::tvec3< T, Pglm::lerp (const detail::tvec3< T, P > &x, const detail::tvec3< T, P > &y, T a)
 Returns x * (1.0 - a) + y * a, i.e., the linear blend of x and y using the floating-point value a. The value for a is not restricted to the range [0, 1]. (From GLM_GTX_compatibility) More...
 
template<typename T , precision P>
GLM_FUNC_QUALIFIER detail::tvec4< T, Pglm::lerp (const detail::tvec4< T, P > &x, const detail::tvec4< T, P > &y, T a)
 Returns x * (1.0 - a) + y * a, i.e., the linear blend of x and y using the floating-point value a. The value for a is not restricted to the range [0, 1]. (From GLM_GTX_compatibility) More...
 
template<typename T , precision P>
GLM_FUNC_QUALIFIER detail::tvec2< T, Pglm::lerp (const detail::tvec2< T, P > &x, const detail::tvec2< T, P > &y, const detail::tvec2< T, P > &a)
 Returns the component-wise result of x * (1.0 - a) + y * a, i.e., the linear blend of x and y using vector a. The value for a is not restricted to the range [0, 1]. (From GLM_GTX_compatibility) More...
 
template<typename T , precision P>
GLM_FUNC_QUALIFIER detail::tvec3< T, Pglm::lerp (const detail::tvec3< T, P > &x, const detail::tvec3< T, P > &y, const detail::tvec3< T, P > &a)
 Returns the component-wise result of x * (1.0 - a) + y * a, i.e., the linear blend of x and y using vector a. The value for a is not restricted to the range [0, 1]. (From GLM_GTX_compatibility) More...
 
template<typename T , precision P>
GLM_FUNC_QUALIFIER detail::tvec4< T, Pglm::lerp (const detail::tvec4< T, P > &x, const detail::tvec4< T, P > &y, const detail::tvec4< T, P > &a)
 Returns the component-wise result of x * (1.0 - a) + y * a, i.e., the linear blend of x and y using vector a. The value for a is not restricted to the range [0, 1]. (From GLM_GTX_compatibility) More...
 
template<typename T , precision P>
GLM_FUNC_QUALIFIER T glm::saturate (T x)
 Returns clamp(x, 0, 1) for each component in x. (From GLM_GTX_compatibility) More...
 
template<typename T , precision P>
GLM_FUNC_QUALIFIER detail::tvec2< T, Pglm::saturate (const detail::tvec2< T, P > &x)
 Returns clamp(x, 0, 1) for each component in x. (From GLM_GTX_compatibility) More...
 
template<typename T , precision P>
GLM_FUNC_QUALIFIER detail::tvec3< T, Pglm::saturate (const detail::tvec3< T, P > &x)
 Returns clamp(x, 0, 1) for each component in x. (From GLM_GTX_compatibility) More...
 
template<typename T , precision P>
GLM_FUNC_QUALIFIER detail::tvec4< T, Pglm::saturate (const detail::tvec4< T, P > &x)
 Returns clamp(x, 0, 1) for each component in x. (From GLM_GTX_compatibility) More...
 
template<typename T , precision P>
GLM_FUNC_QUALIFIER T glm::slerp (detail::tquat< T, P > const &x, detail::tquat< T, P > const &y, T const &a)
 Returns the slurp interpolation between two quaternions. More...
 

Detailed Description

OpenGL Mathematics (glm.g-truc.net)

Copyright (c) 2005 - 2014 G-Truc Creation (www.g-truc.net) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

GLM_GTX_compatibility

Date
2007-01-24 / 2011-06-07
Author
Christophe Riccio
See also
GLM Core (dependence)
gtc_half_float (dependence)

Definition in file compatibility.hpp.



rtabmap
Author(s): Mathieu Labbe
autogenerated on Mon Jan 23 2023 03:38:58