|
|
@ -69,27 +69,34 @@ public: |
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* trivial ctor |
|
|
|
* trivial ctor |
|
|
|
* note that this ctor will not initialize elements |
|
|
|
* Initializes the elements to zero. |
|
|
|
*/ |
|
|
|
*/ |
|
|
|
MatrixBase() { |
|
|
|
MatrixBase() :
|
|
|
|
arm_mat = {M, N, &data[0][0]}; |
|
|
|
data{}, |
|
|
|
|
|
|
|
arm_mat{M, N, &data[0][0]} |
|
|
|
|
|
|
|
{ |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
virtual ~MatrixBase() {}; |
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* copyt ctor |
|
|
|
* copyt ctor |
|
|
|
*/ |
|
|
|
*/ |
|
|
|
MatrixBase(const MatrixBase<M, N> &m) { |
|
|
|
MatrixBase(const MatrixBase<M, N> &m) : |
|
|
|
arm_mat = {M, N, &data[0][0]}; |
|
|
|
arm_mat{M, N, &data[0][0]} |
|
|
|
|
|
|
|
{ |
|
|
|
memcpy(data, m.data, sizeof(data)); |
|
|
|
memcpy(data, m.data, sizeof(data)); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
MatrixBase(const float *d) { |
|
|
|
MatrixBase(const float *d) : |
|
|
|
arm_mat = {M, N, &data[0][0]}; |
|
|
|
arm_mat{M, N, &data[0][0]} |
|
|
|
|
|
|
|
{ |
|
|
|
memcpy(data, d, sizeof(data)); |
|
|
|
memcpy(data, d, sizeof(data)); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
MatrixBase(const float d[M][N]) { |
|
|
|
MatrixBase(const float d[M][N]) :
|
|
|
|
arm_mat = {M, N, &data[0][0]}; |
|
|
|
arm_mat{M, N, &data[0][0]} |
|
|
|
|
|
|
|
{ |
|
|
|
memcpy(data, d, sizeof(data)); |
|
|
|
memcpy(data, d, sizeof(data)); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|