Deep refactoring.

1) Kill MatrixXpr class, instead let all class inherit a common EigenBase class
2) Kill MatrixBase/Matrix/Vector classes, instead introduce a single Matrix class,
a MatrixStorage class, and typedefs to emulate vectors
3) Huge code cleanup, remove large preprocessor macros, sloccount drop to ~750
down from 1100.
4) Introduce compile-time-known sizes
This commit is contained in:
Benoit Jacob
2007-09-26 14:06:14 +00:00
parent 1af61c6ff0
commit 55227b1f63
18 changed files with 612 additions and 1048 deletions

View File

@@ -47,7 +47,7 @@ template<typename MatrixType1,
a.alias() = a + b;
a += b;
a.alias().xpr() += b;
a.alias() += b;
a -= b + b;
MatrixType1 d(rows1, cols1);
@@ -61,10 +61,10 @@ void EigenTest::testMatrixOps()
matrixOps(Matrix<int, 2, 3>(), Matrix<int, 3, 1>());
matrixOps(Matrix<double, 3, 3>(), Matrix<double, 3, 3>());
matrixOps(Matrix<complex<float>, 4,3>(), Matrix<complex<float>, 3,4>());
matrixOps(MatrixX<float>(1, 1), MatrixX<float>(1, 3));
matrixOps(MatrixX<int>(2, 2), MatrixX<int>(2, 2));
matrixOps(MatrixX<double>(3, 5), MatrixX<double>(5, 1));
matrixOps(MatrixX<complex<float> >(4, 4), MatrixX<complex<float> >(4, 4));
matrixOps(MatrixX<double>(3, 5), Matrix<double, 5, 1>());
matrixOps(Matrix<complex<float>, 4, 4>(), MatrixX<complex<float> >(4, 4));
/*matrixOps(MatrixXf(1, 1), MatrixXf(1, 3));
matrixOps(MatrixXi(2, 2), MatrixXi(2, 2));
matrixOps(MatrixXd(3, 5), MatrixXd(5, 1));
matrixOps(MatrixXcf(4, 4), MatrixXcf(4, 4));
matrixOps(MatrixXd(3, 5), Matrix<double, 5, 1>());
matrixOps(Matrix4cf(), MatrixXcf(4, 4));*/
}