00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #if !defined (octave_boolMatrix_int_h)
00024 #define octave_boolMatrix_int_h 1
00025
00026 #if defined (__GNUG__) && defined (USE_PRAGMA_INTERFACE_IMPLEMENTATION)
00027 #pragma interface
00028 #endif
00029
00030 #include "Array2.h"
00031
00032 #include "mx-defs.h"
00033 #include "mx-op-defs.h"
00034
00035 class
00036 boolMatrix : public Array2<bool>
00037 {
00038 public:
00039
00040 boolMatrix (void) : Array2<bool> () { }
00041 boolMatrix (int r, int c) : Array2<bool> (r, c) { }
00042 boolMatrix (int r, int c, bool val) : Array2<bool> (r, c, val) { }
00043 boolMatrix (const Array2<bool>& a) : Array2<bool> (a) { }
00044 boolMatrix (const boolMatrix& a) : Array2<bool> (a) { }
00045
00046 boolMatrix& operator = (const boolMatrix& a)
00047 {
00048 Array2<bool>::operator = (a);
00049 return *this;
00050 }
00051
00052 bool operator == (const boolMatrix& a) const;
00053 bool operator != (const boolMatrix& a) const;
00054
00055 boolMatrix transpose (void) const { return Array2<bool>::transpose (); }
00056
00057
00058
00059 boolMatrix& insert (const boolMatrix& a, int r, int c);
00060
00061
00062
00063 boolMatrix operator ! (void) const;
00064
00065
00066
00067 boolMatrix all (int dim = -1) const;
00068 boolMatrix any (int dim = -1) const;
00069
00070 #if 0
00071
00072
00073 friend std::ostream& operator << (std::ostream& os, const Matrix& a);
00074 friend std::istream& operator >> (std::istream& is, Matrix& a);
00075 #endif
00076
00077 static bool resize_fill_value (void) { return false; }
00078
00079 private:
00080
00081 boolMatrix (bool *b, int r, int c) : Array2<bool> (b, r, c) { }
00082 };
00083
00084 MM_CMP_OP_DECLS (boolMatrix, boolMatrix)
00085
00086 #endif
00087
00088
00089
00090
00091
00092