72 new_node->
prev = node;
76 if(node->
next == NULL)
79 dlls->
last = new_node;
87 node->
next = new_node;
144 new_node->
next = node;
147 if(node->
prev == NULL)
150 dlls->
first = new_node;
158 node->
prev = new_node;
210 if(dlls->
first == NULL)
219 dlls->
first = new_node;
220 dlls->
last = new_node;
223 new_node->
next = NULL;
224 new_node->
prev = NULL;
279 if(dlls->
last == NULL)
344 if(node->
prev == NULL)
356 if(node->
next == NULL)
385 while(dlls->
first != NULL)
388 temp_first_node = dlls->
first;
392 free(temp_first_node->
data);
394 free(temp_first_node);
#define s_DATA_STRUCT_TYPE_ROBOT
doublylinkedlist_node_t * last
void doublylinkedlist_destroy(doublylinkedlist_t *dlls)
struct s_DOUBLYLINKEDLIST_NODE_STRUCT * prev
doublylinkedlist_node_t * first
doublylinkedlist_t * doublylinkedlist_init(void)
void doublylinkedlist_insert_after(doublylinkedlist_t *dlls, doublylinkedlist_node_t *node, void *data, int data_type)
void doublylinkedlist_insert_before(doublylinkedlist_t *dlls, doublylinkedlist_node_t *node, void *data, int data_type)
struct s_DOUBLYLINKEDLIST_NODE_STRUCT * next
Doubly linked list node structure.
#define s_DATA_STRUCT_TYPE_PHEROMONE
#define s_DATA_STRUCT_TYPE_STREAM
void doublylinkedlist_delete(doublylinkedlist_t *dlls, doublylinkedlist_node_t *node)
Doubly linked list structure.
void doublylinkedlist_insert_beginning(doublylinkedlist_t *dlls, void *data, int data_type)
void doublylinkedlist_insert_end(doublylinkedlist_t *dlls, void *data, int data_type)
void doublylinkedlist_empty(doublylinkedlist_t *dlls)
#define s_DATA_STRUCT_TYPE_CMD
#define s_DATA_STRUCT_TYPE_VICTIM
void doublylinkedlist_remove(doublylinkedlist_t *dlls, doublylinkedlist_node_t *node, void *data, int *data_type)
Pheromone Map Sector structure.