1 #ifndef LINK1_H 2 #define LINK1_H 3 #include <stdlib.h> // provides size_t 4 #include <SDL.h> 5 6 struct obj 7 { 8 void (*command) (struct Node*); 9 struct Node* ptr; 10 char * mesg; 11 SDL_Rect rect; 12 13 }; 14 15 struct Node 16 { 17 struct obj data; 18 Node *sub; 19 Node *link; 20 }; 21 22 23 24 size_t list_length(Node* head_ptr); 25 void list_head_insert(Node*& head_ptr, const Node& entry); 26 Node* list_locate(Node* head_ptr, size_t position); 27 void list_head_remove(Node*& head_ptr); 28 void list_remove(Node* previous_ptr); 29 void list_clear(Node*& head_ptr); 30 31 32 #endif 33