summaryrefslogtreecommitdiffstats
path: root/src/H5Sprivate.h
diff options
context:
space:
mode:
authorNeil Fortner <nfortne2@hdfgroup.org>2015-08-07 16:15:39 (GMT)
committerNeil Fortner <nfortne2@hdfgroup.org>2015-08-07 16:15:39 (GMT)
commit98f947ceaedbae472efbebad505680d2ca62b403 (patch)
tree21146ddcd7fd224d9f68bccc9824aa082eb9c205 /src/H5Sprivate.h
parentbfd13897f6dcfddce253c6a5463cb9f53b927800 (diff)
downloadhdf5-98f947ceaedbae472efbebad505680d2ca62b403.zip
hdf5-98f947ceaedbae472efbebad505680d2ca62b403.tar.gz
hdf5-98f947ceaedbae472efbebad505680d2ca62b403.tar.bz2
[svn-r27479] Add checking for invalid inputs to H5Dset_virtual: point selections, incorrect
numbers of elements selected, incorrect "slice" through limited dimensions, incorrect number of printf substitutions. Patch source selection space extent with bounds of selection if extent is unknown before returning via H5Pget_virtual_srcspace. Write updated VDS dataspace to file when it changes due to unlimited selections. Other minor fixes/cleanup. Tested: ummon
Diffstat (limited to 'src/H5Sprivate.h')
-rw-r--r--src/H5Sprivate.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/H5Sprivate.h b/src/H5Sprivate.h
index 91e4513..8918a4f 100644
--- a/src/H5Sprivate.h
+++ b/src/H5Sprivate.h
@@ -190,6 +190,8 @@ H5_DLL herr_t H5S_append(H5F_t *f, hid_t dxpl_id, struct H5O_t *oh, H5S_t *ds);
H5_DLL H5S_t *H5S_read(const struct H5O_loc_t *loc, hid_t dxpl_id);
H5_DLL htri_t H5S_set_extent(H5S_t *space, const hsize_t *size);
H5_DLL herr_t H5S_set_extent_real(H5S_t *space, const hsize_t *size);
+H5_DLL herr_t H5S_set_extent_simple(H5S_t *space, unsigned rank,
+ const hsize_t *dims, const hsize_t *max);
H5_DLL H5S_t *H5S_create(H5S_class_t type);
H5_DLL H5S_t *H5S_create_simple(unsigned rank, const hsize_t dims[/*rank*/],
const hsize_t maxdims[/*rank*/]);
@@ -221,6 +223,8 @@ H5_DLL hssize_t H5S_get_select_npoints(const H5S_t *space);
H5_DLL herr_t H5S_get_select_bounds(const H5S_t *space, hsize_t *start, hsize_t *end);
H5_DLL herr_t H5S_get_select_offset(const H5S_t *space, hsize_t *offset);
H5_DLL int H5S_get_select_unlim_dim(const H5S_t *space);
+H5_DLL herr_t H5S_get_select_num_elem_non_unlim(const H5S_t *space,
+ hsize_t *num_elem_non_unlim);
H5_DLL herr_t H5S_select_offset(H5S_t *space, const hssize_t *offset);
H5_DLL herr_t H5S_select_copy(H5S_t *dst, const H5S_t *src, hbool_t share_selection);
H5_DLL htri_t H5S_select_shape_same(const H5S_t *space1, const H5S_t *space2);