blob: f98f7d1f8692289b0834175e02507982e40a5c2d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
#include "H5RefCounter.h"
#ifndef H5_NO_NAMESPACE
namespace H5 {
using namespace std;
#endif
// Creates a reference counter to be used by an HDF5 object
RefCounter::RefCounter() : counter(1) { };
// Returns the current value of the reference counter
int RefCounter::getCounter () const { return counter; }
// Increments the reference counter as a copy of the object that uses
// this counter is created.
void RefCounter::increment() { counter++; }
// Decrements the reference counter as a copy of the object that uses
// this counter is destroyed.
void RefCounter::decrement() { counter--; }
// Decrements the reference counter then determines if there are no more
// reference to the object that uses this counter
bool RefCounter::noReference()
{
if( counter > 0 )
counter--;
return( counter == 0 ? true:false );
}
RefCounter::~RefCounter() {}
#ifndef H5_NO_NAMESPACE
} // end namespace
#endif
|