8 #ifndef __ListEx_h_incl__ 9 #define __ListEx_h_incl__ 21 #define DLX_DEF_SPINCOUNT 3967 31 CRITICAL_SECTION _csect;
33 DLinkListEx(
DWORD SpinCount = DLX_DEF_SPINCOUNT );
50 bool Lock(
bool Wait =
false );
94 #endif//ndef __ListEx_h_incl__ PLIST_ENTRY FirstThat(PDListFunc Match, void *UserData=NULL)
UINT ExportToListHead(PLIST_ENTRY ListHead)
UINT ImportFromListHead(IN PLIST_ENTRY ListHead, OPTOUT PLIST_ENTRY *ppFirst)
PLIST_ENTRY LastThat(PDListFunc Match, void *UserData=NULL)
UINT ImportHeadlessList(IN PLIST_ENTRY Circular, OPTOUT PLIST_ENTRY *ppFirst)
PLIST_ENTRY operator+=(PLIST_ENTRY Entry)
bool ForEach(PDListFunc Action, void *UserData=NULL)
UINT AppendList(IN PLIST_ENTRY ListToAppend, OPTOUT PLIST_ENTRY *ppFirst)
struct _LIST_ENTRY * PLIST_ENTRY
bool(__stdcall * PDListFunc)(PLIST_ENTRY Entry, void *UserData)
PLIST_ENTRY Prepend(PLIST_ENTRY Entry)
PLIST_ENTRY Append(PLIST_ENTRY Entry)
int(__stdcall * PDListComp)(PLIST_ENTRY X, PLIST_ENTRY Y, void *UserData)
void QuickSort(PDListComp Compare, void *UserData=NULL)
void RemoveAll(PDListFunc ItemAction, void *UserData=NULL)
class DLinkList * PDLinkList
Common include; Added types, small "ubiquitous" utilities, et c.
PLIST_ENTRY operator -=(PLIST_ENTRY Entry)
UINT ExportToHeadlessList(PLIST_ENTRY *Circular)
PLIST_ENTRY RemoveFirst()
PLIST_ENTRY RemoveEntry(PLIST_ENTRY Entry)