00001
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