Add static constants for vec1

- Tests, too
This commit is contained in:
Jesse Talavera-Greenberg 2015-10-02 18:32:39 -04:00
parent daaf86dcef
commit b8ff59a61b
3 changed files with 20 additions and 0 deletions

View File

@ -59,6 +59,8 @@ namespace glm
static GLM_RELAXED_CONSTEXPR precision prec = P; static GLM_RELAXED_CONSTEXPR precision prec = P;
# endif//GLM_META_PROG_HELPERS # endif//GLM_META_PROG_HELPERS
static const type ZERO;
static const type X;
// -- Data -- // -- Data --
# if GLM_HAS_ANONYMOUS_UNION # if GLM_HAS_ANONYMOUS_UNION

View File

@ -32,6 +32,11 @@
namespace glm namespace glm
{ {
template<typename T, precision P>
const tvec1<T, P> tvec1<T, P>::X = tvec1<T, P>(static_cast<T>(1));
template<typename T, precision P>
const tvec1<T, P> tvec1<T, P>::ZERO = tvec1<T, P>(static_cast<T>(0));
// -- Implicit basic constructors -- // -- Implicit basic constructors --
# if !GLM_HAS_DEFAULTED_FUNCTIONS || !defined(GLM_FORCE_NO_CTOR_INIT) # if !GLM_HAS_DEFAULTED_FUNCTIONS || !defined(GLM_FORCE_NO_CTOR_INIT)

View File

@ -166,6 +166,18 @@ int test_vec1_operator_increment()
return Error; return Error;
} }
int test_vec1_static_const() {
int Error = 0;
Error += (glm::vec1(1.0f) == glm::vec1::X) ? 0 : 1;
Error += (glm::ivec1(1) == glm::ivec1::X) ? 0 : 1;
Error += (glm::dvec1(1.0) == glm::dvec1::X) ? 0 : 1;
Error += (glm::bvec1(false) == glm::bvec1::ZERO) ? 0 : 1;
Error += (glm::uvec1(0) == glm::uvec1::ZERO) ? 0 : 1;
return Error;
}
int main() int main()
{ {
int Error = 0; int Error = 0;
@ -178,6 +190,7 @@ int main()
assert(glm::vec1::components == 1); assert(glm::vec1::components == 1);
# endif # endif
Error += test_vec1_static_const();
Error += test_vec1_size(); Error += test_vec1_size();
Error += test_vec1_ctor(); Error += test_vec1_ctor();
Error += test_vec1_operators(); Error += test_vec1_operators();