summaryrefslogtreecommitdiffstats
path: root/c++
diff options
context:
space:
mode:
Diffstat (limited to 'c++')
-rw-r--r--c++/src/H5DcreatProp.cpp14
-rw-r--r--c++/src/H5DcreatProp.h4
-rw-r--r--c++/test/dsets.cpp2
3 files changed, 14 insertions, 6 deletions
diff --git a/c++/src/H5DcreatProp.cpp b/c++/src/H5DcreatProp.cpp
index f252151..f4150ac 100644
--- a/c++/src/H5DcreatProp.cpp
+++ b/c++/src/H5DcreatProp.cpp
@@ -298,16 +298,19 @@ int DSetCreatPropList::getNfilters() const
///\param cd_values - OUT: Array to hold the data; allocated by the user
///\param namelen - OUT: Length of \a name
///\param name - OUT: Name of the filter
+///\param filter_config - OUT: Flags indicating whether filter can encode/decode
///\return Filter id
///\exception H5::PropListIException
///\par Description
/// Failure occurs when \a filter_number is out of range.
//--------------------------------------------------------------------------
-H5Z_filter_t DSetCreatPropList::getFilter(int filter_number, unsigned int &flags, size_t &cd_nelmts, unsigned int* cd_values, size_t namelen, char name[]) const
+H5Z_filter_t DSetCreatPropList::getFilter(int filter_number, unsigned int &flags, size_t &cd_nelmts,
+ unsigned int* cd_values, size_t namelen, char name[],
+ unsigned int& filter_config) const
{
H5Z_filter_t filter_id;
filter_id = H5Pget_filter( id, filter_number, &flags, &cd_nelmts,
- cd_values, namelen, name );
+ cd_values, namelen, name, &filter_config);
if( filter_id == H5Z_FILTER_ERROR )
{
throw PropListIException("DSetCreatPropList::getFilter",
@@ -328,12 +331,15 @@ H5Z_filter_t DSetCreatPropList::getFilter(int filter_number, unsigned int &flags
///\param cd_values - OUT: Array to hold the data; allocated by the user
///\param namelen - IN: Length of \a name
///\param name - OUT: Name of the filter
+///\param filter_config - OUT: Flags indicating whether filter can encode/decode
///\exception H5::PropListIException
//--------------------------------------------------------------------------
-void DSetCreatPropList::getFilterById(H5Z_filter_t filter_id, unsigned int &flags, size_t &cd_nelmts, unsigned int* cd_values, size_t namelen, char name[]) const
+void DSetCreatPropList::getFilterById(H5Z_filter_t filter_id, unsigned int &flags, size_t &cd_nelmts,
+ unsigned int* cd_values, size_t namelen, char name[],
+ unsigned int &filter_config) const
{
herr_t ret_value = H5Pget_filter_by_id(id, filter_id, &flags, &cd_nelmts,
- cd_values, namelen, name );
+ cd_values, namelen, name, &filter_config );
if (ret_value < 0)
{
throw PropListIException("DSetCreatPropList::getFilterById",
diff --git a/c++/src/H5DcreatProp.h b/c++/src/H5DcreatProp.h
index 765ce68..6ae1b75 100644
--- a/c++/src/H5DcreatProp.h
+++ b/c++/src/H5DcreatProp.h
@@ -67,10 +67,10 @@ class H5_DLLCPP DSetCreatPropList : public PropList {
int getNfilters() const;
// Returns information about a filter in a pipeline
- H5Z_filter_t getFilter( int filter_number, unsigned int& flags, size_t& cd_nelmts, unsigned int* cd_values, size_t namelen, char name[] ) const;
+ H5Z_filter_t getFilter( int filter_number, unsigned int& flags, size_t& cd_nelmts, unsigned int* cd_values, size_t namelen, char name[], unsigned int &filter_config ) const;
// Returns information about a filter in a pipeline given the filter id
- void getFilterById(H5Z_filter_t filter_id, unsigned int &flags, size_t &cd_nelmts, unsigned int* cd_values, size_t namelen, char name[]) const;
+ void getFilterById(H5Z_filter_t filter_id, unsigned int &flags, size_t &cd_nelmts, unsigned int* cd_values, size_t namelen, char name[], unsigned int &filter_config) const;
// Modifies the specified filter
void modifyFilter( H5Z_filter_t filter_id, unsigned int flags, size_t cd_nelmts, const unsigned int cd_values[] ) const;
diff --git a/c++/test/dsets.cpp b/c++/test/dsets.cpp
index 0d58cd0..08ce98e 100644
--- a/c++/test/dsets.cpp
+++ b/c++/test/dsets.cpp
@@ -375,7 +375,9 @@ test_tconv( H5File& file)
/* This message derives from H5Z */
const H5Z_class_t H5Z_BOGUS[1] = {{
+ H5Z_CLASS_T_VERS, /* H5Z_class_t version number */
H5Z_FILTER_BOGUS, /* Filter id number */
+ 1, 1, /* Encode and decode enabled */
"bogus", /* Filter name for debugging */
NULL, /* The "can apply" callback */
NULL, /* The "set local" callback */