diff options
author | Robb Matzke <matzke@llnl.gov> | 1998-01-14 19:42:59 (GMT) |
---|---|---|
committer | Robb Matzke <matzke@llnl.gov> | 1998-01-14 19:42:59 (GMT) |
commit | d70c7d7a64b821f9d3532cc01c7a7fa934f2a17d (patch) | |
tree | 5b7750fffd98153d874bb28daad40c49ac977eeb /src/H5Tpkg.h | |
parent | 1063eb8a1ea0cbdbdc4244f0627b94b3096d65ab (diff) | |
download | hdf5-d70c7d7a64b821f9d3532cc01c7a7fa934f2a17d.zip hdf5-d70c7d7a64b821f9d3532cc01c7a7fa934f2a17d.tar.gz hdf5-d70c7d7a64b821f9d3532cc01c7a7fa934f2a17d.tar.bz2 |
[svn-r153] Changes since 19980108
----------------------
./MANIFEST
./src/H5Dconv.c [REMOVED]
./src/H5Tconv.c [NEW]
./src/Makefile.in
Changed H5Dconv.c to H5Tconv.c
./html/Datatypes.html
Updated data type conversion section.
./html/H5.apiv2.html
Removed sections about datasets and data types since they're
covered in their own chapters.
./src/H5D.c
Supports data type conversion.
./src/H5Odtype.c
./src/H5Tpkg.h
Changed `lo_pad' and `hi_pad' to `lsb_pad' and `msb_pad'.
./src/H5T.c
./src/H5Tpkg.h
./src/H5Tprivate.h
./src/H5Tpublic.h
./src/H5detect.c
Added predefined data types. Added query/set more
properties. Added type conversion infrastructure.
./test/dsets.c
Tests data type conversion during read.
Diffstat (limited to 'src/H5Tpkg.h')
-rw-r--r-- | src/H5Tpkg.h | 28 |
1 files changed, 25 insertions, 3 deletions
diff --git a/src/H5Tpkg.h b/src/H5Tpkg.h index 1a75c59..4668db4 100644 --- a/src/H5Tpkg.h +++ b/src/H5Tpkg.h @@ -22,8 +22,8 @@ typedef struct H5T_atomic_t { H5T_order_t order; /*byte order */ size_t prec; /*precision in bits */ size_t offset; /*bit position of lsb of value */ - intn lo_pad; /*type of lsb padding */ - intn hi_pad; /*type of msb padding */ + intn lsb_pad;/*type of lsb padding */ + intn msb_pad;/*type of msb padding */ union { struct { H5T_sign_t sign; /*type of integer sign */ @@ -42,7 +42,7 @@ typedef struct H5T_atomic_t { struct { H5T_cset_t cset; /*character set */ - H5T_str_t spad; /*space or null padding of extra bytes */ + H5T_str_t pad; /*space or null padding of extra bytes */ } s; } u; } H5T_atomic_t; @@ -72,5 +72,27 @@ typedef struct H5T_member_t { struct H5T_t type; /*type of this member */ } H5T_member_t; +/* The data type conversion database */ +typedef struct H5T_path_t { + H5T_t *src; /*source data type ID */ + H5T_t *dst; /*destination data type ID */ + H5T_conv_t hard; /*hard conversion function or null */ + H5T_conv_t soft; /*soft conversion function or null */ +} H5T_path_t; + +/* The master list of soft conversion functions */ +typedef struct H5T_soft_t { + H5T_class_t src; /*source data type class */ + H5T_class_t dst; /*destination data type class */ + H5T_conv_t func; /*the conversion function */ +} H5T_soft_t; + +H5T_path_t *H5T_path_find (const H5T_t *src, const H5T_t *dst, hbool_t create); + +/* Conversion functions */ +herr_t H5T_conv_noop (hid_t src_id, hid_t dst_id, size_t nelmts, + void *buf, const void *background); +herr_t H5T_conv_order (hid_t src_id, hid_t dst_id, size_t nelmts, + void *_buf, const void *background); #endif |