mirror of https://github.com/mosra/magnum.git
Browse Source
Common types used in OpenGL have now explicit template instantiation for debug operators and configuration value parsers/readers.pull/7/head
8 changed files with 275 additions and 16 deletions
@ -1 +1 @@ |
|||||||
corrade_add_test2(MathAlgorithmsGaussJordanTest GaussJordanTest.cpp) |
corrade_add_test2(MathAlgorithmsGaussJordanTest GaussJordanTest.cpp LIBRARIES MagnumMathTestLib) |
||||||
|
|||||||
@ -0,0 +1,106 @@ |
|||||||
|
/*
|
||||||
|
Copyright © 2010, 2011, 2012 Vladimír Vondruš <mosra@centrum.cz> |
||||||
|
|
||||||
|
This file is part of Magnum. |
||||||
|
|
||||||
|
Magnum is free software: you can redistribute it and/or modify |
||||||
|
it under the terms of the GNU Lesser General Public License version 3 |
||||||
|
only, as published by the Free Software Foundation. |
||||||
|
|
||||||
|
Magnum is distributed in the hope that it will be useful, |
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||||||
|
GNU Lesser General Public License version 3 for more details. |
||||||
|
*/ |
||||||
|
|
||||||
|
#include "RectangularMatrix.h" |
||||||
|
|
||||||
|
namespace Magnum { namespace Math { |
||||||
|
|
||||||
|
#ifndef DOXYGEN_GENERATING_OUTPUT |
||||||
|
template Corrade::Utility::Debug operator<<(Corrade::Utility::Debug, const Magnum::Math::RectangularMatrix<1, 2, float>&); |
||||||
|
template Corrade::Utility::Debug operator<<(Corrade::Utility::Debug, const Magnum::Math::RectangularMatrix<1, 3, float>&); |
||||||
|
template Corrade::Utility::Debug operator<<(Corrade::Utility::Debug, const Magnum::Math::RectangularMatrix<1, 4, float>&); |
||||||
|
template Corrade::Utility::Debug operator<<(Corrade::Utility::Debug, const Magnum::Math::RectangularMatrix<1, 2, int>&); |
||||||
|
template Corrade::Utility::Debug operator<<(Corrade::Utility::Debug, const Magnum::Math::RectangularMatrix<1, 3, int>&); |
||||||
|
template Corrade::Utility::Debug operator<<(Corrade::Utility::Debug, const Magnum::Math::RectangularMatrix<1, 4, int>&); |
||||||
|
template Corrade::Utility::Debug operator<<(Corrade::Utility::Debug, const Magnum::Math::RectangularMatrix<1, 2, unsigned int>&); |
||||||
|
template Corrade::Utility::Debug operator<<(Corrade::Utility::Debug, const Magnum::Math::RectangularMatrix<1, 3, unsigned int>&); |
||||||
|
template Corrade::Utility::Debug operator<<(Corrade::Utility::Debug, const Magnum::Math::RectangularMatrix<1, 4, unsigned int>&); |
||||||
|
#ifndef MAGNUM_TARGET_GLES |
||||||
|
template Corrade::Utility::Debug operator<<(Corrade::Utility::Debug, const Magnum::Math::RectangularMatrix<1, 2, double>&); |
||||||
|
template Corrade::Utility::Debug operator<<(Corrade::Utility::Debug, const Magnum::Math::RectangularMatrix<1, 3, double>&); |
||||||
|
template Corrade::Utility::Debug operator<<(Corrade::Utility::Debug, const Magnum::Math::RectangularMatrix<1, 4, double>&); |
||||||
|
#endif |
||||||
|
|
||||||
|
template Corrade::Utility::Debug operator<<(Corrade::Utility::Debug, const Magnum::Math::RectangularMatrix<2, 2, float>&); |
||||||
|
template Corrade::Utility::Debug operator<<(Corrade::Utility::Debug, const Magnum::Math::RectangularMatrix<3, 3, float>&); |
||||||
|
template Corrade::Utility::Debug operator<<(Corrade::Utility::Debug, const Magnum::Math::RectangularMatrix<4, 4, float>&); |
||||||
|
#ifndef MAGNUM_TARGET_GLES |
||||||
|
template Corrade::Utility::Debug operator<<(Corrade::Utility::Debug, const Magnum::Math::RectangularMatrix<2, 2, double>&); |
||||||
|
template Corrade::Utility::Debug operator<<(Corrade::Utility::Debug, const Magnum::Math::RectangularMatrix<3, 3, double>&); |
||||||
|
template Corrade::Utility::Debug operator<<(Corrade::Utility::Debug, const Magnum::Math::RectangularMatrix<4, 4, double>&); |
||||||
|
#endif |
||||||
|
|
||||||
|
template Corrade::Utility::Debug operator<<(Corrade::Utility::Debug, const Magnum::Math::RectangularMatrix<2, 3, float>&); |
||||||
|
template Corrade::Utility::Debug operator<<(Corrade::Utility::Debug, const Magnum::Math::RectangularMatrix<3, 2, float>&); |
||||||
|
template Corrade::Utility::Debug operator<<(Corrade::Utility::Debug, const Magnum::Math::RectangularMatrix<2, 4, float>&); |
||||||
|
template Corrade::Utility::Debug operator<<(Corrade::Utility::Debug, const Magnum::Math::RectangularMatrix<4, 2, float>&); |
||||||
|
template Corrade::Utility::Debug operator<<(Corrade::Utility::Debug, const Magnum::Math::RectangularMatrix<3, 4, float>&); |
||||||
|
template Corrade::Utility::Debug operator<<(Corrade::Utility::Debug, const Magnum::Math::RectangularMatrix<4, 3, float>&); |
||||||
|
#ifndef MAGNUM_TARGET_GLES |
||||||
|
template Corrade::Utility::Debug operator<<(Corrade::Utility::Debug, const Magnum::Math::RectangularMatrix<2, 3, double>&); |
||||||
|
template Corrade::Utility::Debug operator<<(Corrade::Utility::Debug, const Magnum::Math::RectangularMatrix<3, 2, double>&); |
||||||
|
template Corrade::Utility::Debug operator<<(Corrade::Utility::Debug, const Magnum::Math::RectangularMatrix<2, 4, double>&); |
||||||
|
template Corrade::Utility::Debug operator<<(Corrade::Utility::Debug, const Magnum::Math::RectangularMatrix<4, 2, double>&); |
||||||
|
template Corrade::Utility::Debug operator<<(Corrade::Utility::Debug, const Magnum::Math::RectangularMatrix<3, 4, double>&); |
||||||
|
template Corrade::Utility::Debug operator<<(Corrade::Utility::Debug, const Magnum::Math::RectangularMatrix<4, 3, double>&); |
||||||
|
#endif |
||||||
|
#endif |
||||||
|
|
||||||
|
}} |
||||||
|
|
||||||
|
namespace Corrade { namespace Utility { |
||||||
|
|
||||||
|
#ifndef DOXYGEN_GENERATING_OUTPUT |
||||||
|
template struct ConfigurationValue<Magnum::Math::RectangularMatrix<1, 2, float>>; |
||||||
|
template struct ConfigurationValue<Magnum::Math::RectangularMatrix<1, 3, float>>; |
||||||
|
template struct ConfigurationValue<Magnum::Math::RectangularMatrix<1, 4, float>>; |
||||||
|
template struct ConfigurationValue<Magnum::Math::RectangularMatrix<1, 2, int>>; |
||||||
|
template struct ConfigurationValue<Magnum::Math::RectangularMatrix<1, 3, int>>; |
||||||
|
template struct ConfigurationValue<Magnum::Math::RectangularMatrix<1, 4, int>>; |
||||||
|
template struct ConfigurationValue<Magnum::Math::RectangularMatrix<1, 2, unsigned int>>; |
||||||
|
template struct ConfigurationValue<Magnum::Math::RectangularMatrix<1, 3, unsigned int>>; |
||||||
|
template struct ConfigurationValue<Magnum::Math::RectangularMatrix<1, 4, unsigned int>>; |
||||||
|
#ifndef MAGNUM_TARGET_GLES |
||||||
|
template struct ConfigurationValue<Magnum::Math::RectangularMatrix<1, 2, double>>; |
||||||
|
template struct ConfigurationValue<Magnum::Math::RectangularMatrix<1, 3, double>>; |
||||||
|
template struct ConfigurationValue<Magnum::Math::RectangularMatrix<1, 4, double>>; |
||||||
|
#endif |
||||||
|
|
||||||
|
template struct ConfigurationValue<Magnum::Math::RectangularMatrix<2, 2, float>>; |
||||||
|
template struct ConfigurationValue<Magnum::Math::RectangularMatrix<3, 3, float>>; |
||||||
|
template struct ConfigurationValue<Magnum::Math::RectangularMatrix<4, 4, float>>; |
||||||
|
#ifndef MAGNUM_TARGET_GLES |
||||||
|
template struct ConfigurationValue<Magnum::Math::RectangularMatrix<2, 2, double>>; |
||||||
|
template struct ConfigurationValue<Magnum::Math::RectangularMatrix<3, 3, double>>; |
||||||
|
template struct ConfigurationValue<Magnum::Math::RectangularMatrix<4, 4, double>>; |
||||||
|
#endif |
||||||
|
|
||||||
|
template struct ConfigurationValue<Magnum::Math::RectangularMatrix<2, 3, float>>; |
||||||
|
template struct ConfigurationValue<Magnum::Math::RectangularMatrix<3, 2, float>>; |
||||||
|
template struct ConfigurationValue<Magnum::Math::RectangularMatrix<2, 4, float>>; |
||||||
|
template struct ConfigurationValue<Magnum::Math::RectangularMatrix<4, 2, float>>; |
||||||
|
template struct ConfigurationValue<Magnum::Math::RectangularMatrix<3, 4, float>>; |
||||||
|
template struct ConfigurationValue<Magnum::Math::RectangularMatrix<4, 3, float>>; |
||||||
|
#ifndef MAGNUM_TARGET_GLES |
||||||
|
template struct ConfigurationValue<Magnum::Math::RectangularMatrix<2, 3, double>>; |
||||||
|
template struct ConfigurationValue<Magnum::Math::RectangularMatrix<3, 2, double>>; |
||||||
|
template struct ConfigurationValue<Magnum::Math::RectangularMatrix<2, 4, double>>; |
||||||
|
template struct ConfigurationValue<Magnum::Math::RectangularMatrix<4, 2, double>>; |
||||||
|
template struct ConfigurationValue<Magnum::Math::RectangularMatrix<3, 4, double>>; |
||||||
|
template struct ConfigurationValue<Magnum::Math::RectangularMatrix<4, 3, double>>; |
||||||
|
#endif |
||||||
|
#endif |
||||||
|
|
||||||
|
}} |
||||||
@ -1,19 +1,19 @@ |
|||||||
corrade_add_test2(MathConstantsTest ConstantsTest.cpp) |
corrade_add_test2(MathConstantsTest ConstantsTest.cpp) |
||||||
corrade_add_test2(MathTest MathTest.cpp $<TARGET_OBJECTS:MagnumMathObjects>) |
corrade_add_test2(MathTest MathTest.cpp LIBRARIES MagnumMathTestLib) |
||||||
corrade_add_test2(MathMathTypeTraitsTest MathTypeTraitsTest.cpp) |
corrade_add_test2(MathMathTypeTraitsTest MathTypeTraitsTest.cpp) |
||||||
|
|
||||||
corrade_add_test2(MathRectangularMatrixTest RectangularMatrixTest.cpp) |
corrade_add_test2(MathRectangularMatrixTest RectangularMatrixTest.cpp LIBRARIES MagnumMathTestLib) |
||||||
|
|
||||||
corrade_add_test2(MathVectorTest VectorTest.cpp) |
corrade_add_test2(MathVectorTest VectorTest.cpp LIBRARIES MagnumMathTestLib) |
||||||
corrade_add_test2(MathVector2Test Vector2Test.cpp) |
corrade_add_test2(MathVector2Test Vector2Test.cpp LIBRARIES MagnumMathTestLib) |
||||||
corrade_add_test2(MathVector3Test Vector3Test.cpp) |
corrade_add_test2(MathVector3Test Vector3Test.cpp LIBRARIES MagnumMathTestLib) |
||||||
corrade_add_test2(MathVector4Test Vector4Test.cpp) |
corrade_add_test2(MathVector4Test Vector4Test.cpp LIBRARIES MagnumMathTestLib) |
||||||
|
|
||||||
corrade_add_test2(MathPoint2DTest Point2DTest.cpp) |
corrade_add_test2(MathPoint2DTest Point2DTest.cpp LIBRARIES MagnumMathTestLib) |
||||||
corrade_add_test2(MathPoint3DTest Point3DTest.cpp) |
corrade_add_test2(MathPoint3DTest Point3DTest.cpp LIBRARIES MagnumMathTestLib) |
||||||
|
|
||||||
corrade_add_test2(MathMatrixTest MatrixTest.cpp) |
corrade_add_test2(MathMatrixTest MatrixTest.cpp LIBRARIES MagnumMathTestLib) |
||||||
corrade_add_test2(MathMatrix3Test Matrix3Test.cpp) |
corrade_add_test2(MathMatrix3Test Matrix3Test.cpp LIBRARIES MagnumMathTestLib) |
||||||
corrade_add_test2(MathMatrix4Test Matrix4Test.cpp) |
corrade_add_test2(MathMatrix4Test Matrix4Test.cpp LIBRARIES MagnumMathTestLib) |
||||||
|
|
||||||
set_target_properties(MathVectorTest MathMatrix4Test PROPERTIES COMPILE_FLAGS -DCORRADE_GRACEFUL_ASSERT) |
set_target_properties(MathVectorTest MathMatrix4Test PROPERTIES COMPILE_FLAGS -DCORRADE_GRACEFUL_ASSERT) |
||||||
|
|||||||
@ -0,0 +1,37 @@ |
|||||||
|
/*
|
||||||
|
Copyright © 2010, 2011, 2012 Vladimír Vondruš <mosra@centrum.cz> |
||||||
|
|
||||||
|
This file is part of Magnum. |
||||||
|
|
||||||
|
Magnum is free software: you can redistribute it and/or modify |
||||||
|
it under the terms of the GNU Lesser General Public License version 3 |
||||||
|
only, as published by the Free Software Foundation. |
||||||
|
|
||||||
|
Magnum is distributed in the hope that it will be useful, |
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of |
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
||||||
|
GNU Lesser General Public License version 3 for more details. |
||||||
|
*/ |
||||||
|
|
||||||
|
#include "Vector.h" |
||||||
|
|
||||||
|
namespace Magnum { namespace Math { |
||||||
|
|
||||||
|
#ifndef DOXYGEN_GENERATING_OUTPUT |
||||||
|
template Corrade::Utility::Debug operator<<(Corrade::Utility::Debug, const Magnum::Math::Vector<2, float>&); |
||||||
|
template Corrade::Utility::Debug operator<<(Corrade::Utility::Debug, const Magnum::Math::Vector<3, float>&); |
||||||
|
template Corrade::Utility::Debug operator<<(Corrade::Utility::Debug, const Magnum::Math::Vector<4, float>&); |
||||||
|
template Corrade::Utility::Debug operator<<(Corrade::Utility::Debug, const Magnum::Math::Vector<2, int>&); |
||||||
|
template Corrade::Utility::Debug operator<<(Corrade::Utility::Debug, const Magnum::Math::Vector<3, int>&); |
||||||
|
template Corrade::Utility::Debug operator<<(Corrade::Utility::Debug, const Magnum::Math::Vector<4, int>&); |
||||||
|
template Corrade::Utility::Debug operator<<(Corrade::Utility::Debug, const Magnum::Math::Vector<2, unsigned int>&); |
||||||
|
template Corrade::Utility::Debug operator<<(Corrade::Utility::Debug, const Magnum::Math::Vector<3, unsigned int>&); |
||||||
|
template Corrade::Utility::Debug operator<<(Corrade::Utility::Debug, const Magnum::Math::Vector<4, unsigned int>&); |
||||||
|
#ifndef MAGNUM_TARGET_GLES |
||||||
|
template Corrade::Utility::Debug operator<<(Corrade::Utility::Debug, const Magnum::Math::Vector<2, double>&); |
||||||
|
template Corrade::Utility::Debug operator<<(Corrade::Utility::Debug, const Magnum::Math::Vector<3, double>&); |
||||||
|
template Corrade::Utility::Debug operator<<(Corrade::Utility::Debug, const Magnum::Math::Vector<4, double>&); |
||||||
|
#endif |
||||||
|
#endif |
||||||
|
|
||||||
|
}} |
||||||
@ -1,5 +1,5 @@ |
|||||||
corrade_add_test2(ColorTest ColorTest.cpp) |
corrade_add_test2(ColorTest ColorTest.cpp LIBRARIES MagnumMathTestLib) |
||||||
corrade_add_test2(ResourceManagerTest ResourceManagerTest.cpp) |
corrade_add_test2(ResourceManagerTest ResourceManagerTest.cpp) |
||||||
corrade_add_test2(SwizzleTest SwizzleTest.cpp) |
corrade_add_test2(SwizzleTest SwizzleTest.cpp LIBRARIES MagnumMathTestLib) |
||||||
|
|
||||||
set_target_properties(ResourceManagerTest PROPERTIES COMPILE_FLAGS -DCORRADE_GRACEFUL_ASSERT) |
set_target_properties(ResourceManagerTest PROPERTIES COMPILE_FLAGS -DCORRADE_GRACEFUL_ASSERT) |
||||||
|
|||||||
Loading…
Reference in new issue