diff options
author | 2007-06-18 05:59:19 +0000 | |
---|---|---|
committer | 2007-06-18 05:59:19 +0000 | |
commit | 152e09a14d01c36e50d324b6cd9333ad9d238a55 (patch) | |
tree | f091358e923ebd7ed9d6fdfe2d3f4c45274a3db3 | |
parent | b155789aa7070659333a5ea629976ce9282bedbe (diff) |
remove long long, long double, unsigned, short, char, bool types.
Keep only int, float, double, complex<T>.
21 files changed, 0 insertions, 1283 deletions
diff --git a/cmake/modules/CheckLongDouble.cmake b/cmake/modules/CheckLongDouble.cmake deleted file mode 100644 index 39263f4ab..000000000 --- a/cmake/modules/CheckLongDouble.cmake +++ /dev/null @@ -1,25 +0,0 @@ -INCLUDE(CheckCXXSourceCompiles) - -MACRO (CHECK_LONG_DOUBLE _RESULT) - -SET(_CHECK_LONG_DOUBLE_SOURCE_CODE " - -#include <cmath> - -int main(int argc, char *argv[]) -{ - long double ld = static_cast<long double>(1); - sqrt(ld); - cos(ld); - sin(ld); - exp(ld); - log(ld); - fabs(ld); - return 0; -} - -") - -CHECK_CXX_SOURCE_COMPILES("${_CHECK_LONG_DOUBLE_SOURCE_CODE}" ${_RESULT}) - -ENDMACRO (CHECK_LONG_DOUBLE) diff --git a/cmake/modules/CheckLongLong.cmake b/cmake/modules/CheckLongLong.cmake deleted file mode 100644 index d86678160..000000000 --- a/cmake/modules/CheckLongLong.cmake +++ /dev/null @@ -1,18 +0,0 @@ -INCLUDE(CheckCXXSourceCompiles) - -MACRO (CHECK_LONG_LONG _RESULT) - -SET(_CHECK_LONG_LONG_SOURCE_CODE " - -int main(int argc, char *argv[]) -{ - long long ll = static_cast<long long>(0); - long long int lli = static_cast<long long int>(0); - return 0; -} - -") - -CHECK_CXX_SOURCE_COMPILES("${_CHECK_LONG_LONG_SOURCE_CODE}" ${_RESULT}) - -ENDMACRO (CHECK_LONG_LONG) diff --git a/tvmet-1.7.1/include/tvmet/CMakeLists.txt b/tvmet-1.7.1/include/tvmet/CMakeLists.txt index 14778920c..04597cdb2 100644 --- a/tvmet-1.7.1/include/tvmet/CMakeLists.txt +++ b/tvmet-1.7.1/include/tvmet/CMakeLists.txt @@ -4,8 +4,6 @@ INCLUDE (CheckComplexMath1) INCLUDE (CheckComplexMath2) INCLUDE (CheckIeeeMath) INCLUDE (CheckSysvMath) -INCLUDE (CheckLongDouble) -INCLUDE (CheckLongLong) INCLUDE (CheckRestrictKeyword) INCLUDE (CheckAlwaysInline) @@ -18,8 +16,6 @@ CHECK_COMPLEX_MATH1 (TVMET_HAVE_COMPLEX_MATH1) CHECK_COMPLEX_MATH2 (TVMET_HAVE_COMPLEX_MATH2) CHECK_IEEE_MATH (TVMET_HAVE_IEEE_MATH) CHECK_SYSV_MATH (TVMET_HAVE_SYSV_MATH) -CHECK_LONG_DOUBLE (TVMET_HAVE_LONG_DOUBLE) -CHECK_LONG_DOUBLE (TVMET_HAVE_LONG_LONG) CHECK_RESTRICT_KEYWORD (TVMET_RESTRICT_KEYWORD) CHECK_ALWAYS_INLINE (TVMET_ALWAYS_INLINE) diff --git a/tvmet-1.7.1/include/tvmet/MatrixBinaryFunctions.h b/tvmet-1.7.1/include/tvmet/MatrixBinaryFunctions.h index 907d346da..c45954768 100644 --- a/tvmet-1.7.1/include/tvmet/MatrixBinaryFunctions.h +++ b/tvmet-1.7.1/include/tvmet/MatrixBinaryFunctions.h @@ -109,16 +109,6 @@ TVMET_DECLARE_MACRO(jn, int) TVMET_DECLARE_MACRO(yn, int) TVMET_DECLARE_MACRO(pow, int) -#if defined(TVMET_HAVE_LONG_LONG) -TVMET_DECLARE_MACRO(atan2, long long int) -TVMET_DECLARE_MACRO(drem, long long int) -TVMET_DECLARE_MACRO(fmod, long long int) -TVMET_DECLARE_MACRO(hypot, long long int) -TVMET_DECLARE_MACRO(jn, long long int) -TVMET_DECLARE_MACRO(yn, long long int) -TVMET_DECLARE_MACRO(pow, long long int) -#endif // defined(TVMET_HAVE_LONG_LONG) - TVMET_DECLARE_MACRO(atan2, float) TVMET_DECLARE_MACRO(drem, float) TVMET_DECLARE_MACRO(fmod, float) @@ -135,16 +125,6 @@ TVMET_DECLARE_MACRO(jn, double) TVMET_DECLARE_MACRO(yn, double) TVMET_DECLARE_MACRO(pow, double) -#if defined(TVMET_HAVE_LONG_DOUBLE) -TVMET_DECLARE_MACRO(atan2, long double) -TVMET_DECLARE_MACRO(drem, long double) -TVMET_DECLARE_MACRO(fmod, long double) -TVMET_DECLARE_MACRO(hypot, long double) -TVMET_DECLARE_MACRO(jn, long double) -TVMET_DECLARE_MACRO(yn, long double) -TVMET_DECLARE_MACRO(pow, long double) -#endif // defined(TVMET_HAVE_LONG_DOUBLE) - #undef TVMET_DECLARE_MACRO @@ -348,16 +328,6 @@ TVMET_IMPLEMENT_MACRO(jn, int) TVMET_IMPLEMENT_MACRO(yn, int) TVMET_IMPLEMENT_MACRO(pow, int) -#if defined(TVMET_HAVE_LONG_LONG) -TVMET_IMPLEMENT_MACRO(atan2, long long int) -TVMET_IMPLEMENT_MACRO(drem, long long int) -TVMET_IMPLEMENT_MACRO(fmod, long long int) -TVMET_IMPLEMENT_MACRO(hypot, long long int) -TVMET_IMPLEMENT_MACRO(jn, long long int) -TVMET_IMPLEMENT_MACRO(yn, long long int) -TVMET_IMPLEMENT_MACRO(pow, long long int) -#endif // defined(TVMET_HAVE_LONG_LONG) - TVMET_IMPLEMENT_MACRO(atan2, float) TVMET_IMPLEMENT_MACRO(drem, float) TVMET_IMPLEMENT_MACRO(fmod, float) @@ -374,16 +344,6 @@ TVMET_IMPLEMENT_MACRO(jn, double) TVMET_IMPLEMENT_MACRO(yn, double) TVMET_IMPLEMENT_MACRO(pow, double) -#if defined(TVMET_HAVE_LONG_DOUBLE) -TVMET_IMPLEMENT_MACRO(atan2, long double) -TVMET_IMPLEMENT_MACRO(drem, long double) -TVMET_IMPLEMENT_MACRO(fmod, long double) -TVMET_IMPLEMENT_MACRO(hypot, long double) -TVMET_IMPLEMENT_MACRO(jn, long double) -TVMET_IMPLEMENT_MACRO(yn, long double) -TVMET_IMPLEMENT_MACRO(pow, long double) -#endif // defined(TVMET_HAVE_LONG_DOUBLE) - #undef TVMET_IMPLEMENT_MACRO diff --git a/tvmet-1.7.1/include/tvmet/MatrixEval.h b/tvmet-1.7.1/include/tvmet/MatrixEval.h index d8e71509b..d274bf131 100644 --- a/tvmet-1.7.1/include/tvmet/MatrixEval.h +++ b/tvmet-1.7.1/include/tvmet/MatrixEval.h @@ -269,17 +269,9 @@ eval(const XprMatrix<E1, Rows, Cols>& e1, const XprMatrix<E2, Rows, Cols>& e2, P TVMET_IMPLEMENT_MACRO(int) -#if defined(TVMET_HAVE_LONG_LONG) -TVMET_IMPLEMENT_MACRO(long long int) -#endif - TVMET_IMPLEMENT_MACRO(float) TVMET_IMPLEMENT_MACRO(double) -#if defined(TVMET_HAVE_LONG_DOUBLE) -TVMET_IMPLEMENT_MACRO(long double) -#endif - #undef TVMET_IMPLEMENT_MACRO diff --git a/tvmet-1.7.1/include/tvmet/MatrixFunctions.h b/tvmet-1.7.1/include/tvmet/MatrixFunctions.h index 57a2d637f..4c945c89d 100644 --- a/tvmet-1.7.1/include/tvmet/MatrixFunctions.h +++ b/tvmet-1.7.1/include/tvmet/MatrixFunctions.h @@ -130,13 +130,6 @@ TVMET_DECLARE_MACRO(sub, int) TVMET_DECLARE_MACRO(mul, int) TVMET_DECLARE_MACRO(div, int) -#if defined(TVMET_HAVE_LONG_LONG) -TVMET_DECLARE_MACRO(add, long long int) -TVMET_DECLARE_MACRO(sub, long long int) -TVMET_DECLARE_MACRO(mul, long long int) -TVMET_DECLARE_MACRO(div, long long int) -#endif - TVMET_DECLARE_MACRO(add, float) TVMET_DECLARE_MACRO(sub, float) TVMET_DECLARE_MACRO(mul, float) @@ -147,13 +140,6 @@ TVMET_DECLARE_MACRO(sub, double) TVMET_DECLARE_MACRO(mul, double) TVMET_DECLARE_MACRO(div, double) -#if defined(TVMET_HAVE_LONG_DOUBLE) -TVMET_DECLARE_MACRO(add, long double) -TVMET_DECLARE_MACRO(sub, long double) -TVMET_DECLARE_MACRO(mul, long double) -TVMET_DECLARE_MACRO(div, long double) -#endif - #undef TVMET_DECLARE_MACRO @@ -601,13 +587,6 @@ TVMET_IMPLEMENT_MACRO(sub, int) TVMET_IMPLEMENT_MACRO(mul, int) TVMET_IMPLEMENT_MACRO(div, int) -#if defined(TVMET_HAVE_LONG_LONG) -TVMET_IMPLEMENT_MACRO(add, long long int) -TVMET_IMPLEMENT_MACRO(sub, long long int) -TVMET_IMPLEMENT_MACRO(mul, long long int) -TVMET_IMPLEMENT_MACRO(div, long long int) -#endif - TVMET_IMPLEMENT_MACRO(add, float) TVMET_IMPLEMENT_MACRO(sub, float) TVMET_IMPLEMENT_MACRO(mul, float) @@ -618,13 +597,6 @@ TVMET_IMPLEMENT_MACRO(sub, double) TVMET_IMPLEMENT_MACRO(mul, double) TVMET_IMPLEMENT_MACRO(div, double) -#if defined(TVMET_HAVE_LONG_DOUBLE) -TVMET_IMPLEMENT_MACRO(add, long double) -TVMET_IMPLEMENT_MACRO(sub, long double) -TVMET_IMPLEMENT_MACRO(mul, long double) -TVMET_IMPLEMENT_MACRO(div, long double) -#endif - #undef TVMET_IMPLEMENT_MACRO diff --git a/tvmet-1.7.1/include/tvmet/MatrixOperators.h b/tvmet-1.7.1/include/tvmet/MatrixOperators.h index b1000fedc..6fd988be8 100644 --- a/tvmet-1.7.1/include/tvmet/MatrixOperators.h +++ b/tvmet-1.7.1/include/tvmet/MatrixOperators.h @@ -162,13 +162,6 @@ TVMET_DECLARE_MACRO(sub, -, int) TVMET_DECLARE_MACRO(mul, *, int) TVMET_DECLARE_MACRO(div, /, int) -#if defined(TVMET_HAVE_LONG_LONG) -TVMET_DECLARE_MACRO(add, +, long long int) -TVMET_DECLARE_MACRO(sub, -, long long int) -TVMET_DECLARE_MACRO(mul, *, long long int) -TVMET_DECLARE_MACRO(div, /, long long int) -#endif // defined(TVMET_HAVE_LONG_LONG) - TVMET_DECLARE_MACRO(add, +, float) TVMET_DECLARE_MACRO(sub, -, float) TVMET_DECLARE_MACRO(mul, *, float) @@ -179,13 +172,6 @@ TVMET_DECLARE_MACRO(sub, -, double) TVMET_DECLARE_MACRO(mul, *, double) TVMET_DECLARE_MACRO(div, /, double) -#if defined(TVMET_HAVE_LONG_DOUBLE) -TVMET_DECLARE_MACRO(add, +, long double) -TVMET_DECLARE_MACRO(sub, -, long double) -TVMET_DECLARE_MACRO(mul, *, long double) -TVMET_DECLARE_MACRO(div, /, long double) -#endif // defined(TVMET_HAVE_LONG_DOUBLE) - #undef TVMET_DECLARE_MACRO @@ -496,13 +482,6 @@ TVMET_IMPLEMENT_MACRO(sub, -, int) TVMET_IMPLEMENT_MACRO(mul, *, int) TVMET_IMPLEMENT_MACRO(div, /, int) -#if defined(TVMET_HAVE_LONG_LONG) -TVMET_IMPLEMENT_MACRO(add, +, long long int) -TVMET_IMPLEMENT_MACRO(sub, -, long long int) -TVMET_IMPLEMENT_MACRO(mul, *, long long int) -TVMET_IMPLEMENT_MACRO(div, /, long long int) -#endif // defined(TVMET_HAVE_LONG_LONG) - TVMET_IMPLEMENT_MACRO(add, +, float) TVMET_IMPLEMENT_MACRO(sub, -, float) TVMET_IMPLEMENT_MACRO(mul, *, float) @@ -513,13 +492,6 @@ TVMET_IMPLEMENT_MACRO(sub, -, double) TVMET_IMPLEMENT_MACRO(mul, *, double) TVMET_IMPLEMENT_MACRO(div, /, double) -#if defined(TVMET_HAVE_LONG_DOUBLE) -TVMET_IMPLEMENT_MACRO(add, +, long double) -TVMET_IMPLEMENT_MACRO(sub, -, long double) -TVMET_IMPLEMENT_MACRO(mul, *, long double) -TVMET_IMPLEMENT_MACRO(div, /, long double) -#endif // defined(TVMET_HAVE_LONG_DOUBLE) - #undef TVMET_IMPLEMENT_MACRO diff --git a/tvmet-1.7.1/include/tvmet/NumericTraits.h b/tvmet-1.7.1/include/tvmet/NumericTraits.h index a8232fab6..cb3b9469e 100644 --- a/tvmet-1.7.1/include/tvmet/NumericTraits.h +++ b/tvmet-1.7.1/include/tvmet/NumericTraits.h @@ -171,183 +171,6 @@ struct NumericTraits<char> { /** - * \class NumericTraits<unsigned char> NumericTraits.h "tvmet/NumericTraits.h" - * \brief Traits specialized for unsigned char. - * - * \note Normally it doesn't make sense to call <tt>conj</tt> - * for an unsigned type! An unary minus operator - * applied to unsigned type will result unsigned. Therefore - * this function is missing here. - */ -template<> -struct NumericTraits<unsigned char> { - typedef unsigned char value_type; - typedef value_type base_type; - typedef unsigned long sum_type; - typedef int diff_type; - typedef float float_type; - typedef int signed_type; - - typedef NumericTraits<value_type> traits_type; - typedef value_type argument_type; - - static inline - base_type real(argument_type x) { return x; } - - static inline - base_type imag(argument_type x) { TVMET_UNUSED(x); return 0; } - - static inline - base_type abs(argument_type x) { return std::abs(x); } - - static inline - value_type sqrt(argument_type x) { - return static_cast<value_type>(std::sqrt(static_cast<float_type>(x))); - } - - static inline - base_type norm_1(argument_type x) { return traits_type::abs(x); } - - static inline - base_type norm_2(argument_type x) { return traits_type::abs(x); } - - static inline - base_type norm_inf(argument_type x) { return traits_type::abs(x); } - - static inline - bool equals(argument_type lhs, argument_type rhs) { return lhs == rhs; } - - enum { is_complex = false }; - - /** Complexity on operations. */ - enum { - ops_plus = 1, /**< Complexity on plus/minus ops. */ - ops_muls = 1 /**< Complexity on multiplications. */ - }; -}; - - -/** - * \class NumericTraits<short int> NumericTraits.h "tvmet/NumericTraits.h" - * \brief Traits specialized for short int. - */ -template<> -struct NumericTraits<short int> { - typedef short int value_type; - typedef value_type base_type; -#if defined(TVMET_HAVE_LONG_LONG) - typedef long long sum_type; -#else - typedef long sum_type; -#endif - typedef int diff_type; - typedef float float_type; - typedef short int signed_type; - - typedef NumericTraits<value_type> traits_type; - typedef value_type argument_type; - - static inline - base_type real(argument_type x) { return x; } - - static inline - base_type imag(argument_type x) { TVMET_UNUSED(x); return 0; } - - static inline - value_type conj(argument_type x) { return x; } - - static inline - base_type abs(argument_type x) { return std::abs(x); } - - static inline - value_type sqrt(argument_type x) { - return static_cast<value_type>(std::sqrt(static_cast<float_type>(x))); - } - - static inline - base_type norm_1(argument_type x) { return traits_type::abs(x); } - - static inline - base_type norm_2(argument_type x) { return traits_type::abs(x); } - - static inline - base_type norm_inf(argument_type x) { return traits_type::abs(x); } - - static inline - bool equals(argument_type lhs, argument_type rhs) { return lhs == rhs; } - - enum { is_complex = false }; - - /** Complexity on operations. */ - enum { - ops_plus = 1, /**< Complexity on plus/minus ops. */ - ops_muls = 1 /**< Complexity on multiplications. */ - }; -}; - - -/** - * \class NumericTraits<short unsigned int> NumericTraits.h "tvmet/NumericTraits.h" - * \brief Traits specialized for short unsigned int. - * - * \note Normally it doesn't make sense to call <tt>conj</tt> - * for an unsigned type! An unary minus operator - * applied to unsigned type will result unsigned. Therefore - * this function is missing here. - */ -template<> -struct NumericTraits<short unsigned int> { - typedef short unsigned int value_type; - typedef value_type base_type; -#if defined(TVMET_HAVE_LONG_LONG) - typedef unsigned long long sum_type; -#else - typedef unsigned long sum_type; -#endif - typedef int diff_type; - typedef float float_type; - typedef int signed_type; - - typedef NumericTraits<value_type> traits_type; - typedef value_type argument_type; - - static inline - base_type real(argument_type x) { return x; } - - static inline - base_type imag(argument_type x) { TVMET_UNUSED(x); return 0; } - - static inline - base_type abs(argument_type x) { return std::abs(x); } - - static inline - value_type sqrt(argument_type x) { - return static_cast<value_type>(std::sqrt(static_cast<float_type>(x))); - } - - static inline - base_type norm_1(argument_type x) { return traits_type::abs(x); } - - static inline - base_type norm_2(argument_type x) { return traits_type::abs(x); } - - static inline - base_type norm_inf(argument_type x) { return traits_type::abs(x); } - - static inline - bool equals(argument_type lhs, argument_type rhs) { return lhs == rhs; } - - enum { is_complex = false }; - - /** Complexity on operations. */ - enum { - ops_plus = 1, /**< Complexity on plus/minus ops. */ - ops_muls = 1 /**< Complexity on multiplications. */ - }; -}; - - -/** * \class NumericTraits<int> NumericTraits.h "tvmet/NumericTraits.h" * \brief Traits specialized for int. */ @@ -355,11 +178,7 @@ template<> struct NumericTraits<int> { typedef int value_type; typedef value_type base_type; -#if defined(TVMET_HAVE_LONG_LONG) - typedef long long sum_type; -#else typedef long sum_type; -#endif typedef int diff_type; typedef double float_type; typedef int signed_type; @@ -407,187 +226,6 @@ struct NumericTraits<int> { /** - * \class NumericTraits<unsigned int> NumericTraits.h "tvmet/NumericTraits.h" - * \brief Traits specialized for unsigned int. - * - * \note Normally it doesn't make sense to call <tt>conj</tt> - * for an unsigned type! An unary minus operator - * applied to unsigned type will result unsigned. Therefore - * this function is missing here. - */ -template<> -struct NumericTraits<unsigned int> { - typedef unsigned int value_type; - typedef value_type base_type; -#if defined(TVMET_HAVE_LONG_LONG) - typedef unsigned long long sum_type; -#else - typedef unsigned long sum_type; -#endif - typedef int diff_type; - typedef double float_type; - typedef long signed_type; - - typedef NumericTraits<value_type> traits_type; - typedef value_type argument_type; - - static inline - base_type real(argument_type x) { return x; } - - static inline - base_type imag(argument_type x) { TVMET_UNUSED(x); return 0; } - - static inline - base_type abs(argument_type x) { return x; } - - static inline - value_type sqrt(argument_type x) { - return static_cast<value_type>(std::sqrt(static_cast<float_type>(x))); - } - - static inline - base_type norm_1(argument_type x) { return traits_type::abs(x); } - - static inline - base_type norm_2(argument_type x) { return traits_type::abs(x); } - - static inline - base_type norm_inf(argument_type x) { return traits_type::abs(x); } - - static inline - bool equals(argument_type lhs, argument_type rhs) { return lhs == rhs; } - - enum { is_complex = false }; - - /** Complexity on operations. */ - enum { - ops_plus = 1, /**< Complexity on plus/minus ops. */ - ops_muls = 1 /**< Complexity on multiplications. */ - }; -}; - - -/** - * \class NumericTraits<long> NumericTraits.h "tvmet/NumericTraits.h" - * \brief Traits specialized for long. - */ -template<> -struct NumericTraits<long> { - typedef long value_type; - typedef value_type base_type; -#if defined(TVMET_HAVE_LONG_LONG) - typedef long long sum_type; -#else - typedef long sum_type; -#endif - typedef long diff_type; - typedef double float_type; - typedef long signed_type; - - typedef NumericTraits<value_type> traits_type; - typedef value_type argument_type; - - static inline - base_type real(argument_type x) { return x; } - - static inline - base_type imag(argument_type x) { TVMET_UNUSED(x); return 0; } - - static inline - value_type conj(argument_type x) { return x; } - - static inline - base_type abs(argument_type x) { return std::abs(x); } - - static inline - value_type sqrt(argument_type x) { - return static_cast<value_type>(std::sqrt(static_cast<float_type>(x))); - } - - static inline - base_type norm_1(argument_type x) { return traits_type::abs(x); } - - static inline - base_type norm_2(argument_type x) { return traits_type::abs(x); } - - static inline - base_type norm_inf(argument_type x) { return traits_type::abs(x); } - - static inline - bool equals(argument_type lhs, argument_type rhs) { return lhs == rhs; } - - enum { is_complex = false }; - - /** Complexity on operations. */ - enum { - ops_plus = 1, /**< Complexity on plus/minus ops. */ - ops_muls = 1 /**< Complexity on multiplications. */ - }; -}; - - -/** - * \class NumericTraits<unsigned long> NumericTraits.h "tvmet/NumericTraits.h" - * \brief Traits specialized for unsigned long. - * - * \note Normally it doesn't make sense to call <tt>conj</tt> - * for an unsigned type! An unary minus operator - * applied to unsigned type will result unsigned. Therefore - * this function is missing here. - */ -template<> -struct NumericTraits<unsigned long> { - typedef unsigned long value_type; - typedef value_type base_type; -#if defined(TVMET_HAVE_LONG_LONG) - typedef unsigned long long sum_type; -#else - typedef unsigned long sum_type; -#endif - typedef unsigned long diff_type; - typedef double float_type; - typedef long signed_type; - - typedef NumericTraits<value_type> traits_type; - typedef value_type argument_type; - - static inline - base_type real(argument_type x) { return x; } - - static inline - base_type imag(argument_type x) { TVMET_UNUSED(x); return 0; } - - static inline - base_type abs(argument_type x) { return x; } - - static inline - value_type sqrt(argument_type x) { - return static_cast<value_type>(std::sqrt(static_cast<float_type>(x))); - } - - static inline - base_type norm_1(argument_type x) { return traits_type::abs(x); } - - static inline - base_type norm_2(argument_type x) { return traits_type::abs(x); } - - static inline - base_type norm_inf(argument_type x) { return traits_type::abs(x); } - - static inline - bool equals(argument_type lhs, argument_type rhs) { return lhs == rhs; } - - enum { is_complex = false }; - - /** Complexity on operations. */ - enum { - ops_plus = 1, /**< Complexity on plus/minus ops. */ - ops_muls = 1 /**< Complexity on multiplications. */ - }; -}; - - -/** * \class NumericTraits<float> NumericTraits.h "tvmet/NumericTraits.h" * \brief Traits specialized for float. */ @@ -657,11 +295,7 @@ template<> struct NumericTraits<double> { typedef double value_type; typedef value_type base_type; -#if defined(TVMET_HAVE_LONG_DOUBLE) - typedef long double sum_type; -#else typedef double sum_type; -#endif typedef double diff_type; typedef double float_type; typedef double signed_type; @@ -715,70 +349,6 @@ struct NumericTraits<double> { }; -#if defined(TVMET_HAVE_LONG_DOUBLE) -/** - * \class NumericTraits<long double> NumericTraits.h "tvmet/NumericTraits.h" - * \brief Traits specialized for long double. - */ -template<> -struct NumericTraits<long double> { - typedef long double value_type; - typedef value_type base_type; - typedef long double sum_type; - typedef long double diff_type; - typedef long double float_type; - typedef long double signed_type; - - typedef NumericTraits<value_type> traits_type; - typedef value_type argument_type; - - static inline - base_type real(argument_type x) { return x; } - - static inline - base_type imag(argument_type x) { TVMET_UNUSED(x); return 0; } - - static inline - value_type conj(argument_type x) { return x; } - - static inline - base_type abs(argument_type x) { return std::abs(x); } - - static inline - value_type sqrt(argument_type x) { return std::sqrt(x); } - - static inline - base_type norm_1(argument_type x) { return traits_type::abs(x); } - - static inline - base_type norm_2(argument_type x) { return traits_type::abs(x); } - - static inline - base_type norm_inf(argument_type x) { return traits_type::abs(x); } - - static inline - bool equals(argument_type lhs, argument_type rhs) { - static base_type sqrt_epsilon( - NumericTraits<base_type>::sqrt( - std::numeric_limits<base_type>::epsilon())); - - return traits_type::norm_inf(lhs - rhs) < sqrt_epsilon * - std::max(std::max(traits_type::norm_inf(lhs), - traits_type::norm_inf(rhs)), - std::numeric_limits<base_type>::min()); - } - - enum { is_complex = false }; - - /** Complexity on operations. */ - enum { - ops_plus = 1, /**< Complexity on plus/minus ops. */ - ops_muls = 1 /**< Complexity on multiplications. */ - }; -}; -#endif // TVMET_HAVE_LONG_DOUBLE - - /* * numeric traits for complex types */ @@ -872,273 +442,6 @@ struct NumericTraits< std::complex<int> > { /** - * \class NumericTraits< std::complex<unsigned int> > NumericTraits.h "tvmet/NumericTraits.h" - * \brief Traits specialized for std::complex<unsigned int>. - * - * \note Normally it doesn't make sense to call <tt>conj</tt> - * for an unsigned type! An unary minus operator - * applied to unsigned type will result unsigned. Therefore - * this function is missing here. - */ -template<> -struct NumericTraits< std::complex<unsigned int> > { - typedef unsigned int base_type; - typedef std::complex<unsigned int> value_type; - typedef std::complex<unsigned long> sum_type; - typedef std::complex<int> diff_type; - typedef std::complex<float> float_type; - typedef std::complex<int> signed_type; - - typedef NumericTraits<value_type> traits_type; - typedef const value_type& argument_type; - - static inline - base_type real(argument_type z) { return std::real(z); } - - static inline - base_type imag(argument_type z) { return std::imag(z); } - - static inline - base_type abs(argument_type z) { - base_type x = z.real(); - base_type y = z.imag(); - - // XXX probably case of overrun; header complex uses scaling - return static_cast<base_type>(NumericTraits<base_type>::sqrt(x * x + y * y)); - } - - static /* inline */ - value_type sqrt(argument_type z) { - // borrowed and adapted from header complex - base_type x = z.real(); - base_type y = z.imag(); - - if(x == base_type()) { - base_type t = NumericTraits<base_type>::sqrt( - NumericTraits<base_type>::abs(y) / 2); - return value_type(t, t); - } - else { - base_type t = NumericTraits<base_type>::sqrt( - 2 * (traits_type::abs(z) - + NumericTraits<base_type>::abs(x))); - return value_type(t / 2, y / t); - } - } - - static inline - base_type norm_1(argument_type z) { - return NumericTraits<base_type>::abs((traits_type::real(z))) - + NumericTraits<base_type>::abs((traits_type::imag(z))); - } - - static inline - base_type norm_2(argument_type z) { return traits_type::abs(z); } - - static inline - base_type norm_inf(argument_type z) { - return std::max(NumericTraits<base_type>::abs(traits_type::real(z)), - NumericTraits<base_type>::abs(traits_type::imag(z))); - } - - static inline - bool equals(argument_type lhs, argument_type rhs) { - return (traits_type::real(lhs) == traits_type::real(rhs)) - && (traits_type::imag(lhs) == traits_type::imag(rhs)); - } - - enum { is_complex = true }; - - /** Complexity on operations. */ - enum { - ops_plus = 2, /**< Complexity on plus/minus ops. */ - ops_muls = 6 /**< Complexity on multiplications. */ - }; -}; - - -/** - * \class NumericTraits< std::complex<long> > NumericTraits.h "tvmet/NumericTraits.h" - * \brief Traits specialized for std::complex<long>. - */ -template<> -struct NumericTraits< std::complex<long> > { - typedef long base_type; - typedef std::complex<long> value_type; -#if defined(TVMET_HAVE_LONG_LONG) - typedef std::complex<long long> sum_type; -#else - typedef std::complex<long> sum_type; -#endif - typedef std::complex<int> diff_type; - typedef std::complex<float> float_type; - typedef std::complex<int> signed_type; - - typedef NumericTraits<value_type> traits_type; - typedef const value_type& argument_type; - - static inline - base_type real(argument_type z) { return std::real(z); } - - static inline - base_type imag(argument_type z) { return std::imag(z); } - - static inline - value_type conj(argument_type z) { return std::conj(z); } - - static inline - base_type abs(argument_type z) { - base_type x = z.real(); - base_type y = z.imag(); - - // XXX probably case of overrun; header complex uses scaling - return static_cast<base_type>(NumericTraits<base_type>::sqrt(x * x + y * y)); - } - - static /* inline */ - value_type sqrt(argument_type z) { - // borrowed and adapted from header complex - base_type x = z.real(); - base_type y = z.imag(); - - if(x == base_type()) { - base_type t = NumericTraits<base_type>::sqrt( - NumericTraits<base_type>::abs(y) / 2); - return value_type(t, y < base_type() ? -t : t); - } - else { - base_type t = NumericTraits<base_type>::sqrt( - 2 * (traits_type::abs(z) - + NumericTraits<base_type>::abs(x))); - base_type u = t / 2; - return x > base_type() - ? value_type(u, y / t) - : value_type(NumericTraits<base_type>::abs(y) / t, y < base_type() ? -u : u); - } - } - - static inline - base_type norm_1(argument_type z) { - return NumericTraits<base_type>::abs((traits_type::real(z))) - + NumericTraits<base_type>::abs((traits_type::imag(z))); - } - - static inline - base_type norm_2(argument_type z) { return traits_type::abs(z); } - - static inline - base_type norm_inf(argument_type z) { - return std::max(NumericTraits<base_type>::abs(traits_type::real(z)), - NumericTraits<base_type>::abs(traits_type::imag(z))); - } - - static inline - bool equals(argument_type lhs, argument_type rhs) { - return (traits_type::real(lhs) == traits_type::real(rhs)) - && (traits_type::imag(lhs) == traits_type::imag(rhs)); - } - - enum { is_complex = true }; - - /** Complexity on operations. */ - enum { - ops_plus = 2, /**< Complexity on plus/minus ops. */ - ops_muls = 6 /**< Complexity on multiplications. */ - }; -}; - - -/** - * \class NumericTraits< std::complex<unsigned long> > NumericTraits.h "tvmet/NumericTraits.h" - * \brief Traits specialized for std::complex<unsigned long>. - * - * \note Normally it doesn't make sense to call <tt>conj</tt> - * for an unsigned type! An unary minus operator - * applied to unsigned type will result unsigned. Therefore - * this function is missing here. - */ -template<> -struct NumericTraits< std::complex<unsigned long> > { - typedef unsigned long base_type; - typedef std::complex<unsigned long> value_type; -#if defined(TVMET_HAVE_LONG_LONG) - typedef std::complex<unsigned long long> sum_type; -#else - typedef std::complex<unsigned long> sum_type; -#endif - typedef std::complex<long> diff_type; - typedef std::complex<float> float_type; - typedef std::complex<long> signed_type; - - typedef NumericTraits<value_type> traits_type; - typedef const value_type& argument_type; - - static inline - base_type real(argument_type z) { return std::real(z); } - - static inline - base_type imag(argument_type z) { return std::imag(z); } - - static inline - base_type abs(argument_type z) { - base_type x = z.real(); - base_type y = z.imag(); - - // XXX probably case of overrun; header complex uses scaling - return static_cast<base_type>(NumericTraits<base_type>::sqrt(x * x + y * y)); - } - - static /* inline */ - value_type sqrt(argument_type z) { - // borrowed and adapted from header complex - base_type x = z.real(); - base_type y = z.imag(); - - if(x == base_type()) { - base_type t = NumericTraits<base_type>::sqrt( - NumericTraits<base_type>::abs(y) / 2); - return value_type(t, t); - } - else { - base_type t = NumericTraits<base_type>::sqrt( - 2 * (traits_type::abs(z) - + NumericTraits<base_type>::abs(x))); - return value_type(t / 2, y / t); - } - } - - static inline - base_type norm_1(argument_type z) { - return NumericTraits<base_type>::abs((traits_type::real(z))) - + NumericTraits<base_type>::abs((traits_type::imag(z))); - } - - static inline - base_type norm_2(argument_type z) { return traits_type::abs(z); } - - static inline - base_type norm_inf(argument_type z) { - return std::max(NumericTraits<base_type>::abs(traits_type::real(z)), - NumericTraits<base_type>::abs(traits_type::imag(z))); - } - - static inline - bool equals(argument_type lhs, argument_type rhs) { - return (traits_type::real(lhs) == traits_type::real(rhs)) - && (traits_type::imag(lhs) == traits_type::imag(rhs)); - } - - enum { is_complex = true }; - - /** Complexity on operations.*/ - enum { - ops_plus = 2, /**< Complexity on plus/minus ops. */ - ops_muls = 6 /**< Complexity on multiplications. */ - }; -}; - - -/** * \class NumericTraits< std::complex<float> > NumericTraits.h "tvmet/NumericTraits.h" * \brief Traits specialized for std::complex<float>. */ @@ -1214,11 +517,7 @@ template<> struct NumericTraits< std::complex<double> > { typedef double base_type; typedef std::complex<double> value_type; -#if defined(TVMET_HAVE_LONG_DOUBLE) - typedef std::complex<long double> sum_type; -#else typedef std::complex<double> sum_type; -#endif typedef std::complex<double> diff_type; typedef std::complex<double> float_type; typedef std::complex<double> signed_type; @@ -1278,76 +577,6 @@ struct NumericTraits< std::complex<double> > { }; -#if defined(TVMET_HAVE_LONG_DOUBLE) -/** - * \class NumericTraits< std::complex<long double> > NumericTraits.h "tvmet/NumericTraits.h" - * \brief Traits specialized for std::complex<double>. - */ -template<> -struct NumericTraits< std::complex<long double> > { - typedef long double base_type; - typedef std::complex<long double> value_type; - typedef std::complex<long double> sum_type; - typedef std::complex<long double> diff_type; - typedef std::complex<long double> float_type; - typedef std::complex<long double> signed_type; - - typedef NumericTraits<value_type> traits_type; - typedef const value_type& argument_type; - - static inline - base_type real(argument_type z) { return std::real(z); } - - static inline - base_type imag(argument_type z) { return std::imag(z); } - - static inline - value_type conj(argument_type z) { return std::conj(z); } - - static inline - base_type abs(argument_type z) { return std::abs(z); } - - static inline - value_type sqrt(argument_type z) { return std::sqrt(z); } - - static inline - base_type norm_1(argument_type z) { - return NumericTraits<base_type>::abs((traits_type::real(z))) - + NumericTraits<base_type>::abs((traits_type::imag(z))); - } - - static inline - base_type norm_2(argument_type z) { return traits_type::abs(z); } - - static inline - base_type norm_inf(argument_type z) { - return std::max(NumericTraits<base_type>::abs(traits_type::real(z)), - NumericTraits<base_type>::abs(traits_type::imag(z))); - } - - static inline - bool equals(argument_type lhs, argument_type rhs) { - static base_type sqrt_epsilon( - NumericTraits<base_type>::sqrt( - std::numeric_limits<base_type>::epsilon())); - - return traits_type::norm_inf(lhs - rhs) < sqrt_epsilon * - std::max(std::max(traits_type::norm_inf(lhs), - traits_type::norm_inf(rhs)), - std::numeric_limits<base_type>::min()); - } - - enum { is_complex = true }; - - /** Complexity on operations. */ - enum { - ops_plus = 2, /**< Complexity on plus/minus ops. */ - ops_muls = 6 /**< Complexity on multiplications. */ - }; -}; -#endif // defined(TVMET_HAVE_LONG_DOUBLE) - - #endif // defined(TVMET_HAVE_COMPLEX) diff --git a/tvmet-1.7.1/include/tvmet/TypePromotion.h b/tvmet-1.7.1/include/tvmet/TypePromotion.h index 52558791b..06c6b4ee7 100644 --- a/tvmet-1.7.1/include/tvmet/TypePromotion.h +++ b/tvmet-1.7.1/include/tvmet/TypePromotion.h @@ -61,44 +61,16 @@ struct PrecisionTraits< T > { \ * pod types */ TVMET_PRECISION(int, 100) -TVMET_PRECISION(unsigned int, 200) -TVMET_PRECISION(long, 300) -TVMET_PRECISION(unsigned long, 400) - -#if defined(TVMET_HAVE_LONG_LONG) -TVMET_PRECISION(long long, 500) -TVMET_PRECISION(unsigned long long, 600) -#endif // defined(TVMET_HAVE_LONG_LONG) - TVMET_PRECISION(float, 700) TVMET_PRECISION(double, 800) -#if defined(TVMET_HAVE_LONG_DOUBLE) -TVMET_PRECISION(long double, 900) -#endif // defined(TVMET_HAVE_LONG_DOUBLE) - - /* * complex types */ #if defined(TVMET_HAVE_COMPLEX) TVMET_PRECISION(std::complex<int>, 1000) -TVMET_PRECISION(std::complex<unsigned int>, 1100) -TVMET_PRECISION(std::complex<long>, 1200) -TVMET_PRECISION(std::complex<unsigned long>, 1300) - -#if defined(TVMET_HAVE_LONG_LONG) -TVMET_PRECISION(std::complex<long long>, 1400) -TVMET_PRECISION(std::complex<unsigned long long>, 1500) -#endif // defined(TVMET_HAVE_LONG_LONG) - TVMET_PRECISION(std::complex<float>, 1600) TVMET_PRECISION(std::complex<double>, 1700) - -#if defined(TVMET_HAVE_LONG_DOUBLE) -TVMET_PRECISION(std::complex<long double>, 1800) -#endif // defined(TVMET_HAVE_LONG_DOUBLE) - #endif // defined(TVMET_HAVE_COMPLEX) @@ -133,33 +105,6 @@ struct AutopromoteTraits { typedef T value_type; }; - -/* - * Defines a macro for specializing/defining - * the promotion traits. bool, char, unsigned char, short int, etc. will - * be autopromote to int, as in C and C++. - */ -#define TVMET_AUTOPROMOTE(T1,T2) \ -template<> \ -struct AutopromoteTraits<T1> { \ - typedef T2 value_type; \ -}; - -TVMET_AUTOPROMOTE(bool, int) -TVMET_AUTOPROMOTE(char, int) -TVMET_AUTOPROMOTE(unsigned char, int) -TVMET_AUTOPROMOTE(short int, int) -TVMET_AUTOPROMOTE(short unsigned int, unsigned int) - -/** \class AutopromoteTraits<bool> TypePromotion.h "tvmet/TypePromotion.h" */ -/** \class AutopromoteTraits<char> TypePromotion.h "tvmet/TypePromotion.h" */ -/** \class AutopromoteTraits<unsigned char> TypePromotion.h "tvmet/TypePromotion.h" */ -/** \class AutopromoteTraits<short int> TypePromotion.h "tvmet/TypePromotion.h" */ -/** \class AutopromoteTraits<short unsigned int> TypePromotion.h "tvmet/TypePromotion.h" */ - -#undef TVMET_AUTOPROMOTE - - /** * \class promoteTo TypePromotion.h "tvmet/TypePromotion.h" * \brief Promote to T1. diff --git a/tvmet-1.7.1/include/tvmet/VectorBinaryFunctions.h b/tvmet-1.7.1/include/tvmet/VectorBinaryFunctions.h index d31b2b1d2..8423e6cd5 100644 --- a/tvmet-1.7.1/include/tvmet/VectorBinaryFunctions.h +++ b/tvmet-1.7.1/include/tvmet/VectorBinaryFunctions.h @@ -117,16 +117,6 @@ TVMET_DECLARE_MACRO(jn, int) TVMET_DECLARE_MACRO(yn, int) TVMET_DECLARE_MACRO(pow, int) -#if defined(TVMET_HAVE_LONG_LONG) -TVMET_DECLARE_MACRO(atan2, long long int) -TVMET_DECLARE_MACRO(drem, long long int) -TVMET_DECLARE_MACRO(fmod, long long int) -TVMET_DECLARE_MACRO(hypot, long long int) -TVMET_DECLARE_MACRO(jn, long long int) -TVMET_DECLARE_MACRO(yn, long long int) -TVMET_DECLARE_MACRO(pow, long long int) -#endif // defined(TVMET_HAVE_LONG_LONG) - TVMET_DECLARE_MACRO(atan2, float) TVMET_DECLARE_MACRO(drem, float) TVMET_DECLARE_MACRO(fmod, float) @@ -143,16 +133,6 @@ TVMET_DECLARE_MACRO(jn, double) TVMET_DECLARE_MACRO(yn, double) TVMET_DECLARE_MACRO(pow, double) -#if defined(TVMET_HAVE_LONG_DOUBLE) -TVMET_DECLARE_MACRO(atan2, long double) -TVMET_DECLARE_MACRO(drem, long double) -TVMET_DECLARE_MACRO(fmod, long double) -TVMET_DECLARE_MACRO(hypot, long double) -TVMET_DECLARE_MACRO(jn, long double) -TVMET_DECLARE_MACRO(yn, long double) -TVMET_DECLARE_MACRO(pow, long double) -#endif // defined(TVMET_HAVE_LONG_DOUBLE) - #undef TVMET_DECLARE_MACRO @@ -347,16 +327,6 @@ TVMET_IMPLEMENT_MACRO(jn, int) TVMET_IMPLEMENT_MACRO(yn, int) TVMET_IMPLEMENT_MACRO(pow, int) -#if defined(TVMET_HAVE_LONG_LONG) -TVMET_IMPLEMENT_MACRO(atan2, long long int) -TVMET_IMPLEMENT_MACRO(drem, long long int) -TVMET_IMPLEMENT_MACRO(fmod, long long int) -TVMET_IMPLEMENT_MACRO(hypot, long long int) -TVMET_IMPLEMENT_MACRO(jn, long long int) -TVMET_IMPLEMENT_MACRO(yn, long long int) -TVMET_IMPLEMENT_MACRO(pow, long long int) -#endif // defined(TVMET_HAVE_LONG_LONG) - TVMET_IMPLEMENT_MACRO(atan2, float) TVMET_IMPLEMENT_MACRO(drem, float) TVMET_IMPLEMENT_MACRO(fmod, float) @@ -373,16 +343,6 @@ TVMET_IMPLEMENT_MACRO(jn, double) TVMET_IMPLEMENT_MACRO(yn, double) TVMET_IMPLEMENT_MACRO(pow, double) -#if defined(TVMET_HAVE_LONG_DOUBLE) -TVMET_IMPLEMENT_MACRO(atan2, long double) -TVMET_IMPLEMENT_MACRO(drem, long double) -TVMET_IMPLEMENT_MACRO(fmod, long double) -TVMET_IMPLEMENT_MACRO(hypot, long double) -TVMET_IMPLEMENT_MACRO(jn, long double) -TVMET_IMPLEMENT_MACRO(yn, long double) -TVMET_IMPLEMENT_MACRO(pow, long double) -#endif // defined(TVMET_HAVE_LONG_DOUBLE) - #undef TVMET_IMPLEMENT_MACRO diff --git a/tvmet-1.7.1/include/tvmet/VectorEval.h b/tvmet-1.7.1/include/tvmet/VectorEval.h index 2e4430fc1..13b7d1a0c 100644 --- a/tvmet-1.7.1/include/tvmet/VectorEval.h +++ b/tvmet-1.7.1/include/tvmet/VectorEval.h @@ -265,17 +265,9 @@ eval(const XprVector<E1, Sz>& e1, const XprVector<E2, Sz>& e2, POD x3) { \ TVMET_IMPLEMENT_MACRO(int) -#if defined(TVMET_HAVE_LONG_LONG) -TVMET_IMPLEMENT_MACRO(long long int) -#endif // defined(TVMET_HAVE_LONG_LONG) - TVMET_IMPLEMENT_MACRO(float) TVMET_IMPLEMENT_MACRO(double) -#if defined(TVMET_HAVE_LONG_DOUBLE) -TVMET_IMPLEMENT_MACRO(long double) -#endif // defined(TVMET_HAVE_LONG_DOUBLE) - #undef TVMET_IMPLEMENT_MACRO diff --git a/tvmet-1.7.1/include/tvmet/VectorFunctions.h b/tvmet-1.7.1/include/tvmet/VectorFunctions.h index 247d4b990..c7ccd4da5 100644 --- a/tvmet-1.7.1/include/tvmet/VectorFunctions.h +++ b/tvmet-1.7.1/include/tvmet/VectorFunctions.h @@ -126,13 +126,6 @@ TVMET_DECLARE_MACRO(sub, int) TVMET_DECLARE_MACRO(mul, int) TVMET_DECLARE_MACRO(div, int) -#if defined(TVMET_HAVE_LONG_LONG) -TVMET_DECLARE_MACRO(add, long long int) -TVMET_DECLARE_MACRO(sub, long long int) -TVMET_DECLARE_MACRO(mul, long long int) -TVMET_DECLARE_MACRO(div, long long int) -#endif - TVMET_DECLARE_MACRO(add, float) TVMET_DECLARE_MACRO(sub, float) TVMET_DECLARE_MACRO(mul, float) @@ -143,13 +136,6 @@ TVMET_DECLARE_MACRO(sub, double) TVMET_DECLARE_MACRO(mul, double) TVMET_DECLARE_MACRO(div, double) -#if defined(TVMET_HAVE_LONG_DOUBLE) -TVMET_DECLARE_MACRO(add, long double) -TVMET_DECLARE_MACRO(sub, long double) -TVMET_DECLARE_MACRO(mul, long double) -TVMET_DECLARE_MACRO(div, long double) -#endif - #undef TVMET_DECLARE_MACRO @@ -431,13 +417,6 @@ TVMET_IMPLEMENT_MACRO(sub, int) TVMET_IMPLEMENT_MACRO(mul, int) TVMET_IMPLEMENT_MACRO(div, int) -#if defined(TVMET_HAVE_LONG_LONG) -TVMET_IMPLEMENT_MACRO(add, long long int) -TVMET_IMPLEMENT_MACRO(sub, long long int) -TVMET_IMPLEMENT_MACRO(mul, long long int) -TVMET_IMPLEMENT_MACRO(div, long long int) -#endif - TVMET_IMPLEMENT_MACRO(add, float) TVMET_IMPLEMENT_MACRO(sub, float) TVMET_IMPLEMENT_MACRO(mul, float) @@ -448,13 +427,6 @@ TVMET_IMPLEMENT_MACRO(sub, double) TVMET_IMPLEMENT_MACRO(mul, double) TVMET_IMPLEMENT_MACRO(div, double) -#if defined(TVMET_HAVE_LONG_DOUBLE) -TVMET_IMPLEMENT_MACRO(add, long double) -TVMET_IMPLEMENT_MACRO(sub, long double) -TVMET_IMPLEMENT_MACRO(mul, long double) -TVMET_IMPLEMENT_MACRO(div, long double) -#endif - #undef TVMET_IMPLEMENT_MACRO diff --git a/tvmet-1.7.1/include/tvmet/VectorOperators.h b/tvmet-1.7.1/include/tvmet/VectorOperators.h index 04f421399..68cb04a05 100644 --- a/tvmet-1.7.1/include/tvmet/VectorOperators.h +++ b/tvmet-1.7.1/include/tvmet/VectorOperators.h @@ -162,13 +162,6 @@ TVMET_DECLARE_MACRO(sub, -, int) TVMET_DECLARE_MACRO(mul, *, int) TVMET_DECLARE_MACRO(div, /, int) -#if defined(TVMET_HAVE_LONG_LONG) -TVMET_DECLARE_MACRO(add, +, long long int) -TVMET_DECLARE_MACRO(sub, -, long long int) -TVMET_DECLARE_MACRO(mul, *, long long int) -TVMET_DECLARE_MACRO(div, /, long long int) -#endif - TVMET_DECLARE_MACRO(add, +, float) TVMET_DECLARE_MACRO(sub, -, float) TVMET_DECLARE_MACRO(mul, *, float) @@ -179,13 +172,6 @@ TVMET_DECLARE_MACRO(sub, -, double) TVMET_DECLARE_MACRO(mul, *, double) TVMET_DECLARE_MACRO(div, /, double) -#if defined(TVMET_HAVE_LONG_DOUBLE) -TVMET_DECLARE_MACRO(add, +, long double) -TVMET_DECLARE_MACRO(sub, -, long double) -TVMET_DECLARE_MACRO(mul, *, long double) -TVMET_DECLARE_MACRO(div, /, long double) -#endif - #undef TVMET_DECLARE_MACRO @@ -408,13 +394,6 @@ TVMET_IMPLEMENT_MACRO(sub, -, int) TVMET_IMPLEMENT_MACRO(mul, *, int) TVMET_IMPLEMENT_MACRO(div, /, int) -#if defined(TVMET_HAVE_LONG_LONG) -TVMET_IMPLEMENT_MACRO(add, +, long long int) -TVMET_IMPLEMENT_MACRO(sub, -, long long int) -TVMET_IMPLEMENT_MACRO(mul, *, long long int) -TVMET_IMPLEMENT_MACRO(div, /, long long int) -#endif - TVMET_IMPLEMENT_MACRO(add, +, float) TVMET_IMPLEMENT_MACRO(sub, -, float) TVMET_IMPLEMENT_MACRO(mul, *, float) @@ -425,13 +404,6 @@ TVMET_IMPLEMENT_MACRO(sub, -, double) TVMET_IMPLEMENT_MACRO(mul, *, double) TVMET_IMPLEMENT_MACRO(div, /, double) -#if defined(TVMET_HAVE_LONG_DOUBLE) -TVMET_IMPLEMENT_MACRO(add, +, long double) -TVMET_IMPLEMENT_MACRO(sub, -, long double) -TVMET_IMPLEMENT_MACRO(mul, *, long double) -TVMET_IMPLEMENT_MACRO(div, /, long double) -#endif - #undef TVMET_IMPLEMENT_MACRO diff --git a/tvmet-1.7.1/include/tvmet/config.h.cmake b/tvmet-1.7.1/include/tvmet/config.h.cmake index 496082171..c378119db 100644 --- a/tvmet-1.7.1/include/tvmet/config.h.cmake +++ b/tvmet-1.7.1/include/tvmet/config.h.cmake @@ -13,14 +13,6 @@ /* Define if the compiler supports IEEE math library */ #cmakedefine TVMET_HAVE_IEEE_MATH -/* Define to 1 if the long double type is supported and the - * standard math library provides math functions for this type - */ -#cmakedefine TVMET_HAVE_LONG_DOUBLE 1 - -/* Define if the compiler supports the long_long type */ -#cmakedefine TVMET_HAVE_LONG_LONG - /* Define if the compiler supports SYSV math library */ #cmakedefine TVMET_HAVE_SYSV_MATH diff --git a/tvmet-1.7.1/include/tvmet/xpr/MatrixBinaryFunctions.h b/tvmet-1.7.1/include/tvmet/xpr/MatrixBinaryFunctions.h index 69d742fac..9dfca8e6d 100644 --- a/tvmet-1.7.1/include/tvmet/xpr/MatrixBinaryFunctions.h +++ b/tvmet-1.7.1/include/tvmet/xpr/MatrixBinaryFunctions.h @@ -85,16 +85,6 @@ TVMET_DECLARE_MACRO(jn, int) TVMET_DECLARE_MACRO(yn, int) TVMET_DECLARE_MACRO(pow, int) -#if defined(TVMET_HAVE_LONG_LONG) -TVMET_DECLARE_MACRO(atan2, long long int) -TVMET_DECLARE_MACRO(drem, long long int) -TVMET_DECLARE_MACRO(fmod, long long int) -TVMET_DECLARE_MACRO(hypot, long long int) -TVMET_DECLARE_MACRO(jn, long long int) -TVMET_DECLARE_MACRO(yn,long long int) -TVMET_DECLARE_MACRO(pow, long long int) -#endif // defined(TVMET_HAVE_LONG_LONG) - TVMET_DECLARE_MACRO(atan2, float) TVMET_DECLARE_MACRO(drem, float) TVMET_DECLARE_MACRO(fmod, float) @@ -111,16 +101,6 @@ TVMET_DECLARE_MACRO(jn, double) TVMET_DECLARE_MACRO(yn, double) TVMET_DECLARE_MACRO(pow, double) -#if defined(TVMET_HAVE_LONG_DOUBLE) -TVMET_DECLARE_MACRO(atan2, long double) -TVMET_DECLARE_MACRO(drem, long double) -TVMET_DECLARE_MACRO(fmod, long double) -TVMET_DECLARE_MACRO(hypot, long double) -TVMET_DECLARE_MACRO(jn, long double) -TVMET_DECLARE_MACRO(yn, long double) -TVMET_DECLARE_MACRO(pow, long double) -#endif // defined(TVMET_HAVE_LONG_DOUBLE) - #undef TVMET_DECLARE_MACRO @@ -230,16 +210,6 @@ TVMET_IMPLEMENT_MACRO(jn, int) TVMET_IMPLEMENT_MACRO(yn, int) TVMET_IMPLEMENT_MACRO(pow, int) -#if defined(TVMET_HAVE_LONG_LONG) -TVMET_IMPLEMENT_MACRO(atan2, long long int) -TVMET_IMPLEMENT_MACRO(drem, long long int) -TVMET_IMPLEMENT_MACRO(fmod, long long int) -TVMET_IMPLEMENT_MACRO(hypot, long long int) -TVMET_IMPLEMENT_MACRO(jn, long long int) -TVMET_IMPLEMENT_MACRO(yn,long long int) -TVMET_IMPLEMENT_MACRO(pow, long long int) -#endif // defined(TVMET_HAVE_LONG_LONG) - TVMET_IMPLEMENT_MACRO(atan2, float) TVMET_IMPLEMENT_MACRO(drem, float) TVMET_IMPLEMENT_MACRO(fmod, float) @@ -256,16 +226,6 @@ TVMET_IMPLEMENT_MACRO(jn, double) TVMET_IMPLEMENT_MACRO(yn, double) TVMET_IMPLEMENT_MACRO(pow, double) -#if defined(TVMET_HAVE_LONG_DOUBLE) -TVMET_IMPLEMENT_MACRO(atan2, long double) -TVMET_IMPLEMENT_MACRO(drem, long double) -TVMET_IMPLEMENT_MACRO(fmod, long double) -TVMET_IMPLEMENT_MACRO(hypot, long double) -TVMET_IMPLEMENT_MACRO(jn, long double) -TVMET_IMPLEMENT_MACRO(yn, long double) -TVMET_IMPLEMENT_MACRO(pow, long double) -#endif // defined(TVMET_HAVE_LONG_DOUBLE) - #undef TVMET_IMPLEMENT_MACRO diff --git a/tvmet-1.7.1/include/tvmet/xpr/MatrixFunctions.h b/tvmet-1.7.1/include/tvmet/xpr/MatrixFunctions.h index aae74512c..044622be3 100644 --- a/tvmet-1.7.1/include/tvmet/xpr/MatrixFunctions.h +++ b/tvmet-1.7.1/include/tvmet/xpr/MatrixFunctions.h @@ -108,13 +108,6 @@ TVMET_DECLARE_MACRO(sub, int) TVMET_DECLARE_MACRO(mul, int) TVMET_DECLARE_MACRO(div, int) -#if defined(TVMET_HAVE_LONG_LONG) -TVMET_DECLARE_MACRO(add, long long int) -TVMET_DECLARE_MACRO(sub, long long int) -TVMET_DECLARE_MACRO(mul, long long int) -TVMET_DECLARE_MACRO(div, long long int) -#endif - TVMET_DECLARE_MACRO(add, float) TVMET_DECLARE_MACRO(sub, float) TVMET_DECLARE_MACRO(mul, float) @@ -125,13 +118,6 @@ TVMET_DECLARE_MACRO(sub, double) TVMET_DECLARE_MACRO(mul, double) TVMET_DECLARE_MACRO(div, double) -#if defined(TVMET_HAVE_LONG_DOUBLE) -TVMET_DECLARE_MACRO(add, long double) -TVMET_DECLARE_MACRO(sub, long double) -TVMET_DECLARE_MACRO(mul, long double) -TVMET_DECLARE_MACRO(div, long double) -#endif - #undef TVMET_DECLARE_MACRO @@ -403,13 +389,6 @@ TVMET_IMPLEMENT_MACRO(sub, int) TVMET_IMPLEMENT_MACRO(mul, int) TVMET_IMPLEMENT_MACRO(div, int) -#if defined(TVMET_HAVE_LONG_LONG) -TVMET_IMPLEMENT_MACRO(add, long long int) -TVMET_IMPLEMENT_MACRO(sub, long long int) -TVMET_IMPLEMENT_MACRO(mul, long long int) -TVMET_IMPLEMENT_MACRO(div, long long int) -#endif - TVMET_IMPLEMENT_MACRO(add, float) TVMET_IMPLEMENT_MACRO(sub, float) TVMET_IMPLEMENT_MACRO(mul, float) @@ -420,13 +399,6 @@ TVMET_IMPLEMENT_MACRO(sub, double) TVMET_IMPLEMENT_MACRO(mul, double) TVMET_IMPLEMENT_MACRO(div, double) -#if defined(TVMET_HAVE_LONG_DOUBLE) -TVMET_IMPLEMENT_MACRO(add, long double) -TVMET_IMPLEMENT_MACRO(sub, long double) -TVMET_IMPLEMENT_MACRO(mul, long double) -TVMET_IMPLEMENT_MACRO(div, long double) -#endif - #undef TVMET_IMPLEMENT_MACRO diff --git a/tvmet-1.7.1/include/tvmet/xpr/MatrixOperators.h b/tvmet-1.7.1/include/tvmet/xpr/MatrixOperators.h index 8dbe2670d..b35256275 100644 --- a/tvmet-1.7.1/include/tvmet/xpr/MatrixOperators.h +++ b/tvmet-1.7.1/include/tvmet/xpr/MatrixOperators.h @@ -103,13 +103,6 @@ TVMET_DECLARE_MACRO(sub, -, int) TVMET_DECLARE_MACRO(mul, *, int) TVMET_DECLARE_MACRO(div, /, int) -#if defined(TVMET_HAVE_LONG_LONG) -TVMET_DECLARE_MACRO(add, +, long long int) -TVMET_DECLARE_MACRO(sub, -, long long int) -TVMET_DECLARE_MACRO(mul, *, long long int) -TVMET_DECLARE_MACRO(div, /, long long int) -#endif // defined(TVMET_HAVE_LONG_LONG) - TVMET_DECLARE_MACRO(add, +, float) TVMET_DECLARE_MACRO(sub, -, float) TVMET_DECLARE_MACRO(mul, *, float) @@ -120,13 +113,6 @@ TVMET_DECLARE_MACRO(sub, -, double) TVMET_DECLARE_MACRO(mul, *, double) TVMET_DECLARE_MACRO(div, /, double) -#if defined(TVMET_HAVE_LONG_DOUBLE) -TVMET_DECLARE_MACRO(add, +, long double) -TVMET_DECLARE_MACRO(sub, -, long double) -TVMET_DECLARE_MACRO(mul, *, long double) -TVMET_DECLARE_MACRO(div, /, long double) -#endif // defined(TVMET_HAVE_LONG_DOUBLE) - #undef TVMET_DECLARE_MACRO @@ -330,13 +316,6 @@ TVMET_IMPLEMENT_MACRO(sub, -, int) TVMET_IMPLEMENT_MACRO(mul, *, int) TVMET_IMPLEMENT_MACRO(div, /, int) -#if defined(TVMET_HAVE_LONG_LONG) -TVMET_IMPLEMENT_MACRO(add, +, long long int) -TVMET_IMPLEMENT_MACRO(sub, -, long long int) -TVMET_IMPLEMENT_MACRO(mul, *, long long int) -TVMET_IMPLEMENT_MACRO(div, /, long long int) -#endif // defined(TVMET_HAVE_LONG_LONG) - TVMET_IMPLEMENT_MACRO(add, +, float) TVMET_IMPLEMENT_MACRO(sub, -, float) TVMET_IMPLEMENT_MACRO(mul, *, float) @@ -347,13 +326,6 @@ TVMET_IMPLEMENT_MACRO(sub, -, double) TVMET_IMPLEMENT_MACRO(mul, *, double) TVMET_IMPLEMENT_MACRO(div, /, double) -#if defined(TVMET_HAVE_LONG_DOUBLE) -TVMET_IMPLEMENT_MACRO(add, +, long double) -TVMET_IMPLEMENT_MACRO(sub, -, long double) -TVMET_IMPLEMENT_MACRO(mul, *, long double) -TVMET_IMPLEMENT_MACRO(div, /, long double) -#endif // defined(TVMET_HAVE_LONG_DOUBLE) - #undef TVMET_IMPLEMENT_MACRO diff --git a/tvmet-1.7.1/include/tvmet/xpr/VectorBinaryFunctions.h b/tvmet-1.7.1/include/tvmet/xpr/VectorBinaryFunctions.h index 86419515f..ac59e9dc6 100644 --- a/tvmet-1.7.1/include/tvmet/xpr/VectorBinaryFunctions.h +++ b/tvmet-1.7.1/include/tvmet/xpr/VectorBinaryFunctions.h @@ -88,16 +88,6 @@ TVMET_DECLARE_MACRO(jn, int) TVMET_DECLARE_MACRO(yn, int) TVMET_DECLARE_MACRO(pow, int) -#if defined(TVMET_HAVE_LONG_LONG) -TVMET_DECLARE_MACRO(atan2, long long int) -TVMET_DECLARE_MACRO(drem, long long int) -TVMET_DECLARE_MACRO(fmod, long long int) -TVMET_DECLARE_MACRO(hypot, long long int) -TVMET_DECLARE_MACRO(jn, long long int) -TVMET_DECLARE_MACRO(yn, long long int) -TVMET_DECLARE_MACRO(pow, long long int) -#endif // defined(TVMET_HAVE_LONG_LONG) - TVMET_DECLARE_MACRO(atan2, float) TVMET_DECLARE_MACRO(drem, float) TVMET_DECLARE_MACRO(fmod, float) @@ -114,16 +104,6 @@ TVMET_DECLARE_MACRO(jn, double) TVMET_DECLARE_MACRO(yn, double) TVMET_DECLARE_MACRO(pow, double) -#if defined(TVMET_HAVE_LONG_DOUBLE) -TVMET_DECLARE_MACRO(atan2, long double) -TVMET_DECLARE_MACRO(drem, long double) -TVMET_DECLARE_MACRO(fmod, long double) -TVMET_DECLARE_MACRO(hypot, long double) -TVMET_DECLARE_MACRO(jn, long double) -TVMET_DECLARE_MACRO(yn, long double) -TVMET_DECLARE_MACRO(pow, long double) -#endif // defined(TVMET_HAVE_LONG_DOUBLE) - #undef TVMET_DECLARE_MACRO @@ -233,16 +213,6 @@ TVMET_IMPLEMENT_MACRO(jn, int) TVMET_IMPLEMENT_MACRO(yn, int) TVMET_IMPLEMENT_MACRO(pow, int) -#if defined(TVMET_HAVE_LONG_LONG) -TVMET_IMPLEMENT_MACRO(atan2, long long int) -TVMET_IMPLEMENT_MACRO(drem, long long int) -TVMET_IMPLEMENT_MACRO(fmod, long long int) -TVMET_IMPLEMENT_MACRO(hypot, long long int) -TVMET_IMPLEMENT_MACRO(jn, long long int) -TVMET_IMPLEMENT_MACRO(yn, long long int) -TVMET_IMPLEMENT_MACRO(pow, long long int) -#endif // defined(TVMET_HAVE_LONG_LONG) - TVMET_IMPLEMENT_MACRO(atan2, float) TVMET_IMPLEMENT_MACRO(drem, float) TVMET_IMPLEMENT_MACRO(fmod, float) @@ -259,16 +229,6 @@ TVMET_IMPLEMENT_MACRO(jn, double) TVMET_IMPLEMENT_MACRO(yn, double) TVMET_IMPLEMENT_MACRO(pow, double) -#if defined(TVMET_HAVE_LONG_DOUBLE) -TVMET_IMPLEMENT_MACRO(atan2, long double) -TVMET_IMPLEMENT_MACRO(drem, long double) -TVMET_IMPLEMENT_MACRO(fmod, long double) -TVMET_IMPLEMENT_MACRO(hypot, long double) -TVMET_IMPLEMENT_MACRO(jn, long double) -TVMET_IMPLEMENT_MACRO(yn, long double) -TVMET_IMPLEMENT_MACRO(pow, long double) -#endif // defined(TVMET_HAVE_LONG_DOUBLE) - #undef TVMET_IMPLEMENT_MACRO diff --git a/tvmet-1.7.1/include/tvmet/xpr/VectorFunctions.h b/tvmet-1.7.1/include/tvmet/xpr/VectorFunctions.h index e108d7af2..80ee484b3 100644 --- a/tvmet-1.7.1/include/tvmet/xpr/VectorFunctions.h +++ b/tvmet-1.7.1/include/tvmet/xpr/VectorFunctions.h @@ -102,13 +102,6 @@ TVMET_DECLARE_MACRO(sub, int) TVMET_DECLARE_MACRO(mul, int) TVMET_DECLARE_MACRO(div, int) -#if defined(TVMET_HAVE_LONG_LONG) -TVMET_DECLARE_MACRO(add, long long int) -TVMET_DECLARE_MACRO(sub, long long int) -TVMET_DECLARE_MACRO(mul, long long int) -TVMET_DECLARE_MACRO(div, long long int) -#endif - TVMET_DECLARE_MACRO(add, float) TVMET_DECLARE_MACRO(sub, float) TVMET_DECLARE_MACRO(mul, float) @@ -119,13 +112,6 @@ TVMET_DECLARE_MACRO(sub, double) TVMET_DECLARE_MACRO(mul, double) TVMET_DECLARE_MACRO(div, double) -#if defined(TVMET_HAVE_LONG_DOUBLE) -TVMET_DECLARE_MACRO(add, long double) -TVMET_DECLARE_MACRO(sub, long double) -TVMET_DECLARE_MACRO(mul, long double) -TVMET_DECLARE_MACRO(div, long double) -#endif - #undef TVMET_DECLARE_MACRO @@ -344,13 +330,6 @@ TVMET_IMPLEMENT_MACRO(sub, int) TVMET_IMPLEMENT_MACRO(mul, int) TVMET_IMPLEMENT_MACRO(div, int) -#if defined(TVMET_HAVE_LONG_LONG) -TVMET_IMPLEMENT_MACRO(add, long long int) -TVMET_IMPLEMENT_MACRO(sub, long long int) -TVMET_IMPLEMENT_MACRO(mul, long long int) -TVMET_IMPLEMENT_MACRO(div, long long int) -#endif - TVMET_IMPLEMENT_MACRO(add, float) TVMET_IMPLEMENT_MACRO(sub, float) TVMET_IMPLEMENT_MACRO(mul, float) @@ -361,13 +340,6 @@ TVMET_IMPLEMENT_MACRO(sub, double) TVMET_IMPLEMENT_MACRO(mul, double) TVMET_IMPLEMENT_MACRO(div, double) -#if defined(TVMET_HAVE_LONG_DOUBLE) -TVMET_IMPLEMENT_MACRO(add, long double) -TVMET_IMPLEMENT_MACRO(sub, long double) -TVMET_IMPLEMENT_MACRO(mul, long double) -TVMET_IMPLEMENT_MACRO(div, long double) -#endif - #undef TVMET_IMPLEMENT_MACRO diff --git a/tvmet-1.7.1/include/tvmet/xpr/VectorOperators.h b/tvmet-1.7.1/include/tvmet/xpr/VectorOperators.h index ec4d2d89b..947d38666 100644 --- a/tvmet-1.7.1/include/tvmet/xpr/VectorOperators.h +++ b/tvmet-1.7.1/include/tvmet/xpr/VectorOperators.h @@ -102,13 +102,6 @@ TVMET_DECLARE_MACRO(sub, -, int) TVMET_DECLARE_MACRO(mul, *, int) TVMET_DECLARE_MACRO(div, /, int) -#if defined(TVMET_HAVE_LONG_LONG) -TVMET_DECLARE_MACRO(add, +, long long int) -TVMET_DECLARE_MACRO(sub, -, long long int) -TVMET_DECLARE_MACRO(mul, *, long long int) -TVMET_DECLARE_MACRO(div, /, long long int) -#endif - TVMET_DECLARE_MACRO(add, +, float) TVMET_DECLARE_MACRO(sub, -, float) TVMET_DECLARE_MACRO(mul, *, float) @@ -119,13 +112,6 @@ TVMET_DECLARE_MACRO(sub, -, double) TVMET_DECLARE_MACRO(mul, *, double) TVMET_DECLARE_MACRO(div, /, double) -#if defined(TVMET_HAVE_LONG_DOUBLE) -TVMET_DECLARE_MACRO(add, +, long double) -TVMET_DECLARE_MACRO(sub, -, long double) -TVMET_DECLARE_MACRO(mul, *, long double) -TVMET_DECLARE_MACRO(div, /, long double) -#endif - #undef TVMET_DECLARE_MACRO @@ -276,13 +262,6 @@ TVMET_IMPLEMENT_MACRO(sub, -, int) TVMET_IMPLEMENT_MACRO(mul, *, int) TVMET_IMPLEMENT_MACRO(div, /, int) -#if defined(TVMET_HAVE_LONG_LONG) -TVMET_IMPLEMENT_MACRO(add, +, long long int) -TVMET_IMPLEMENT_MACRO(sub, -, long long int) -TVMET_IMPLEMENT_MACRO(mul, *, long long int) -TVMET_IMPLEMENT_MACRO(div, /, long long int) -#endif - TVMET_IMPLEMENT_MACRO(add, +, float) TVMET_IMPLEMENT_MACRO(sub, -, float) TVMET_IMPLEMENT_MACRO(mul, *, float) @@ -293,13 +272,6 @@ TVMET_IMPLEMENT_MACRO(sub, -, double) TVMET_IMPLEMENT_MACRO(mul, *, double) TVMET_IMPLEMENT_MACRO(div, /, double) -#if defined(TVMET_HAVE_LONG_DOUBLE) -TVMET_IMPLEMENT_MACRO(add, +, long double) -TVMET_IMPLEMENT_MACRO(sub, -, long double) -TVMET_IMPLEMENT_MACRO(mul, *, long double) -TVMET_IMPLEMENT_MACRO(div, /, long double) -#endif - #undef TVMET_IMPLEMENT_MACRO diff --git a/tvmet-1.7.1/testsuite/selftest.cpp b/tvmet-1.7.1/testsuite/selftest.cpp index 753d7360d..e23399b10 100644 --- a/tvmet-1.7.1/testsuite/selftest.cpp +++ b/tvmet-1.7.1/testsuite/selftest.cpp @@ -53,10 +53,8 @@ template<typename T> static void basics2() 2,5,8, 3,6,9; - // all elements of v1 should increase assert(v1(0) == T(1) && v1(1) == T(2) && v1(2) == T(3)); - // all elements of m1 should increase column-wise assert(m1(0,0) == T(1) && m1(0,1) == T(4) && m1(0,2) == T(7) && m1(1,0) == T(2) && m1(1,1) == T(5) && m1(1,2) == T(8) && m1(2,0) == T(3) && m1(2,1) == T(6) && m1(2,2) == T(9)); |