comparison main/fixed/src/fixedCMatrix.h @ 9481:d84d2fea3c90 octave-forge

Re-enable compilation of fixed package
author jordigh
date Wed, 22 Feb 2012 22:07:33 +0000
parents 0924c374b60d
children 7b7cd174847c
comparison
equal deleted inserted replaced
9480:954f2f00d782 9481:d84d2fea3c90
24 */ 24 */
25 25
26 #if !defined (octave_FixedCMatrix_h) 26 #if !defined (octave_FixedCMatrix_h)
27 #define octave_FixedCMatrix_h 1 27 #define octave_FixedCMatrix_h 1
28 28
29 #include <octave/MArray2.h> 29 #include <octave/MArray.h>
30 30
31 #include <octave/mx-defs.h> 31 #include <octave/mx-defs.h>
32 #include <octave/mx-op-defs.h> 32 #include <octave/mx-op-defs.h>
33 #include <octave/data-conv.h> 33 #include <octave/data-conv.h>
34 #include <octave/mach-info.h> 34 #include <octave/mach-info.h>
49 49
50 typedef FixedPointComplex (*fpc_fpc_Mapper)(FixedPointComplex); 50 typedef FixedPointComplex (*fpc_fpc_Mapper)(FixedPointComplex);
51 51
52 class 52 class
53 OCTAVE_FIXED_API 53 OCTAVE_FIXED_API
54 FixedComplexMatrix : public MArray2<FixedPointComplex> 54 FixedComplexMatrix : public MArray<FixedPointComplex>
55 { 55 {
56 public: 56 public:
57 57
58 FixedComplexMatrix (void) : MArray2<FixedPointComplex> () { } 58 FixedComplexMatrix (void) : MArray<FixedPointComplex> () { }
59 59
60 FixedComplexMatrix (const dim_vector& dv) : MArray2<FixedPointComplex> (dv) { } 60 FixedComplexMatrix (const dim_vector& dv) : MArray<FixedPointComplex> (dv) { }
61 61
62 FixedComplexMatrix (int r, int c) : MArray2<FixedPointComplex> (r, c) { } 62 FixedComplexMatrix (int r, int c)
63 63 : MArray<FixedPointComplex> (dim_vector (r, c)) { }
64 FixedComplexMatrix (int r, int c, const FixedPointComplex val) : 64
65 MArray2<FixedPointComplex> (r, c, val) { } 65 FixedComplexMatrix (int r, int c, const FixedPointComplex val)
66 66 : MArray<FixedPointComplex> (dim_vector (r, c), val) { }
67 FixedComplexMatrix (const MArray2<int> &is, const MArray2<int> &ds); 67
68 FixedComplexMatrix (const MArray<int> &is, const MArray<int> &ds);
68 69
69 FixedComplexMatrix (const Matrix &is, const Matrix &ds); 70 FixedComplexMatrix (const Matrix &is, const Matrix &ds);
70 71
71 FixedComplexMatrix (const ComplexMatrix &is, const ComplexMatrix &ds); 72 FixedComplexMatrix (const ComplexMatrix &is, const ComplexMatrix &ds);
72 73
73 FixedComplexMatrix (unsigned int is, unsigned int ds, 74 FixedComplexMatrix (unsigned int is, unsigned int ds,
74 const FixedComplexMatrix& a); 75 const FixedComplexMatrix& a);
75 76
76 FixedComplexMatrix (Complex is, Complex ds, const FixedComplexMatrix& a); 77 FixedComplexMatrix (Complex is, Complex ds, const FixedComplexMatrix& a);
77 78
78 FixedComplexMatrix (const MArray2<int> &is, const MArray2<int> &ds, 79 FixedComplexMatrix (const MArray<int> &is, const MArray<int> &ds,
79 const FixedComplexMatrix& a); 80 const FixedComplexMatrix& a);
80 81
81 FixedComplexMatrix (const Matrix &is, const Matrix &ds, 82 FixedComplexMatrix (const Matrix &is, const Matrix &ds,
82 const FixedComplexMatrix& a); 83 const FixedComplexMatrix& a);
83 84
86 87
87 FixedComplexMatrix (unsigned int is, unsigned int ds, const FixedMatrix& a); 88 FixedComplexMatrix (unsigned int is, unsigned int ds, const FixedMatrix& a);
88 89
89 FixedComplexMatrix (Complex is, Complex ds, const FixedMatrix& a); 90 FixedComplexMatrix (Complex is, Complex ds, const FixedMatrix& a);
90 91
91 FixedComplexMatrix (const MArray2<int> &is, const MArray2<int> &ds, 92 FixedComplexMatrix (const MArray<int> &is, const MArray<int> &ds,
92 const FixedMatrix& a); 93 const FixedMatrix& a);
93 94
94 FixedComplexMatrix (const Matrix &is, const Matrix &ds, 95 FixedComplexMatrix (const Matrix &is, const Matrix &ds,
95 const FixedMatrix& a); 96 const FixedMatrix& a);
96 97
100 FixedComplexMatrix (unsigned int is, unsigned int ds, 101 FixedComplexMatrix (unsigned int is, unsigned int ds,
101 const ComplexMatrix& a); 102 const ComplexMatrix& a);
102 103
103 FixedComplexMatrix (Complex is, Complex ds, const ComplexMatrix& a); 104 FixedComplexMatrix (Complex is, Complex ds, const ComplexMatrix& a);
104 105
105 FixedComplexMatrix (const MArray2<int> &is, const MArray2<int> & ds, 106 FixedComplexMatrix (const MArray<int> &is, const MArray<int> & ds,
106 const ComplexMatrix& a); 107 const ComplexMatrix& a);
107 108
108 FixedComplexMatrix (const Matrix &is, const Matrix & ds, 109 FixedComplexMatrix (const Matrix &is, const Matrix & ds,
109 const ComplexMatrix& a); 110 const ComplexMatrix& a);
110 111
113 114
114 FixedComplexMatrix (unsigned int is, unsigned int ds, const Matrix& a); 115 FixedComplexMatrix (unsigned int is, unsigned int ds, const Matrix& a);
115 116
116 FixedComplexMatrix (Complex is, Complex ds, const Matrix& a); 117 FixedComplexMatrix (Complex is, Complex ds, const Matrix& a);
117 118
118 FixedComplexMatrix (const MArray2<int> &is, const MArray2<int> & ds, 119 FixedComplexMatrix (const MArray<int> &is, const MArray<int> & ds,
119 const Matrix& a); 120 const Matrix& a);
120 121
121 FixedComplexMatrix (const Matrix &is, const Matrix & ds, const Matrix& a); 122 FixedComplexMatrix (const Matrix &is, const Matrix & ds, const Matrix& a);
122 123
123 FixedComplexMatrix (const ComplexMatrix &is, const ComplexMatrix & ds, 124 FixedComplexMatrix (const ComplexMatrix &is, const ComplexMatrix & ds,
127 const ComplexMatrix &a, const ComplexMatrix &b); 128 const ComplexMatrix &a, const ComplexMatrix &b);
128 129
129 FixedComplexMatrix (Complex is, Complex ds, const ComplexMatrix &a, 130 FixedComplexMatrix (Complex is, Complex ds, const ComplexMatrix &a,
130 const ComplexMatrix &b); 131 const ComplexMatrix &b);
131 132
132 FixedComplexMatrix (const MArray2<int> &is, const MArray2<int> &ds, 133 FixedComplexMatrix (const MArray<int> &is, const MArray<int> &ds,
133 const ComplexMatrix &a, const ComplexMatrix &b); 134 const ComplexMatrix &a, const ComplexMatrix &b);
134 135
135 FixedComplexMatrix (const Matrix &is, const Matrix &ds, 136 FixedComplexMatrix (const Matrix &is, const Matrix &ds,
136 const ComplexMatrix &a, const ComplexMatrix &b); 137 const ComplexMatrix &a, const ComplexMatrix &b);
137 138
141 FixedComplexMatrix (const FixedMatrix& a); 142 FixedComplexMatrix (const FixedMatrix& a);
142 143
143 FixedComplexMatrix (const FixedMatrix& a, const FixedMatrix& b); 144 FixedComplexMatrix (const FixedMatrix& a, const FixedMatrix& b);
144 145
145 FixedComplexMatrix (const FixedComplexMatrix& a) : 146 FixedComplexMatrix (const FixedComplexMatrix& a) :
146 MArray2<FixedPointComplex> (a) { } 147 MArray<FixedPointComplex> (a) { }
147 148
148 FixedComplexMatrix (const MArray2<FixedPointComplex>& a) : 149 FixedComplexMatrix (const MArray<FixedPointComplex>& a) :
149 MArray2<FixedPointComplex> (a) { } 150 MArray<FixedPointComplex> (a) { }
151
152 FixedComplexMatrix (const Array<FixedPointComplex>& a) :
153 MArray<FixedPointComplex> (a) { }
150 154
151 explicit FixedComplexMatrix (const FixedComplexRowVector& rv); 155 explicit FixedComplexMatrix (const FixedComplexRowVector& rv);
152 156
153 FixedComplexMatrix (const FixedRowVector& rv); 157 FixedComplexMatrix (const FixedRowVector& rv);
154 158
172 FixedComplexMatrix incintsize (const ComplexMatrix &n); 176 FixedComplexMatrix incintsize (const ComplexMatrix &n);
173 FixedComplexMatrix incintsize (); 177 FixedComplexMatrix incintsize ();
174 178
175 FixedComplexMatrix& operator = (const FixedComplexMatrix& a) 179 FixedComplexMatrix& operator = (const FixedComplexMatrix& a)
176 { 180 {
177 MArray2<FixedPointComplex>::operator = (a); 181 MArray<FixedPointComplex>::operator = (a);
178 return *this; 182 return *this;
179 } 183 }
180 184
181 bool operator == (const FixedComplexMatrix& a) const; 185 bool operator == (const FixedComplexMatrix& a) const;
182 bool operator != (const FixedComplexMatrix& a) const; 186 bool operator != (const FixedComplexMatrix& a) const;
206 FixedComplexMatrix stack (const FixedComplexMatrix& a) const; 210 FixedComplexMatrix stack (const FixedComplexMatrix& a) const;
207 FixedComplexMatrix stack (const FixedComplexRowVector& a) const; 211 FixedComplexMatrix stack (const FixedComplexRowVector& a) const;
208 FixedComplexMatrix stack (const FixedComplexColumnVector& a) const; 212 FixedComplexMatrix stack (const FixedComplexColumnVector& a) const;
209 213
210 FixedComplexMatrix hermitian (void) const; 214 FixedComplexMatrix hermitian (void) const;
211 FixedComplexMatrix transpose (void) const { return MArray2<FixedPointComplex>::transpose (); } 215 FixedComplexMatrix transpose (void) const { return MArray<FixedPointComplex>::transpose (); }
212 216
213 // resize is the destructive equivalent for this one 217 // resize is the destructive equivalent for this one
214 218
215 FixedComplexMatrix extract (int r1, int c1, int r2, int c2) const; 219 FixedComplexMatrix extract (int r1, int c1, int r2, int c2) const;
216 220
310 friend OCTAVE_FIXED_API std::istream& operator >> (std::istream& is, FixedComplexMatrix& a); 314 friend OCTAVE_FIXED_API std::istream& operator >> (std::istream& is, FixedComplexMatrix& a);
311 315
312 316
313 static FixedPointComplex resize_fill_value (void) 317 static FixedPointComplex resize_fill_value (void)
314 { return FixedPointComplex(); } 318 { return FixedPointComplex(); }
315
316 private:
317
318 FixedComplexMatrix (FixedPointComplex *d, int r, int c) :
319 MArray2<FixedPointComplex> (d, r, c) { }
320 }; 319 };
321 320
322 OCTAVE_FIXED_API FixedComplexMatrix operator * (const FixedComplexColumnVector& a, 321 OCTAVE_FIXED_API FixedComplexMatrix operator * (const FixedComplexColumnVector& a,
323 const FixedComplexRowVector& b); 322 const FixedComplexRowVector& b);
324 OCTAVE_FIXED_API FixedComplexMatrix operator * (const FixedComplexMatrix& a, 323 OCTAVE_FIXED_API FixedComplexMatrix operator * (const FixedComplexMatrix& a,
401 SM_BOOL_OP_DECLS (FixedPointComplex, FixedComplexMatrix, ) 400 SM_BOOL_OP_DECLS (FixedPointComplex, FixedComplexMatrix, )
402 401
403 MM_CMP_OP_DECLS (FixedComplexMatrix, FixedComplexMatrix, ) 402 MM_CMP_OP_DECLS (FixedComplexMatrix, FixedComplexMatrix, )
404 MM_BOOL_OP_DECLS (FixedComplexMatrix, FixedComplexMatrix, ) 403 MM_BOOL_OP_DECLS (FixedComplexMatrix, FixedComplexMatrix, )
405 404
406 MARRAY_FORWARD_DEFS (MArray2, FixedComplexMatrix, FixedPointComplex) 405 MARRAY_FORWARD_DEFS (MArray, FixedComplexMatrix, FixedPointComplex)
407 406
408 #endif 407 #endif
409 408
410 /* 409 /*
411 ;;; Local Variables: *** 410 ;;; Local Variables: ***