Mercurial > octave
comparison libinterp/octave-value/ov-cell.cc @ 21660:53728df3e4c9
maint: for clarity, call ndims() rather than length() on dimension vectors.
* ov-re-sparse.cc, QtHandlesUtils.cc, __lin_interpn__.cc, bsxfun.cc,
cellfun.cc, data.cc, dot.cc, ellipj.cc, fft.cc, fft2.cc, fftn.cc, filter.cc,
gl-render.cc, graphics.cc, mex.cc, oct-map.h, sub2ind.cc, symtab.cc, tril.cc,
typecast.cc, utils.cc, variables.cc, ov-base-diag.cc, ov-base-int.cc,
ov-base.cc, ov-base.h, ov-bool-mat.cc, ov-bool-sparse.cc, ov-cell.cc,
ov-class.cc, ov-cx-mat.cc, ov-cx-sparse.cc, ov-flt-cx-mat.cc, ov-flt-re-mat.cc,
ov-intx.h, ov-java.cc, ov-lazy-idx.cc, ov-re-mat.cc, ov-str-mat.cc,
ov-struct.cc, ov.cc, pt-arg-list.cc, pt-mat.cc, Array-util.cc, Array.cc,
Array.h, CNDArray.cc, CSparse.cc, Sparse.cc, Sparse.h, dNDArray.cc, dSparse.cc,
dim-vector.cc, dim-vector.h, fCNDArray.cc, fNDArray.cc, idx-vector.cc,
bsxfun.h, oct-fftw.cc, mx-inlines.cc, lo-array-errwarn.cc, lo-array-gripes.cc:
For clarity, call ndims() rather than length() on dimension vectors.
author | Rik <rik@octave.org> |
---|---|
date | Mon, 02 May 2016 08:53:18 -0700 |
parents | 40de9f8f23a6 |
children | 263d18409fdf |
comparison
equal
deleted
inserted
replaced
21659:ff2347e1df02 | 21660:53728df3e4c9 |
---|---|
702 #define CELL_ELT_TAG "<cell-element>" | 702 #define CELL_ELT_TAG "<cell-element>" |
703 | 703 |
704 bool | 704 bool |
705 octave_cell::save_ascii (std::ostream& os) | 705 octave_cell::save_ascii (std::ostream& os) |
706 { | 706 { |
707 dim_vector d = dims (); | 707 dim_vector dv = dims (); |
708 if (d.length () > 2) | 708 if (dv.ndims () > 2) |
709 { | 709 { |
710 os << "# ndims: " << d.length () << "\n"; | 710 os << "# ndims: " << dv.ndims () << "\n"; |
711 | 711 |
712 for (int i = 0; i < d.length (); i++) | 712 for (int i = 0; i < dv.ndims (); i++) |
713 os << " " << d(i); | 713 os << " " << dv(i); |
714 os << "\n"; | 714 os << "\n"; |
715 | 715 |
716 Cell tmp = cell_value (); | 716 Cell tmp = cell_value (); |
717 | 717 |
718 for (octave_idx_type i = 0; i < d.numel (); i++) | 718 for (octave_idx_type i = 0; i < dv.numel (); i++) |
719 { | 719 { |
720 octave_value o_val = tmp.elem (i); | 720 octave_value o_val = tmp.elem (i); |
721 | 721 |
722 // Recurse to print sub-value. | 722 // Recurse to print sub-value. |
723 bool b = save_text_data (os, o_val, CELL_ELT_TAG, false, 0); | 723 bool b = save_text_data (os, o_val, CELL_ELT_TAG, false, 0); |
855 } | 855 } |
856 | 856 |
857 bool | 857 bool |
858 octave_cell::save_binary (std::ostream& os, bool& save_as_floats) | 858 octave_cell::save_binary (std::ostream& os, bool& save_as_floats) |
859 { | 859 { |
860 dim_vector d = dims (); | 860 dim_vector dv = dims (); |
861 if (d.length () < 1) | 861 if (dv.ndims () < 1) |
862 return false; | 862 return false; |
863 | 863 |
864 // Use negative value for ndims | 864 // Use negative value for ndims |
865 int32_t di = - d.length (); | 865 int32_t di = - dv.ndims (); |
866 os.write (reinterpret_cast<char *> (&di), 4); | 866 os.write (reinterpret_cast<char *> (&di), 4); |
867 for (int i = 0; i < d.length (); i++) | 867 for (int i = 0; i < dv.ndims (); i++) |
868 { | 868 { |
869 di = d(i); | 869 di = dv(i); |
870 os.write (reinterpret_cast<char *> (&di), 4); | 870 os.write (reinterpret_cast<char *> (&di), 4); |
871 } | 871 } |
872 | 872 |
873 Cell tmp = cell_value (); | 873 Cell tmp = cell_value (); |
874 | 874 |
875 for (octave_idx_type i = 0; i < d.numel (); i++) | 875 for (octave_idx_type i = 0; i < dv.numel (); i++) |
876 { | 876 { |
877 octave_value o_val = tmp.elem (i); | 877 octave_value o_val = tmp.elem (i); |
878 | 878 |
879 // Recurse to print sub-value. | 879 // Recurse to print sub-value. |
880 bool b = save_binary_data (os, o_val, CELL_ELT_TAG, "", 0, | 880 bool b = save_binary_data (os, o_val, CELL_ELT_TAG, "", 0, |
970 dim_vector dv = dims (); | 970 dim_vector dv = dims (); |
971 int empty = save_hdf5_empty (loc_id, name, dv); | 971 int empty = save_hdf5_empty (loc_id, name, dv); |
972 if (empty) | 972 if (empty) |
973 return (empty > 0); | 973 return (empty > 0); |
974 | 974 |
975 hsize_t rank = dv.length (); | 975 hsize_t rank = dv.ndims (); |
976 hid_t space_hid, data_hid, size_hid; | 976 hid_t space_hid, data_hid, size_hid; |
977 space_hid = data_hid = size_hid = -1; | 977 space_hid = data_hid = size_hid = -1; |
978 | 978 |
979 #if defined (HAVE_HDF5_18) | 979 #if defined (HAVE_HDF5_18) |
980 data_hid = H5Gcreate (loc_id, name, octave_H5P_DEFAULT, octave_H5P_DEFAULT, octave_H5P_DEFAULT); | 980 data_hid = H5Gcreate (loc_id, name, octave_H5P_DEFAULT, octave_H5P_DEFAULT, octave_H5P_DEFAULT); |
1326 // The resulting dim_vector should have dimensions: | 1326 // The resulting dim_vector should have dimensions: |
1327 // [numel(fields) size(struct)] | 1327 // [numel(fields) size(struct)] |
1328 // except if the struct is a column vector. | 1328 // except if the struct is a column vector. |
1329 | 1329 |
1330 dim_vector result_dv; | 1330 dim_vector result_dv; |
1331 if (m_dv(m_dv.length () - 1) == 1) | 1331 if (m_dv(m_dv.ndims () - 1) == 1) |
1332 result_dv.resize (m_dv.length ()); | 1332 result_dv.resize (m_dv.ndims ()); |
1333 else | 1333 else |
1334 result_dv.resize (m_dv.length () + 1); // Add 1 for the fields. | 1334 result_dv.resize (m_dv.ndims () + 1); // Add 1 for the fields. |
1335 | 1335 |
1336 result_dv(0) = num_fields; | 1336 result_dv(0) = num_fields; |
1337 | 1337 |
1338 for (int i = 1; i < result_dv.length (); i++) | 1338 for (int i = 1; i < result_dv.ndims (); i++) |
1339 result_dv(i) = m_dv(i-1); | 1339 result_dv(i) = m_dv(i-1); |
1340 | 1340 |
1341 NoAlias<Cell> c (result_dv); | 1341 NoAlias<Cell> c (result_dv); |
1342 | 1342 |
1343 octave_idx_type n_elts = m.numel (); | 1343 octave_idx_type n_elts = m.numel (); |