EBOOK-TOOLS: src/libepub/linklist.h File Reference

Classes | Defines | Typedefs | Functions

# linklist.h File Reference

`#include <stdio.h>`
`#include <stdlib.h>`
Include dependency graph for linklist.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

## Classes
struct | ListNode
struct | LList
## Defines
#define | CIRCULAR_QUEUE (QUEUE | LISTCIRCULAR)
#define | DCOUNT dcount
#define | DFREE dfree
#define | DMALLOC malloc
#define | FIFO (LISTADDTAIL | LISTREADHEAD | LISTDELHEAD)
#define | LIFO (LISTADDHEAD | LISTREADHEAD | LISTDELHEAD)
#define | LIST (LISTADDCURR | LISTREADCURR | LISTDELCURR)
#define | LISTADDCURR 0x300
#define | LISTADDHEAD 0x100
#define | LISTADDMASK 0xF00
#define | LISTADDSPLAY 0x400
#define | LISTADDTAIL 0x200
#define | LISTBTREE 0x4000
#define | LISTCIRCULAR 0x2000
#define | LISTDELCURR 0x030
#define | LISTDELHEAD 0x010
#define | LISTDELMASK 0x0F0
#define | LISTDELREAD 0x1000
#define | LISTDELSPLAY 0x040
#define | LISTDELTAIL 0x020
#define | LISTFLAGMASK 0xF000
#define | LISTREADCURR 0x003
#define | LISTREADHEAD 0x001
#define | LISTREADMASK 0x00F
#define | LISTREADTAIL 0x002
#define | LLIST_BADVALUE LLIST_NULL
#define | LLIST_ERROR -1
#define | LLIST_NOERROR 0
#define | LLIST_NULL 1
#define | LLIST_OK LLIST_NOERROR
#define | NewList(Type) NewListAlloc(Type, NULL, NULL, NULL)
#define | NewNode(Data) NewListNode(NULL, Data)
#define | QUEUE (FIFO | LISTDELREAD)
#define | STACK (LIFO | LISTDELREAD)
#define | STREE (LISTBTREE | LISTADDSPLAY | LISTDELSPLAY | LISTREADCURR)
## Typedefs
typedef void *(* | ListAlloc )(size_t size)
typedef int(* | ListDumpFunc )(void *)
typedef void(* | ListFreeFunc )(void *)
typedef struct ListNode | listnode
typedef struct ListNode * | listnodePtr
typedef struct LList * | listPtr
typedef struct LList | llist
typedef int(* | NodeCompareFunc )(void *, void *)
## Functions
int | AddNode (listPtr List, listnodePtr Node)
void * | BTFind (listPtr List, void *Data)
int | DelHeadList (listPtr List)
int | DelNode (listPtr List)
int | DelTailList (listPtr List)
int | DoubleCompare (double *First, double *Second)
int | DumpList (listPtr List, ListDumpFunc DataDump)
void * | FindNode (listPtr List, void *Data)
int | FreeList (listPtr List, ListFreeFunc DataFree)
void * | GetNode (listPtr List)
void * | GetNodeData (listnodePtr Node)
int | HeadList (listPtr List, listnodePtr Node)
void * | IndexNode (listPtr List, int Index)
int | InsertList (listPtr List, listnodePtr Node)
int | IntCompare (int *First, int *Second)
listPtr | NewListAlloc (int ListType, ListAlloc Lalloc, ListFreeFunc Lfree, NodeCompareFunc Cfunc)
listnodePtr | NewListNode (listPtr List, void *Data)
void * | NextNode (listPtr List)
void * | PrevNode (listPtr List)
int | RemoveList (listPtr List)
void | SortList (listPtr List)
int | SplayInsertList (listPtr List, listnodePtr Node)
void * | SplayList (listPtr List, void *Data)
int | StringCompare (char *First, char *Second)
void | SwapList (listPtr List)
int | TailList (listPtr List, listnodePtr Node)

## Define Documentation

#define CIRCULAR_QUEUE (QUEUE | LISTCIRCULAR)

Definition at line 103 of file linklist.h.

#define DCOUNT dcount

Definition at line 170 of file linklist.h.

#define DFREE dfree

Definition at line 167 of file linklist.h.

#define DMALLOC malloc

Definition at line 164 of file linklist.h.

#define FIFO (LISTADDTAIL | LISTREADHEAD | LISTDELHEAD)

Definition at line 99 of file linklist.h.

#define LIFO (LISTADDHEAD | LISTREADHEAD | LISTDELHEAD)

Definition at line 100 of file linklist.h.

#define LIST (LISTADDCURR | LISTREADCURR | LISTDELCURR)

Definition at line 98 of file linklist.h.

#define LISTADDCURR 0x300

Definition at line 75 of file linklist.h.

#define LISTADDHEAD 0x100

Definition at line 76 of file linklist.h.

#define LISTADDMASK 0xF00

Definition at line 92 of file linklist.h.

#define LISTADDSPLAY 0x400

