aboutsummaryrefslogtreecommitdiffhomepage
path: root/unsupported/Eigen/FFT
diff options
context:
space:
mode:
authorGravatar Benoit Jacob <jacob.benoit.1@gmail.com>2010-04-16 10:13:32 -0400
committerGravatar Benoit Jacob <jacob.benoit.1@gmail.com>2010-04-16 10:13:32 -0400
commitff6a46105d86e92753858c1b2aea8bcaf4575819 (patch)
treedb7644512aa5adaaba50dc3c7f420508951116e5 /unsupported/Eigen/FFT
parent1803db6e8409dae534cca51433a6a0fd6e7c7665 (diff)
* Refactoring of the class hierarchy: introduction of DenseDirectAccessBase, removal of extra _Base/_Options template parameters.
* Introduction of strides-at-compile-time so for example the optimized code really knows when it needs to evaluate to a temporary * StorageKind / XprKind * Quaternion::setFromTwoVectors: use JacobiSVD instead of SVD * ComplexSchur: support the 1x1 case
Diffstat (limited to 'unsupported/Eigen/FFT')
-rw-r--r--unsupported/Eigen/FFT20
1 files changed, 10 insertions, 10 deletions
diff --git a/unsupported/Eigen/FFT b/unsupported/Eigen/FFT
index 83f761028..045c44611 100644
--- a/unsupported/Eigen/FFT
+++ b/unsupported/Eigen/FFT
@@ -222,7 +222,7 @@ class FFT
template<typename InputDerived, typename ComplexDerived>
inline
- void fwd( MatrixBase<ComplexDerived> & dst, const MatrixBase<InputDerived> & src,int nfft=-1)
+ void fwd( DenseDirectAccessBase<ComplexDerived> & dst, const DenseDirectAccessBase<InputDerived> & src,int nfft=-1)
{
typedef typename ComplexDerived::Scalar dst_type;
typedef typename InputDerived::Scalar src_type;
@@ -242,7 +242,7 @@ class FFT
else
dst.derived().resize(nfft);
- if ( src.stride() != 1 || src.size() < nfft ) {
+ if ( src.innerStride() != 1 || src.size() < nfft ) {
Matrix<src_type,1,Dynamic> tmp;
if (src.size()<nfft) {
tmp.setZero(nfft);
@@ -258,18 +258,18 @@ class FFT
template<typename InputDerived>
inline
- fft_fwd_proxy< MatrixBase<InputDerived>, FFT<T_Scalar,T_Impl> >
- fwd( const MatrixBase<InputDerived> & src,int nfft=-1)
+ fft_fwd_proxy< DenseDirectAccessBase<InputDerived>, FFT<T_Scalar,T_Impl> >
+ fwd( const DenseDirectAccessBase<InputDerived> & src,int nfft=-1)
{
- return fft_fwd_proxy< MatrixBase<InputDerived> ,FFT<T_Scalar,T_Impl> >( src, *this,nfft );
+ return fft_fwd_proxy< DenseDirectAccessBase<InputDerived> ,FFT<T_Scalar,T_Impl> >( src, *this,nfft );
}
template<typename InputDerived>
inline
- fft_inv_proxy< MatrixBase<InputDerived>, FFT<T_Scalar,T_Impl> >
- inv( const MatrixBase<InputDerived> & src,int nfft=-1)
+ fft_inv_proxy< DenseDirectAccessBase<InputDerived>, FFT<T_Scalar,T_Impl> >
+ inv( const DenseDirectAccessBase<InputDerived> & src,int nfft=-1)
{
- return fft_inv_proxy< MatrixBase<InputDerived> ,FFT<T_Scalar,T_Impl> >( src, *this,nfft );
+ return fft_inv_proxy< DenseDirectAccessBase<InputDerived> ,FFT<T_Scalar,T_Impl> >( src, *this,nfft );
}
inline
@@ -290,7 +290,7 @@ class FFT
template<typename OutputDerived, typename ComplexDerived>
inline
- void inv( MatrixBase<OutputDerived> & dst, const MatrixBase<ComplexDerived> & src, int nfft=-1)
+ void inv( DenseDirectAccessBase<OutputDerived> & dst, const DenseDirectAccessBase<ComplexDerived> & src, int nfft=-1)
{
typedef typename ComplexDerived::Scalar src_type;
typedef typename OutputDerived::Scalar dst_type;
@@ -316,7 +316,7 @@ class FFT
? ( (nfft/2+1) - src.size() )
: ( nfft - src.size() );
- if ( src.stride() != 1 || resize_input ) {
+ if ( src.innerStride() != 1 || resize_input ) {
// if the vector is strided, then we need to copy it to a packed temporary
Matrix<src_type,1,Dynamic> tmp;
if ( resize_input ) {