Updated style, typo, removed old swizzle macro
This commit is contained in:
parent
d43e671dcd
commit
7533265233
File diff suppressed because it is too large
Load Diff
@ -519,6 +519,13 @@
|
|||||||
#define GLM_FUNC_DECL GLM_CUDA_FUNC_DECL
|
#define GLM_FUNC_DECL GLM_CUDA_FUNC_DECL
|
||||||
#define GLM_FUNC_QUALIFIER GLM_CUDA_FUNC_DEF GLM_INLINE
|
#define GLM_FUNC_QUALIFIER GLM_CUDA_FUNC_DEF GLM_INLINE
|
||||||
|
|
||||||
|
///////////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
|
// Support check macros
|
||||||
|
|
||||||
|
#define GLM_SUPPORT_SWIZZLE_OPERATOR() (defined(GLM_SWIZZLE_OPERATOR) && \
|
||||||
|
((GLM_LANG == GLM_LANG_CXX11) || (GLM_LANG == GLM_LANG_CXXMS) || ((GLM_COMPILER & GLM_COMPILER_GCC) && (GLM_LANG == GLM_LANG_CXX0X))))
|
||||||
|
#define GLM_SUPPORT_SWIZZLE_FUNCTION() defined(GLM_SWIZZLE_OPERATOR)
|
||||||
|
|
||||||
///////////////////////////////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
// Swizzle operators
|
// Swizzle operators
|
||||||
|
|
||||||
@ -535,10 +542,4 @@
|
|||||||
# endif
|
# endif
|
||||||
#endif//GLM_MESSAGE
|
#endif//GLM_MESSAGE
|
||||||
|
|
||||||
///////////////////////////////////////////////////////////////////////////////////////////////////
|
|
||||||
// Support check macros
|
|
||||||
|
|
||||||
#define GLM_SUPPORT_SWIZZLE_OPERATOR() \
|
|
||||||
((GLM_LANG == GLM_LANG_CXX11) || (GLM_LANG == GLM_LANG_CXXMS) || ((GLM_COMPILER & GLM_COMPILER_GCC) && (GLM_LANG == GLM_LANG_CXX0X)))
|
|
||||||
|
|
||||||
#endif//glm_setup
|
#endif//glm_setup
|
||||||
|
@ -65,25 +65,25 @@ namespace detail
|
|||||||
# if(GLM_COMPONENT == GLM_COMPONENT_ONLY_XYZW)
|
# if(GLM_COMPONENT == GLM_COMPONENT_ONLY_XYZW)
|
||||||
value_type x, y;
|
value_type x, y;
|
||||||
|
|
||||||
# ifdef GLM_SWIZZLE_OPERATOR
|
# if(GLM_SUPPORT_SWIZZLE_FUNCTION())
|
||||||
// Defines all he swizzle operator as functions
|
// Defines all he swizzle operator as functions
|
||||||
GLM_SWIZZLE_GEN_REF2_FROM_VEC2_SWIZZLE(value_type, detail::tvec2, detail::tref2, x, y)
|
GLM_SWIZZLE_GEN_REF2_FROM_VEC2_SWIZZLE(value_type, detail::tvec2, detail::tref2, x, y)
|
||||||
GLM_SWIZZLE_GEN_VEC_FROM_VEC2_COMP(value_type, detail::tvec2, detail::tvec2, detail::tvec3, detail::tvec4, x, y)
|
GLM_SWIZZLE_GEN_VEC_FROM_VEC2_COMP(value_type, detail::tvec2, detail::tvec2, detail::tvec3, detail::tvec4, x, y)
|
||||||
# endif//GLM_SWIZZLE_OPERATOR
|
# endif//GLM_SUPPORT_SWIZZLE_FUNCTION()
|
||||||
# elif(GLM_SUPPORT_SWIZZLE_OPERATOR())
|
# elif(GLM_COMPONENT == GLM_COMPONENT_MS_EXT)
|
||||||
union
|
union
|
||||||
{
|
{
|
||||||
# ifdef GLM_SWIZZLE_OPERATOR
|
# if(GLM_SUPPORT_SWIZZLE_OPERATOR())
|
||||||
_GLM_SWIZZLE2_2_MEMBERS(value_type, glm::detail::tvec2<value_type>, x, y)
|
_GLM_SWIZZLE2_2_MEMBERS(value_type, glm::detail::tvec2<value_type>, x, y)
|
||||||
_GLM_SWIZZLE2_2_MEMBERS(value_type, glm::detail::tvec2<value_type>, r, g)
|
_GLM_SWIZZLE2_2_MEMBERS(value_type, glm::detail::tvec2<value_type>, r, g)
|
||||||
_GLM_SWIZZLE2_2_MEMBERS(value_type, glm::detail::tvec2<value_type>, s, t)
|
_GLM_SWIZZLE2_2_MEMBERS(value_type, glm::detail::tvec2<value_type>, s, t)
|
||||||
_GLM_SWIZZLE2_3_MEMBERS(value_type, glm::detail::tvec3<value_type>, x, y)
|
_GLM_SWIZZLE2_3_MEMBERS(value_type, glm::detail::tvec3<value_type>, x, y)
|
||||||
_GLM_SWIZZLE2_3_MEMBERS(value_type, glm::detail::tvec3<value_type>, r, g)
|
_GLM_SWIZZLE2_3_MEMBERS(value_type, glm::detail::tvec3<value_type>, r, g)
|
||||||
_GLM_SWIZZLE2_3_MEMBERS(value_type, glm::detail::tvec3<value_type>, s, t)
|
_GLM_SWIZZLE2_3_MEMBERS(value_type, glm::detail::tvec3<value_type>, s, t)
|
||||||
_GLM_SWIZZLE2_4_MEMBERS(value_type, glm::detail::tvec4<value_type>, x, y)
|
_GLM_SWIZZLE2_4_MEMBERS(value_type, glm::detail::tvec4<value_type>, x, y)
|
||||||
_GLM_SWIZZLE2_4_MEMBERS(value_type, glm::detail::tvec4<value_type>, r, g)
|
_GLM_SWIZZLE2_4_MEMBERS(value_type, glm::detail::tvec4<value_type>, r, g)
|
||||||
_GLM_SWIZZLE2_4_MEMBERS(value_type, glm::detail::tvec4<value_type>, s, t)
|
_GLM_SWIZZLE2_4_MEMBERS(value_type, glm::detail::tvec4<value_type>, s, t)
|
||||||
# endif//GLM_SWIZZLE_OPERATOR
|
# endif//(GLM_SUPPORT_SWIZZLE_OPERATOR())
|
||||||
|
|
||||||
struct{value_type r, g;};
|
struct{value_type r, g;};
|
||||||
struct{value_type s, t;};
|
struct{value_type s, t;};
|
||||||
@ -93,11 +93,11 @@ namespace detail
|
|||||||
union {value_type x, r, s;};
|
union {value_type x, r, s;};
|
||||||
union {value_type y, g, t;};
|
union {value_type y, g, t;};
|
||||||
|
|
||||||
# ifdef GLM_SWIZZLE_OPERATOR
|
# if(GLM_SUPPORT_SWIZZLE_FUNCTION())
|
||||||
// Defines all he swizzle operator as functions
|
// Defines all he swizzle operator as functions
|
||||||
GLM_SWIZZLE_GEN_REF_FROM_VEC2(value_type, detail::tvec2, detail::tref2)
|
GLM_SWIZZLE_GEN_REF_FROM_VEC2(value_type, detail::tvec2, detail::tref2)
|
||||||
GLM_SWIZZLE_GEN_VEC_FROM_VEC2(value_type, detail::tvec2, detail::tvec2, detail::tvec3, detail::tvec4)
|
GLM_SWIZZLE_GEN_VEC_FROM_VEC2(value_type, detail::tvec2, detail::tvec2, detail::tvec3, detail::tvec4)
|
||||||
# endif//GLM_SWIZZLE_OPERATOR
|
# endif//GLM_SUPPORT_SWIZZLE_FUNCTION()
|
||||||
# endif//GLM_COMPONENT
|
# endif//GLM_COMPONENT
|
||||||
|
|
||||||
//////////////////////////////////////
|
//////////////////////////////////////
|
||||||
|
@ -61,35 +61,29 @@ namespace detail
|
|||||||
|
|
||||||
//////////////////////////////////////
|
//////////////////////////////////////
|
||||||
// Data
|
// Data
|
||||||
/*
|
|
||||||
#define GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, CLASS_TYPE, SWIZZLED_TYPE, CONST, A, B, C) \
|
|
||||||
SWIZZLED_TYPE<TMPL_TYPE> A ## B ## C() CONST \
|
|
||||||
{ \
|
|
||||||
return SWIZZLED_TYPE<TMPL_TYPE>(this->A, this->B, this->B); \
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
# if(GLM_COMPONENT == GLM_COMPONENT_ONLY_XYZW)
|
# if(GLM_COMPONENT == GLM_COMPONENT_ONLY_XYZW)
|
||||||
value_type x, y, z;
|
value_type x, y, z;
|
||||||
|
|
||||||
# ifdef GLM_SWIZZLE_OPERATOR
|
# if(GLM_SUPPORT_SWIZZLE_FUNCTION())
|
||||||
// Defines all he swizzle operator as functions
|
// Defines all he swizzle operator as functions
|
||||||
GLM_SWIZZLE_GEN_REF_FROM_VEC3_COMP(T, detail::tvec3, detail::tref2, detail::tref3, x, y, z)
|
GLM_SWIZZLE_GEN_REF_FROM_VEC3_COMP(T, detail::tvec3, detail::tref2, detail::tref3, x, y, z)
|
||||||
GLM_SWIZZLE_GEN_VEC_FROM_VEC3_COMP(T, detail::tvec3, detail::tvec2, detail::tvec3, detail::tvec4, x, y, z)
|
GLM_SWIZZLE_GEN_VEC_FROM_VEC3_COMP(T, detail::tvec3, detail::tvec2, detail::tvec3, detail::tvec4, x, y, z)
|
||||||
# endif//GLM_SWIZZLE_OPERATOR
|
# endif//GLM_SUPPORT_SWIZZLE_FUNCTION()
|
||||||
# elif(GLM_SUPPORT_SWIZZLE_OPERATOR())
|
# elif(GLM_COMPONENT == GLM_COMPONENT_MS_EXT)
|
||||||
union
|
union
|
||||||
{
|
{
|
||||||
# ifdef GLM_SWIZZLE_OPERATOR
|
# if(GLM_SUPPORT_SWIZZLE_OPERATOR())
|
||||||
_GLM_SWIZZLE3_2_MEMBERS(value_type,glm::detail::tvec2<value_type>,x,y,z)
|
_GLM_SWIZZLE3_2_MEMBERS(value_type, glm::detail::tvec2<value_type>, x, y, z)
|
||||||
_GLM_SWIZZLE3_2_MEMBERS(value_type,glm::detail::tvec2<value_type>,r,g,b)
|
_GLM_SWIZZLE3_2_MEMBERS(value_type, glm::detail::tvec2<value_type>, r, g, b)
|
||||||
_GLM_SWIZZLE3_2_MEMBERS(value_type,glm::detail::tvec2<value_type>,s,t,p)
|
_GLM_SWIZZLE3_2_MEMBERS(value_type, glm::detail::tvec2<value_type>, s, t, p)
|
||||||
_GLM_SWIZZLE3_3_MEMBERS(value_type,glm::detail::tvec3<value_type>,x,y,z)
|
_GLM_SWIZZLE3_3_MEMBERS(value_type, glm::detail::tvec3<value_type>, x, y, z)
|
||||||
_GLM_SWIZZLE3_3_MEMBERS(value_type,glm::detail::tvec3<value_type>,r,g,b)
|
_GLM_SWIZZLE3_3_MEMBERS(value_type, glm::detail::tvec3<value_type>, r, g, b)
|
||||||
_GLM_SWIZZLE3_3_MEMBERS(value_type,glm::detail::tvec3<value_type>,s,t,p)
|
_GLM_SWIZZLE3_3_MEMBERS(value_type, glm::detail::tvec3<value_type>, s, t, p)
|
||||||
_GLM_SWIZZLE3_4_MEMBERS(value_type,glm::detail::tvec4<value_type>,x,y,z)
|
_GLM_SWIZZLE3_4_MEMBERS(value_type, glm::detail::tvec4<value_type>, x, y, z)
|
||||||
_GLM_SWIZZLE3_4_MEMBERS(value_type,glm::detail::tvec4<value_type>,r,g,b)
|
_GLM_SWIZZLE3_4_MEMBERS(value_type, glm::detail::tvec4<value_type>, r, g, b)
|
||||||
_GLM_SWIZZLE3_4_MEMBERS(value_type,glm::detail::tvec4<value_type>,s,t,p)
|
_GLM_SWIZZLE3_4_MEMBERS(value_type, glm::detail::tvec4<value_type>, s, t, p)
|
||||||
# endif//GLM_SWIZZLE_OPERATOR
|
# endif//(GLM_SUPPORT_SWIZZLE_OPERATOR())
|
||||||
|
|
||||||
struct{value_type r, g, b;};
|
struct{value_type r, g, b;};
|
||||||
struct{value_type s, t, p;};
|
struct{value_type s, t, p;};
|
||||||
@ -100,12 +94,11 @@ namespace detail
|
|||||||
union {value_type y, g, t;};
|
union {value_type y, g, t;};
|
||||||
union {value_type z, b, p;};
|
union {value_type z, b, p;};
|
||||||
|
|
||||||
# ifdef GLM_SWIZZLE_OPERATOR
|
# if(GLM_SUPPORT_SWIZZLE_FUNCTION())
|
||||||
//GLM_SWIZZLE_GEN_VEC3_ENTRY(T, detail::tvec3, detail::tvec3, const, x, y, z)
|
|
||||||
// Defines all he swizzle operator as functions
|
// Defines all he swizzle operator as functions
|
||||||
GLM_SWIZZLE_GEN_REF_FROM_VEC3(T, detail::tvec3, detail::tref2, detail::tref3)
|
GLM_SWIZZLE_GEN_REF_FROM_VEC3(T, detail::tvec3, detail::tref2, detail::tref3)
|
||||||
GLM_SWIZZLE_GEN_VEC_FROM_VEC3(T, detail::tvec3, detail::tvec2, detail::tvec3, detail::tvec4)
|
GLM_SWIZZLE_GEN_VEC_FROM_VEC3(T, detail::tvec3, detail::tvec2, detail::tvec3, detail::tvec4)
|
||||||
# endif//GLM_SWIZZLE_OPERATOR
|
# endif//GLM_SUPPORT_SWIZZLE_FUNCTION()
|
||||||
# endif//GLM_COMPONENT
|
# endif//GLM_COMPONENT
|
||||||
|
|
||||||
//////////////////////////////////////
|
//////////////////////////////////////
|
||||||
|
@ -65,25 +65,25 @@ namespace detail
|
|||||||
# if(GLM_COMPONENT == GLM_COMPONENT_ONLY_XYZW)
|
# if(GLM_COMPONENT == GLM_COMPONENT_ONLY_XYZW)
|
||||||
value_type x, y, z, w;
|
value_type x, y, z, w;
|
||||||
|
|
||||||
# ifdef GLM_SWIZZLE_OPERATOR
|
# if(GLM_SUPPORT_SWIZZLE_FUNCTION())
|
||||||
// Defines all he swizzle operator as functions
|
// Defines all he swizzle operator as functions
|
||||||
GLM_SWIZZLE_GEN_REF_FROM_VEC4_COMP(T, detail::tvec4, detail::tref2, detail::tref3, detail::tref4, x, y, z, w)
|
GLM_SWIZZLE_GEN_REF_FROM_VEC4_COMP(T, detail::tvec4, detail::tref2, detail::tref3, detail::tref4, x, y, z, w)
|
||||||
GLM_SWIZZLE_GEN_VEC_FROM_VEC4_COMP(T, detail::tvec4, detail::tvec2, detail::tvec3, detail::tvec4, x, y, z, w)
|
GLM_SWIZZLE_GEN_VEC_FROM_VEC4_COMP(T, detail::tvec4, detail::tvec2, detail::tvec3, detail::tvec4, x, y, z, w)
|
||||||
# endif//GLM_SWIZZLE_OPERATOR
|
# endif//GLM_SUPPORT_SWIZZLE_FUNCTION()
|
||||||
# elif(GLM_SUPPORT_SWIZZLE_OPERATOR())
|
# elif(GLM_COMPONENT == GLM_COMPONENT_MS_EXT)
|
||||||
union
|
union
|
||||||
{
|
{
|
||||||
# ifdef GLM_SWIZZLE_OPERATOR
|
# if(GLM_SUPPORT_SWIZZLE_OPERATOR())
|
||||||
_GLM_SWIZZLE4_2_MEMBERS(value_type,glm::detail::tvec2<value_type>,x,y,z,w)
|
_GLM_SWIZZLE4_2_MEMBERS(value_type, glm::detail::tvec2<value_type>, x, y, z, w)
|
||||||
_GLM_SWIZZLE4_2_MEMBERS(value_type,glm::detail::tvec2<value_type>,r,g,b,a)
|
_GLM_SWIZZLE4_2_MEMBERS(value_type, glm::detail::tvec2<value_type>, r, g, b, a)
|
||||||
_GLM_SWIZZLE4_2_MEMBERS(value_type,glm::detail::tvec2<value_type>,s,t,p,q)
|
_GLM_SWIZZLE4_2_MEMBERS(value_type, glm::detail::tvec2<value_type>, s, t, p, q)
|
||||||
_GLM_SWIZZLE4_3_MEMBERS(value_type,glm::detail::tvec3<value_type>,x,y,z,w)
|
_GLM_SWIZZLE4_3_MEMBERS(value_type, glm::detail::tvec3<value_type>, x, y, z, w)
|
||||||
_GLM_SWIZZLE4_3_MEMBERS(value_type,glm::detail::tvec3<value_type>,r,g,b,a)
|
_GLM_SWIZZLE4_3_MEMBERS(value_type, glm::detail::tvec3<value_type>, r, g, b, a)
|
||||||
_GLM_SWIZZLE4_3_MEMBERS(value_type,glm::detail::tvec3<value_type>,s,t,p,q)
|
_GLM_SWIZZLE4_3_MEMBERS(value_type, glm::detail::tvec3<value_type>, s, t, p, q)
|
||||||
_GLM_SWIZZLE4_4_MEMBERS(value_type,glm::detail::tvec4<value_type>,x,y,z,w)
|
_GLM_SWIZZLE4_4_MEMBERS(value_type, glm::detail::tvec4<value_type>, x, y, z, w)
|
||||||
_GLM_SWIZZLE4_4_MEMBERS(value_type,glm::detail::tvec4<value_type>,r,g,b,a)
|
_GLM_SWIZZLE4_4_MEMBERS(value_type, glm::detail::tvec4<value_type>, r, g, b, a)
|
||||||
_GLM_SWIZZLE4_4_MEMBERS(value_type,glm::detail::tvec4<value_type>,s,t,p,q)
|
_GLM_SWIZZLE4_4_MEMBERS(value_type, glm::detail::tvec4<value_type>, s, t, p, q)
|
||||||
# endif//GLM_SWIZZLE_OPERATOR
|
# endif//(GLM_SUPPORT_SWIZZLE_OPERATOR())
|
||||||
|
|
||||||
struct{value_type r, g, b, a;};
|
struct{value_type r, g, b, a;};
|
||||||
struct{value_type s, t, p, q;};
|
struct{value_type s, t, p, q;};
|
||||||
@ -95,11 +95,11 @@ namespace detail
|
|||||||
union {value_type z, b, p;};
|
union {value_type z, b, p;};
|
||||||
union {value_type w, a, q;};
|
union {value_type w, a, q;};
|
||||||
|
|
||||||
# ifdef GLM_SWIZZLE_OPERATOR
|
# if(GLM_SUPPORT_SWIZZLE_FUNCTION())
|
||||||
// Defines all he swizzle operator as functions
|
// Defines all he swizzle operator as functions
|
||||||
GLM_SWIZZLE_GEN_REF_FROM_VEC4(T, detail::tvec4, detail::tref2, detail::tref3, detail::tref4)
|
GLM_SWIZZLE_GEN_REF_FROM_VEC4(T, detail::tvec4, detail::tref2, detail::tref3, detail::tref4)
|
||||||
GLM_SWIZZLE_GEN_VEC_FROM_VEC4(T, detail::tvec4, detail::tvec2, detail::tvec3, detail::tvec4)
|
GLM_SWIZZLE_GEN_VEC_FROM_VEC4(T, detail::tvec4, detail::tvec2, detail::tvec3, detail::tvec4)
|
||||||
# endif//GLM_SWIZZLE_OPERATOR
|
# endif//GLM_SUPPORT_SWIZZLE_FUNCTION()
|
||||||
# endif//GLM_COMPONENT
|
# endif//GLM_COMPONENT
|
||||||
|
|
||||||
//////////////////////////////////////
|
//////////////////////////////////////
|
||||||
|
Loading…
x
Reference in New Issue
Block a user