diff options
author | Mohamad Chaarawi <chaarawi@hdfgroup.org> | 2013-06-21 13:54:45 (GMT) |
---|---|---|
committer | Mohamad Chaarawi <chaarawi@hdfgroup.org> | 2013-06-21 13:54:45 (GMT) |
commit | b94be74cbf9206b20d357154eb95da17185c474c (patch) | |
tree | da27789d93b1b97b808679bbbc35273826c2c657 /src/H5Tcommit.c | |
parent | 018ed55299f5e5c2c580c5a40704a61dc30c72c9 (diff) | |
download | hdf5-b94be74cbf9206b20d357154eb95da17185c474c.zip hdf5-b94be74cbf9206b20d357154eb95da17185c474c.tar.gz hdf5-b94be74cbf9206b20d357154eb95da17185c474c.tar.bz2 |
[svn-r23803] Add VOL callback for H5Aiterate
Add VOL callback for H5T get routines
Update Native implementation
Diffstat (limited to 'src/H5Tcommit.c')
-rw-r--r-- | src/H5Tcommit.c | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/src/H5Tcommit.c b/src/H5Tcommit.c index 6c1dbb5..bb0a2ba 100644 --- a/src/H5Tcommit.c +++ b/src/H5Tcommit.c @@ -684,19 +684,20 @@ H5Tget_create_plist(hid_t dtype_id) /* Retrieve further information, if the datatype is committed */ if(status > 0) { - H5P_genplist_t *new_plist; /* New datatype creation property list */ + H5VL_t *vol_plugin; /* VOL plugin information */ + + /* get the plugin pointer */ + if (NULL == (vol_plugin = (H5VL_t *)H5I_get_aux(dtype_id))) + HGOTO_ERROR(H5E_ARGS, H5E_BADTYPE, FAIL, "ID does not contain VOL information") /* get the named datatype object */ if(NULL == (type = (H5T_t *)H5VL_get_object(dtype_id))) HGOTO_ERROR(H5E_ARGS, H5E_BADTYPE, FAIL, "invalid file identifier") - /* Get property list object for new TCPL */ - if(NULL == (new_plist = (H5P_genplist_t *)H5I_object(new_tcpl_id))) - HGOTO_ERROR(H5E_ARGS, H5E_BADTYPE, FAIL, "can't get property list") - - /* Retrieve any object creation properties */ - if(H5O_get_create_plist(&type->oloc, H5AC_ind_dxpl_id, new_plist) < 0) - HGOTO_ERROR(H5E_DATATYPE, H5E_CANTGET, FAIL, "can't get object creation info") + /* get the rest of the plist through the VOL */ + if(H5VL_datatype_get(type, vol_plugin, H5VL_DATATYPE_GET_TCPL, + H5AC_dxpl_id, H5_EVENT_QUEUE_NULL, new_tcpl_id) < 0) + HGOTO_ERROR(H5E_INTERNAL, H5E_CANTGET, FAIL, "unable to get datatype") } /* end if */ /* Set the return value */ |