diff options
author | Binh-Minh Ribler <bmribler@hdfgroup.org> | 2004-05-03 04:52:45 (GMT) |
---|---|---|
committer | Binh-Minh Ribler <bmribler@hdfgroup.org> | 2004-05-03 04:52:45 (GMT) |
commit | 3b490063e369c7b2711b121151ccc1288d4ba24f (patch) | |
tree | d42a3d571b288a46cacaa31f3b2881e7b256d6b7 | |
parent | db8f63f552de78aed3a0a773240380445519fdaf (diff) | |
download | hdf5-3b490063e369c7b2711b121151ccc1288d4ba24f.zip hdf5-3b490063e369c7b2711b121151ccc1288d4ba24f.tar.gz hdf5-3b490063e369c7b2711b121151ccc1288d4ba24f.tar.bz2 |
[svn-r8466]
Purpose: Correct my mistake
Description:
I inadvertently deleted the changes that Ray and Quincey put in
these two files. Added them back.
Platforms tested:
SunOS 5.8-64 (sol)
Linux 2.4 (eirene)
Misc. update:
-rw-r--r-- | c++/src/H5DxferProp.cpp | 24 | ||||
-rw-r--r-- | c++/src/H5DxferProp.h | 6 |
2 files changed, 30 insertions, 0 deletions
diff --git a/c++/src/H5DxferProp.cpp b/c++/src/H5DxferProp.cpp index 8d614c4..de4fb8f 100644 --- a/c++/src/H5DxferProp.cpp +++ b/c++/src/H5DxferProp.cpp @@ -116,6 +116,30 @@ void DSetMemXferPropList::getBtreeRatios( double& left, double& middle, double& } } +// Sets an exception handling callback for datatype conversion +// for a dataset transfer property list +void DSetMemXferPropList::setTypeConvCB( H5T_conv_except_func_t op, void *user_data) const +{ + herr_t ret_value = H5Pset_type_conv_cb( id, op, user_data); + if( ret_value < 0 ) + { + throw PropListIException("DSetMemXferPropList::setTypeConvCB", + "H5Pset_type_conv_cb failed"); + } +} + +// Sets an exception handling callback for datatype conversion +// for a dataset transfer property list +void DSetMemXferPropList::getTypeConvCB( H5T_conv_except_func_t *op, void **user_data) const +{ + herr_t ret_value = H5Pget_type_conv_cb( id, op, user_data); + if( ret_value < 0 ) + { + throw PropListIException("DSetMemXferPropList::getTypeConvCB", + "H5Pget_type_conv_cb failed"); + } +} + // Sets the memory manager for variable-length datatype allocation void DSetMemXferPropList::setVlenMemManager( H5MM_allocate_t alloc_func, void* alloc_info, H5MM_free_t free_func, void* free_info ) const { diff --git a/c++/src/H5DxferProp.h b/c++/src/H5DxferProp.h index 4078993..e457906 100644 --- a/c++/src/H5DxferProp.h +++ b/c++/src/H5DxferProp.h @@ -48,6 +48,12 @@ class H5_DLLCPP DSetMemXferPropList : public PropList { // Gets B-tree split ratios for a dataset transfer property list void getBtreeRatios( double& left, double& middle, double& right ) const; + // Sets an exception handling callback for datatype conversion + void setTypeConvCB( H5T_conv_except_func_t op, void *user_data) const; + + // Gets the exception handling callback for datatype conversion + void getTypeConvCB( H5T_conv_except_func_t *op, void **user_data) const; + // Sets the memory manager for variable-length datatype // allocation in H5Dread and H5Dvlen_reclaim void setVlenMemManager( H5MM_allocate_t alloc, void* alloc_info, |