#define MAX_QUEUE_SIZE 1000 typedef struct { void *contents[MAX_QUEUE_SIZE]; unsigned front, rear; } queue; queue *queue_new(void); void queue_free(queue *); int queue_send(queue *, void *); void *queue_receive(queue *); void *queue_front(queue *); unsigned queue_size(queue *); int queue_is_empty(queue *);