diff options
author | Elena Pourmal <epourmal@hdfgroup.org> | 2002-05-31 14:36:35 (GMT) |
---|---|---|
committer | Elena Pourmal <epourmal@hdfgroup.org> | 2002-05-31 14:36:35 (GMT) |
commit | f4d1614943e3cfcb74dfea218f8297e9f595d197 (patch) | |
tree | 79d11790f34aee28c4e085af8a19efd1f59e34f3 /fortran/src/H5Df.c | |
parent | 96f0b001a039e1281de8deefb0ad7360f09b0c81 (diff) | |
download | hdf5-f4d1614943e3cfcb74dfea218f8297e9f595d197.zip hdf5-f4d1614943e3cfcb74dfea218f8297e9f595d197.tar.gz hdf5-f4d1614943e3cfcb74dfea218f8297e9f595d197.tar.bz2 |
[svn-r5490] Purpose:
Code cleanup
Description:
While working on the "External test" failure I restructured and
cleaned up some C stub code.
Platforms tested:
dangermouse (Linux 2.4)
Diffstat (limited to 'fortran/src/H5Df.c')
-rw-r--r-- | fortran/src/H5Df.c | 454 |
1 files changed, 412 insertions, 42 deletions
diff --git a/fortran/src/H5Df.c b/fortran/src/H5Df.c index 888ede5..8870565 100644 --- a/fortran/src/H5Df.c +++ b/fortran/src/H5Df.c @@ -31,9 +31,6 @@ nh5dcreate_c (hid_t_f *loc_id, _fcd name, int_f *namelen, hid_t_f *type_id, hid_ * Define creation property */ c_crt_prp = (hid_t)*crt_prp; -/* - if ( H5P_DEFAULT_F == c_crt_prp ) c_crt_prp = H5P_DEFAULT; -*/ /* * Convert FORTRAN name to C name @@ -45,14 +42,16 @@ nh5dcreate_c (hid_t_f *loc_id, _fcd name, int_f *namelen, hid_t_f *type_id, hid_ /* * Call H5Dcreate function. */ - c_loc_id = *loc_id; - c_type_id = *type_id; - c_space_id = *space_id; + c_loc_id = (hid_t)*loc_id; + c_type_id = (hid_t)*type_id; + c_space_id = (hid_t)*space_id; c_dset_id = H5Dcreate(c_loc_id, c_name, c_type_id, c_space_id, c_crt_prp); - if (c_dset_id < 0) return ret_value; + if (c_dset_id < 0) goto DONE; *dset_id = (hid_t_f)c_dset_id; - HDfree(c_name); ret_value = 0; + +DONE: + HDfree(c_name); return ret_value; } @@ -87,13 +86,15 @@ nh5dopen_c (hid_t_f *loc_id, _fcd name, int_f *namelen, hid_t_f *dset_id) /* * Call H5Dopen function. */ - c_loc_id = *loc_id; + c_loc_id = (hid_t)*loc_id; c_dset_id = H5Dopen(c_loc_id, c_name); - if (c_dset_id < 0) return ret_value; + if (c_dset_id < 0) goto DONE; *dset_id = (hid_t_f)c_dset_id; - HDfree(c_name); ret_value = 0; + +DONE: + HDfree(c_name); return ret_value; } @@ -153,23 +154,93 @@ nh5dwrite_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_ * Define transfer property */ c_xfer_prp = (hid_t)*xfer_prp; -/* - if ( H5P_DEFAULT_F == c_xfer_prp ) c_xfer_prp = H5P_DEFAULT; -*/ /* * Call H5Dwrite function. */ - c_dset_id = *dset_id; - c_mem_type_id = *mem_type_id; - c_mem_space_id = *mem_space_id; - c_file_space_id = *file_space_id; + c_dset_id = (hid_t)*dset_id; + c_mem_type_id = (hid_t)*mem_type_id; + c_mem_space_id = (hid_t)*mem_space_id; + c_file_space_id = (hid_t)*file_space_id; ret = H5Dwrite(c_dset_id, c_mem_type_id, c_mem_space_id, c_file_space_id, c_xfer_prp, buf); if (ret < 0) return ret_value; ret_value = 0; return ret_value; } +/*---------------------------------------------------------------------------- + * Name: h5dwritec_c_b + * Purpose: Call h5dwrite_c_b to write a dataset of characters + * Inputs: dset_id - dataset identifier + * mem_type_id - memory datatype identifier + * mem_space_id - memory dataspace identifier + * file_space_id - memory dataspace identifier + * xfer_pr - identifier of transfer property list + * buf - character data buffer + * Returns: 0 on success, -1 on failure + * Programmer: Elena Pourmal + * Tuesday, May 14, 2002 + * Modifications: This function is added to accomodate oveloaded h5dwrite_f + * with the dims argument being of INTEGER(HSIZE_T) type + *---------------------------------------------------------------------------*/ +int_f +nh5dwritec_c_b (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, _fcd buf, hsize_t_f *dims) +{ + int ret_value = -1; + + /* + * Call h5dwrite_c function. + */ + ret_value = nh5dwrite_c_b(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, _fcdtocp(buf), dims); + + return ret_value; +} + +/*---------------------------------------------------------------------------- + * Name: h5dwrite_c_b + * Purpose: Call H5Dwrite to write a dataset + * Inputs: dset_id - dataset identifier + * mem_type_id - memory datatype identifier + * mem_space_id - memory dataspace identifier + * file_space_id - memory dataspace identifier + * xfer_pr - identifier of transfer property list + * buf - data buffer + * Returns: 0 on success, -1 on failure + * Programmer: Elena Pourmal + * Tuesday, May 14, 2002 + * Modifications: This function is added to accomodate oveloaded h5dwrite_f + * with the dims argument being of INTEGER(HSIZE_T) type + *---------------------------------------------------------------------------*/ +int_f +nh5dwrite_c_b (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims) +{ + int ret_value = -1; + herr_t ret; + hid_t c_dset_id; + hid_t c_mem_type_id; + hid_t c_mem_space_id; + hid_t c_file_space_id; + hid_t c_xfer_prp; + + /* + * Define transfer property + */ + c_xfer_prp = (hid_t)*xfer_prp; + + /* + * Call H5Dwrite function. + */ + c_dset_id = (hid_t)*dset_id; + c_mem_type_id = (hid_t)*mem_type_id; + c_mem_space_id = (hid_t)*mem_space_id; + c_file_space_id = (hid_t)*file_space_id; + ret = H5Dwrite(c_dset_id, c_mem_type_id, c_mem_space_id, c_file_space_id, c_xfer_prp, buf); + + if (ret < 0) return ret_value; + ret_value = 0; + return ret_value; +} + /*---------------------------------------------------------------------------- * Name: h5dwrite_ref_obj_c @@ -204,9 +275,6 @@ nh5dwrite_ref_obj_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_ * Define transfer property */ c_xfer_prp = (hid_t)*xfer_prp; -/* - if ( H5P_DEFAULT_F == c_xfer_prp ) c_xfer_prp = H5P_DEFAULT; -*/ /* * Allocate temporary buffer and copy references from Fortran. @@ -233,7 +301,67 @@ nh5dwrite_ref_obj_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_ ret_value = 0; return ret_value; } +/*---------------------------------------------------------------------------- + * Name: h5dwrite_ref_obj_c_b + * Purpose: Call H5Dwrite to write a dataset of object references + * Inputs: dset_id - dataset identifier + * mem_type_id - memory datatype identifier + * mem_space_id - memory dataspace identifier + * file_space_id - memory dataspace identifier + * xfer_pr - identifier of transfer property list + * buf - data buffer with references to the objects. + * n - number of references to be stored. + * Returns: 0 on success,e-1 on failure + * Programmer: Elena Pourmal + * Tuesday, May 14, 2002 + * Modifications: This function was added to accomodate h5dwrite_f with the + * dims argumnet being of INTEGER(HSIZE_T) type. + *---------------------------------------------------------------------------*/ +int_f +nh5dwrite_ref_obj_c_b (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, int_f *buf, hsize_t_f *dims) +{ + int ret_value = -1; + herr_t ret; + hid_t c_dset_id; + hid_t c_mem_type_id; + hid_t c_mem_space_id; + hid_t c_file_space_id; + hid_t c_xfer_prp; + hobj_ref_t *buf_c; + int i, n; + n = (int)*dims; + + /* + * Define transfer property + */ + c_xfer_prp = (hid_t)*xfer_prp; + + /* + * Allocate temporary buffer and copy references from Fortran. + */ + buf_c = (hobj_ref_t*)HDmalloc(sizeof(hobj_ref_t)*(n)); + if ( buf_c != NULL ) { + for (i = 0; i < n; i++) { + HDmemcpy(buf_c[i].oid, buf, H5R_OBJ_REF_BUF_SIZE); + buf = buf + REF_OBJ_BUF_LEN_F; + } + } + else return ret_value; + + /* + * Call H5Dwrite function. + */ + c_dset_id = (hid_t)*dset_id; + c_mem_type_id = (hid_t)*mem_type_id; + c_mem_space_id = (hid_t)*mem_space_id; + c_file_space_id = (hid_t)*file_space_id; + ret = H5Dwrite(c_dset_id, c_mem_type_id, c_mem_space_id, c_file_space_id, c_xfer_prp, buf_c); + HDfree(buf_c); + if (ret < 0) return ret_value; + ret_value = 0; + return ret_value; +} /*---------------------------------------------------------------------------- * Name: h5dwrite_ref_reg_c * Purpose: Call H5Dwrite to write a dataset of dataset region references @@ -267,9 +395,6 @@ nh5dwrite_ref_reg_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_ * Define transfer property */ c_xfer_prp = (hid_t)*xfer_prp; -/* - if ( H5P_DEFAULT_F == c_xfer_prp ) c_xfer_prp = H5P_DEFAULT; -*/ /* * Allocate temporary buffer and copy references from Fortran. @@ -297,6 +422,68 @@ nh5dwrite_ref_reg_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_ ret_value = 0; return ret_value; } +/*---------------------------------------------------------------------------- + * Name: h5dwrite_ref_reg_c_b + * Purpose: Call H5Dwrite to write a dataset of dataset region references + * Inputs: dset_id - dataset identifier + * mem_type_id - memory datatype identifier + * mem_space_id - memory dataspace identifier + * file_space_id - memory dataspace identifier + * xfer_pr - identifier of transfer property list + * buf - data buffer with references to the objects. + * n - number of references to be stored. + * Returns: 0 on success, -1 on failure + * Programmer: Elena Pourmal + * Tuesday, May 14, 2002 + * Modifications: This function was added to accomodate h5dwrite_f with the + * dims argument being of INTEGER(HSIZE_T) type + *---------------------------------------------------------------------------*/ +int_f +nh5dwrite_ref_reg_c_b (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, int_f *buf, hsize_t_f *dims) +{ + int ret_value = -1; + herr_t ret; + hid_t c_dset_id; + hid_t c_mem_type_id; + hid_t c_mem_space_id; + hid_t c_file_space_id; + hid_t c_xfer_prp; + hdset_reg_ref_t *buf_c; + int i, n; + + n = (int)*dims; + /* + * Define transfer property + */ + c_xfer_prp = (hid_t)*xfer_prp; + + /* + * Allocate temporary buffer and copy references from Fortran. + */ + buf_c = (hdset_reg_ref_t *)HDmalloc(sizeof(hdset_reg_ref_t)*(n)); + if ( buf_c != NULL ) { + for (i = 0; i < n; i++) { + HDmemcpy(buf_c[i].heapid, buf, H5R_DSET_REG_REF_BUF_SIZE); + buf = buf + REF_REG_BUF_LEN_F; + } + } + else return ret_value; + + + /* + * Call H5Dwrite function. + */ + c_dset_id = (hid_t)*dset_id; + c_mem_type_id = (hid_t)*mem_type_id; + c_mem_space_id = (hid_t)*mem_space_id; + c_file_space_id = (hid_t)*file_space_id; + ret = H5Dwrite(c_dset_id, c_mem_type_id, c_mem_space_id, c_file_space_id, c_xfer_prp, buf_c); + HDfree(buf_c); + if (ret < 0) return ret_value; + ret_value = 0; + return ret_value; +} + /*---------------------------------------------------------------------------- @@ -355,23 +542,93 @@ nh5dread_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t * Define transfer property */ c_xfer_prp = (hid_t)*xfer_prp; -/* - if ( H5P_DEFAULT_F == c_xfer_prp ) c_xfer_prp = H5P_DEFAULT; -*/ /* * Call H5Dread function. */ - c_dset_id = *dset_id; - c_mem_type_id = *mem_type_id; - c_mem_space_id = *mem_space_id; - c_file_space_id = *file_space_id; + c_dset_id = (hid_t)*dset_id; + c_mem_type_id = (hid_t)*mem_type_id; + c_mem_space_id = (hid_t)*mem_space_id; + c_file_space_id = (hid_t)*file_space_id; ret = H5Dread(c_dset_id, c_mem_type_id, c_mem_space_id, c_file_space_id, c_xfer_prp, buf); if (ret < 0) return ret_value; ret_value = 0; return ret_value; } +/*---------------------------------------------------------------------------- + * Name: h5dreadc_c_b + * Purpose: Call h5dread_c_b to read a dataset of characters + * Inputs: dset_id - dataset identifier + * mem_type_id - memory datatype identifier + * mem_space_id - memory dataspace identifier + * file_space_id - memory dataspace identifier + * xfer_pr - identifier of transfer property list + * Outputs: buf - character data buffer + * Returns: 0 on success, -1 on failure + * Programmer: Elena Pourmal + * Wednesday, May 15, 2002 + * Modifications: This function was added to accomodate h5dread_f subroutine + * with the dims parameter being of INTEGER(HSIZE_T_F) size. + *---------------------------------------------------------------------------*/ +int_f +nh5dreadc_c_b (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, _fcd buf, hsize_t_f *dims) +{ + int ret_value = -1; + + /* + * Call h5dread_c function. + */ + ret_value = nh5dread_c_b(dset_id, mem_type_id, mem_space_id, file_space_id, xfer_prp, _fcdtocp(buf), dims); + + return ret_value; +} + +/*---------------------------------------------------------------------------- + * Name: h5dread_c + * Purpose: Call H5Draed to read a dataset + * Inputs: dset_id - dataset identifier + * mem_type_id - memory datatype identifier + * mem_space_id - memory dataspace identifier + * file_space_id - memory dataspace identifier + * xfer_pr - identifier of transfer property list + * Outputs: buf - data buffer + * Returns: 0 on success, -1 on failure + * Programmer: Elena Pourmal + * Wednesday, May 15, 2002 + * Modifications: This function was added to accomodate h5dread_f subroutine + * with the dims parameter being of INTEGER(HSIZE_T_F) size. + *---------------------------------------------------------------------------*/ +int_f +nh5dread_c_b (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, void *buf, hsize_t_f *dims) +{ + int ret_value = -1; + herr_t ret; + hid_t c_dset_id; + hid_t c_mem_type_id; + hid_t c_mem_space_id; + hid_t c_file_space_id; + hid_t c_xfer_prp; + + /* + * Define transfer property + */ + c_xfer_prp = (hid_t)*xfer_prp; + + /* + * Call H5Dread function. + */ + c_dset_id = (hid_t)*dset_id; + c_mem_type_id = (hid_t)*mem_type_id; + c_mem_space_id = (hid_t)*mem_space_id; + c_file_space_id = (hid_t)*file_space_id; + ret = H5Dread(c_dset_id, c_mem_type_id, c_mem_space_id, c_file_space_id, c_xfer_prp, buf); + + if (ret < 0) return ret_value; + ret_value = 0; + return ret_value; +} + /*---------------------------------------------------------------------------- * Name: h5dread_ref_obj_c @@ -405,9 +662,6 @@ nh5dread_ref_obj_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_i * Define transfer property */ c_xfer_prp = (hid_t)*xfer_prp; -/* - if ( H5P_DEFAULT_F == c_xfer_prp ) c_xfer_prp = H5P_DEFAULT; -*/ /* * Allocate temporary buffer. @@ -434,6 +688,65 @@ nh5dread_ref_obj_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_i ret_value = 0; return ret_value; } +/*---------------------------------------------------------------------------- + * Name: h5dread_ref_obj_c_b + * Purpose: Call H5Dread to read a dataset of object references + * Inputs: dset_id - dataset identifier + * mem_type_id - memory datatype identifier + * mem_space_id - memory dataspace identifier + * file_space_id - memory dataspace identifier + * xfer_pr - identifier of transfer property list + * buf - data buffer to store references to the objects. + * n - number of references to be stored. + * Returns: 0 on success, -1 on failure + * Programmer: Elena Pourmal + * Wednesday, May 15, 2002 + * Modifications: This function was added to accomodate h5dread_f subroutine + * with the dims parameter being of INTEGER(HSIZE_T_F) size. + *---------------------------------------------------------------------------*/ +int_f +nh5dread_ref_obj_c_b (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, int_f * buf, hsize_t_f *dims) +{ + int ret_value = -1; + herr_t ret; + hid_t c_dset_id; + hid_t c_mem_type_id; + hid_t c_mem_space_id; + hid_t c_file_space_id; + hid_t c_xfer_prp; + hobj_ref_t *buf_c; + hsize_t i,n; + n = (hsize_t)*dims; + /* + * Define transfer property + */ + c_xfer_prp = (hid_t)*xfer_prp; + + /* + * Allocate temporary buffer. + */ + buf_c = (hobj_ref_t*)HDmalloc(sizeof(hobj_ref_t)*(n)); + if ( buf_c != NULL ) { + /* + * Call H5Dread function. + */ + c_dset_id = (hid_t)*dset_id; + c_mem_type_id = (hid_t)*mem_type_id; + c_mem_space_id = (hid_t)*mem_space_id; + c_file_space_id = (hid_t)*file_space_id; + ret = H5Dread(c_dset_id, c_mem_type_id, c_mem_space_id, c_file_space_id, c_xfer_prp, buf_c); + if (ret >=0) { + for (i = 0; i < n; i++) { + HDmemcpy(buf, buf_c[i].oid, H5R_OBJ_REF_BUF_SIZE); + buf = buf + REF_OBJ_BUF_LEN_F; + } + } + if ( buf_c != NULL ) HDfree(buf_c); + } + if (ret < 0) return ret_value; + ret_value = 0; + return ret_value; +} /*---------------------------------------------------------------------------- * Name: h5dread_ref_reg_c @@ -467,9 +780,6 @@ nh5dread_ref_reg_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_i * Define transfer property */ c_xfer_prp = (hid_t)*xfer_prp; -/* - if ( H5P_DEFAULT_F == c_xfer_prp ) c_xfer_prp = H5P_DEFAULT; -*/ /* * Allocate temporary buffer. @@ -496,6 +806,66 @@ nh5dread_ref_reg_c (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_i ret_value = 0; return ret_value; } +/*---------------------------------------------------------------------------- + * Name: h5dread_ref_reg_c_b + * Purpose: Call H5Dread to read a dataset of dataset region references + * Inputs: dset_id - dataset identifier + * mem_type_id - memory datatype identifier + * mem_space_id - memory dataspace identifier + * file_space_id - memory dataspace identifier + * xfer_pr - identifier of transfer property list + * buf - data buffer to store references to the objects. + * n - number of references to be stored. + * Returns: 0 on success, -1 on failure + * Programmer: Elena Pourmal + * Wednesday, May 15, 2002 + * Modifications: This function was added to accomodate h5dread_f subroutine + * with the dims parameter being of INTEGER(HSIZE_T_F) size. + *---------------------------------------------------------------------------*/ +int_f +nh5dread_ref_reg_c_b (hid_t_f *dset_id, hid_t_f *mem_type_id, hid_t_f *mem_space_id, hid_t_f *file_space_id, hid_t_f *xfer_prp, int_f * buf, hsize_t_f *dims) +{ + int ret_value = -1; + herr_t ret; + hid_t c_dset_id; + hid_t c_mem_type_id; + hid_t c_mem_space_id; + hid_t c_file_space_id; + hid_t c_xfer_prp; + hdset_reg_ref_t *buf_c; + hsize_t i, n; + n = (hsize_t)*dims; + /* + * Define transfer property + */ + c_xfer_prp = (hid_t)*xfer_prp; + + /* + * Allocate temporary buffer. + */ + buf_c = (hdset_reg_ref_t *)HDmalloc(sizeof(hdset_reg_ref_t)*(n)); + if ( buf_c != NULL ) { + /* + * Call H5Dread function. + */ + c_dset_id = (hid_t)*dset_id; + c_mem_type_id = (hid_t)*mem_type_id; + c_mem_space_id = (hid_t)*mem_space_id; + c_file_space_id = (hid_t)*file_space_id; + ret = H5Dread(c_dset_id, c_mem_type_id, c_mem_space_id, c_file_space_id, c_xfer_prp, buf_c); + if (ret >=0) { + for (i = 0; i < n; i++) { + HDmemcpy(buf, buf_c[i].heapid, H5R_DSET_REG_REF_BUF_SIZE); + buf = buf + REF_REG_BUF_LEN_F; + } + } + if ( buf_c != NULL ) HDfree(buf_c); + } + if (ret < 0) return ret_value; + ret_value = 0; + return ret_value; +} + /*---------------------------------------------------------------------------- @@ -513,7 +883,7 @@ nh5dclose_c ( hid_t_f *dset_id ) { int ret_value = 0; hid_t c_dset_id; - c_dset_id = *dset_id; + c_dset_id = (hid_t)*dset_id; if ( H5Dclose(c_dset_id) < 0 ) ret_value = -1; return ret_value; } @@ -536,7 +906,7 @@ nh5dget_space_c ( hid_t_f *dset_id , hid_t_f *space_id) hid_t c_dset_id; hid_t c_space_id; - c_dset_id = *dset_id; + c_dset_id = (hid_t)*dset_id; c_space_id = H5Dget_space(c_dset_id); if(c_space_id < 0 ) return ret_value; ret_value = 0; @@ -562,7 +932,7 @@ nh5dget_type_c ( hid_t_f *dset_id , hid_t_f *type_id) hid_t c_dset_id; hid_t c_type_id; - c_dset_id = *dset_id; + c_dset_id = (hid_t)*dset_id; c_type_id = H5Dget_type(c_dset_id); if(c_type_id < 0 ) return ret_value; @@ -591,7 +961,7 @@ nh5dget_create_plist_c ( hid_t_f *dset_id , hid_t_f *plist_id) hid_t c_dset_id; hid_t c_plist_id; - c_dset_id = *dset_id; + c_dset_id = (hid_t)*dset_id; c_plist_id = H5Dget_create_plist(c_dset_id); if(c_plist_id < 0 ) return ret_value; @@ -624,7 +994,7 @@ nh5dextend_c ( hid_t_f *dset_id , hsize_t_f *dims) hid_t c_dset_id; hid_t c_space_id; - c_dset_id = *dset_id; + c_dset_id = (hid_t)*dset_id; c_space_id = H5Dget_space(c_dset_id); if (c_space_id < 0) return ret_value; |