Mercurial > hg > octave-lyh
comparison liboctave/dNDArray.h @ 4513:508238e65af7
[project @ 2003-09-19 21:40:57 by jwe]
author | jwe |
---|---|
date | Fri, 19 Sep 2003 21:41:21 +0000 |
parents | 24af46b4ce84 |
children | 01ee68d18069 |
comparison
equal
deleted
inserted
replaced
4512:b55eaa010770 | 4513:508238e65af7 |
---|---|
18 along with Octave; see the file COPYING. If not, write to the Free | 18 along with Octave; see the file COPYING. If not, write to the Free |
19 Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. | 19 Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. |
20 | 20 |
21 */ | 21 */ |
22 | 22 |
23 #if !defined (octave_NDArray_int_h) | 23 #if !defined (octave_NDArray_h) |
24 #define octave_NDArray_int_h 1 | 24 #define octave_NDArray_h 1 |
25 | 25 |
26 #if defined (__GNUG__) && defined (USE_PRAGMA_INTERFACE_IMPLEMENTATION) | 26 #if defined (__GNUG__) && defined (USE_PRAGMA_INTERFACE_IMPLEMENTATION) |
27 #pragma interface | 27 #pragma interface |
28 #endif | 28 #endif |
29 | 29 |
30 #include "MArrayN.h" | 30 #include "MArrayN.h" |
31 //#include "mx-base.h" | 31 #include "dMatrix.h" |
32 | 32 |
33 #include "mx-defs.h" | 33 #include "mx-defs.h" |
34 #include "mx-op-defs.h" | 34 #include "mx-op-defs.h" |
35 | 35 |
36 #include "data-conv.h" | 36 #include "data-conv.h" |
37 #include "mach-info.h" | 37 #include "mach-info.h" |
38 | 38 |
39 class NDArray : public MArrayN<double> | 39 class |
40 NDArray : public MArrayN<double> | |
40 { | 41 { |
41 public: | 42 public: |
42 | 43 |
43 NDArray (void) : MArrayN<double> () { } | 44 NDArray (void) : MArrayN<double> () { } |
44 | 45 |
45 NDArray (Array<int>& dims) : MArrayN<double> (dims) { } | 46 NDArray (dim_vector& dims) : MArrayN<double> (dims) { } |
46 | 47 |
47 NDArray (Array<int>& dims, double val) : MArrayN<double> (dims, val) { } | 48 NDArray (dim_vector& dims, double val) : MArrayN<double> (dims, val) { } |
48 | 49 |
49 NDArray (const NDArray& a): MArrayN<double> (a) { } | 50 NDArray (const NDArray& a) : MArrayN<double> (a) { } |
51 | |
52 NDArray (const Matrix& a) : MArrayN<double> (a) { } | |
50 | 53 |
51 NDArray (const MArrayN<double>& a) : MArrayN<double> (a) { } | 54 NDArray (const MArrayN<double>& a) : MArrayN<double> (a) { } |
52 | 55 |
53 NDArray (const Matrix& m) : MArrayN<double> (m) { } | |
54 | |
55 NDArray (const ArrayN<double>& a) : MArrayN<double> (a) { } | 56 NDArray (const ArrayN<double>& a) : MArrayN<double> (a) { } |
56 | |
57 //NDArray (const Array<double>& a) : MArrayN<double> (a) { } | |
58 | 57 |
59 NDArray& operator = (const NDArray& a) | 58 NDArray& operator = (const NDArray& a) |
60 { | 59 { |
61 MArrayN<double>::operator = (a); | 60 MArrayN<double>::operator = (a); |
62 return *this; | 61 return *this; |
63 } | 62 } |
63 | |
64 // XXX FIXME XXX -- this is not quite the right thing. | |
65 | |
66 boolMatrix all (int dim = -1) const; | |
67 boolMatrix any (int dim = -1) const; | |
68 | |
69 Matrix matrix_value (void) const; | |
64 | 70 |
65 // i/o | 71 // i/o |
66 | 72 |
67 // friend std::ostream& operator << (std::ostream& os, const NDArray& a); | 73 // friend std::ostream& operator << (std::ostream& os, const NDArray& a); |
68 // friend std::istream& operator >> (std::istream& is, NDArray& a); | 74 // friend std::istream& operator >> (std::istream& is, NDArray& a); |
70 static double resize_fill_value (void) { return 0; } | 76 static double resize_fill_value (void) { return 0; } |
71 | 77 |
72 bool any_element_is_negative (bool = false) const; | 78 bool any_element_is_negative (bool = false) const; |
73 bool all_integers (double& max_val, double& min_val) const; | 79 bool all_integers (double& max_val, double& min_val) const; |
74 | 80 |
75 private: | 81 private: |
76 | 82 |
77 NDArray (double *d, Array<int>& dims) : MArrayN<double> (d, dims) { } | 83 NDArray (double *d, dim_vector& dims) : MArrayN<double> (d, dims) { } |
78 }; | 84 }; |
79 | 85 |
80 MARRAY_FORWARD_DEFS (MArrayN, NDArray, double) | 86 MARRAY_FORWARD_DEFS (MArrayN, NDArray, double) |
81 | 87 |
82 #endif | 88 #endif |
89 | |
90 /* | |
91 ;;; Local Variables: *** | |
92 ;;; mode: C++ *** | |
93 ;;; End: *** | |
94 */ |