?? mk_msgqf.h
字號:
/**********************************************************************************
* mk_msgQF.h
* coded by hspark@ce.cnu.ac.kr
* date : 2002/06/23
**********************************************************************************/
#ifndef __MK_MSGQF_H__
#define __MK_MSGQF_H__
#include "kernel\\mk_defs.h"
#include "kernel\\mk_task.h"
#include "kernel\\mk_sem.h"
#include "kernel\\mk_mem.h"
#define MK_MSGQF_MAGIC 0xF3CD03E4L /* Magic Value of Message Queue */
#define MK_QUEUE_FULL -46
#define MK_QUEUE_EMPTY -45
#pragma packed on
typedef struct mk_fixed_queue_msg_struct {
ULONG fm_StartOfMsg;
ULONG fm_Length;
struct mk_fixed_queue_msg_struct *fm_pNext;
} MK_FIXED_QUEUE_MSG;
typedef struct mk_fixed_msg_queue_struct {
ULONG fq_Magic;
ULONG fq_AvailableSize;
struct mk_fixed_queue_msg_struct *fq_pMsgListHead;
struct mk_fixed_queue_msg_struct *fq_pMsgListTail;
struct mk_buffer_pool_struct fq_Pool; /* Include SendSemaphore */
struct mk_semaphore_struct fq_ReceiveSemaphore;
} MK_FIXED_QUEUE;
#pragma packed off
/*-----------------------------------------------------------------
* Internal Function
*-----------------------------------------------------------------*/
void MK_FixedMsgQueueInitialze(void);
ULONG MK_GetFixedMsgQueueAvailableBufferSize(MK_FIXED_QUEUE *pQueue);
INT MK_GetFixedMsgQueueMsgCount(MK_FIXED_QUEUE *pQueue);
STATUS MK_CreateFixedMsgQueue(MK_FIXED_QUEUE *pQueue, char *pName, void *pAddr, int Count,
ULONG Size, BOOLEAN Options);
ULONG MK_GetFixedMsgQueueNeedSize(UINT MsgCount, ULONG Size);
STATUS MK_DeleteFixedMsgQueue(MK_FIXED_QUEUE *pQueue);
STATUS MK_FixedMsgQueuePend(MK_FIXED_QUEUE *pFMsgQueue, void *pMsg, ULONG BufSize,
ULONG *pLength, long Ticks);
STATUS MK_FixedMsgQueuePost(MK_FIXED_QUEUE *pFMsgQueue, void *pMsg, ULONG Length,
long Ticks);
STATUS MK_FixedMsgQueueFrontPost(MK_FIXED_QUEUE *pQueue, void *pMsg, ULONG Length,
long Ticks);
STATUS MK_FixedMsgQueueBroadcastPost(MK_FIXED_QUEUE *pQueue, void *pMsg, ULONG Length,
long Ticks);
STATUS MK_FixedMsgQueueReset(MK_FIXED_QUEUE *pQueue);
#endif /* __MK_MSGQF_H__ */
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -