(svn r10644) -Merge (from NoAI): framework for reference counted objects (pointers).

This commit is contained in:
rubidium
2007-07-20 18:44:04 +00:00
parent 3f983ff1f2
commit 5083f22d1d
3 changed files with 133 additions and 8 deletions

66
src/misc/countedobj.cpp Normal file
View File

@@ -0,0 +1,66 @@
/* $Id$ */
#include "../stdafx.h"
#include "countedptr.hpp"
int32 SimpleCountedObject::AddRef()
{
return ++m_ref_cnt;
}
int32 SimpleCountedObject::Release()
{
int32 res = --m_ref_cnt;
assert(res >= 0);
if (res == 0) {
FinalRelease();
delete this;
}
return res;
}
/* $Id$ */
#include "../stdafx.h"
#include "countedptr.hpp"
int32 SimpleCountedObject::AddRef()
{
return ++m_ref_cnt;
}
int32 SimpleCountedObject::Release()
{
int32 res = --m_ref_cnt;
assert(res >= 0);
if (res == 0) {
FinalRelease();
delete this;
}
return res;
}
/* $Id$ */
#include "../stdafx.h"
#include "countedptr.hpp"
int32 SimpleCountedObject::AddRef()
{
return ++m_ref_cnt;
}
int32 SimpleCountedObject::Release()
{
int32 res = --m_ref_cnt;
assert(res >= 0);
if (res == 0) {
FinalRelease();
delete this;
}
return res;
}