@@ -204,8 +204,10 @@ namespace detail
GLM_FUNC_DECL tref2<T> & operator= (tref2<T> const & r);
GLM_FUNC_DECL tref2<T> & operator= (tvec2<T> const & v);
- T& x;
- T& y;
+ GLM_FUNC_DECL tvec2<T> operator() ();
+
+ T & x;
+ T & y;
};
GLM_DETAIL_IS_VECTOR(tvec2);
@@ -1025,5 +1025,11 @@ namespace detail
return *this;
}
+ template <typename T>
+ GLM_FUNC_QUALIFIER tvec2<T> tref2<T>::operator() ()
+ {
+ return tvec2<T>(this->x, this->y);
+ }
}//namespace detail
}//namespace glm
@@ -217,6 +217,8 @@ namespace detail
GLM_FUNC_DECL tref3<T> & operator= (tref3<T> const & r);
GLM_FUNC_DECL tref3<T> & operator= (tvec3<T> const & v);
+ GLM_FUNC_DECL tvec3<T> operator() ();
T & x;
T & y;
T & z;
@@ -1148,5 +1148,11 @@ namespace detail
+ GLM_FUNC_QUALIFIER tvec3<T> tref3<T>::operator() ()
+ return tvec3<T>(this->x, this->y, this->z);
@@ -249,6 +249,8 @@ namespace detail
GLM_FUNC_DECL tref4<T> & operator= (tref4<T> const & r);
GLM_FUNC_DECL tref4<T> & operator= (tvec4<T> const & v);
+ GLM_FUNC_DECL tvec4<T> operator() ();
@@ -1374,5 +1374,11 @@ namespace detail
+ GLM_FUNC_QUALIFIER tvec4<T> tref4<T>::operator() ()
+ return tvec4<T>(this->x, this->y, this->z, this->w);