SUMO - Simulation of Urban MObility
InstancePool< T > Class Template Reference

A pool of resuable instances. More...

#include <InstancePool.h>

Public Member Functions

void addFreeInstance (T *instance)
 Adds a free, reusable instance.
void addFreeInstances (const std::vector< T * > instances)
 Adds some free, reusable instances.
T * getFreeInstance ()
 Returns a free instance or 0 if no such exists.
 InstancePool (bool deleteOnQuit)
 Constructor.
 ~InstancePool ()
 Destructor.

Private Attributes

bool myDeleteOnQuit
 Information whether the stored instances shall be deleted.
std::vector< T * > myFreeInstances
 List of reusable instances.

Detailed Description

template<typename T>
class InstancePool< T >

A pool of resuable instances.

Definition at line 46 of file InstancePool.h.


Constructor & Destructor Documentation

template<typename T>
InstancePool< T >::InstancePool ( bool  deleteOnQuit) [inline]

Constructor.

Parameters:
[in]deleteOnQuitInformation whether stored instances shall be deleted when this container is deleted

Definition at line 52 of file InstancePool.h.

template<typename T>
InstancePool< T >::~InstancePool ( ) [inline]

Destructor.

Definition at line 56 of file InstancePool.h.


Member Function Documentation

template<typename T>
void InstancePool< T >::addFreeInstance ( T *  instance) [inline]

Adds a free, reusable instance.

Parameters:
[in]instanceAn instance to add

Definition at line 88 of file InstancePool.h.

Referenced by TraCIDijkstraRouter< E >::clearTemporaryStorages().

template<typename T>
void InstancePool< T >::addFreeInstances ( const std::vector< T * >  instances) [inline]

Adds some free, reusable instances.

Parameters:
[in]instancesA vector of instances to add

Definition at line 97 of file InstancePool.h.

template<typename T>
T* InstancePool< T >::getFreeInstance ( ) [inline]

Returns a free instance or 0 if no such exists.

If any free instance is stored, it is returned and removed from the storage. If no one is stored, 0 is returned.

Returns:
A free instance or 0 if no such exists

Definition at line 73 of file InstancePool.h.

Referenced by TraCIDijkstraRouter< E >::compute().


Field Documentation

template<typename T>
bool InstancePool< T >::myDeleteOnQuit [private]

Information whether the stored instances shall be deleted.

Definition at line 108 of file InstancePool.h.

Referenced by InstancePool< std::vector< bool > >::~InstancePool().


The documentation for this class was generated from the following file:
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Friends Defines