?? queue.h
字號:
/*************************************************************************** Copyright : 2001-2002, ASPIRE TECHNOLOGIES (SHENZHEN) LTD. Program ID : queue.h Description : 隊列函數實現頭文件 Version : NEWCMPPAPI Functions : 內部函數 Modification Log: DATE AUTHOR DESCRIPTION -------------------------------------------------------------------------- 11/25/2002 wenyz Create 11/26/2002 wenyz 原來為share memory改為 memory 由NOUSESHAREMEMORY開關控制***************************************************************************/ #ifndef _API_QUEUE_H_#define _API_QUEUE_H_ #define QUEUE_OK 0 #define QUEUE_FAIL -1#define QUEUE_FULL -2#define QUEUE_EMPTY -3#include "os.h"#include "log.h"/*#define ErrMsg printf#define DPrintf printf#define ErrRet printf*/#define ErrMsg Trace#define DPrintf Trace#define ErrRet Trace#include <stdio.h>#include <stdlib.h>#ifdef WIN32#include <memory.h>#endif/**描述: 初始化隊列 ( 可以應用于不固定長度的包 ) *輸入參數: nKey 隊列的KEY值,nSize 每個包的長度, nCount 最大包個數 ( 可以應用于不固定長度的包 )* 輸出參數:pnShmId 內存ID *返回值: 〉0 成功, * NULL 失敗 */void* pvInitAQueue_Api( int nKey, int nSize, int nCount, int* pnShmId );/**描述:寫包進入內存區 ( 可以應用于不固定長度的包 ) *輸入參數: pQAddr( 隊列的內存地址 ), pAddr(包的首地址), nSize(包大小)*輸出參數: 無*返回值: QUEUE_OK 成功 * QUEUE_FAIL 失敗 * QUEUE_FULL 空間已滿*/int nWriteQueue_Api( void* pQAddr, void* pAddr, int nSize );/**描述:從內存區取包*輸入參數: pQAddr( 隊列的內存地址 ),pAddr 包的首地址,nSize 包大小*返回值: QUEUE_OK 成功 * QUEUE_FAIL 失敗 * QUEUE_EMPTY沒有包*/int nReadQueue_Api( void* pQAddr, void* pAddr, int nSize );/**描述:復位該內存*輸入參數: pQAddr( 隊列的內存地址 )*返回值: QUEUE_OK 成功 * QUEUE_FAIL 失敗 * */int nResetQueue_Api( void* pQAddr );/**描述:刪除該內存區*輸入參數: nShmId 申請時候得到的SHARE MEM ID*返回值: QUEUE_OK 成功 * QUEUE_FAIL 失敗 */int nRemoveShm_Api( int nShmId );/**描述:從內存區取包*輸入參數: pQLink( 隊列的內存地址 )*輸出參數: pnLoad( 負載系數 0-100 )pnCellNum 當前的包的個數*返回值: QUEUE_OK 成功 * QUEUE_FAIL 失敗 */int nGetQLoad_Api( const void* pQLink, int* pnLoad, int* pnCellNum );/**描述:調試使用函數*/void vDumpQueue_Api( FILE* fp, void* pQAddr );/** int* pnLoad 用于輸出負載系數,以百分比為單位*/void vDumpQLink_Api( FILE* fp, const void* pQLink, int* pnLoad );#endif
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -