LLSimpleHash< HASH_KEY_TYPE, TABLE_SIZE > Class Template Reference

#include <llsimplehash.h>

List of all members.

Public Member Functions

 LLSimpleHash ()
virtual ~LLSimpleHash ()
virtual int getIndex (HASH_KEY_TYPE key)
bool insert (LLSimpleHashEntry< HASH_KEY_TYPE > *entry)
LLSimpleHashEntry< HASH_KEY_TYPE > * find (HASH_KEY_TYPE key)
bool erase (LLSimpleHashEntry< HASH_KEY_TYPE > *entry)
bool erase (HASH_KEY_TYPE key)
LLSimpleHashEntry< HASH_KEY_TYPE > * pop_element ()
LLSimpleHashEntry< HASH_KEY_TYPE > * get_element_at_index (S32 index) const

Private Attributes

LLSimpleHashEntry< HASH_KEY_TYPE > * mEntryTable [TABLE_SIZE]


Detailed Description

template<typename HASH_KEY_TYPE, int TABLE_SIZE>
class LLSimpleHash< HASH_KEY_TYPE, TABLE_SIZE >

Definition at line 66 of file llsimplehash.h.


Constructor & Destructor Documentation

template<typename HASH_KEY_TYPE, int TABLE_SIZE>
LLSimpleHash< HASH_KEY_TYPE, TABLE_SIZE >::LLSimpleHash (  )  [inline]

Definition at line 69 of file llsimplehash.h.

References llassert, and LLSimpleHash< HASH_KEY_TYPE, TABLE_SIZE >::mEntryTable.

template<typename HASH_KEY_TYPE, int TABLE_SIZE>
virtual LLSimpleHash< HASH_KEY_TYPE, TABLE_SIZE >::~LLSimpleHash (  )  [inline, virtual]

Definition at line 75 of file llsimplehash.h.


Member Function Documentation

template<typename HASH_KEY_TYPE, int TABLE_SIZE>
bool LLSimpleHash< HASH_KEY_TYPE, TABLE_SIZE >::erase ( HASH_KEY_TYPE  key  )  [inline]

Definition at line 106 of file llsimplehash.h.

References LLSimpleHashEntry< HASH_KEY_TYPE >::getHashKey(), LLSimpleHash< HASH_KEY_TYPE, TABLE_SIZE >::getIndex(), LLSimpleHashEntry< HASH_KEY_TYPE >::getNextEntry(), LLSimpleHash< HASH_KEY_TYPE, TABLE_SIZE >::mEntryTable, and LLSimpleHashEntry< HASH_KEY_TYPE >::setNextEntry().

template<typename HASH_KEY_TYPE, int TABLE_SIZE>
bool LLSimpleHash< HASH_KEY_TYPE, TABLE_SIZE >::erase ( LLSimpleHashEntry< HASH_KEY_TYPE > *  entry  )  [inline]

Definition at line 102 of file llsimplehash.h.

References LLSimpleHashEntry< HASH_KEY_TYPE >::getHashKey().

Referenced by LLQueuedThread::completeRequest(), LLQueuedThread::processNextRequest(), and LLQueuedThread::waitForResult().

template<typename HASH_KEY_TYPE, int TABLE_SIZE>
LLSimpleHashEntry<HASH_KEY_TYPE>* LLSimpleHash< HASH_KEY_TYPE, TABLE_SIZE >::find ( HASH_KEY_TYPE  key  )  [inline]

Definition at line 92 of file llsimplehash.h.

References LLSimpleHashEntry< HASH_KEY_TYPE >::getHashKey(), LLSimpleHash< HASH_KEY_TYPE, TABLE_SIZE >::getIndex(), LLSimpleHashEntry< HASH_KEY_TYPE >::getNextEntry(), and LLSimpleHash< HASH_KEY_TYPE, TABLE_SIZE >::mEntryTable.

Referenced by LLQueuedThread::abortRequest(), LLQueuedThread::completeRequest(), LLQueuedThread::generateHandle(), LLQueuedThread::getRequest(), LLQueuedThread::getRequestStatus(), LLQueuedThread::setFlags(), LLQueuedThread::setPriority(), and LLQueuedThread::waitForResult().

template<typename HASH_KEY_TYPE, int TABLE_SIZE>
LLSimpleHashEntry<HASH_KEY_TYPE>* LLSimpleHash< HASH_KEY_TYPE, TABLE_SIZE >::get_element_at_index ( S32  index  )  const [inline]

Definition at line 150 of file llsimplehash.h.

References LLSimpleHash< HASH_KEY_TYPE, TABLE_SIZE >::mEntryTable.

Referenced by LLQueuedThread::check().

template<typename HASH_KEY_TYPE, int TABLE_SIZE>
virtual int LLSimpleHash< HASH_KEY_TYPE, TABLE_SIZE >::getIndex ( HASH_KEY_TYPE  key  )  [inline, virtual]

Definition at line 79 of file llsimplehash.h.

Referenced by LLSimpleHash< HASH_KEY_TYPE, TABLE_SIZE >::erase(), LLSimpleHash< HASH_KEY_TYPE, TABLE_SIZE >::find(), and LLSimpleHash< HASH_KEY_TYPE, TABLE_SIZE >::insert().

template<typename HASH_KEY_TYPE, int TABLE_SIZE>
bool LLSimpleHash< HASH_KEY_TYPE, TABLE_SIZE >::insert ( LLSimpleHashEntry< HASH_KEY_TYPE > *  entry  )  [inline]

Definition at line 84 of file llsimplehash.h.

References LLSimpleHashEntry< HASH_KEY_TYPE >::getHashKey(), LLSimpleHash< HASH_KEY_TYPE, TABLE_SIZE >::getIndex(), LLSimpleHashEntry< HASH_KEY_TYPE >::getNextEntry(), llassert, LLSimpleHash< HASH_KEY_TYPE, TABLE_SIZE >::mEntryTable, and LLSimpleHashEntry< HASH_KEY_TYPE >::setNextEntry().

Referenced by LLQueuedThread::addRequest().

template<typename HASH_KEY_TYPE, int TABLE_SIZE>
LLSimpleHashEntry<HASH_KEY_TYPE>* LLSimpleHash< HASH_KEY_TYPE, TABLE_SIZE >::pop_element (  )  [inline]

Definition at line 136 of file llsimplehash.h.

References i, and LLSimpleHash< HASH_KEY_TYPE, TABLE_SIZE >::mEntryTable.

Referenced by LLQueuedThread::shutdown().


Member Data Documentation

template<typename HASH_KEY_TYPE, int TABLE_SIZE>
LLSimpleHashEntry<HASH_KEY_TYPE>* LLSimpleHash< HASH_KEY_TYPE, TABLE_SIZE >::mEntryTable[TABLE_SIZE] [private]

Definition at line 157 of file llsimplehash.h.

Referenced by LLSimpleHash< HASH_KEY_TYPE, TABLE_SIZE >::erase(), LLSimpleHash< HASH_KEY_TYPE, TABLE_SIZE >::find(), LLSimpleHash< HASH_KEY_TYPE, TABLE_SIZE >::get_element_at_index(), LLSimpleHash< HASH_KEY_TYPE, TABLE_SIZE >::insert(), LLSimpleHash< HASH_KEY_TYPE, TABLE_SIZE >::LLSimpleHash(), and LLSimpleHash< HASH_KEY_TYPE, TABLE_SIZE >::pop_element().


The documentation for this class was generated from the following file:
Generated on Thu Jul 1 06:11:46 2010 for Second Life Viewer by  doxygen 1.4.7