00001 /**************************************************************************** 00002 * Copyright 2005 Evan Drumwright 00003 * This library is distributed under the terms of the GNU General Public 00004 * License (found in COPYING). 00005 ****************************************************************************/ 00006 00007 #ifndef _SMATRIXN_H 00008 #define _SMATRIXN_H 00009 00010 #include <Physsim/MatrixN.h> 00011 00012 namespace Physsim { 00013 00015 00018 class SMatrixN : public MatrixN 00019 { 00020 public: 00021 SMatrixN(); 00022 SMatrixN(unsigned rows, unsigned columns); 00023 SMatrixN(const MatrixN& source); 00024 SMatrixN(const SMatrixN& source); 00025 SMatrixN(unsigned rows, unsigned columns, const boost::shared_array<Real> array); 00026 virtual void transpose(); 00027 static SMatrixN transpose(const SMatrixN& m); 00028 void operator=(const SMatrixN& source) { MatrixN::operator=(source); } 00029 SMatrixN operator*(const SMatrixN& m) const { return SMatrixN(MatrixN::operator*(m)); } 00030 }; // end class 00031 00032 } // end namespace 00033 00034 #endif 00035
1.5.1