LeechCraft  0.6.70-10870-g558588d6ec
Modular cross-platform feature rich live environment.
LeechCraft::Util::IDPool< T > Class Template Reference

A simple pool of identificators of the given type. More...

#include "idpool.h"

Public Member Functions

 IDPool (const T &id=T())
 Creates a pool with the given initial value. More...
 
virtual ~IDPool ()
 Destroys the pool. More...
 
GetID ()
 Returns next ID. More...
 
void SetID (T id)
 Forcefully sets the current ID. More...
 
void FreeID (T id)
 Frees the id. More...
 
QByteArray SaveState () const
 Saves the state of this pool. More...
 
void LoadState (const QByteArray &state)
 Recovers the state of this pool. More...
 

Detailed Description

template<typename T>
class LeechCraft::Util::IDPool< T >

A simple pool of identificators of the given type.

This class holds a pool of identificators of the given type T. It is very simple and produces consecutive IDs, this T should support operator++().

Definition at line 49 of file idpool.h.

Constructor & Destructor Documentation

◆ IDPool()

template<typename T >
LeechCraft::Util::IDPool< T >::IDPool ( const T &  id = T ())
inline

Creates a pool with the given initial value.

Parameters
[in]idThe initial value of the pool.

Definition at line 57 of file idpool.h.

◆ ~IDPool()

template<typename T >
virtual LeechCraft::Util::IDPool< T >::~IDPool ( )
inlinevirtual

Destroys the pool.

Definition at line 64 of file idpool.h.

Member Function Documentation

◆ FreeID()

template<typename T >
void LeechCraft::Util::IDPool< T >::FreeID ( id)
inline

Frees the id.

Parameters
[in]idThe ID to free.

Definition at line 90 of file idpool.h.

◆ GetID()

template<typename T >
T LeechCraft::Util::IDPool< T >::GetID ( )
inline

Returns next ID.

Returns
Next ID in the pool.

Definition at line 72 of file idpool.h.

◆ LoadState()

template<typename T >
void LeechCraft::Util::IDPool< T >::LoadState ( const QByteArray &  state)
inline

Recovers the state of this pool.

Parameters
[in]stateThe state of this pool obtained from SaveState().

Definition at line 116 of file idpool.h.

◆ SaveState()

template<typename T >
QByteArray LeechCraft::Util::IDPool< T >::SaveState ( ) const
inline

Saves the state of this pool.

Returns
The serialized state of this pool.

Definition at line 99 of file idpool.h.

◆ SetID()

template<typename T >
void LeechCraft::Util::IDPool< T >::SetID ( id)
inline

Forcefully sets the current ID.

Parameters
[in]idThe new current ID.

Definition at line 81 of file idpool.h.


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