1/*************************************
2* Queue.h
3**************************************/
4#ifndef	__QUEUE_H__
5#define	__QUEUE_H__
6
7
8
9#define ENQUEUEPACKET(_Head, _Tail, _Packet)	\
10do {						\
11	if (!_Head) {				\
12		_Head = _Packet;		\
13	}					\
14	else {					\
15		(_Tail)->next = _Packet;	\
16	}					\
17	(_Packet)->next = NULL;			\
18	_Tail = _Packet;			\
19} while (0)
20#define DEQUEUEPACKET(Head, Tail)		\
21do {						\
22	if (Head) {				\
23		if (!Head->next) {		\
24			Tail = NULL;		\
25		}				\
26		Head = Head->next;		\
27	}					\
28} while (0)
29#endif /* __QUEUE_H__ */
30