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

InternalPacketPool Class Reference

Manage Internal Packet using pools. More...

#include <InternalPacketPool.h>

List of all members.

Public Member Functions

 InternalPacketPool ()
 ~InternalPacketPool ()
InternalPacketGetPointer (void)
void ReleasePointer (InternalPacket *p)
void ClearPool (void)

Static Public Member Functions

static InternalPacketPoolInstance ()

Private Attributes

BasicDataStructures::Queue<
InternalPacket * > 
pool
SimpleMutex poolMutex

Static Private Attributes

static InternalPacketPool I


Detailed Description

Manage Internal Packet using pools.

This class provide memory management for packets used internaly in RakNet.

See also:
PacketPool
Note:
Implement Singleton Pattern


Constructor & Destructor Documentation

InternalPacketPool::InternalPacketPool  ) 
 

Constructor

InternalPacketPool::~InternalPacketPool  ) 
 

Destructor


Member Function Documentation

void InternalPacketPool::ClearPool void   ) 
 

Clear the pool

InternalPacket * InternalPacketPool::GetPointer void   ) 
 

Retrieve a new InternalPacket instance.

Returns:
a pointer to an InternalPacket structure.

static InternalPacketPool* InternalPacketPool::Instance  )  [inline, static]
 

static function because only static functions can access static members

Returns:
the unique instance of the class InternalPacketPool.
Note:
Singleton pattern unique instance access function.

void InternalPacketPool::ReleasePointer InternalPacket p  ) 
 

Free am InternalPacket instance

Parameters:
p a pointer to the InternalPacket instance.


Member Data Documentation

InternalPacketPool InternalPacketPool::I [static, private]
 

Unique Instance

BasicDataStructures::Queue<InternalPacket*> InternalPacketPool::pool [private]
 

InternalPacket pool

SimpleMutex InternalPacketPool::poolMutex [private]
 

Multithread access management


The documentation for this class was generated from the following files:
Generated on Mon May 30 17:45:42 2005 for raknet by  doxygen 1.4.2