summaryrefslogtreecommitdiffstats
path: root/src/H5Tpublic.h
diff options
context:
space:
mode:
authorQuincey Koziol <koziol@hdfgroup.org>2000-11-09 21:45:27 (GMT)
committerQuincey Koziol <koziol@hdfgroup.org>2000-11-09 21:45:27 (GMT)
commite32c78d023348c70255c3835a4f904862414fb0d (patch)
treebec2363f2d5cd8811522f80114e70efa72d2c196 /src/H5Tpublic.h
parent796b4daf83110a1e61f754eeb0ab7be625b0e98a (diff)
downloadhdf5-e32c78d023348c70255c3835a4f904862414fb0d.zip
hdf5-e32c78d023348c70255c3835a4f904862414fb0d.tar.gz
hdf5-e32c78d023348c70255c3835a4f904862414fb0d.tar.bz2
[svn-r2843] Purpose:
New Feature Description: Added array datatype to library. See documentation at: http://hdf.ncsa.uiuc.edu/HDF5/planning/DP/ArrayType.html for complete details on the impact to the library. Solution: Changes to the base library include removing the ability of compound datatype fields to be an array (they can use an array type for the field, to duplicate the functionality) and adding in the new array datatype everywhere appropriate. (I hope :-) Platforms tested: FreeBSD 4.1.1 (hawkwind)
Diffstat (limited to 'src/H5Tpublic.h')
-rw-r--r--src/H5Tpublic.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/H5Tpublic.h b/src/H5Tpublic.h
index 5d218a9..95fa939 100644
--- a/src/H5Tpublic.h
+++ b/src/H5Tpublic.h
@@ -36,6 +36,7 @@ typedef enum H5T_class_t {
H5T_REFERENCE = 7, /*reference types */
H5T_ENUM = 8, /*enumeration types */
H5T_VLEN = 9, /*Variable-Length types */
+ H5T_ARRAY = 10, /*Array types */
H5T_NCLASSES /*this must be last */
} H5T_class_t;
@@ -457,9 +458,11 @@ __DLL__ htri_t H5Tcommitted(hid_t type_id);
/* Operations defined on compound data types */
__DLL__ herr_t H5Tinsert(hid_t parent_id, const char *name, size_t offset,
hid_t member_id);
+#ifdef QAK
__DLL__ herr_t H5Tinsert_array(hid_t parent_id, const char *name,
size_t offset, int ndims, const size_t dim[],
const int *perm, hid_t member_id);
+#endif /* QAK */
__DLL__ herr_t H5Tpack(hid_t type_id);
/* Operations defined on enumeration data types */
@@ -473,6 +476,12 @@ __DLL__ herr_t H5Tenum_valueof(hid_t type, const char *name,
/* Operations defined on variable-length data types */
__DLL__ hid_t H5Tvlen_create(hid_t base_id);
+/* Operations defined on array data types */
+__DLL__ hid_t H5Tarray_create(hid_t base_id, int ndims,
+ const hsize_t dim[/* ndims */], const int perm[/* ndims */]);
+__DLL__ int H5Tget_array_ndims(hid_t type_id);
+__DLL__ herr_t H5Tget_array_dims(hid_t type_id, hsize_t dims[], int perm[]);
+
/* Operations defined on opaque data types */
__DLL__ herr_t H5Tset_tag(hid_t type, const char *tag);
__DLL__ char *H5Tget_tag(hid_t type);
@@ -497,8 +506,10 @@ __DLL__ H5T_str_t H5Tget_strpad(hid_t type_id);
__DLL__ int H5Tget_nmembers(hid_t type_id);
__DLL__ char *H5Tget_member_name(hid_t type_id, int membno);
__DLL__ size_t H5Tget_member_offset(hid_t type_id, int membno);
+#ifdef QAK
__DLL__ int H5Tget_member_dims(hid_t type_id, int membno, size_t dims[]/*out*/,
int perm[]/*out*/);
+#endif /* QAK */
__DLL__ hid_t H5Tget_member_type(hid_t type_id, int membno);
__DLL__ herr_t H5Tget_member_value(hid_t type_id, int membno,
void *value/*out*/);