CPPLapack
 All Classes Files Functions Variables Friends
Functions
zgbmatrix-misc.hpp File Reference

Go to the source code of this file.

Functions

void swap (zgbmatrix &A, zgbmatrix &B)
_zgbmatrix _ (zgbmatrix &mat)

Function Documentation

void swap ( zgbmatrix A,
zgbmatrix B 
) [inline]

swap two matrices

Definition at line 157 of file zgbmatrix-misc.hpp.

References zgbmatrix::array, zgbmatrix::darray, zgbmatrix::kl, zgbmatrix::ku, zgbmatrix::m, and zgbmatrix::n.

{VERBOSE_REPORT;
  long A_m(A.m), A_n(A.n), A_kl(A.kl), A_ku(A.ku);
  comple* A_array(A.array);
  //comple** A_darray(A.darray);
  comple** A_darray=A.darray; //corruption to support VC++

  A.m=B.m; A.n=B.n; A.kl=B.kl; A.ku=B.ku; A.array=B.array; A.darray=B.darray;
  B.m=A_m; B.n=A_n; B.kl=A_kl; B.ku=A_ku; B.array=A_array; B.darray=A_darray;
}
_zgbmatrix _ ( zgbmatrix mat) [inline]

convert user object to smart-temporary object

Definition at line 170 of file zgbmatrix-misc.hpp.

References _zgbmatrix::array, zgbmatrix::array, _zgbmatrix::darray, zgbmatrix::darray, _zgbmatrix::kl, zgbmatrix::kl, zgbmatrix::ku, _zgbmatrix::ku, zgbmatrix::m, _zgbmatrix::m, _zgbmatrix::n, and zgbmatrix::n.

{VERBOSE_REPORT;
  _zgbmatrix newmat;
  
  //////// shallow copy ////////
  newmat.m =mat.m;
  newmat.n =mat.n;
  newmat.kl =mat.kl;
  newmat.ku =mat.ku;
  newmat.array =mat.array;
  newmat.darray =mat.darray;
  
  //////// nullify ////////
  mat.m =0;
  mat.n =0;
  mat.kl =0;
  mat.ku =0;
  mat.array =NULL;
  mat.darray =NULL;
  
  return newmat;
}
 All Classes Files Functions Variables Friends