26#if ! defined (octave_ov_float_h)
27#define octave_ov_float_h 1
29#include "octave-config.h"
79 bool resize_ok =
false);
82 {
return octave::idx_vector (scalar); }
85 {
return (scalar != 0 && ! octave::math::isnan (scalar)); }
91 bool isreal ()
const {
return true; }
129#define DEFINE_INT_SCALAR_VALUE(TYPE) \
131 TYPE ## _scalar_value () const \
133 return octave_ ## TYPE (scalar); \
145#undef DEFINE_INT_SCALAR_VALUE
148 {
return static_cast<double> (scalar); }
153 {
return static_cast<double> (scalar); }
158 {
return Matrix (1, 1, scalar); }
198 retval(0) =
static_cast<char> (scalar);
204 if (octave::math::isnan (scalar))
205 octave::err_nan_to_logical_conversion ();
206 if (warn && scalar != 0 && scalar != 1)
214 if (octave::math::isnan (scalar))
215 octave::err_nan_to_logical_conversion ();
216 if (warn && scalar != 0 && scalar != 1)
242 octave_value convert_to_str_internal (
bool pad,
bool force,
char type)
const;
248 bool save_ascii (std::ostream& os);
250 bool load_ascii (std::istream& is);
252 bool save_binary (std::ostream& os,
bool save_as_floats);
254 bool load_binary (std::istream& is,
bool swap,
255 octave::mach_info::float_format fmt);
257 bool save_hdf5 (
octave_hdf5_id loc_id,
const char *name,
bool save_as_floats);
261 int write (octave::stream& os,
int block_size,
263 octave::mach_info::float_format flt_fmt)
const
265 return os.write (
array_value (), block_size, output_type,
269 mxArray * as_mxArray (
bool interleaved)
const;
273 bool fast_elem_insert_self (
void *where,
builtin_type_t btyp)
const;
Vector representing the dimensions (size) of an Array.
float float_scalar_value(bool=false) const
SparseComplexMatrix sparse_complex_matrix_value(bool=false) const
octave::idx_vector index_vector(bool=false) const
octave_base_value * clone() const
NDArray array_value(bool=false) const
int16NDArray int16_array_value() const
charNDArray char_array_value(bool=false) const
uint16NDArray uint16_array_value() const
int8NDArray int8_array_value() const
int64NDArray int64_array_value() const
FloatComplexNDArray float_complex_array_value(bool=false) const
octave_float_scalar(const octave_float_scalar &s)
octave_float_scalar(float d)
bool is_single_type() const
FloatNDArray float_array_value(bool=false) const
int32NDArray int32_array_value() const
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
float float_value(bool=false) const
uint64NDArray uint64_array_value() const
builtin_type_t builtin_type() const
octave_base_value * empty_clone() const
FloatComplexMatrix float_complex_matrix_value(bool=false) const
double double_value(bool=false) const
boolNDArray bool_array_value(bool warn=false) const
FloatMatrix float_matrix_value(bool=false) const
FloatComplex float_complex_value(bool=false) const
double scalar_value(bool=false) const
bool bool_value(bool warn=false) const
bool is_real_scalar() const
octave_value any(int=0) const
~octave_float_scalar()=default
uint8NDArray uint8_array_value() const
Complex complex_value(bool=false) const
ComplexNDArray complex_array_value(bool=false) const
SparseMatrix sparse_matrix_value(bool=false) const
ComplexMatrix complex_matrix_value(bool=false) const
Matrix matrix_value(bool=false) const
uint32NDArray uint32_array_value() const
void resize(octave_idx_type n, const octave_value &rfv=octave_value())
Array< octave_value > array_value() const
void warn_logical_conversion()
intNDArray< octave_int16 > int16NDArray
intNDArray< octave_int32 > int32NDArray
intNDArray< octave_int64 > int64NDArray
intNDArray< octave_int8 > int8NDArray
F77_RET_T const F77_DBLE const F77_DBLE F77_DBLE * d
std::complex< double > Complex
std::complex< float > FloatComplex
#define DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA_API(API)
#define DEFINE_INT_SCALAR_VALUE(TYPE)
intNDArray< octave_uint16 > uint16NDArray
intNDArray< octave_uint32 > uint32NDArray
intNDArray< octave_uint64 > uint64NDArray
intNDArray< octave_uint8 > uint8NDArray