Mercurial > hg > octave-jordi
comparison src/ov-flt-complex.cc @ 10315:57a59eae83cc
untabify src C++ source files
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Thu, 11 Feb 2010 12:41:46 -0500 |
parents | cd96d29c5efa |
children | fd0a3ac60b0e |
comparison
equal
deleted
inserted
replaced
10314:07ebe522dac2 | 10315:57a59eae83cc |
---|---|
51 template class octave_base_scalar<FloatComplex>; | 51 template class octave_base_scalar<FloatComplex>; |
52 | 52 |
53 DEFINE_OCTAVE_ALLOCATOR (octave_float_complex); | 53 DEFINE_OCTAVE_ALLOCATOR (octave_float_complex); |
54 | 54 |
55 DEFINE_OV_TYPEID_FUNCTIONS_AND_DATA (octave_float_complex, | 55 DEFINE_OV_TYPEID_FUNCTIONS_AND_DATA (octave_float_complex, |
56 "float complex scalar", "single"); | 56 "float complex scalar", "single"); |
57 | 57 |
58 octave_base_value * | 58 octave_base_value * |
59 octave_float_complex::try_narrowing_conversion (void) | 59 octave_float_complex::try_narrowing_conversion (void) |
60 { | 60 { |
61 octave_base_value *retval = 0; | 61 octave_base_value *retval = 0; |
91 { | 91 { |
92 double retval = lo_ieee_nan_value (); | 92 double retval = lo_ieee_nan_value (); |
93 | 93 |
94 if (! force_conversion) | 94 if (! force_conversion) |
95 gripe_implicit_conversion ("Octave:imag-to-real", | 95 gripe_implicit_conversion ("Octave:imag-to-real", |
96 "complex scalar", "real scalar"); | 96 "complex scalar", "real scalar"); |
97 | 97 |
98 retval = std::real (scalar); | 98 retval = std::real (scalar); |
99 | 99 |
100 return retval; | 100 return retval; |
101 } | 101 } |
105 { | 105 { |
106 float retval = lo_ieee_float_nan_value (); | 106 float retval = lo_ieee_float_nan_value (); |
107 | 107 |
108 if (! force_conversion) | 108 if (! force_conversion) |
109 gripe_implicit_conversion ("Octave:imag-to-real", | 109 gripe_implicit_conversion ("Octave:imag-to-real", |
110 "complex scalar", "real scalar"); | 110 "complex scalar", "real scalar"); |
111 | 111 |
112 retval = std::real (scalar); | 112 retval = std::real (scalar); |
113 | 113 |
114 return retval; | 114 return retval; |
115 } | 115 } |
119 { | 119 { |
120 Matrix retval; | 120 Matrix retval; |
121 | 121 |
122 if (! force_conversion) | 122 if (! force_conversion) |
123 gripe_implicit_conversion ("Octave:imag-to-real", | 123 gripe_implicit_conversion ("Octave:imag-to-real", |
124 "complex scalar", "real matrix"); | 124 "complex scalar", "real matrix"); |
125 | 125 |
126 retval = Matrix (1, 1, std::real (scalar)); | 126 retval = Matrix (1, 1, std::real (scalar)); |
127 | 127 |
128 return retval; | 128 return retval; |
129 } | 129 } |
133 { | 133 { |
134 FloatMatrix retval; | 134 FloatMatrix retval; |
135 | 135 |
136 if (! force_conversion) | 136 if (! force_conversion) |
137 gripe_implicit_conversion ("Octave:imag-to-real", | 137 gripe_implicit_conversion ("Octave:imag-to-real", |
138 "complex scalar", "real matrix"); | 138 "complex scalar", "real matrix"); |
139 | 139 |
140 retval = FloatMatrix (1, 1, std::real (scalar)); | 140 retval = FloatMatrix (1, 1, std::real (scalar)); |
141 | 141 |
142 return retval; | 142 return retval; |
143 } | 143 } |
147 { | 147 { |
148 NDArray retval; | 148 NDArray retval; |
149 | 149 |
150 if (! force_conversion) | 150 if (! force_conversion) |
151 gripe_implicit_conversion ("Octave:imag-to-real", | 151 gripe_implicit_conversion ("Octave:imag-to-real", |
152 "complex scalar", "real matrix"); | 152 "complex scalar", "real matrix"); |
153 | 153 |
154 retval = NDArray (dim_vector (1, 1), std::real (scalar)); | 154 retval = NDArray (dim_vector (1, 1), std::real (scalar)); |
155 | 155 |
156 return retval; | 156 return retval; |
157 } | 157 } |
161 { | 161 { |
162 FloatNDArray retval; | 162 FloatNDArray retval; |
163 | 163 |
164 if (! force_conversion) | 164 if (! force_conversion) |
165 gripe_implicit_conversion ("Octave:imag-to-real", | 165 gripe_implicit_conversion ("Octave:imag-to-real", |
166 "complex scalar", "real matrix"); | 166 "complex scalar", "real matrix"); |
167 | 167 |
168 retval = FloatNDArray (dim_vector (1, 1), std::real (scalar)); | 168 retval = FloatNDArray (dim_vector (1, 1), std::real (scalar)); |
169 | 169 |
170 return retval; | 170 return retval; |
171 } | 171 } |
212 if (fill) | 212 if (fill) |
213 { | 213 { |
214 FloatComplexNDArray retval (dv, FloatComplexNDArray::resize_fill_value ()); | 214 FloatComplexNDArray retval (dv, FloatComplexNDArray::resize_fill_value ()); |
215 | 215 |
216 if (dv.numel ()) | 216 if (dv.numel ()) |
217 retval(0) = scalar; | 217 retval(0) = scalar; |
218 | 218 |
219 return retval; | 219 return retval; |
220 } | 220 } |
221 else | 221 else |
222 { | 222 { |
223 FloatComplexNDArray retval (dv); | 223 FloatComplexNDArray retval (dv); |
224 | 224 |
225 if (dv.numel ()) | 225 if (dv.numel ()) |
226 retval(0) = scalar; | 226 retval(0) = scalar; |
227 | 227 |
228 return retval; | 228 return retval; |
229 } | 229 } |
230 } | 230 } |
231 | 231 |
267 return true; | 267 return true; |
268 } | 268 } |
269 | 269 |
270 bool | 270 bool |
271 octave_float_complex::load_binary (std::istream& is, bool swap, | 271 octave_float_complex::load_binary (std::istream& is, bool swap, |
272 oct_mach_info::float_format fmt) | 272 oct_mach_info::float_format fmt) |
273 { | 273 { |
274 char tmp; | 274 char tmp; |
275 if (! is.read (reinterpret_cast<char *> (&tmp), 1)) | 275 if (! is.read (reinterpret_cast<char *> (&tmp), 1)) |
276 return false; | 276 return false; |
277 | 277 |
278 FloatComplex ctmp; | 278 FloatComplex ctmp; |
279 read_floats (is, reinterpret_cast<float *> (&ctmp), | 279 read_floats (is, reinterpret_cast<float *> (&ctmp), |
280 static_cast<save_type> (tmp), 2, swap, fmt); | 280 static_cast<save_type> (tmp), 2, swap, fmt); |
281 if (error_state || ! is) | 281 if (error_state || ! is) |
282 return false; | 282 return false; |
283 | 283 |
284 scalar = ctmp; | 284 scalar = ctmp; |
285 return true; | 285 return true; |
287 | 287 |
288 #if defined (HAVE_HDF5) | 288 #if defined (HAVE_HDF5) |
289 | 289 |
290 bool | 290 bool |
291 octave_float_complex::save_hdf5 (hid_t loc_id, const char *name, | 291 octave_float_complex::save_hdf5 (hid_t loc_id, const char *name, |
292 bool /* save_as_floats */) | 292 bool /* save_as_floats */) |
293 { | 293 { |
294 hsize_t dimens[3]; | 294 hsize_t dimens[3]; |
295 hid_t space_hid = -1, type_hid = -1, data_hid = -1; | 295 hid_t space_hid = -1, type_hid = -1, data_hid = -1; |
296 bool retval = true; | 296 bool retval = true; |
297 | 297 |
305 H5Sclose (space_hid); | 305 H5Sclose (space_hid); |
306 return false; | 306 return false; |
307 } | 307 } |
308 #if HAVE_HDF5_18 | 308 #if HAVE_HDF5_18 |
309 data_hid = H5Dcreate (loc_id, name, type_hid, space_hid, | 309 data_hid = H5Dcreate (loc_id, name, type_hid, space_hid, |
310 H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT); | 310 H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT); |
311 #else | 311 #else |
312 data_hid = H5Dcreate (loc_id, name, type_hid, space_hid, H5P_DEFAULT); | 312 data_hid = H5Dcreate (loc_id, name, type_hid, space_hid, H5P_DEFAULT); |
313 #endif | 313 #endif |
314 if (data_hid < 0) | 314 if (data_hid < 0) |
315 { | 315 { |
316 H5Sclose (space_hid); | 316 H5Sclose (space_hid); |
318 return false; | 318 return false; |
319 } | 319 } |
320 | 320 |
321 FloatComplex tmp = float_complex_value (); | 321 FloatComplex tmp = float_complex_value (); |
322 retval = H5Dwrite (data_hid, type_hid, H5S_ALL, H5S_ALL, H5P_DEFAULT, | 322 retval = H5Dwrite (data_hid, type_hid, H5S_ALL, H5S_ALL, H5P_DEFAULT, |
323 &tmp) >= 0; | 323 &tmp) >= 0; |
324 | 324 |
325 H5Dclose (data_hid); | 325 H5Dclose (data_hid); |
326 H5Tclose (type_hid); | 326 H5Tclose (type_hid); |
327 H5Sclose (space_hid); | 327 H5Sclose (space_hid); |
328 | 328 |
361 } | 361 } |
362 | 362 |
363 // complex scalar: | 363 // complex scalar: |
364 FloatComplex ctmp; | 364 FloatComplex ctmp; |
365 if (H5Dread (data_hid, complex_type, H5S_ALL, H5S_ALL, H5P_DEFAULT, | 365 if (H5Dread (data_hid, complex_type, H5S_ALL, H5S_ALL, H5P_DEFAULT, |
366 &ctmp) >= 0) | 366 &ctmp) >= 0) |
367 { | 367 { |
368 retval = true; | 368 retval = true; |
369 scalar = ctmp; | 369 scalar = ctmp; |
370 } | 370 } |
371 | 371 |