OSSIM - Open Source Software Image Map  Version 1.9.0 (20180803)
linklist.h
Go to the documentation of this file.
1 
2 /* LINKLIST.H */
3 
4 #ifndef __LINKLIST_H__
5 
6 #define __LINKLIST_H__ 1
7 
8 #ifdef __cplusplus
9 extern "C" {
10 #endif
11 /* Linked list structure */
12 typedef struct linked_list_cell {
13  void *element;
14  unsigned element_size;
17 
18 
19 #ifndef TRUE
20 #define TRUE 1
21 #endif
22 #ifndef FALSE
23 #define FALSE 0
24 #endif
25 
26 /* Functions: */
27 
29 
30 int ll_empty( linked_list_type list );
31 
33 
34 #define LL_FIRST(list) (position_type)list
35 
37 
39 
40 #define LL_NEXT(position) position->next
41 
43  linked_list_type list );
44 
45 int ll_end( position_type position );
46 
47 void ll_element( position_type position,
48  void *element );
49 
50 void ll_insert( void *element,
51  unsigned size,
52  position_type position );
53 
54 void ll_delete( position_type position );
55 
56 void ll_reset( linked_list_type list );
57 
59  linked_list_type list );
60 
61 void ll_replace( void *element,
62  position_type position );
63 
64 
65 #ifdef __cplusplus
66 }
67 #endif
68 
69 #endif
struct linked_list_cell * next
Definition: linklist.h:15
yy_size_t size
void * element
Definition: linklist.h:13
unsigned element_size
Definition: linklist.h:14