1 // marMatrix.h: interface for the marMatrix class.
3 //////////////////////////////////////////////////////////////////////
12 /*==Constructeurs========================================*/
13 marMatrix(const marMatrix &m);
14 marMatrix(double * data,size_t size1=3,size_t size2=3);
15 marMatrix(size_t size1,size_t size2);
16 /*==Constructeurs========================================*/
19 /*==opérateurss========================================*/
20 friend std::ostream& operator<<(std::ostream& os, const marMatrix& m);
22 marMatrix& operator=( const marMatrix& o );
23 marMatrix& operator=( double o );
24 marMatrix& operator=( double* o );
26 operator double*( ) const;
28 double& operator()( size_t i, size_t j );
29 const double& operator()( size_t i, size_t j ) const;
31 marMatrix operator+( const marMatrix& o );
32 marMatrix operator+( double o );
33 marMatrix operator+( double* o );
35 marMatrix operator-( const marMatrix& o );
36 marMatrix operator-( double o );
37 marMatrix operator-( double* o );
39 marMatrix operator*( const marMatrix& o );
40 marVector operator*( const marVector& o );
41 marMatrix operator*( double o );
43 bool operator==( const marMatrix& o ) const;
44 bool operator!=( const marMatrix& o ) const;
46 /*==MĂ©thodes========================================*/
47 size_t columns() const;
50 /*==Attributs========================================*/
52 bool shallowCopy; // true if _data is a shallow copy of original data (pointer copy)