Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 #include "main.h"
00026
00027 template<typename MatrixType> void zeroSizedMatrix()
00028 {
00029 MatrixType t1;
00030
00031 if (MatrixType::SizeAtCompileTime == Dynamic)
00032 {
00033 if (MatrixType::RowsAtCompileTime == Dynamic)
00034 VERIFY(t1.rows() == 0);
00035 if (MatrixType::ColsAtCompileTime == Dynamic)
00036 VERIFY(t1.cols() == 0);
00037
00038 if (MatrixType::RowsAtCompileTime == Dynamic && MatrixType::ColsAtCompileTime == Dynamic)
00039 {
00040 MatrixType t2(0, 0);
00041 VERIFY(t2.rows() == 0);
00042 VERIFY(t2.cols() == 0);
00043 }
00044 }
00045 }
00046
00047 template<typename VectorType> void zeroSizedVector()
00048 {
00049 VectorType t1;
00050
00051 if (VectorType::SizeAtCompileTime == Dynamic)
00052 {
00053 VERIFY(t1.size() == 0);
00054 VectorType t2(DenseIndex(0));
00055 VERIFY(t2.size() == 0);
00056 }
00057 }
00058
00059 void test_zerosized()
00060 {
00061 zeroSizedMatrix<Matrix2d>();
00062 zeroSizedMatrix<Matrix3i>();
00063 zeroSizedMatrix<Matrix<float, 2, Dynamic> >();
00064 zeroSizedMatrix<MatrixXf>();
00065
00066 zeroSizedVector<Vector2d>();
00067 zeroSizedVector<Vector3i>();
00068 zeroSizedVector<VectorXf>();
00069 }