summaryrefslogtreecommitdiffstats
path: root/src/H5Tpkg.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/H5Tpkg.h')
-rw-r--r--src/H5Tpkg.h20
1 files changed, 14 insertions, 6 deletions
diff --git a/src/H5Tpkg.h b/src/H5Tpkg.h
index 5fc1075..7fa5811 100644
--- a/src/H5Tpkg.h
+++ b/src/H5Tpkg.h
@@ -78,6 +78,7 @@ typedef struct H5T_path_t {
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 */
+ void *cdata; /*extra conversion data */
} H5T_path_t;
/* The master list of soft conversion functions */
@@ -87,17 +88,24 @@ typedef struct H5T_soft_t {
H5T_conv_t func; /*the conversion function */
} H5T_soft_t;
+/* Conversion data for H5T_conv_struct() */
+typedef struct H5T_conv_struct_t {
+ intn *src2dst; /*mapping from src to dst memb ID */
+ hid_t *src_memb_id; /*source member type ID's */
+ hid_t *dst_memb_id; /*destination member type ID's */
+} H5T_conv_struct_t;
+
/* Function prototypes for H5T package scope */
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);
-herr_t H5T_conv_struct (hid_t src_id, hid_t dst_id, size_t nelmts,
- void *_buf, const void *background);
+herr_t H5T_conv_noop (hid_t src_id, hid_t dst_id, void **pcdata,
+ size_t nelmts, void *buf, void *bkg);
+herr_t H5T_conv_order (hid_t src_id, hid_t dst_id, void **pcdata,
+ size_t nelmts, void *_buf, void *bkg);
+herr_t H5T_conv_struct (hid_t src_id, hid_t dst_id, void **pcdata,
+ size_t nelmts, void *_buf, void *bkg);
#endif