parent
7c177c0ea3
commit
abcefb9e77
5 changed files with 4 additions and 260 deletions
@ -1,189 +0,0 @@ |
||||
#ifndef GLM_EXT_VIRTREV_ADDRESS_HPP |
||||
#define GLM_EXT_VIRTREV_ADDRESS_HPP |
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// OpenGL Mathematics Copyright (c) 2005 - 2010 G-Truc Creation (www.g-truc.net)
|
||||
// Virtrev SDK copyright matrem (matrem84.free.fr)
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// Created : 2008-10-07
|
||||
// Updated :
|
||||
// Licence : This source is under MIT License
|
||||
// File : glm/ext/virtrev/address.h
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// Dependency:
|
||||
// - GLM core
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#include "../glm.hpp" |
||||
|
||||
|
||||
namespace glm |
||||
{ |
||||
namespace virtrev_glmext |
||||
{ |
||||
//! GLM_VIRTREV_address extension: Vector & matrix content address (T const * type pointer).
|
||||
namespace address |
||||
{ |
||||
/** Get the const address of the vector content. */ |
||||
template<typename T> |
||||
T const * address(detail::tvec2<T> const & vec) |
||||
{ |
||||
return &(vec.x); |
||||
} |
||||
/** Get the address of the vector content. */ |
||||
template<typename T> |
||||
T * address(detail::tvec2<T> & vec) |
||||
{ |
||||
return &(vec.x); |
||||
} |
||||
|
||||
/** Get the const address of the vector content. */ |
||||
template<typename T> |
||||
T const * address(detail::tvec3<T> const & vec) |
||||
{ |
||||
return &(vec.x); |
||||
} |
||||
/** Get the address of the vector content. */ |
||||
template<typename T> |
||||
T * address(detail::tvec3<T> & vec) |
||||
{ |
||||
return &(vec.x); |
||||
} |
||||
|
||||
/** Get the const address of the vector content. */ |
||||
template<typename T> |
||||
T const * address(detail::tvec4<T> const & vec) |
||||
{ |
||||
return &(vec.x); |
||||
} |
||||
/** Get the address of the vector content. */ |
||||
template<typename T> |
||||
T * address(detail::tvec4<T> & vec) |
||||
{ |
||||
return &(vec.x); |
||||
} |
||||
|
||||
/** Get the const address of the matrix content. */ |
||||
template<typename T> |
||||
T const * address(detail::tmat2x2<T> const & mat) |
||||
{ |
||||
return &(mat[0].x); |
||||
} |
||||
/** Get the address of the matrix content. */ |
||||
template<typename T> |
||||
T * address(detail::tmat2x2<T> & mat) |
||||
{ |
||||
return &(mat[0].x); |
||||
} |
||||
|
||||
/** Get the const address of the matrix content. */ |
||||
template<typename T> |
||||
T const * address(detail::tmat3x3<T> const & mat) |
||||
{ |
||||
return &(mat[0].x); |
||||
} |
||||
/** Get the address of the matrix content. */ |
||||
template<typename T> |
||||
T * address(detail::tmat3x3<T> & mat) |
||||
{ |
||||
return &(mat[0].x); |
||||
} |
||||
|
||||
/** Get the const address of the matrix content. */ |
||||
template<typename T> |
||||
T const * address(detail::tmat4x4<T> const & mat) |
||||
{ |
||||
return &(mat[0].x); |
||||
} |
||||
/** Get the address of the matrix content. */ |
||||
template<typename T> |
||||
T * address(detail::tmat4x4<T> & mat) |
||||
{ |
||||
return &(mat[0].x); |
||||
} |
||||
|
||||
/** Get the const address of the matrix content. */ |
||||
template<typename T> |
||||
T const * address(detail::tmat2x3<T> const & mat) |
||||
{ |
||||
return &(mat[0].x); |
||||
} |
||||
/** Get the address of the matrix content. */ |
||||
template<typename T> |
||||
T * address(detail::tmat2x3<T> & mat) |
||||
{ |
||||
return &(mat[0].x); |
||||
} |
||||
|
||||
/** Get the const address of the matrix content. */ |
||||
template<typename T> |
||||
T const * address(detail::tmat3x2<T> const & mat) |
||||
{ |
||||
return &(mat[0].x); |
||||
} |
||||
/** Get the address of the matrix content. */ |
||||
template<typename T> |
||||
T * address(detail::tmat3x2<T> & mat) |
||||
{ |
||||
return &(mat[0].x); |
||||
} |
||||
|
||||
/** Get the const address of the matrix content. */ |
||||
template<typename T> |
||||
T const * address(detail::tmat2x4<T> const & mat) |
||||
{ |
||||
return &(mat[0].x); |
||||
} |
||||
/** Get the address of the matrix content. */ |
||||
template<typename T> |
||||
T * address(detail::tmat2x4<T> & mat) |
||||
{ |
||||
return &(mat[0].x); |
||||
} |
||||
|
||||
/** Get the const address of the matrix content. */ |
||||
template<typename T> |
||||
T const * address(detail::tmat4x2<T> const & mat) |
||||
{ |
||||
return &(mat[0].x); |
||||
} |
||||
/** Get the address of the matrix content. */ |
||||
template<typename T> |
||||
T * address(detail::tmat4x2<T> & mat) |
||||
{ |
||||
return &(mat[0].x); |
||||
} |
||||
|
||||
/** Get the const address of the matrix content. */ |
||||
template<typename T> |
||||
T const * address(detail::tmat3x4<T> const & mat) |
||||
{ |
||||
return &(mat[0].x); |
||||
} |
||||
/** Get the address of the matrix content. */ |
||||
template<typename T> |
||||
T * address(detail::tmat3x4<T> & mat) |
||||
{ |
||||
return &(mat[0].x); |
||||
} |
||||
|
||||
/** Get the const address of the matrix content. */ |
||||
template<typename T> |
||||
T const * address(detail::tmat4x3<T> const & mat) |
||||
{ |
||||
return &(mat[0].x); |
||||
} |
||||
/** Get the address of the matrix content. */ |
||||
template<typename T> |
||||
T * address(detail::tmat4x3<T> & mat) |
||||
{ |
||||
return &(mat[0].x); |
||||
} |
||||
} |
||||
} |
||||
} |
||||
|
||||
namespace glm{using namespace virtrev_glmext::address;} |
||||
|
||||
#endif//GLM_EXT_VIRTREV_ADDRESS_HPP
|
||||
|
@ -1,68 +0,0 @@ |
||||
///////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// OpenGL Mathematics Copyright (c) 2005 - 2010 G-Truc Creation (www.g-truc.net)
|
||||
// VirtreV SDK copyright matrem (matrem84.free.fr)
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// Created : 2008-09-23
|
||||
// Updated :
|
||||
// Licence : This source is under MIT License
|
||||
// File : glm/ext/virtrev/equal_operator.hpp
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// Dependency:
|
||||
// - GLM core
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#ifndef glm_virtrev_equal_operator |
||||
#define glm_virtrev_equal_operator |
||||
|
||||
#include "../glm.hpp" |
||||
|
||||
namespace glm |
||||
{ |
||||
namespace virtrev_glmext |
||||
{ |
||||
//! GLM_VIRTREV_equal_operator extension: equal operator for vectors.
|
||||
namespace equal_operator |
||||
{ |
||||
template<typename T> |
||||
inline bool operator == (glm::detail::tvec2<T> const & v1, glm::detail::tvec2<T> const & v2) |
||||
{ |
||||
return v1.x==v2.x && v1.y==v2.y; |
||||
} |
||||
|
||||
template<typename T> |
||||
inline bool operator == (glm::detail::tvec3<T> const & v1, glm::detail::tvec3<T> const & v2) |
||||
{ |
||||
return v1.x==v2.x && v1.y==v2.y && v1.z==v2.z; |
||||
} |
||||
|
||||
template<typename T> |
||||
inline bool operator == (glm::detail::tvec4<T> const & v1, glm::detail::tvec4<T> const & v2) |
||||
{ |
||||
return v1.x==v2.x && v1.y==v2.y && v1.z==v2.z && v1.w==v2.w; |
||||
} |
||||
|
||||
template<typename T> |
||||
inline bool operator != (glm::detail::tvec2<T> const & v1, glm::detail::tvec2<T> const & v2) |
||||
{ |
||||
return v1.x!=v2.x || v1.y!=v2.y; |
||||
} |
||||
|
||||
template<typename T> |
||||
inline bool operator != (glm::detail::tvec3<T> const & v1, glm::detail::tvec3<T> const & v2) |
||||
{ |
||||
return v1.x!=v2.x || v1.y!=v2.y || v1.z!=v2.z; |
||||
} |
||||
|
||||
template<typename T> |
||||
inline bool operator != (glm::detail::tvec4<T> const & v1, glm::detail::tvec4<T> const & v2) |
||||
{ |
||||
return v1.x!=v2.x || v1.y!=v2.y || v1.z!=v2.z || v1.w!=v2.w; |
||||
} |
||||
} |
||||
} |
||||
} |
||||
|
||||
namespace glm {using namespace virtrev_glmext::equal_operator;} |
||||
|
||||
#endif//glm_virtrev_equal_operator
|
||||
|
Loading…
Reference in New Issue