summaryrefslogtreecommitdiffstats
path: root/c++/src/H5DataType.h
diff options
context:
space:
mode:
authorBinh-Minh Ribler <bmribler@hdfgroup.org>2008-05-20 20:24:44 (GMT)
committerBinh-Minh Ribler <bmribler@hdfgroup.org>2008-05-20 20:24:44 (GMT)
commit988e907b113c992cd2878705a5b98b499a4ccf41 (patch)
tree31b669eff3d8afade2cc50fa621d5559bb4c945c /c++/src/H5DataType.h
parent980d1837908aa700efcf7edc0be62a9fc207c6ed (diff)
downloadhdf5-988e907b113c992cd2878705a5b98b499a4ccf41.zip
hdf5-988e907b113c992cd2878705a5b98b499a4ccf41.tar.gz
hdf5-988e907b113c992cd2878705a5b98b499a4ccf41.tar.bz2
[svn-r15046] Purpose: Fixed bugs
Description: The class hierarchy was revised to address the problem reported in bugzilla #1068. Classes AbstractDS and Attribute are moved out of H5Object. Class Attribute now multiply inherits from IdComponent and AbstractDs and class DataSet from H5Object and AbstractDs. In addition, data member IdComponent::id was moved into subclasses: Attribute, DataSet, DataSpace, DataType, H5File, Group, and PropList. Also fixed bugzilla 1045: revised Attribute::write and Attribute::read wrappers to handle memory allocation/deallocation properly. (bugzilla 1045) Platforms tested: SunOS 5.10 (linew) Linux 2.6 (kagiso) FreeBSD (duty)
Diffstat (limited to 'c++/src/H5DataType.h')
-rw-r--r--c++/src/H5DataType.h18
1 files changed, 9 insertions, 9 deletions
diff --git a/c++/src/H5DataType.h b/c++/src/H5DataType.h
index 588a57a..509dd49 100644
--- a/c++/src/H5DataType.h
+++ b/c++/src/H5DataType.h
@@ -30,7 +30,8 @@ class H5_DLLCPP DataType : public H5Object {
DataType( const DataType& original );
// Creates a datatype by way of dereference.
- DataType(IdComponent& obj, void* ref);
+ DataType(H5Object& obj, void* ref);
+ DataType(H5File& file, void* ref);
// Closes this datatype.
virtual void close();
@@ -99,14 +100,6 @@ class H5_DLLCPP DataType : public H5Object {
// Checks whether this datatype is a variable-length string.
bool isVariableStr() 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; // will be obsolete
-
- // Creates a reference to a named HDF5 object in this object.
- void* Reference(const char* name) const; // will be obsolete
- void* Reference(const H5std_string& name) const; // will be obsolete
-
#ifndef H5_NO_DEPRECATED_SYMBOLS
// Retrieves the type of object that an object reference points to.
H5G_obj_t getObjType(void *ref, H5R_type_t ref_type = H5R_OBJECT) const;
@@ -124,8 +117,15 @@ class H5_DLLCPP DataType : public H5Object {
// Default constructor
DataType();
+ // Gets the datatype id.
+ virtual hid_t getId() const;
+ virtual void setId(const hid_t new_id);
+
// Destructor: properly terminates access to this datatype.
virtual ~DataType();
+
+ protected:
+ hid_t id; // HDF5 datatype id
private:
void p_commit(hid_t loc_id, const char* name);
};