Mercurial > hg > octave-lyh
diff liboctave/fCmplxQRP.h @ 7792:39c1026191e9
add missing files from single-precision merge
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Wed, 21 May 2008 09:36:46 -0400 |
parents | |
children | 445d27d79f4e |
line wrap: on
line diff
new file mode 100644 --- /dev/null +++ b/liboctave/fCmplxQRP.h @@ -0,0 +1,73 @@ +/* + +Copyright (C) 1994, 1995, 1996, 1997, 2000, 2002, 2004, 2005, 2006, + 2007 John W. Eaton + +This file is part of Octave. + +Octave is free software; you can redistribute it and/or modify it +under the terms of the GNU General Public License as published by the +Free Software Foundation; either version 3 of the License, or (at your +option) any later version. + +Octave is distributed in the hope that it will be useful, but WITHOUT +ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +for more details. + +You should have received a copy of the GNU General Public License +along with Octave; see the file COPYING. If not, see +<http://www.gnu.org/licenses/>. + +*/ + +#if !defined (octave_FloatComplexQRP_h) +#define octave_FloatComplexQRP_h 1 + +#include <iostream> + +#include "fCmplxQR.h" +#include "fMatrix.h" + +class +OCTAVE_API +FloatComplexQRP : public FloatComplexQR +{ +public: + + FloatComplexQRP (void) : FloatComplexQR (), p () { } + + FloatComplexQRP (const FloatComplexMatrix&, QR::type = QR::std); + + FloatComplexQRP (const FloatComplexQRP& a) : FloatComplexQR (a), p (a.p) { } + + FloatComplexQRP& operator = (const FloatComplexQRP& a) + { + if (this != &a) + { + FloatComplexQR::operator = (a); + p = a.p; + } + return *this; + } + + ~FloatComplexQRP (void) { } + + void init (const FloatComplexMatrix&, QR::type = QR::std); + + FloatMatrix P (void) const { return p; } + + friend std::ostream& operator << (std::ostream&, const FloatComplexQRP&); + +private: + + FloatMatrix p; +}; + +#endif + +/* +;;; Local Variables: *** +;;; mode: C++ *** +;;; End: *** +*/