LINKEDLIST Struct Reference

`#include <LinkedList.h>`

Collaboration diagram for LINKEDLIST:
[legend]

## Data Fields

ListNode | head
ListNode | tail
long | size
FreeList | freeNodeList
free_function | free_func
cmp_routine | cmp_func

## Detailed Description

Linked list (no protection).

Because this is for internal use, parameters are NOT checked for validity. The first item of the list is stored at node: head->next The last item of the list is stored at node: tail->prev If head->next=tail, then list is empty. To iterate through the list:

     LinkedList g;
     ListNode *temp = NULL;
     for (temp = ListHead(g);temp!=NULL;temp = ListNext(g,temp)) {
     }

## Field Documentation

## cmp_func

cmp_routine LINKEDLIST::cmp_func

compare function to use

Referenced by ListFind(), and ListInit().

## free_func

free_function LINKEDLIST::free_func

free function to use

Referenced by ListDelNode(), and ListInit().

## freeNodeList

FreeList LINKEDLIST::freeNodeList

free list to use

Referenced by ListDestroy(), and ListInit().

## head

ListNode LINKEDLIST::head

head, first item is stored at: head->next

Referenced by BumpPriority(), ListAddHead(), ListDelNode(), ListDestroy(), ListFind(), ListHead(), and ListPrev().

## size

long LINKEDLIST::size

size of list

Referenced by AddWorker(), BumpPriority(), ListAddAfter(), ListAddBefore(), ListDelNode(), ListDestroy(), ListHead(), ListInit(), ListSize(), and ListTail().

## tail

ListNode LINKEDLIST::tail

tail, last item is stored at: tail->prev

Referenced by ListAddTail(), ListDelNode(), ListDestroy(), ListFind(), ListNext(), and ListTail().

The documentation for this struct was generated from the following file:

- upnp/src/threadutil/LinkedList.h