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