summaryrefslogtreecommitdiffstats
path: root/c++
diff options
context:
space:
mode:
authorBinh-Minh Ribler <bmribler@hdfgroup.org>2004-05-03 04:52:45 (GMT)
committerBinh-Minh Ribler <bmribler@hdfgroup.org>2004-05-03 04:52:45 (GMT)
commit3b490063e369c7b2711b121151ccc1288d4ba24f (patch)
treed42a3d571b288a46cacaa31f3b2881e7b256d6b7 /c++
parentdb8f63f552de78aed3a0a773240380445519fdaf (diff)
downloadhdf5-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:
Diffstat (limited to 'c++')
-rw-r--r--c++/src/H5DxferProp.cpp24
-rw-r--r--c++/src/H5DxferProp.h6
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,