#ifndef __LIST_H__ #define __LIST_H__ typedef struct aItem *ListItem; struct aItem { void *data; ListItem next,prev; }; /* Prototipos */ int ListInit(ListItem*); int ListInsert(ListItem*,void*); int ListAllocInsert(ListItem*,void*,int); int ListRemove(ListItem,ListItem*); int ListFree(ListItem*); int ListGetFirstAndRemove(ListItem *,void *,int); int ListSize(ListItem*); #define ListData(Lst) (Lst->data) #define ListNext(Lst) (Lst->next) #define ListEmpty(Lst) ((*Lst)==NULL) #endif