Mentions légales du service

Skip to content
Snippets Groups Projects
Commit 310da14c authored by hhakim's avatar hhakim
Browse files

Add MatButterfly::multiply definitions (by a MatDense/MatSparse).

parent ce9b80ec
No related branches found
No related tags found
No related merge requests found
...@@ -117,19 +117,24 @@ namespace Faust ...@@ -117,19 +117,24 @@ namespace Faust
template<typename FPP> template<typename FPP>
void MatButterfly<FPP, Cpu>::multiply(MatDense<FPP,Cpu> & M, char opThis) const void MatButterfly<FPP, Cpu>::multiply(MatDense<FPP,Cpu> & M, char opThis) const
{ {
//TODO
MatDense<FPP, Cpu> Y(this->getNbRow(), M.getNbCol());
const_cast<MatButterfly<FPP, Cpu>*>(this)->multiply(M.getData(), M.getNbCol(), Y.getData(), Y.getNbRow(), 'T' == opThis);
M = Y;
} }
template<typename FPP> template<typename FPP>
void MatButterfly<FPP, Cpu>::multiply(MatSparse<FPP, Cpu>& M, char opThis) const void MatButterfly<FPP, Cpu>::multiply(MatSparse<FPP, Cpu>& M, char opThis) const
{ {
//TODO MatDense<FPP, Cpu> Y(M);
this->multiply(Y, opThis);
M = Y;
} }
template<typename FPP> template<typename FPP>
void MatButterfly<FPP, Cpu>::multiplyRight(MatSparse<FPP, Cpu> const& M) void MatButterfly<FPP, Cpu>::multiplyRight(MatSparse<FPP, Cpu> const& M)
{ {
//TODO throw std::runtime_error("multiplyRight is not supported on a MatButterfly because the matrix must stay a butterfly matrix.");
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment