WvStreams
|
00001 /* -*- Mode: C++ -*- */ 00002 #ifndef __WVMATRIX_H 00003 #define __WVMATRIX_H 00004 00005 #include "wvstring.h" 00006 00007 class WvMatrix 00008 { 00009 public: 00010 int *data; 00011 00012 int m; 00013 int n; 00014 00015 WvMatrix(const int _m, const int _n, const int *_data = 0); 00016 ~WvMatrix(); 00017 00018 WvMatrix(const WvMatrix& mx); 00019 WvMatrix& operator= (const WvMatrix& mx); 00020 00021 int& operator() (const int row, const int col) 00022 { return data[n*row + col]; } 00023 int operator() (const int row, const int col) const 00024 { return data[n*row + col]; } 00025 00026 WvMatrix operator+ (const WvMatrix &rhs) const; 00027 WvMatrix operator* (const WvMatrix &rhs) const; 00028 00029 WvString printable(); 00030 }; 00031 00032 #endif // __WVMATRIX_H