diff options
Diffstat (limited to 'c++/src/H5RefCounter.h')
-rw-r--r-- | c++/src/H5RefCounter.h | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/c++/src/H5RefCounter.h b/c++/src/H5RefCounter.h new file mode 100644 index 0000000..dec1b3c --- /dev/null +++ b/c++/src/H5RefCounter.h @@ -0,0 +1,29 @@ +#ifndef _H5RefCounter_H +#define _H5RefCounter_H + +#ifndef H5_NO_NAMESPACE +namespace H5 { +#endif + +class RefCounter { + public: + // Creates a reference counter to be used by an HDF5 object + RefCounter(); + + int getCounter () const; + void increment(); + void decrement(); + + // this bool function is used to determine whether to close an + // HDF5 object when there are no more reference to that object + bool noReference(); + + ~RefCounter(); + + private: + int counter; // keeps track of number of copies of an object +}; +#ifndef H5_NO_NAMESPACE +} +#endif +#endif |