summaryrefslogtreecommitdiffstats
path: root/c++/src/H5DataSet.h
diff options
context:
space:
mode:
authorBinh-Minh Ribler <bmribler@hdfgroup.org>2009-07-27 04:00:17 (GMT)
committerBinh-Minh Ribler <bmribler@hdfgroup.org>2009-07-27 04:00:17 (GMT)
commitc1ad3676c4b56b80663d271ac367a65cc41c39ab (patch)
tree42f19502941ff1d02d45b92a7f8a0a3f6945002e /c++/src/H5DataSet.h
parent405ea51bb7728dc696e29694b22e81dc4b6ce2c1 (diff)
downloadhdf5-c1ad3676c4b56b80663d271ac367a65cc41c39ab.zip
hdf5-c1ad3676c4b56b80663d271ac367a65cc41c39ab.tar.gz
hdf5-c1ad3676c4b56b80663d271ac367a65cc41c39ab.tar.bz2
[svn-r17238] Purpose: Fix bug and improve readability
Description: - Revised DataSet::write to pass in correct string buffer - Added member function DataSet::getInMemDataSize() to simplify getting the dataset's data size in memory. - Added private functions for reading fixed- and variable-length string data: p_read_fixed_len and p_read_variable_len. - Added tests to write/read array of strings to datasets. Platforms tested: Linux/32 2.6 (jam) FreeBSD/64 6.3 (liberty) SunOS 5.10 (linew)
Diffstat (limited to 'c++/src/H5DataSet.h')
-rw-r--r--c++/src/H5DataSet.h9
1 files changed, 8 insertions, 1 deletions
diff --git a/c++/src/H5DataSet.h b/c++/src/H5DataSet.h
index f26d775..3d9183d 100644
--- a/c++/src/H5DataSet.h
+++ b/c++/src/H5DataSet.h
@@ -49,7 +49,10 @@ class H5_DLLCPP DataSet : public H5Object, public AbstractDs {
void getSpaceStatus(H5D_space_status_t& status) const;
// Returns the amount of storage size required for this dataset.
- hsize_t getStorageSize() const;
+ virtual hsize_t getStorageSize() const;
+
+ // Returns the in memory size of this attribute's data.
+ virtual size_t getInMemDataSize() const;
// Returns the number of bytes required to store VL data.
hsize_t getVlenBufSize( DataType& type, DataSpace& space ) const;
@@ -113,6 +116,10 @@ class H5_DLLCPP DataSet : public H5Object, public AbstractDs {
// sub-types
virtual hid_t p_get_type() const;
+ // Reads variable or fixed len strings from this dataset.
+ void p_read_fixed_len(const hid_t mem_type_id, const hid_t mem_space_id, const hid_t file_space_id, const hid_t xfer_plist_id, H5std_string& strg) const;
+ void p_read_variable_len(const hid_t mem_type_id, const hid_t mem_space_id, const hid_t file_space_id, const hid_t xfer_plist_id, H5std_string& strg) const;
+
protected:
// Sets the dataset id.
virtual void p_setId(const hid_t new_id);