#ifndef __BASE_MATRIX__ #define __BASE_MATRIX__ #include #include #include //! \file base_matrix.h namespace rpl { using namespace boost::numeric::ublas; //! base class for matrix /*! * this class is just an alias on matrix from ublas, with a static allocator */ template struct base_matrix : matrix > { // we need only of order 8 matrices -> 64 elements typedef bounded_array storage_type; typedef row_major layout; typedef matrix type; base_matrix() : type() {} base_matrix(size_t m, size_t n) : type(m,n) {} base_matrix(const base_matrix & a) : type(a) {} template base_matrix(const matrix_expression &ae) : type(ae) {} base_matrix & operator= (const base_matrix& a) { if (this != &a) // Beware of self-assignment type::operator=(a); return *this;} ~base_matrix() {} }; // end class }; // end namespace #endif