|
|
|
@ -13,15 +13,15 @@ |
|
|
|
|
#include <sstream> |
|
|
|
|
#include <typeinfo> |
|
|
|
|
|
|
|
|
|
namespace { |
|
|
|
|
|
|
|
|
|
namespace |
|
|
|
|
{ |
|
|
|
|
template <typename CTy, typename CTr> |
|
|
|
|
std::basic_ostream<CTy,CTr>& |
|
|
|
|
operator<<(std::basic_ostream<CTy,CTr>& os, glm::precision const& a) |
|
|
|
|
std::basic_ostream<CTy,CTr>& operator<<(std::basic_ostream<CTy,CTr>& os, glm::precision const& a) |
|
|
|
|
{ |
|
|
|
|
typename std::basic_ostream<CTy,CTr>::sentry const cerberus(os); |
|
|
|
|
|
|
|
|
|
if (cerberus) { |
|
|
|
|
if (cerberus) |
|
|
|
|
{ |
|
|
|
|
switch (a) { |
|
|
|
|
case glm::highp: os << "hi"; break; |
|
|
|
|
case glm::mediump: os << "md"; break; |
|
|
|
@ -33,8 +33,7 @@ namespace { |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
template <typename U, glm::precision P, typename T, typename CTy, typename CTr> |
|
|
|
|
std::basic_string<CTy> |
|
|
|
|
type_name(std::basic_ostream<CTy,CTr>& os, T const&) |
|
|
|
|
std::basic_string<CTy> type_name(std::basic_ostream<CTy,CTr>& os, T const&) |
|
|
|
|
{ |
|
|
|
|
std::basic_ostringstream<CTy,CTr> ostr; |
|
|
|
|
|
|
|
|
@ -57,15 +56,12 @@ namespace { |
|
|
|
|
|
|
|
|
|
return ostr.str(); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
} // namespace {
|
|
|
|
|
|
|
|
|
|
template <typename T, glm::precision P, typename OS> |
|
|
|
|
int test_io_quat(OS& os) |
|
|
|
|
{ |
|
|
|
|
os << '\n' |
|
|
|
|
<< typeid(OS).name() |
|
|
|
|
<< '\n'; |
|
|
|
|
os << '\n' << typeid(OS).name() << '\n'; |
|
|
|
|
|
|
|
|
|
glm::tquat<T,P> const q(1, 0, 0, 0); |
|
|
|
|
|
|
|
|
@ -89,9 +85,7 @@ int test_io_quat(OS& os) |
|
|
|
|
template <typename T, glm::precision P, typename OS> |
|
|
|
|
int test_io_vec(OS& os) |
|
|
|
|
{ |
|
|
|
|
os << '\n' |
|
|
|
|
<< typeid(OS).name() |
|
|
|
|
<< '\n'; |
|
|
|
|
os << '\n' << typeid(OS).name() << '\n'; |
|
|
|
|
|
|
|
|
|
glm::tvec2<T,P> const v2(0, 1); |
|
|
|
|
glm::tvec3<T,P> const v3(2, 3, 4); |
|
|
|
@ -114,9 +108,7 @@ int test_io_vec(OS& os) |
|
|
|
|
template <typename T, glm::precision P, typename OS> |
|
|
|
|
int test_io_mat(OS& os) |
|
|
|
|
{ |
|
|
|
|
os << '\n' |
|
|
|
|
<< typeid(OS).name() |
|
|
|
|
<< '\n'; |
|
|
|
|
os << '\n' << typeid(OS).name() << '\n'; |
|
|
|
|
|
|
|
|
|
glm::tvec2<T,P> const v2_1( 0, 1); |
|
|
|
|
glm::tvec2<T,P> const v2_2( 2, 3); |
|
|
|
|