15 #ifndef ECL_LINEAR_ALGEBRA_EIGEN_PLUGIN_HPP_
16 #define ECL_LINEAR_ALGEBRA_EIGEN_PLUGIN_HPP_
32 PlainObject tmp(rows, cols);
33 const int common_rows = std::min(rows, this->rows());
34 const int common_cols = std::min(cols, this->cols());
35 tmp.block(0,0,common_rows,common_cols) = this->block(0,0,common_rows,common_cols);
36 this->derived().swap(tmp);
41 EIGEN_STATIC_ASSERT_VECTOR_ONLY(Derived)
43 if (RowsAtCompileTime == 1)
45 PlainObject tmp(1,size);
46 const int common_size = std::min(cols(),size);
47 tmp.block(0,0,1,common_size) = this->block(0,0,1,common_size);
48 this->derived().swap(tmp);
52 PlainObject tmp(size,1);
53 const int common_size = std::min(rows(),size);
54 tmp.block(0,0,common_size,1) = this->block(0,0,common_size,1);
55 this->derived().swap(tmp);