Drag[en]gine Game Engine  1.21
deObject Class Reference

Basic object interface. More...

#include <deObject.h>

Inheritance diagram for deObject:
deAnimatorRule deColliderCollisionTest deCollisionInfo deDecalList deInputDevice deLoadableModule deLogger deNetworkMessage deNetworkValue deResource deSkinMapped deSoundDecoder deSynthesizerController deSynthesizerEffect deSynthesizerLink deSynthesizerSource deVFSContainer deVideoAudioDecoder deVideoDecoder deVirtualFileSystem decBaseFileReader decBaseFileWriter decMemoryFile decXmlElement

Public Types

typedef deTObjectReference< deObjectRef
 Type holding strong reference. More...
 

Public Member Functions

Management
int GetRefCount () const
 Reference count. More...
 
void AddReference ()
 Add reference increasing reference count by 1. More...
 
void FreeReference ()
 Decrease reference count by one and delete object if count reaches 0. More...
 

Constructors and Destructors

 deObject ()
 Create object with reference count of 1. More...
 
virtual ~deObject ()
 Clean up object. More...
 

Detailed Description

Basic object interface.

Provides the basic class for all engine objects. Each object has a reference count. Objects stay alive as long as the reference count is larger than 0. If you want to add a reference use the AddReference function. If you want to free the reference you have added before use the FreeReference function and do not call 'delete'. Upon creation each object is assigned a reference count of 1 so you do not have to add a refernece after creating an object.

Member Typedef Documentation

◆ Ref

Type holding strong reference.

Constructor & Destructor Documentation

◆ deObject()

deObject::deObject ( )

Create object with reference count of 1.

◆ ~deObject()

virtual deObject::~deObject ( )
protectedvirtual

Clean up object.

Note
Subclasses should set their destructor protected too to avoid users accidently deleting a reference counted object through the object pointer. Only FreeReference() is allowed to delete the object.

Member Function Documentation

◆ AddReference()

void deObject::AddReference ( )

Add reference increasing reference count by 1.

◆ FreeReference()

void deObject::FreeReference ( )

Decrease reference count by one and delete object if count reaches 0.

◆ GetRefCount()

int deObject::GetRefCount ( ) const
inline

Reference count.


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