#include <llptrskiplist.h>
Collaboration diagram for LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >:
Public Member Functions | |
LLPtrSkipList () | |
LLPtrSkipList (BOOL(*insert_first)(DATA_TYPE *first, DATA_TYPE *second), BOOL(*equals)(DATA_TYPE *first, DATA_TYPE *second)) | |
~LLPtrSkipList () | |
void | setInsertFirst (BOOL(*insert_first)(const DATA_TYPE *first, const DATA_TYPE *second)) |
void | setEquals (BOOL(*equals)(const DATA_TYPE *first, const DATA_TYPE *second)) |
BOOL | addData (DATA_TYPE *data) |
BOOL | checkData (const DATA_TYPE *data) |
S32 | getLength () |
BOOL | removeData (const DATA_TYPE *data) |
BOOL | moveData (const DATA_TYPE *data, LLPtrSkipList *newlist, BOOL b_sort) |
BOOL | moveCurrentData (LLPtrSkipList *newlist, BOOL b_sort) |
void | removeAllNodes () |
BOOL | deleteData (const DATA_TYPE *data) |
void | deleteAllData () |
void | resetList () |
DATA_TYPE * | getCurrentData () |
DATA_TYPE * | getNextData () |
void | removeCurrentData () |
void | deleteCurrentData () |
DATA_TYPE * | getFirstData () |
BOOL | corrupt () |
Static Protected Member Functions | |
static BOOL | defaultEquals (const DATA_TYPE *first, const DATA_TYPE *second) |
Protected Attributes | |
LLPtrSkipNode | mHead |
LLPtrSkipNode * | mUpdate [BINARY_DEPTH] |
LLPtrSkipNode * | mCurrentp |
LLPtrSkipNode * | mCurrentOperatingp |
S32 | mLevel |
BOOL(* | mInsertFirst )(const DATA_TYPE *first, const DATA_TYPE *second) |
BOOL(* | mEquals )(const DATA_TYPE *first, const DATA_TYPE *second) |
Friends | |
class | LLPtrSkipNode |
Classes | |
class | LLPtrSkipNode |
Definition at line 44 of file llptrskiplist.h.
LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::LLPtrSkipList | ( | ) |
Definition at line 177 of file llptrskiplist.h.
References i, llendl, llerrs, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mCurrentOperatingp, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mCurrentp, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::LLPtrSkipNode::mForward, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mHead, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mLevel, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mUpdate, NULL, and S32.
LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::LLPtrSkipList | ( | BOOL(*)(DATA_TYPE *first, DATA_TYPE *second) | insert_first, | |
BOOL(*)(DATA_TYPE *first, DATA_TYPE *second) | equals | |||
) |
Definition at line 197 of file llptrskiplist.h.
References i, llendl, llerrs, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mCurrentOperatingp, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mCurrentp, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::LLPtrSkipNode::mForward, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mHead, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mLevel, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mUpdate, NULL, and S32.
LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::~LLPtrSkipList | ( | ) | [inline] |
Definition at line 218 of file llptrskiplist.h.
References LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::removeAllNodes().
BOOL LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::addData | ( | DATA_TYPE * | data | ) | [inline] |
Definition at line 236 of file llptrskiplist.h.
References level, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::LLPtrSkipNode::mForward, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mHead, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mInsertFirst, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mLevel, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mUpdate, and S32.
Referenced by LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::moveCurrentData(), and LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::moveData().
BOOL LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::checkData | ( | const DATA_TYPE * | data | ) | [inline] |
Definition at line 302 of file llptrskiplist.h.
References level, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::LLPtrSkipNode::mForward, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mHead, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mInsertFirst, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mLevel, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mUpdate, and S32.
BOOL LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::corrupt | ( | ) | [inline] |
Definition at line 707 of file llptrskiplist.h.
References FALSE, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::LLPtrSkipNode::mData, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::LLPtrSkipNode::mForward, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mHead, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mInsertFirst, and TRUE.
static BOOL LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::defaultEquals | ( | const DATA_TYPE * | first, | |
const DATA_TYPE * | second | |||
) | [inline, static, protected] |
Definition at line 159 of file llptrskiplist.h.
void LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::deleteAllData | ( | ) | [inline] |
Definition at line 598 of file llptrskiplist.h.
References LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::LLPtrSkipNode::deleteData(), i, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mCurrentOperatingp, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mCurrentp, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::LLPtrSkipNode::mForward, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mHead, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mUpdate, NULL, and S32.
void LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::deleteCurrentData | ( | ) | [inline] |
Definition at line 679 of file llptrskiplist.h.
References LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::deleteData(), LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mCurrentOperatingp, and LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::LLPtrSkipNode::mData.
BOOL LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::deleteData | ( | const DATA_TYPE * | data | ) | [inline] |
Definition at line 506 of file llptrskiplist.h.
References level, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::LLPtrSkipNode::mForward, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mHead, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mInsertFirst, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mUpdate, and S32.
Referenced by LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::deleteCurrentData().
DATA_TYPE * LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::getCurrentData | ( | ) | [inline] |
Definition at line 633 of file llptrskiplist.h.
References LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mCurrentOperatingp, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mCurrentp, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::LLPtrSkipNode::mData, and LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::LLPtrSkipNode::mForward.
DATA_TYPE * LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::getFirstData | ( | ) | [inline] |
Definition at line 689 of file llptrskiplist.h.
References LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mCurrentOperatingp, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mCurrentp, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::LLPtrSkipNode::mData, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::LLPtrSkipNode::mForward, and LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mHead.
S32 LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::getLength | ( | ) | [inline] |
Definition at line 354 of file llptrskiplist.h.
References LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::LLPtrSkipNode::mForward, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mHead, and NULL.
DATA_TYPE * LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::getNextData | ( | ) | [inline] |
Definition at line 650 of file llptrskiplist.h.
References LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mCurrentOperatingp, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mCurrentp, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::LLPtrSkipNode::mData, and LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::LLPtrSkipNode::mForward.
BOOL LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::moveCurrentData | ( | LLPtrSkipList< DATA_TYPE, BINARY_DEPTH > * | newlist, | |
BOOL | b_sort | |||
) | [inline] |
Definition at line 454 of file llptrskiplist.h.
References LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::addData(), FALSE, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mCurrentOperatingp, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mCurrentp, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::LLPtrSkipNode::mForward, and LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::removeData().
BOOL LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::moveData | ( | const DATA_TYPE * | data, | |
LLPtrSkipList< DATA_TYPE, BINARY_DEPTH > * | newlist, | |||
BOOL | b_sort | |||
) | [inline] |
Definition at line 446 of file llptrskiplist.h.
References LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::addData(), and LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::removeData().
void LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::removeAllNodes | ( | ) | [inline] |
Definition at line 480 of file llptrskiplist.h.
References i, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mCurrentOperatingp, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mCurrentp, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::LLPtrSkipNode::mForward, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mHead, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mUpdate, NULL, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::LLPtrSkipNode::removeData(), and S32.
Referenced by LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::~LLPtrSkipList().
void LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::removeCurrentData | ( | ) | [inline] |
Definition at line 668 of file llptrskiplist.h.
References LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mCurrentOperatingp, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::LLPtrSkipNode::mData, and LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::removeData().
BOOL LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::removeData | ( | const DATA_TYPE * | data | ) | [inline] |
Definition at line 365 of file llptrskiplist.h.
References level, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::LLPtrSkipNode::mForward, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mHead, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mInsertFirst, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mLevel, LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mUpdate, and S32.
Referenced by LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::moveCurrentData(), LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::moveData(), and LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::removeCurrentData().
void LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::resetList | ( | ) | [inline] |
void LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::setEquals | ( | BOOL(*)(const DATA_TYPE *first, const DATA_TYPE *second) | equals | ) | [inline] |
Definition at line 230 of file llptrskiplist.h.
References LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mEquals.
void LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::setInsertFirst | ( | BOOL(*)(const DATA_TYPE *first, const DATA_TYPE *second) | insert_first | ) | [inline] |
Definition at line 224 of file llptrskiplist.h.
References LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mInsertFirst.
friend class LLPtrSkipNode [friend] |
Definition at line 47 of file llptrskiplist.h.
LLPtrSkipNode* LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mCurrentOperatingp [protected] |
Definition at line 168 of file llptrskiplist.h.
Referenced by LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::deleteAllData(), LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::deleteCurrentData(), LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::getCurrentData(), LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::getFirstData(), LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::getNextData(), LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::LLPtrSkipList(), LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::moveCurrentData(), LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::removeAllNodes(), LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::removeCurrentData(), and LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::resetList().
LLPtrSkipNode* LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mCurrentp [protected] |
Definition at line 167 of file llptrskiplist.h.
Referenced by LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::deleteAllData(), LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::getCurrentData(), LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::getFirstData(), LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::getNextData(), LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::LLPtrSkipList(), LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::moveCurrentData(), LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::removeAllNodes(), and LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::resetList().
BOOL(* LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mEquals)(const DATA_TYPE *first, const DATA_TYPE *second) [protected] |
Referenced by LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::setEquals().
LLPtrSkipNode LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mHead [protected] |
Definition at line 165 of file llptrskiplist.h.
Referenced by LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::addData(), LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::checkData(), LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::corrupt(), LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::deleteAllData(), LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::deleteData(), LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::getFirstData(), LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::getLength(), LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::LLPtrSkipList(), LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::removeAllNodes(), LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::removeData(), and LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::resetList().
BOOL(* LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mInsertFirst)(const DATA_TYPE *first, const DATA_TYPE *second) [protected] |
Referenced by LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::addData(), LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::checkData(), LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::corrupt(), LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::deleteData(), LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::removeData(), and LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::setInsertFirst().
S32 LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mLevel [protected] |
LLPtrSkipNode* LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::mUpdate[BINARY_DEPTH] [protected] |
Definition at line 166 of file llptrskiplist.h.
Referenced by LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::addData(), LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::checkData(), LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::deleteAllData(), LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::deleteData(), LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::LLPtrSkipList(), LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::removeAllNodes(), and LLPtrSkipList< DATA_TYPE, BINARY_DEPTH >::removeData().