Lines Matching refs:TYPE

27 template <typename TYPE, size_t C, size_t R>
32 template <typename TYPE, size_t C, size_t R>
33 mat<TYPE, C, R>& doAssign(
34 mat<TYPE, C, R>& lhs,
35 typename TypeTraits<TYPE>::ParameterType rhs) {
42 template <typename TYPE, size_t C, size_t R, size_t D>
43 mat<TYPE, C, R> PURE doMul(
44 const mat<TYPE, D, R>& lhs,
45 const mat<TYPE, C, D>& rhs)
47 mat<TYPE, C, R> res;
50 TYPE v(0);
60 template <typename TYPE, size_t R, size_t D>
61 vec<TYPE, R> PURE doMul(
62 const mat<TYPE, D, R>& lhs,
63 const vec<TYPE, D>& rhs)
65 vec<TYPE, R> res;
67 TYPE v(0);
76 template <typename TYPE, size_t C, size_t R>
77 mat<TYPE, C, R> PURE doMul(
78 const vec<TYPE, R>& lhs,
79 const mat<TYPE, C, 1>& rhs)
81 mat<TYPE, C, R> res;
90 template <typename TYPE, size_t C, size_t R>
91 mat<TYPE, C, R> PURE doMul(
92 const mat<TYPE, C, R>& rhs,
93 typename TypeTraits<TYPE>::ParameterType v)
95 mat<TYPE, C, R> res;
104 template <typename TYPE, size_t C, size_t R>
105 mat<TYPE, C, R> PURE doMul(
106 typename TypeTraits<TYPE>::ParameterType v,
107 const mat<TYPE, C, R>& rhs)
109 mat<TYPE, C, R> res;
123 template <typename TYPE, size_t C, size_t R>
124 class mat : public vec< vec<TYPE, R>, C > {
125 typedef typename TypeTraits<TYPE>::ParameterType pTYPE;
126 typedef vec< vec<TYPE, R>, C > base;
129 typedef TYPE value_type;
130 typedef TYPE& reference;
131 typedef TYPE const& const_reference;
186 const mat<TYPE, D, R>& lhs,
187 const mat<TYPE, C, D>& rhs) {
192 friend vec<TYPE, R> PURE operator * (
193 const mat& lhs, const vec<TYPE, C>& rhs) {
199 const vec<TYPE, R>& lhs, const mat<TYPE, C, 1>& rhs) {
233 const vec<TYPE, R>& rhs) {
242 const vec<TYPE, R>& rhs) {
248 column_builder<0> operator << (const vec<TYPE, R>& rhs) {
255 template <typename TYPE, size_t R>
256 class mat<TYPE, 1, R> : public vec<TYPE, R> {
257 typedef vec<TYPE, R> base;
260 typedef TYPE value_type;
261 typedef TYPE& reference;
262 typedef TYPE const& const_reference;
270 mat(const TYPE& rhs) { helpers::doAssign(*this, rhs); }
273 mat& operator=(const TYPE& rhs) { return helpers::doAssign(*this, rhs); }
277 void operator << (const vec<TYPE, R>& rhs) { base::operator[](0) = rhs; }
289 template <typename TYPE, size_t C, size_t R>
290 mat<TYPE, R, C> PURE transpose(const mat<TYPE, C, R>& m) {
291 mat<TYPE, R, C> r;
299 template <typename TYPE, size_t C> static TYPE trace(const mat<TYPE, C, C>& m) {
300 TYPE t;
307 template <typename TYPE, size_t C>
308 static bool isPositiveSemidefinite(const mat<TYPE, C, C>& m, TYPE tolerance) {
324 typename TYPE,
327 mat<TYPE, SIZE, 1> PURE transpose(const VEC<TYPE, SIZE>& v) {
328 mat<TYPE, SIZE, 1> r;