summaryrefslogtreecommitdiffstats
path: root/src/H5Tpkg.h
diff options
context:
space:
mode:
authorQuincey Koziol <koziol@hdfgroup.org>2003-09-12 04:35:48 (GMT)
committerQuincey Koziol <koziol@hdfgroup.org>2003-09-12 04:35:48 (GMT)
commit965a4cd7c9a2339bd559a3d5fbbc14a957318da4 (patch)
tree61df28e4cbb1d88eb1d3390e5a04e1db8cfb4276 /src/H5Tpkg.h
parent987e281c8afa3ebd4113d9efba251be4074fd55f (diff)
downloadhdf5-965a4cd7c9a2339bd559a3d5fbbc14a957318da4.zip
hdf5-965a4cd7c9a2339bd559a3d5fbbc14a957318da4.tar.gz
hdf5-965a4cd7c9a2339bd559a3d5fbbc14a957318da4.tar.bz2
[svn-r7468] Purpose:
Code cleanup, etc. Description: Generalize Ray's datatype fixes to handle packing compound datatypes which are the base type of an array or variable-length type, etc. Also track "packedness" of a compound datatype from it's creation, instead of only setting the 'packed' flag after the datatype was explicitly packed. Updated docs to reflect that a compound datatype is allowed to grow (but not shrink). Platforms tested: FreeBSD 4.9 (sleipnir) h5committest
Diffstat (limited to 'src/H5Tpkg.h')
-rw-r--r--src/H5Tpkg.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/H5Tpkg.h b/src/H5Tpkg.h
index e6127af..2058e6a 100644
--- a/src/H5Tpkg.h
+++ b/src/H5Tpkg.h
@@ -128,6 +128,7 @@ typedef struct H5T_compnd_t {
int nalloc; /*num entries allocated in MEMB array*/
int nmembs; /*number of members defined in struct*/
H5T_sort_t sorted; /*how are members sorted? */
+ hbool_t packed; /*are members packed together? */
struct H5T_cmemb_t *memb; /*array of struct members */
} H5T_compnd_t;
@@ -194,7 +195,6 @@ struct H5T_t {
H5T_class_t type; /*which class of type is this? */
size_t size; /*total size of an instance of this type */
hbool_t force_conv;/* Set if this type always needs to be converted and H5T_conv_noop cannot be called */
- hbool_t packed; /*whether a compound type is packed */
struct H5T_t *parent;/*parent type for derived datatypes */
union {
H5T_atomic_t atomic; /* an atomic datatype */
@@ -873,4 +873,8 @@ H5_DLL htri_t H5T_vlen_set_loc(H5T_t *dt, H5F_t *f, H5T_loc_t loc);
/* Array functions */
H5_DLL H5T_t * H5T_array_create(H5T_t *base, int ndims,
const hsize_t dim[/* ndims */], const int perm[/* ndims */]);
+
+/* Compound functions */
+H5_DLL htri_t H5T_is_packed(H5T_t *dt);
+
#endif