diff options
Diffstat (limited to 'c++')
-rw-r--r-- | c++/src/H5FaccProp.cpp | 20 | ||||
-rw-r--r-- | c++/src/H5FaccProp.h | 9 |
2 files changed, 29 insertions, 0 deletions
diff --git a/c++/src/H5FaccProp.cpp b/c++/src/H5FaccProp.cpp index 4eae889..9625c00 100644 --- a/c++/src/H5FaccProp.cpp +++ b/c++/src/H5FaccProp.cpp @@ -189,6 +189,7 @@ void FileAccPropList::getMpi( MPI_Comm& comm, MPI_Info& info ) const } */ +#ifdef H5_WANT_H5_V1_4_COMPAT void FileAccPropList::setCache( int mdc_nelmts, int rdcc_nelmts, size_t rdcc_nbytes, double rdcc_w0 ) const { herr_t ret_value = H5Pset_cache( id, mdc_nelmts, rdcc_nelmts, rdcc_nbytes, rdcc_w0 ); @@ -198,6 +199,24 @@ void FileAccPropList::setCache( int mdc_nelmts, int rdcc_nelmts, size_t rdcc_nby } } +void FileAccPropList::getCache( int& mdc_nelmts, int& rdcc_nelmts, size_t& rdcc_nbytes, double& rdcc_w0 ) const +{ + herr_t ret_value = H5Pget_cache( id, &mdc_nelmts, &rdcc_nelmts, &rdcc_nbytes, &rdcc_w0 ); + if( ret_value < 0 ) + { + throw PropListIException("FileAccPropList::getCache", "H5Pget_cache failed"); + } +} +#else /* H5_WANT_H5_V1_4_COMPAT */ +void FileAccPropList::setCache( int mdc_nelmts, size_t rdcc_nelmts, size_t rdcc_nbytes, double rdcc_w0 ) const +{ + herr_t ret_value = H5Pset_cache( id, mdc_nelmts, rdcc_nelmts, rdcc_nbytes, rdcc_w0 ); + if( ret_value < 0 ) + { + throw PropListIException("FileAccPropList::setCache", "H5Pset_cache failed"); + } +} + void FileAccPropList::getCache( int& mdc_nelmts, size_t& rdcc_nelmts, size_t& rdcc_nbytes, double& rdcc_w0 ) const { herr_t ret_value = H5Pget_cache( id, &mdc_nelmts, &rdcc_nelmts, &rdcc_nbytes, &rdcc_w0 ); @@ -206,6 +225,7 @@ void FileAccPropList::getCache( int& mdc_nelmts, size_t& rdcc_nelmts, size_t& rd throw PropListIException("FileAccPropList::getCache", "H5Pget_cache failed"); } } +#endif /* H5_WANT_H5_V1_4_COMPAT */ void FileAccPropList::setGcReferences( unsigned gc_ref ) const { diff --git a/c++/src/H5FaccProp.h b/c++/src/H5FaccProp.h index 2851b5f..c48c65a 100644 --- a/c++/src/H5FaccProp.h +++ b/c++/src/H5FaccProp.h @@ -61,12 +61,21 @@ class FileAccPropList : public PropList { // family driver and retrieves the member's file access property list. // bool getFamily( hsize_t& memb_size, FileAccPropList& memb_plist ) const; +#ifdef H5_WANT_H5_V1_4_COMPAT // Sets the meta data cache and raw data chunk cache parameters. void setCache( int mdc_nelmts, int rdcc_nelmts, size_t rdcc_nbytes, double rdcc_w0 ) const; // Retrieves maximum sizes of data caches and the preemption // policy value. + void getCache( int& mdc_nelmts, int& rdcc_nelmts, size_t& rdcc_nbytes, double& rdcc_w0 ) const; +#else /* H5_WANT_H5_V1_4_COMPAT */ + // Sets the meta data cache and raw data chunk cache parameters. + void setCache( int mdc_nelmts, size_t rdcc_nelmts, size_t rdcc_nbytes, double rdcc_w0 ) const; + + // Retrieves maximum sizes of data caches and the preemption + // policy value. void getCache( int& mdc_nelmts, size_t& rdcc_nelmts, size_t& rdcc_nbytes, double& rdcc_w0 ) const; +#endif /* H5_WANT_H5_V1_4_COMPAT */ // Sets the low-level driver to split meta data from raw data. // void setSplit( FileAccPropList& meta_plist, FileAccPropList& raw_plist, |