Definition at line 78 of file linklist.h.

#define LISTADDTAIL 0x200

Definition at line 77 of file linklist.h.

#define LISTBTREE 0x4000

Definition at line 89 of file linklist.h.

#define LISTCIRCULAR 0x2000

Definition at line 88 of file linklist.h.

#define LISTDELCURR 0x030

Definition at line 79 of file linklist.h.

#define LISTDELHEAD 0x010

Definition at line 80 of file linklist.h.

#define LISTDELMASK 0x0F0

Definition at line 93 of file linklist.h.

#define LISTDELREAD 0x1000

Definition at line 87 of file linklist.h.

#define LISTDELSPLAY 0x040

Definition at line 82 of file linklist.h.

#define LISTDELTAIL 0x020

Definition at line 81 of file linklist.h.

#define LISTFLAGMASK 0xF000

Definition at line 95 of file linklist.h.

#define LISTREADCURR 0x003

Definition at line 83 of file linklist.h.

#define LISTREADHEAD 0x001

Definition at line 84 of file linklist.h.

#define LISTREADMASK 0x00F

Definition at line 94 of file linklist.h.

#define LISTREADTAIL 0x002

Definition at line 85 of file linklist.h.

#define LLIST_BADVALUE LLIST_NULL

Definition at line 114 of file linklist.h.

#define LLIST_ERROR -1

Definition at line 111 of file linklist.h.

#define LLIST_NOERROR 0

Definition at line 109 of file linklist.h.

#define LLIST_NULL 1

Definition at line 110 of file linklist.h.

#define LLIST_OK LLIST_NOERROR

Definition at line 113 of file linklist.h.

#define NewList | ( |  | Type ) | NewListAlloc(Type, NULL, NULL, NULL)

Definition at line 190 of file linklist.h.

#define NewNode | ( |  | Data ) | NewListNode(NULL, Data)

Definition at line 202 of file linklist.h.

#define QUEUE (FIFO | LISTDELREAD)

Definition at line 101 of file linklist.h.

#define STACK (LIFO | LISTDELREAD)

Definition at line 102 of file linklist.h.

#define STREE (LISTBTREE | LISTADDSPLAY | LISTDELSPLAY | LISTREADCURR)

Definition at line 104 of file linklist.h.

## Typedef Documentation

typedef void*(* ListAlloc)(size_t size)

Definition at line 123 of file linklist.h.

typedef int(* ListDumpFunc)(void *)

Definition at line 135 of file linklist.h.

typedef void(* ListFreeFunc)(void *)

Definition at line 120 of file linklist.h.

typedef struct ListNode listnode

typedef struct ListNode* listnodePtr

Definition at line 138 of file linklist.h.

typedef struct LList* listPtr

Definition at line 146 of file linklist.h.

typedef struct LList llist

typedef int(* NodeCompareFunc)(void *, void *)

Definition at line 126 of file linklist.h.

## Function Documentation

int AddNode | ( | listPtr | List,
|  | listnodePtr | Node
| ) |  |

void* BTFind | ( | listPtr | List,
|  | void * | Data
| ) |  |

int DelHeadList | ( | listPtr | List ) |

int DelNode | ( | listPtr | List ) |

int DelTailList | ( | listPtr | List ) |

int DoubleCompare | ( | double * | First,
|  | double * | Second
| ) |  |

int DumpList | ( | listPtr | List,
|  | ListDumpFunc | DataDump
| ) |  |

void* FindNode | ( | listPtr | List,
|  | void * | Data
| ) |  |

int FreeList | ( | listPtr | List,
|  | ListFreeFunc | DataFree
| ) |  |

void* GetNode | ( | listPtr | List ) |

void* GetNodeData | ( | listnodePtr | Node ) |

int HeadList | ( | listPtr | List,
|  | listnodePtr | Node
| ) |  |

void* IndexNode | ( | listPtr | List,
|  | int | Index
| ) |  |

int InsertList | ( | listPtr | List,
|  | listnodePtr | Node
| ) |  |

int IntCompare | ( | int * | First,
|  | int * | Second
| ) |  |

listPtr NewListAlloc | ( | int | ListType,
|  | ListAlloc | Lalloc,
|  | ListFreeFunc | Lfree,
|  | NodeCompareFunc | Cfunc
| ) |  |

listnodePtr NewListNode | ( | listPtr | List,
|  | void * | Data
| ) |  |

void* NextNode | ( | listPtr | List ) |

void* PrevNode | ( | listPtr | List ) |

int RemoveList | ( | listPtr | List ) |

void SortList | ( | listPtr | List ) |

int SplayInsertList | ( | listPtr | List,
|  | listnodePtr | Node
| ) |  |

void* SplayList | ( | listPtr | List,
|  | void * | Data
| ) |  |

int StringCompare | ( | char * | First,
|  | char * | Second
| ) |  |

void SwapList | ( | listPtr | List ) |

int TailList | ( | listPtr | List,
|  | listnodePtr | Node
| ) |  |