diff options
author | 2010-07-10 22:58:51 +0200 | |
---|---|---|
committer | 2010-07-10 22:58:51 +0200 | |
commit | 4161b8be6772f2b7338458c9932d7417797966bb (patch) | |
tree | fc17317e18dbb39bd27cfcf1837152d9947a1163 /Eigen/src/Core/util | |
parent | b1a17dbfe4b1e88ab01083e7573028be5fa2210c (diff) | |
parent | e5bc9526f16590288edbc3e5fd8837ea81654942 (diff) |
sync
Diffstat (limited to 'Eigen/src/Core/util')
-rw-r--r-- | Eigen/src/Core/util/BlasUtil.h | 16 | ||||
-rw-r--r-- | Eigen/src/Core/util/Meta.h | 12 |
2 files changed, 14 insertions, 14 deletions
diff --git a/Eigen/src/Core/util/BlasUtil.h b/Eigen/src/Core/util/BlasUtil.h index 1b7d03722..62a6207c6 100644 --- a/Eigen/src/Core/util/BlasUtil.h +++ b/Eigen/src/Core/util/BlasUtil.h @@ -49,9 +49,10 @@ template<bool ConjugateLhs, bool ConjugateRhs, typename Scalar, typename Index, static void ei_cache_friendly_product_colmajor_times_vector( Index size, const Scalar* lhs, Index lhsStride, const RhsType& rhs, Scalar* res, Scalar alpha); -template<bool ConjugateLhs, bool ConjugateRhs, typename Scalar, typename Index, typename ResType> +template<bool ConjugateLhs, bool ConjugateRhs, typename Scalar, typename Index> static void ei_cache_friendly_product_rowmajor_times_vector( - const Scalar* lhs, Index lhsStride, const Scalar* rhs, Index rhsSize, ResType& res, Scalar alpha); + Index rows, Index Cols, const Scalar* lhs, Index lhsStride, const Scalar* rhs, Index rhsIncr, + Scalar* res, Index resIncr, Scalar alpha); template<typename Scalar> struct ei_conj_helper<Scalar,Scalar,false,false> { @@ -107,6 +108,17 @@ template<typename RealScalar> struct ei_conj_helper<RealScalar, std::complex<Rea { return x * y; } }; +template<bool Conjugate> struct ei_conj_if; + +template<> struct ei_conj_if<true> { + template<typename T> + inline T operator()(const T& x) { return ei_conj(x); } +}; + +template<> struct ei_conj_if<false> { + template<typename T> + inline const T& operator()(const T& x) { return x; } +}; // Lightweight helper class to access matrix coefficients. // Yes, this is somehow redundant with Map<>, but this version is much much lighter, diff --git a/Eigen/src/Core/util/Meta.h b/Eigen/src/Core/util/Meta.h index 9d73ef51c..b01ceafb2 100644 --- a/Eigen/src/Core/util/Meta.h +++ b/Eigen/src/Core/util/Meta.h @@ -222,16 +222,4 @@ template<typename T> struct ei_is_diagonal<DiagonalWrapper<T> > template<typename T, int S> struct ei_is_diagonal<DiagonalMatrix<T,S> > { enum { ret = true }; }; -template<bool Conjugate> struct ei_conj_if; - -template<> struct ei_conj_if<true> { - template<typename T> - inline T operator()(const T& x) { return ei_conj(x); } -}; - -template<> struct ei_conj_if<false> { - template<typename T> - inline const T& operator()(const T& x) { return x; } -}; - #endif // EIGEN_META_H |