osg::MemoryObject Class Reference
[Base]

#include <OSGMemoryObject.h>

Inheritance diagram for osg::MemoryObject:

osg::ChangeList osg::ClusterNetwork osg::DrawTreeNode osg::MPBase osg::SharedObject osg::TextFace osg::BarrierCommonBase osg::BaseThreadCommonBase osg::LockCommonBase osg::TextPixmapFace osg::TextTXFFace osg::TextVectorFace osg::PThreadBarrierBase osg::BasePThreadBase osg::LockPool osg::PThreadLockBase osg::Barrier osg::BaseThread osg::Lock osg::ThreadCommonBase osg::PThreadBase osg::ExternalThread osg::Thread

List of all members.

Public Member Functions

Destructor


virtual ~MemoryObject (void)
Reference Counting


void addRef (void)
void subRef (void)
Int32 getRefCount (void)

Protected Member Functions

Constructors


 MemoryObject (void)
 MemoryObject (const MemoryObject &source)

Private Member Functions

void operator= (const MemoryObject &source)
 prohibit default function (move to 'public' if needed)

Private Attributes

Int32 _refCount
 reference count


Detailed Description

Memory, simple reference counted memory object. Parent of everything that should be shared, but must not be thread safe.

Definition at line 55 of file OSGMemoryObject.h.


Constructor & Destructor Documentation

MemoryObject::~MemoryObject ( void   )  [virtual]

Definition at line 57 of file OSGMemoryObject.cpp.

00058 {
00059 }

MemoryObject::MemoryObject ( void   )  [protected]

Definition at line 85 of file OSGMemoryObject.cpp.

00085                                :
00086     _refCount(0)
00087 {
00088 }

MemoryObject::MemoryObject ( const MemoryObject source  )  [protected]

Definition at line 90 of file OSGMemoryObject.cpp.

00090                                                :
00091     _refCount(0)
00092 {
00093 }


Member Function Documentation

void MemoryObject::addRef ( void   ) 

Definition at line 64 of file OSGMemoryObject.cpp.

References _refCount.

Referenced by osg::SharedObjectHandler::getSharedObject(), and osg::SharedObjectHandler::initialize().

00065 {
00066     _refCount++;
00067 }

void MemoryObject::subRef ( void   ) 

Definition at line 69 of file OSGMemoryObject.cpp.

References _refCount.

00070 {
00071     _refCount--;
00072 
00073     if(_refCount <= 0)
00074         delete this;
00075 }

Int32 MemoryObject::getRefCount ( void   ) 

Definition at line 77 of file OSGMemoryObject.cpp.

References _refCount.

00078 {
00079     return _refCount;
00080 }

void osg::MemoryObject::operator= ( const MemoryObject source  )  [private]


Member Data Documentation

Definition at line 94 of file OSGMemoryObject.h.

Referenced by addRef(), getRefCount(), and subRef().


The documentation for this class was generated from the following files:

Generated on Mon Mar 17 12:03:16 2008 for OpenSG by  doxygen 1.5.5