26#if ! defined (octave_ov_flt_complex_h)
27#define octave_ov_flt_complex_h 1
29#include "octave-config.h"
80 bool resize_ok =
false);
85 && ! (octave::math::isnan (scalar.real ())
86 || octave::math::isnan (scalar.imag ())));
99 double double_value (
bool =
false)
const;
101 float float_value (
bool =
false)
const;
104 {
return double_value (frc_str_conv); }
107 {
return float_value (frc_str_conv); }
109 Matrix matrix_value (
bool =
false)
const;
111 FloatMatrix float_matrix_value (
bool =
false)
const;
125 Complex complex_value (
bool =
false)
const;
139 if (octave::math::isnan (scalar))
140 octave::err_nan_to_logical_conversion ();
141 if (warn && scalar != 0.0f && scalar != 1.0f)
144 return scalar != 0.0f;
149 if (octave::math::isnan (scalar))
150 octave::err_nan_to_logical_conversion ();
151 if (warn && scalar != 0.0f && scalar != 1.0f)
171 bool save_ascii (std::ostream& os);
173 bool load_ascii (std::istream& is);
175 bool save_binary (std::ostream& os,
bool save_as_floats);
177 bool load_binary (std::istream& is,
bool swap,
178 octave::mach_info::float_format fmt);
180 bool save_hdf5 (
octave_hdf5_id loc_id,
const char *name,
bool save_as_floats);
184 int write (octave::stream& os,
int block_size,
186 octave::mach_info::float_format flt_fmt)
const
189 return os.write (
array_value (
true), block_size, output_type,
193 mxArray * as_mxArray (
bool interleaved)
const;
Vector representing the dimensions (size) of an Array.
bool is_complex_scalar() const
octave_base_value * clone() const
bool bool_value(bool warn=false) const
octave_base_value * empty_clone() const
SparseMatrix sparse_matrix_value(bool=false) const
double scalar_value(bool frc_str_conv=false) const
builtin_type_t builtin_type() const
octave_float_complex(const octave_float_complex &c)
int write(octave::stream &os, int block_size, oct_data_conv::data_type output_type, int skip, octave::mach_info::float_format flt_fmt) const
octave_float_complex(const FloatComplex &c)
octave_value any(int=0) const
bool is_single_type() const
SparseComplexMatrix sparse_complex_matrix_value(bool=false) const
boolNDArray bool_array_value(bool warn=false) const
~octave_float_complex()=default
float float_scalar_value(bool frc_str_conv=false) const
void resize(octave_idx_type n, const octave_value &rfv=octave_value())
Array< octave_value > array_value() const
void warn_logical_conversion()
std::complex< double > Complex
std::complex< float > FloatComplex
#define DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA_API(API)
octave_float_complex octave_float_complex_scalar