//#define OBJECT_DEBUG
-#ifdef OBJECT_DEBUG
- #include <lib/base/eerror.h>
-#endif
+#include <lib/base/eerror.h>
typedef int RESULT;
volatile int count;
oRefCount(): count(0) { }
operator volatile int&() { return count; }
- ~oRefCount() {
+ ~oRefCount()
+ {
#ifdef OBJECT_DEBUG
- if (count) eDebug("OBJECT_DEBUG FATAL: %p has %d references!", this, count); else eDebug("OBJECT_DEBUG refcount ok! (%p)", this);
+ if (count)
+ eDebug("OBJECT_DEBUG FATAL: %p has %d references!", this, count);
+ else
+ eDebug("OBJECT_DEBUG refcount ok! (%p)", this);
#endif
}
};
delete this; \
}
#else
+ #warning use non optimized implementation of refcounting.
#define DECLARE_REF(x) \
private:oRefCount ref; \
eSingleLock ref_lock; \