diff options
author | Binh-Minh Ribler <bmribler@hdfgroup.org> | 2006-10-22 08:22:30 (GMT) |
---|---|---|
committer | Binh-Minh Ribler <bmribler@hdfgroup.org> | 2006-10-22 08:22:30 (GMT) |
commit | daa61b598616713bd39d360aeb9dbbd7ec5803cb (patch) | |
tree | 6765b17006dcfab43126e37f205c940c4201fefc /c++/src/H5DataSet.h | |
parent | 118b1d38fa0d00d0cff94d33e753b11bd732951f (diff) | |
download | hdf5-daa61b598616713bd39d360aeb9dbbd7ec5803cb.zip hdf5-daa61b598616713bd39d360aeb9dbbd7ec5803cb.tar.gz hdf5-daa61b598616713bd39d360aeb9dbbd7ec5803cb.tar.bz2 |
[svn-r12795] Purpose: Fixing bug
Description:
Wrappers of H5Rcreate had incorrect prototypes.
Solution:
Added these overloaded functions for H5Rcreate wrapper to IdComponent:
void reference(void* ref, const char* name, DataSpace& dataspace,
H5R_type_t ref_type = H5R_DATASET_REGION) const;
void reference(void* ref, const char* name) const;
void reference(void* ref, const H5std_string& name) const;
Added these overloaded functions for H5Rdereference:
void dereference(IdComponent& obj, void* ref);
DataSet(IdComponent& obj, void* ref);
Group(IdComponent& obj, void* ref);
DataType(IdComponent& obj, void* ref);
The incorrect wrappers will be removed after announcing.
Platform tested:
Linux 2.4 (heping)
AIX 5.1 (copper)
SunOS 5.8 64-bit (sol)
Diffstat (limited to 'c++/src/H5DataSet.h')
-rw-r--r-- | c++/src/H5DataSet.h | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/c++/src/H5DataSet.h b/c++/src/H5DataSet.h index a851d3d..490b575 100644 --- a/c++/src/H5DataSet.h +++ b/c++/src/H5DataSet.h @@ -70,24 +70,27 @@ class H5_DLLCPP DataSet : public AbstractDs { int iterateElems( void* buf, const DataType& type, const DataSpace& space, H5D_operator_t op, void* op_data = NULL ); // Retrieves the type of object that an object reference points to. - H5G_obj_t getObjType(void *ref, H5R_type_t ref_type) const; + H5G_obj_t getObjType(void *ref, H5R_type_t ref_type = H5R_OBJECT) const; // Retrieves a dataspace with the region pointed to selected. DataSpace getRegion(void *ref, H5R_type_t ref_type = H5R_DATASET_REGION) const; // Creates a reference to a named Hdf5 object or to a dataset region // in this object. - void* Reference(const char* name, DataSpace& dataspace, H5R_type_t ref_type = H5R_DATASET_REGION) const; + void* Reference(const char* name, DataSpace& dataspace, H5R_type_t ref_type = H5R_DATASET_REGION) const; // will be obsolete // Creates a reference to a named Hdf5 object in this object. - void* Reference(const char* name) const; - void* Reference(const H5std_string& name) const; + void* Reference(const char* name) const; // will be obsolete + void* Reference(const H5std_string& name) const; // will be obsolete + + // Opens a referenced dataset. + DataSet dereference(void* ref) const; // Returns this class name virtual H5std_string fromClass () const { return("DataSet"); } - // Creates a copy of an existing DataSet using its id. - DataSet(const hid_t existing_id); + // Creates a dataset by way of dereference. + DataSet(IdComponent& obj, void* ref); // Default constructor. DataSet(); @@ -95,6 +98,9 @@ class H5_DLLCPP DataSet : public AbstractDs { // Copy constructor. DataSet( const DataSet& original ); + // Creates a copy of an existing DataSet using its id. + DataSet(const hid_t existing_id); + // Destructor: properly terminates access to this dataset. virtual ~DataSet(); |