Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

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

Int32 MemoryObject::_refCount [private]
 

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


The documentation for this class was generated from the following files:
Generated on Thu Aug 25 04:12:35 2005 for OpenSG by  doxygen 1.4.3