Paged list.
typedef struct PList { uint sig; byte wobj[192]; } PList;
Get count of all items, active and freed.
API uint PListGetTotalItemCount(BList *list);
list: Paged list.
returns: Total item count.
Get item count.
API uint PListGetItemCount(PList *list);
list: Paged list.
returns: Item count.
Get item version.
API uint PListGetItemVer(PList *list, void *item);
list: Paged list.
item: Item.
returns: Version number.
Get first item.
API void *PListGetFirstItem(PList *list, int *index);
list: Paged list.
index: Index var.
returns: Item or 0.
Get last item.
API void *PListGetLastItem(PList *list, int *index);
list: Paged list.
index: Index var.
returns: Item or 0.
Get previous item.
API void *PListGetPrevItem(PList *list, int *index);
list: Paged list.
index: Index var.
returns: Item or 0
Get next item.
API void *PListGetNextItem(PList *list, int *index);
list: Paged list.
index: Index var.
returns: Item or 0.
Get item.
API void *PListGetItem(PList *list, int index);
list: Paged list.
index: Item index.
returns: Item or 0.
Add item.
API void *PListAddItem(PList *list, int *index);
list: Paged list.
index: Var for item index or 0.
returns: Item memory.
Delete item.
API void PListDelItem(PList *list, uint index);
list: Paged list.
index: Item index.
Delete all items.
API void PListClear(PList *list);
list: Paged list.
Initialize paged list.
API void PListInit(PList *list, uint itemSize, uint incr, FDestructCB Destruct);
list: Paged list.
elemSize: Item size.
incr: Increment.
Destruct: Destructor callback or 0.
Release paged list.
API void PListRel(PList *list);
list: Paged list.