Buffered list.
typedef struct BList { uint sig; byte wobj[192]; } BList;
Get count of all items, active and freed.
API uint BListGetTotalItemCount(BList *list);
list: Buffered list.
returns: Total item count.
Get item count.
API uint BListGetItemCount(BList *list);
list: Buffered list.
returns: Item count.
Get item version.
API uint BListGetItemVer(BList *list, void *item);
list: Buffered list.
item: Item.
returns: Version number.
Get first item.
API void *BListGetFirstItem(BList *list, int *index);
list: Buffered list.
index: Index var.
returns: Item or 0.
Get last item.
API void *BListGetLastItem(BList *list, int *index);
list: Buffered list.
index: Index var.
returns: Item or 0.
Get previous item.
API void *BListGetPrevItem(BList *list, int *index);
list: Buffered list.
index: Index var.
returns: Item or 0
Get next item.
API void *BListGetNextItem(BList *list, int *index);
list: Buffered list.
index: Index var.
returns: Item or 0.
Get item.
API void *BListGetItem(BList *list, int index);
list: Buffered list.
index: Item index.
returns: Item or 0.
Add item.
API void *BListAddItem(BList *list, int *index);
list: Buffered list.
index: Var for item index or 0.
returns: Item memory.
Delete item.
API void BListDelItem(BList *list, uint index);
list: Buffered list.
index: Item index.
Delete all items.
API void BListClear(BList *list);
list: Buffered list.
Initialize buffered list.
API void BListInit(BList *list, uint itemSize, uint incr, FDestructCB Destruct);
list: Buffered list.
elemSize: Item size.
incr: Increment.
Destruct: Destructor callback or 0.
Release buffered list.
API void BListRel(BList *list);
list: Buffered list.