hop-2012/server/dataq.h

22 lines
475 B
C
Raw Normal View History

2011-01-05 18:08:13 +00:00
/* Copyright (C) 2010, 2011 Tony Garnock-Jones. All rights reserved. */
2011-01-05 18:06:59 +00:00
2010-12-29 16:35:02 +00:00
#ifndef cmsg_dataq_h
#define cmsg_dataq_h
typedef struct queue_t_ {
size_t link_offset;
int count;
void *head;
void *tail;
} queue_t;
2011-01-02 02:11:45 +00:00
#define EMPTY_QUEUE(element_t, link_field_name) \
((queue_t) { offsetof(element_t, link_field_name), 0, NULL, NULL })
2010-12-29 16:35:02 +00:00
extern void enqueue(queue_t *q, void *x);
extern void *dequeue(queue_t *q);
2011-01-02 02:11:45 +00:00
extern void queue_append(queue_t *q1, queue_t *q2);
2010-12-29 16:35:02 +00:00
#endif