diff options
author | Quincey Koziol <koziol@hdfgroup.org> | 1998-07-06 21:01:13 (GMT) |
---|---|---|
committer | Quincey Koziol <koziol@hdfgroup.org> | 1998-07-06 21:01:13 (GMT) |
commit | 43f13aeca28a722d6436d43dcd84a59918dc0950 (patch) | |
tree | 1ee94e4f1b64a7d027112d616d8617992c09520a /src/H5Spublic.h | |
parent | d70e61b1dbd7ff16aa4ac5cad4a69bf87b84f208 (diff) | |
download | hdf5-43f13aeca28a722d6436d43dcd84a59918dc0950.zip hdf5-43f13aeca28a722d6436d43dcd84a59918dc0950.tar.gz hdf5-43f13aeca28a722d6436d43dcd84a59918dc0950.tar.bz2 |
[svn-r451] Completely tore out existing dataspace API and replaced with code to match
API defined in the html/Dataspaces.html document. This code does not include
support for strides, merging selections, or permutations of coordinates yet,
but it's a drop-in replacement for the existing API with the same features.
Diffstat (limited to 'src/H5Spublic.h')
-rw-r--r-- | src/H5Spublic.h | 22 |
1 files changed, 14 insertions, 8 deletions
diff --git a/src/H5Spublic.h b/src/H5Spublic.h index 39b6502..b7c0f01 100644 --- a/src/H5Spublic.h +++ b/src/H5Spublic.h @@ -13,8 +13,8 @@ /* * This file contains public declarations for the H5S module. */ -#ifndef _H5pproto_H -#define _H5Sproto_H +#ifndef _H5Spublic_H +#define _H5Spublic_H /* Public headers needed by this file */ #include <H5public.h> @@ -32,13 +32,20 @@ typedef enum H5S_class_t { H5S_COMPLEX = 2 /*complex data space */ } H5S_class_t; +/* Different ways of combining selections */ +typedef enum H5S_seloper_t { + H5S_NOOP = -1, /*error */ + H5S_SELECT_SET = 0 /* Select "set" operation */ +} H5S_seloper_t; + #ifdef __cplusplus extern "C" { #endif /* Functions in H5S.c */ -hid_t H5Screate_simple (int rank, const hsize_t dims[], - const hsize_t maxdims[]); +hid_t H5Screate(H5S_class_t type); +hid_t H5Screate_simple (int rank, const hsize_t dims[], const hsize_t maxdims[]); +herr_t H5Sset_extent_simple (hid_t sid, int rank, const hsize_t *dims, const hsize_t *max); hid_t H5Scopy (hid_t space_id); herr_t H5Sclose (hid_t space_id); hsize_t H5Sget_npoints (hid_t space_id); @@ -46,10 +53,9 @@ int H5Sget_ndims (hid_t space_id); int H5Sget_dims (hid_t space_id, hsize_t dims[], hsize_t maxdims[]); hbool_t H5Sis_simple (hid_t space_id); herr_t H5Sset_space (hid_t space_id, int rank, const hsize_t *dims); -herr_t H5Sset_hyperslab(hid_t sid, const hssize_t *start, const hsize_t *count, - const hsize_t *stride); -int H5Sget_hyperslab (hid_t sid, hssize_t offset[]/*out*/, - hsize_t size[]/*out*/, hsize_t stride[]/*out*/); +hsize_t H5Sselect_npoints (hid_t spaceid); +herr_t H5Sselect_hyperslab (hid_t spaceid, H5S_seloper_t op, hssize_t *start, + hssize_t *_stride, hssize_t *count, hssize_t *_block); #ifdef __cplusplus } |