zeus::TPriorityQueue< TKeyType, TValueType > Class Template Reference

#include <PriorityQueue.hpp>

Inheritance diagram for zeus::TPriorityQueue< TKeyType, TValueType >:

zeus::TZObject zeus::IPriorityQueue< TKeyType, TValueType > zeus::IZUnknown zeus::IQueue< TValueType > zeus::IValueType

List of all members.

Public Types

typedef std::map< TKeyType,
TQueue< TValueType > > 
TPriorityMap

Public Member Functions

 TPriorityQueue (bool bReplaceExisting=false)
 TPriorityQueue (const TValueType &rEmptyObject, bool bReplaceExisting=false)
virtual ~TPriorityQueue ()
virtual void MQUALIFIER appendPriorityItem (const TKeyType &rKey, const TValueType &tData)
virtual void MQUALIFIER copyToPriorityQueue (IPriorityQueue< TKeyType, TValueType > &rQueue) const
virtual const TKeyType &MQUALIFIER peekPriority () const
virtual void MQUALIFIER appendItem (const TValueType &tData)
virtual void MQUALIFIER copyToQueue (IQueue< TValueType > &rQueue) const
virtual void MQUALIFIER copyToList (IList< TValueType > &rList) const
virtual TValueType MQUALIFIER removeItem ()
virtual Int MQUALIFIER getCount () const
virtual void MQUALIFIER flush ()
virtual bool MQUALIFIER isEmpty () const
virtual TValueType &MQUALIFIER peekItem ()
virtual const TValueType
&MQUALIFIER 
peekItemConst () const

Protected Member Functions

 MEMORY_MANAGER_INLINEIMPL () MEMORY_MANAGER_IMPL_END


Detailed Description

template<class TKeyType, class TValueType>
class zeus::TPriorityQueue< TKeyType, TValueType >

This class implements the abstract data type FIFO queue with a priority sort.

Member Typedef Documentation

template<class TKeyType, class TValueType>
typedef std::map<TKeyType, TQueue<TValueType> > zeus::TPriorityQueue< TKeyType, TValueType >::TPriorityMap


Constructor & Destructor Documentation

template<class TKeyType, class TValueType>
zeus::TPriorityQueue< TKeyType, TValueType >::TPriorityQueue ( bool  bReplaceExisting = false  )  [inline]

Creates a priority queue

Parameters:
bReplaceExisting : if this flag is set an existing value with the same key will be replaced. The priority queue will contain only one value per key

template<class TKeyType, class TValueType>
zeus::TPriorityQueue< TKeyType, TValueType >::TPriorityQueue ( const TValueType &  rEmptyObject,
bool  bReplaceExisting = false 
) [inline]

Creates a priority queue with an empty object

Parameters:
rEmptyObject : Empty object
bReplaceExisting : if this flag is set an existing value with the same key will be replaced. The priority queue will contain only one value per key

template<class TKeyType, class TValueType>
virtual zeus::TPriorityQueue< TKeyType, TValueType >::~TPriorityQueue (  )  [inline, virtual]

Destroys the priority queue


Member Function Documentation

template<class TKeyType, class TValueType>
virtual void MQUALIFIER zeus::TPriorityQueue< TKeyType, TValueType >::appendPriorityItem ( const TKeyType &  rKey,
const TValueType &  tData 
) [inline, virtual]

template<class TKeyType, class TValueType>
virtual void MQUALIFIER zeus::TPriorityQueue< TKeyType, TValueType >::copyToPriorityQueue ( IPriorityQueue< TKeyType, TValueType > &  rQueue  )  const [inline, virtual]

template<class TKeyType, class TValueType>
virtual const TKeyType& MQUALIFIER zeus::TPriorityQueue< TKeyType, TValueType >::peekPriority (  )  const [inline, virtual]

template<class TKeyType, class TValueType>
virtual void MQUALIFIER zeus::TPriorityQueue< TKeyType, TValueType >::appendItem ( const TValueType &  tData  )  [inline, virtual]

template<class TKeyType, class TValueType>
virtual void MQUALIFIER zeus::TPriorityQueue< TKeyType, TValueType >::copyToQueue ( IQueue< TValueType > &  rQueue  )  const [inline, virtual]

template<class TKeyType, class TValueType>
virtual void MQUALIFIER zeus::TPriorityQueue< TKeyType, TValueType >::copyToList ( IList< TValueType > &  rList  )  const [inline, virtual]

template<class TKeyType, class TValueType>
virtual TValueType MQUALIFIER zeus::TPriorityQueue< TKeyType, TValueType >::removeItem (  )  [inline, virtual]

template<class TKeyType, class TValueType>
virtual Int MQUALIFIER zeus::TPriorityQueue< TKeyType, TValueType >::getCount (  )  const [inline, virtual]

template<class TKeyType, class TValueType>
virtual void MQUALIFIER zeus::TPriorityQueue< TKeyType, TValueType >::flush (  )  [inline, virtual]

template<class TKeyType, class TValueType>
virtual bool MQUALIFIER zeus::TPriorityQueue< TKeyType, TValueType >::isEmpty (  )  const [inline, virtual]

template<class TKeyType, class TValueType>
virtual TValueType& MQUALIFIER zeus::TPriorityQueue< TKeyType, TValueType >::peekItem (  )  [inline, virtual]

template<class TKeyType, class TValueType>
virtual const TValueType& MQUALIFIER zeus::TPriorityQueue< TKeyType, TValueType >::peekItemConst (  )  const [inline, virtual]

template<class TKeyType, class TValueType>
zeus::TPriorityQueue< TKeyType, TValueType >::MEMORY_MANAGER_INLINEIMPL (  )  [protected]


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


Written by Benjamin Hadorn http://www.xatlantis.ch.
Last change made on Wed Oct 28 21:42:35 2009