mirror of
https://github.com/g-truc/glm.git
synced 2025-04-07 22:40:17 +00:00
Remove value_size() from vectors
This commit is contained in:
parent
464e5cbb30
commit
64da6d3da3
10 changed files with 19 additions and 41 deletions
|
@ -39,9 +39,10 @@ namespace glm
|
|||
"Invalid template instantiation of 'lessThan', GLM vector types required");
|
||||
GLM_STATIC_ASSERT(detail::is_bool<T>::_NO,
|
||||
"Invalid template instantiation of 'lessThan', GLM vector types required floating-point or integer value types vectors");
|
||||
assert(x.length() == y.length());
|
||||
|
||||
typename vecType<bool>::bool_type Result(vecType<bool>::null);
|
||||
for(typename vecType<bool>::size_type i = 0; i < vecType<bool>::value_size(); ++i)
|
||||
for(typename vecType<bool>::size_type i = 0; i < x.length(); ++i)
|
||||
Result[i] = x[i] < y[i];
|
||||
|
||||
return Result;
|
||||
|
@ -58,9 +59,10 @@ namespace glm
|
|||
"Invalid template instantiation of 'lessThanEqual', GLM vector types required");
|
||||
GLM_STATIC_ASSERT(detail::is_bool<T>::_NO,
|
||||
"Invalid template instantiation of 'lessThanEqual', GLM vector types required floating-point or integer value types vectors");
|
||||
assert(x.length() == y.length());
|
||||
|
||||
typename vecType<bool>::bool_type Result(vecType<bool>::null);
|
||||
for(typename vecType<bool>::size_type i = 0; i < vecType<bool>::value_size(); ++i)
|
||||
for(typename vecType<bool>::size_type i = 0; i < x.length(); ++i)
|
||||
Result[i] = x[i] <= y[i];
|
||||
return Result;
|
||||
}
|
||||
|
@ -76,9 +78,10 @@ namespace glm
|
|||
"Invalid template instantiation of 'greaterThan', GLM vector types required");
|
||||
GLM_STATIC_ASSERT(detail::is_bool<T>::_NO,
|
||||
"Invalid template instantiation of 'greaterThan', GLM vector types required floating-point or integer value types vectors");
|
||||
assert(x.length() == y.length());
|
||||
|
||||
typename vecType<bool>::bool_type Result(vecType<bool>::null);
|
||||
for(typename vecType<bool>::size_type i = 0; i < vecType<bool>::value_size(); ++i)
|
||||
for(typename vecType<bool>::size_type i = 0; i < x.length(); ++i)
|
||||
Result[i] = x[i] > y[i];
|
||||
return Result;
|
||||
}
|
||||
|
@ -94,9 +97,10 @@ namespace glm
|
|||
"Invalid template instantiation of 'greaterThanEqual', GLM vector types required");
|
||||
GLM_STATIC_ASSERT(detail::is_bool<T>::_NO,
|
||||
"Invalid template instantiation of 'greaterThanEqual', GLM vector types required floating-point or integer value types vectors");
|
||||
assert(x.length() == y.length());
|
||||
|
||||
typename vecType<bool>::bool_type Result(vecType<bool>::null);
|
||||
for(typename vecType<bool>::size_type i = 0; i < vecType<bool>::value_size(); ++i)
|
||||
for(typename vecType<bool>::size_type i = 0; i < x.length(); ++i)
|
||||
Result[i] = x[i] >= y[i];
|
||||
return Result;
|
||||
}
|
||||
|
@ -110,9 +114,10 @@ namespace glm
|
|||
{
|
||||
GLM_STATIC_ASSERT(detail::is_vector<vecType<T> >::_YES,
|
||||
"Invalid template instantiation of 'equal', GLM vector types required");
|
||||
assert(x.length() == y.length());
|
||||
|
||||
typename vecType<bool>::bool_type Result(vecType<bool>::null);
|
||||
for(typename vecType<bool>::size_type i = 0; i < vecType<bool>::value_size(); ++i)
|
||||
for(typename vecType<bool>::size_type i = 0; i < x.length(); ++i)
|
||||
Result[i] = x[i] == y[i];
|
||||
return Result;
|
||||
}
|
||||
|
@ -126,9 +131,10 @@ namespace glm
|
|||
{
|
||||
GLM_STATIC_ASSERT(detail::is_vector<vecType<T> >::_YES,
|
||||
"Invalid template instantiation of 'notEqual', GLM vector types required");
|
||||
assert(x.length() == y.length());
|
||||
|
||||
typename vecType<bool>::bool_type Result(vecType<bool>::null);
|
||||
for(typename vecType<bool>::size_type i = 0; i < vecType<bool>::value_size(); ++i)
|
||||
for(typename vecType<bool>::size_type i = 0; i < x.length(); ++i)
|
||||
Result[i] = x[i] != y[i];
|
||||
return Result;
|
||||
}
|
||||
|
@ -140,7 +146,7 @@ namespace glm
|
|||
"Invalid template instantiation of 'any', GLM boolean vector types required");
|
||||
|
||||
bool Result = false;
|
||||
for(typename vecType<bool>::size_type i = 0; i < vecType<bool>::value_size(); ++i)
|
||||
for(typename vecType<bool>::size_type i = 0; i < v.length(); ++i)
|
||||
Result = Result || v[i];
|
||||
return Result;
|
||||
}
|
||||
|
@ -152,7 +158,7 @@ namespace glm
|
|||
"Invalid template instantiation of 'all', GLM boolean vector types required");
|
||||
|
||||
bool Result = true;
|
||||
for(typename vecType<bool>::size_type i = 0; i < vecType<bool>::value_size(); ++i)
|
||||
for(typename vecType<bool>::size_type i = 0; i < v.length(); ++i)
|
||||
Result = Result && v[i];
|
||||
return Result;
|
||||
}
|
||||
|
@ -164,7 +170,7 @@ namespace glm
|
|||
"Invalid template instantiation of 'not_', GLM vector types required");
|
||||
|
||||
typename vecType<bool>::bool_type Result(vecType<bool>::null);
|
||||
for(typename vecType<bool>::size_type i = 0; i < vecType<bool>::value_size(); ++i)
|
||||
for(typename vecType<bool>::size_type i = 0; i < v.length(); ++i)
|
||||
Result[i] = !v[i];
|
||||
return Result;
|
||||
}
|
||||
|
|
|
@ -55,7 +55,6 @@ namespace detail
|
|||
typedef T value_type;
|
||||
typedef std::size_t size_type;
|
||||
GLM_FUNC_DECL size_type length() const;
|
||||
static GLM_FUNC_DECL size_type value_size();
|
||||
|
||||
typedef tvec1<T> type;
|
||||
typedef tvec1<bool> bool_type;
|
||||
|
|
|
@ -35,12 +35,6 @@ namespace detail
|
|||
return 1;
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
GLM_FUNC_QUALIFIER typename tvec1<T>::size_type tvec1<T>::value_size()
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
//////////////////////////////////////
|
||||
// Accesses
|
||||
|
||||
|
|
|
@ -54,7 +54,6 @@ namespace detail
|
|||
typedef T value_type;
|
||||
typedef std::size_t size_type;
|
||||
GLM_FUNC_DECL size_type length() const;
|
||||
static GLM_FUNC_DECL size_type value_size();
|
||||
|
||||
typedef tvec2<T> type;
|
||||
typedef tvec2<bool> bool_type;
|
||||
|
|
|
@ -35,12 +35,6 @@ namespace detail
|
|||
return 2;
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
GLM_FUNC_QUALIFIER typename tvec2<T>::size_type tvec2<T>::value_size()
|
||||
{
|
||||
return 2;
|
||||
}
|
||||
|
||||
//////////////////////////////////////
|
||||
// Accesses
|
||||
|
||||
|
|
|
@ -54,7 +54,6 @@ namespace detail
|
|||
typedef T value_type;
|
||||
typedef std::size_t size_type;
|
||||
GLM_FUNC_DECL size_type length() const;
|
||||
static GLM_FUNC_DECL size_type value_size();
|
||||
|
||||
typedef tvec3<T> type;
|
||||
typedef tvec3<bool> bool_type;
|
||||
|
|
|
@ -35,12 +35,6 @@ namespace detail
|
|||
return 3;
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
GLM_FUNC_QUALIFIER typename tvec3<T>::size_type tvec3<T>::value_size()
|
||||
{
|
||||
return 3;
|
||||
}
|
||||
|
||||
//////////////////////////////////////
|
||||
// Accesses
|
||||
|
||||
|
|
|
@ -54,7 +54,6 @@ namespace detail
|
|||
typedef T value_type;
|
||||
typedef std::size_t size_type;
|
||||
GLM_FUNC_DECL size_type length() const;
|
||||
static GLM_FUNC_DECL size_type value_size();
|
||||
|
||||
typedef tvec4<T> type;
|
||||
typedef tvec4<bool> bool_type;
|
||||
|
|
|
@ -35,12 +35,6 @@ namespace detail
|
|||
return 4;
|
||||
}
|
||||
|
||||
template <typename T>
|
||||
GLM_FUNC_QUALIFIER typename tvec4<T>::size_type tvec4<T>::value_size()
|
||||
{
|
||||
return 4;
|
||||
}
|
||||
|
||||
//////////////////////////////////////
|
||||
// Accesses
|
||||
|
||||
|
|
|
@ -13,7 +13,7 @@ namespace glm
|
|||
GLM_FUNC_QUALIFIER typename genType::value_type compAdd(genType const & v)
|
||||
{
|
||||
typename genType::size_type result = typename genType::value_type(0);
|
||||
for(typename genType::size_type i = 0; i < genType::value_size(); ++i)
|
||||
for(typename genType::size_type i = 0; i < v.length(); ++i)
|
||||
result += v[i];
|
||||
return result;
|
||||
}
|
||||
|
@ -22,7 +22,7 @@ namespace glm
|
|||
GLM_FUNC_QUALIFIER typename genType::value_type compMul(genType const & v)
|
||||
{
|
||||
typename genType::value_type result = typename genType::value_type(1);
|
||||
for(typename genType::size_type i = 0; i < genType::value_size(); ++i)
|
||||
for(typename genType::size_type i = 0; i < v.length(); ++i)
|
||||
result *= v[i];
|
||||
return result;
|
||||
}
|
||||
|
@ -31,7 +31,7 @@ namespace glm
|
|||
GLM_FUNC_QUALIFIER typename genType::value_type compMin(genType const & v)
|
||||
{
|
||||
typename genType::value_type result = typename genType::value_type(v[0]);
|
||||
for(typename genType::size_type i = 1; i < genType::value_size(); ++i)
|
||||
for(typename genType::size_type i = 1; i < v.length(); ++i)
|
||||
result = min(result, v[i]);
|
||||
return result;
|
||||
}
|
||||
|
@ -40,7 +40,7 @@ namespace glm
|
|||
GLM_FUNC_QUALIFIER typename genType::value_type compMax(genType const & v)
|
||||
{
|
||||
typename genType::value_type result = typename genType::value_type(v[0]);
|
||||
for(typename genType::size_type i = 1; i < genType::value_size(); ++i)
|
||||
for(typename genType::size_type i = 1; i < v.length(); ++i)
|
||||
result = max(result, v[i]);
|
||||
return result;
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue