📄 queue.h
字号:
/**************************************************************************** * * MODULE: Queue * * COMPONENT: queue.h,v * * VERSION: AT-Jenie_Release_v1_RC3 * * REVISION: 1.2 * * DATED: 2007/09/25 09:03:20 * * STATUS: Exp * * AUTHOR: MRW * * DESCRIPTION * * CHANGE HISTORY: * * queue.h,v * * MRW * * LAST MODIFIED BY: mwild * $Modtime: $ * * **************************************************************************** * * (c) Copyright 2007 JENNIC Ltd * ****************************************************************************/#ifndef QUEUE_H_INCLUDED#define QUEUE_H_INCLUDED#if defined __cplusplusextern "C" {#endif/****************************************************************************//*** Include Files ***//****************************************************************************//****************************************************************************//*** Macro Definitions ***//****************************************************************************/#define QUEUE_DECLARE_Q(n, s) uint8 qData_##n[s]; tsQueue n = { s, 0, 0, 0, (uint8 *)&qData_##n};#define QUEUE_REF(a) &(a)#define bQueue_Full(q) bQueue__Full(QUEUE_REF(q))#define bQueue_Empty(q) bQueue__Empty(QUEUE_REF(q))#define u8Queue_RemoveItem(q) u8Queue__RemoveItem(QUEUE_REF(q))#define vQueue_AddItem(q, i) vQueue__AddItem(QUEUE_REF(q), (i))#define vQueue_Flush(q) vQueue__Flush(QUEUE_REF(q))#define u16Queue_Count(q) u16Queue__Count(QUEUE_REF(q))/****************************************************************************//*** Type Definitions ***//****************************************************************************/typedef struct{ uint16 u16Size; uint16 u16Head; uint16 u16Tail; uint16 u16Count; uint8 *u8Buff;} tsQueue;/****************************************************************************//*** Exported Functions ***//****************************************************************************/PUBLIC bool_t bQueue__Full(tsQueue *psQueue);PUBLIC bool_t bQueue__Empty(tsQueue *psQueue);PUBLIC uint8 u8Queue__RemoveItem(tsQueue *psQueue);PUBLIC void vQueue__AddItem(tsQueue *psQueue, uint8 u8Item);PUBLIC void vQueue__Flush(tsQueue *psQueue);PUBLIC uint16 u16Queue__Count(tsQueue *psQueue);/****************************************************************************//*** Exported Variables ***//****************************************************************************/#if defined __cplusplus}#endif#endif/****************************************************************************//*** END OF FILE ***//****************************************************************************/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -