From a82e813333cf5816ea83f1e8a8dac8a984474786 Mon Sep 17 00:00:00 2001 From: Mathias Agopian Date: Thu, 9 Feb 2023 13:32:56 -0800 Subject: [PATCH] fix libmath streaming operators --- libs/mathio/include/mathio/ostream.h | 22 +++--- libs/mathio/src/ostream.cpp | 104 +++++++++++++-------------- 2 files changed, 58 insertions(+), 68 deletions(-) diff --git a/libs/mathio/include/mathio/ostream.h b/libs/mathio/include/mathio/ostream.h index 5f29c879d2..5628e7c8a2 100644 --- a/libs/mathio/include/mathio/ostream.h +++ b/libs/mathio/include/mathio/ostream.h @@ -23,38 +23,36 @@ # define MATHIO_PUBLIC #endif -namespace filament { -namespace math { +namespace filament::math::details { -namespace details { template class TQuaternion; } +template class TQuaternion; template MATHIO_PUBLIC -std::ostream& operator<<(std::ostream& out, const details::TVec2& v) noexcept; +std::ostream& operator<<(std::ostream& out, const TVec2& v) noexcept; template MATHIO_PUBLIC -std::ostream& operator<<(std::ostream& out, const details::TVec3& v) noexcept; +std::ostream& operator<<(std::ostream& out, const TVec3& v) noexcept; template MATHIO_PUBLIC -std::ostream& operator<<(std::ostream& out, const details::TVec4& v) noexcept; +std::ostream& operator<<(std::ostream& out, const TVec4& v) noexcept; template MATHIO_PUBLIC -std::ostream& operator<<(std::ostream& out, const details::TMat22& v) noexcept; +std::ostream& operator<<(std::ostream& out, const TMat22& v) noexcept; template MATHIO_PUBLIC -std::ostream& operator<<(std::ostream& out, const details::TMat33& v) noexcept; +std::ostream& operator<<(std::ostream& out, const TMat33& v) noexcept; template MATHIO_PUBLIC -std::ostream& operator<<(std::ostream& out, const details::TMat44& v) noexcept; +std::ostream& operator<<(std::ostream& out, const TMat44& v) noexcept; template MATHIO_PUBLIC -std::ostream& operator<<(std::ostream& out, const details::TQuaternion& v) noexcept; +std::ostream& operator<<(std::ostream& out, const TQuaternion& v) noexcept; -} // namespace math -} // namespace filament +} // namespace filament::math::details diff --git a/libs/mathio/src/ostream.cpp b/libs/mathio/src/ostream.cpp index a3e442424a..b6a1e11600 100644 --- a/libs/mathio/src/ostream.cpp +++ b/libs/mathio/src/ostream.cpp @@ -25,16 +25,13 @@ #include #include - #include #include #include #include -namespace filament { -namespace math { -namespace details { +namespace filament::math::details { template std::ostream& printVector(std::ostream& stream, const T* data, size_t count) { @@ -78,90 +75,85 @@ std::ostream& printQuat(std::ostream& stream, const BASE& q) { return stream << "< " << q.w << " + " << q.x << "i + " << q.y << "j + " << q.z << "k >"; } -} // namespace details - -using namespace details; - template -std::ostream& operator<<(std::ostream& out, const details::TVec2& v) noexcept { +std::ostream& operator<<(std::ostream& out, const TVec2& v) noexcept { return printVector(out, v.v, 2); } template -std::ostream& operator<<(std::ostream& out, const details::TVec3& v) noexcept { +std::ostream& operator<<(std::ostream& out, const TVec3& v) noexcept { return printVector(out, v.v, 3); } template -std::ostream& operator<<(std::ostream& out, const details::TVec4& v) noexcept { +std::ostream& operator<<(std::ostream& out, const TVec4& v) noexcept { return printVector(out, v.v, 4); } template -std::ostream& operator<<(std::ostream& out, const details::TMat22& v) noexcept { +std::ostream& operator<<(std::ostream& out, const TMat22& v) noexcept { return printMatrix(out, v.asArray(), 2, 2); } template -std::ostream& operator<<(std::ostream& out, const details::TMat33& v) noexcept { +std::ostream& operator<<(std::ostream& out, const TMat33& v) noexcept { return printMatrix(out, v.asArray(), 3, 3); } template -std::ostream& operator<<(std::ostream& out, const details::TMat44& v) noexcept { +std::ostream& operator<<(std::ostream& out, const TMat44& v) noexcept { return printMatrix(out, v.asArray(), 4, 4); } template -std::ostream& operator<<(std::ostream& out, const details::TQuaternion& v) noexcept { +std::ostream& operator<<(std::ostream& out, const TQuaternion& v) noexcept { return printQuat(out, v); } -template std::ostream& operator<<(std::ostream& out, const details::TVec2& v) noexcept; -template std::ostream& operator<<(std::ostream& out, const details::TVec2& v) noexcept; -template std::ostream& operator<<(std::ostream& out, const details::TVec2& v) noexcept; -template std::ostream& operator<<(std::ostream& out, const details::TVec2& v) noexcept; -template std::ostream& operator<<(std::ostream& out, const details::TVec2& v) noexcept; -template std::ostream& operator<<(std::ostream& out, const details::TVec2& v) noexcept; -template std::ostream& operator<<(std::ostream& out, const details::TVec2& v) noexcept; -template std::ostream& operator<<(std::ostream& out, const details::TVec2& v) noexcept; -template std::ostream& operator<<(std::ostream& out, const details::TVec2& v) noexcept; -template std::ostream& operator<<(std::ostream& out, const details::TVec2& v) noexcept; +template std::ostream& operator<<(std::ostream& out, const TVec2& v) noexcept; +template std::ostream& operator<<(std::ostream& out, const TVec2& v) noexcept; +template std::ostream& operator<<(std::ostream& out, const TVec2& v) noexcept; +template std::ostream& operator<<(std::ostream& out, const TVec2& v) noexcept; +template std::ostream& operator<<(std::ostream& out, const TVec2& v) noexcept; +template std::ostream& operator<<(std::ostream& out, const TVec2& v) noexcept; +template std::ostream& operator<<(std::ostream& out, const TVec2& v) noexcept; +template std::ostream& operator<<(std::ostream& out, const TVec2& v) noexcept; +template std::ostream& operator<<(std::ostream& out, const TVec2& v) noexcept; +template std::ostream& operator<<(std::ostream& out, const TVec2& v) noexcept; -template std::ostream& operator<<(std::ostream& out, const details::TVec3& v) noexcept; -template std::ostream& operator<<(std::ostream& out, const details::TVec3& v) noexcept; -template std::ostream& operator<<(std::ostream& out, const details::TVec3& v) noexcept; -template std::ostream& operator<<(std::ostream& out, const details::TVec3& v) noexcept; -template std::ostream& operator<<(std::ostream& out, const details::TVec3& v) noexcept; -template std::ostream& operator<<(std::ostream& out, const details::TVec3& v) noexcept; -template std::ostream& operator<<(std::ostream& out, const details::TVec3& v) noexcept; -template std::ostream& operator<<(std::ostream& out, const details::TVec3& v) noexcept; -template std::ostream& operator<<(std::ostream& out, const details::TVec3& v) noexcept; -template std::ostream& operator<<(std::ostream& out, const details::TVec3& v) noexcept; +template std::ostream& operator<<(std::ostream& out, const TVec3& v) noexcept; +template std::ostream& operator<<(std::ostream& out, const TVec3& v) noexcept; +template std::ostream& operator<<(std::ostream& out, const TVec3& v) noexcept; +template std::ostream& operator<<(std::ostream& out, const TVec3& v) noexcept; +template std::ostream& operator<<(std::ostream& out, const TVec3& v) noexcept; +template std::ostream& operator<<(std::ostream& out, const TVec3& v) noexcept; +template std::ostream& operator<<(std::ostream& out, const TVec3& v) noexcept; +template std::ostream& operator<<(std::ostream& out, const TVec3& v) noexcept; +template std::ostream& operator<<(std::ostream& out, const TVec3& v) noexcept; +template std::ostream& operator<<(std::ostream& out, const TVec3& v) noexcept; -template std::ostream& operator<<(std::ostream& out, const details::TVec4& v) noexcept; -template std::ostream& operator<<(std::ostream& out, const details::TVec4& v) noexcept; -template std::ostream& operator<<(std::ostream& out, const details::TVec4& v) noexcept; -template std::ostream& operator<<(std::ostream& out, const details::TVec4& v) noexcept; -template std::ostream& operator<<(std::ostream& out, const details::TVec4& v) noexcept; -template std::ostream& operator<<(std::ostream& out, const details::TVec4& v) noexcept; -template std::ostream& operator<<(std::ostream& out, const details::TVec4& v) noexcept; -template std::ostream& operator<<(std::ostream& out, const details::TVec4& v) noexcept; -template std::ostream& operator<<(std::ostream& out, const details::TVec4& v) noexcept; -template std::ostream& operator<<(std::ostream& out, const details::TVec4& v) noexcept; +template std::ostream& operator<<(std::ostream& out, const TVec4& v) noexcept; +template std::ostream& operator<<(std::ostream& out, const TVec4& v) noexcept; +template std::ostream& operator<<(std::ostream& out, const TVec4& v) noexcept; +template std::ostream& operator<<(std::ostream& out, const TVec4& v) noexcept; +template std::ostream& operator<<(std::ostream& out, const TVec4& v) noexcept; +template std::ostream& operator<<(std::ostream& out, const TVec4& v) noexcept; +template std::ostream& operator<<(std::ostream& out, const TVec4& v) noexcept; +template std::ostream& operator<<(std::ostream& out, const TVec4& v) noexcept; +template std::ostream& operator<<(std::ostream& out, const TVec4& v) noexcept; +template std::ostream& operator<<(std::ostream& out, const TVec4& v) noexcept; -template std::ostream& operator<<(std::ostream& out, const details::TMat22& v) noexcept; -template std::ostream& operator<<(std::ostream& out, const details::TMat22& v) noexcept; +template std::ostream& operator<<(std::ostream& out, const TMat22& v) noexcept; +template std::ostream& operator<<(std::ostream& out, const TMat22& v) noexcept; -template std::ostream& operator<<(std::ostream& out, const details::TMat33& v) noexcept; -template std::ostream& operator<<(std::ostream& out, const details::TMat33& v) noexcept; +template std::ostream& operator<<(std::ostream& out, const TMat33& v) noexcept; +template std::ostream& operator<<(std::ostream& out, const TMat33& v) noexcept; -template std::ostream& operator<<(std::ostream& out, const details::TMat44& v) noexcept; -template std::ostream& operator<<(std::ostream& out, const details::TMat44& v) noexcept; +template std::ostream& operator<<(std::ostream& out, const TMat44& v) noexcept; +template std::ostream& operator<<(std::ostream& out, const TMat44& v) noexcept; -template std::ostream& operator<<(std::ostream& out, const details::TQuaternion& v) noexcept; -template std::ostream& operator<<(std::ostream& out, const details::TQuaternion& v) noexcept; -template std::ostream& operator<<(std::ostream& out, const details::TQuaternion& v) noexcept; +template std::ostream& operator<<(std::ostream& out, const TQuaternion& v) noexcept; +template std::ostream& operator<<(std::ostream& out, const TQuaternion& v) noexcept; +template std::ostream& operator<<(std::ostream& out, const TQuaternion& v) noexcept; -} // namespace math -} // namespace filament +} // namespace filament::math::details