summaryrefslogtreecommitdiffstats
path: root/c++/src/H5IdComponent.h
diff options
context:
space:
mode:
Diffstat (limited to 'c++/src/H5IdComponent.h')
-rw-r--r--c++/src/H5IdComponent.h16
1 files changed, 13 insertions, 3 deletions
diff --git a/c++/src/H5IdComponent.h b/c++/src/H5IdComponent.h
index 18bcacb..d353f11 100644
--- a/c++/src/H5IdComponent.h
+++ b/c++/src/H5IdComponent.h
@@ -22,6 +22,7 @@
namespace H5 {
#endif
+class DataSpace;
class H5_DLLCPP IdComponent {
public:
// Increment reference counter.
@@ -36,12 +37,20 @@ class H5_DLLCPP IdComponent {
int getCounter(const hid_t obj_id) const;
int getCounter() const;
- // Returns an HDF object type, given the object id.
+ // Returns an HDF5 object type, given the object id.
static H5I_type_t getHDFObjType(const hid_t obj_id);
- // Assignment operator
+ // Assignment operator.
IdComponent& operator=( const IdComponent& rhs );
+ void reference(void* ref, const char* name, const 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;
+
+ // Open a referenced HDF5 object.
+ void dereference(IdComponent& obj, void* ref);
+
// Sets the identifier of this object to a new value.
void setId(const hid_t new_id);
@@ -85,7 +94,8 @@ class H5_DLLCPP IdComponent {
hid_t p_get_file_id();
// Creates a reference to an HDF5 object or a dataset region.
- void* p_reference(const char* name, hid_t space_id, H5R_type_t ref_type) const;
+ void p_reference(void* ref, const char* name, hid_t space_id, H5R_type_t ref_type) const;
+ void* p_reference(const char* name, hid_t space_id, H5R_type_t ref_type) const; // will be removed
// Retrieves the type of object that an object reference points to.
H5G_obj_t p_get_obj_type(void *ref, H5R_type_t ref_type) const;