亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? sdworkitem.h

?? S3C2443 WINCE6.0 BSP
?? H
字號:
//
// Copyright (c) Microsoft Corporation.  All rights reserved.
//
//
// Use of this source code is subject to the terms of the Microsoft end-user
// license agreement (EULA) under which you licensed this SOFTWARE PRODUCT.
// If you did not accept the terms of the EULA, you are not authorized to use
// this source code. For a copy of the EULA, please see the LICENSE.RTF on your
// install media.
//

// Copyright (c) 2002 BSQUARE Corporation.  All rights reserved.
// DO NOT REMOVE --- BEGIN EXTERNALLY DEVELOPED SOURCE CODE ID 40973--- DO NOT REMOVE

// Generic work item object

#include "SDCardDDK.h"
#include <SDHCD.h>
#include "SDCardApi.h"

#ifndef _SDCARD_WORKITEM_DEFINED
#define _SDCARD_WORKITEM_DEFINED

#define SD_BUS_DRIVER_WORKER_TAG  'SDWK'

class CSDWorkItem;

// typedef for work item function
typedef VOID (*PSD_WORK_ITEM_FUNC) (CSDWorkItem *, PVOID);

// work item message block
typedef struct WORK_ITEM_MESSAGE_BLOCK {
    LIST_ENTRY  ListEntry;      // list entry
    DWORD       Data;           // data block
} *PWORK_ITEM_MESSAGE_BLOCK;

// macro to extract the data field in the message block
#define GetMessageBlock(type, pBlock) (type)(&((pBlock)->Data))

// class to implement work item object
class CSDWorkItem 
{
public:
    // constructor
    CSDWorkItem(PVOID                  pContext, 
        PSD_WORK_ITEM_FUNC     pFunction, 
        int                    Priority,
        ULONG                  MessageListDepth,
        ULONG                  MessageBlockLength,
        BOOL                   MessageQueue = TRUE);

    // destructor
    ~CSDWorkItem();

    // start the work item
    SD_API_STATUS StartWorkItem();

    // work item thread function
    static DWORD WorkItemThreadEntry(CSDWorkItem *pWorkItem);

    // get work item context
    PVOID GetContext() {
        return m_pWorkItemContext;
    }

    // acquire the object lock
    inline VOID AcquireLock() {
        EnterCriticalSection(&m_CriticalSection);
    }

    // release the object lock
    inline VOID ReleaseLock() {
        LeaveCriticalSection(&m_CriticalSection);
    }

    // allocate a message block
    inline PWORK_ITEM_MESSAGE_BLOCK AllocateMessage() {
        if (UsingMessageQueue()) {
            return (PWORK_ITEM_MESSAGE_BLOCK)SDAllocateFromMemList(m_hWorkItemMessageList);
        } else {
            DEBUGCHK(FALSE);
            return NULL;    
        }
    }

    // free a message
    inline VOID FreeMessage(PWORK_ITEM_MESSAGE_BLOCK pMessage) {
        if (UsingMessageQueue()) {
            SDFreeToMemList(m_hWorkItemMessageList, pMessage);
        } else {
            DEBUGCHK(FALSE);
        }
    }

    // wait for a wakeup event
    SD_API_STATUS WaitWakeUp(DWORD TimeOut = INFINITE);

    inline BOOL UsingMessageQueue() { return m_UseMessageQueue; }

    // post a message to the message queue
    VOID PostMessage(PWORK_ITEM_MESSAGE_BLOCK pMessage);

    // get a message from the message queue
    SD_API_STATUS GetMessage(PWORK_ITEM_MESSAGE_BLOCK *ppMessage);

    // flush the message queue
    VOID FlushMessageQueue();

    // wake up the work item
    VOID WakeUpWorkItem() {
        SetEvent(m_hWorkerWakeUp);
    }

protected:
    CRITICAL_SECTION        m_CriticalSection;  // work item critical section
    HANDLE                  m_hWorkerThread;    // the work item thread
    HANDLE                  m_hWorkerWakeUp;    // worker wake up
    BOOL                    m_ShutDown;         // ShutDown
    PSD_WORK_ITEM_FUNC      m_pWorkFunction;    // the work function
    PVOID                   m_pWorkItemContext; // context for the work item
    int                     m_WorkItemPriority;      // work item priority
    BOOL                    m_UseMessageQueue;       // use a message queue
    LIST_ENTRY              m_WorkItemMessageQueue;  // work item message queue
    SD_MEMORY_LIST_HANDLE   m_hWorkItemMessageList;  // list for events occuring on 
    ULONG                   m_MessageListDepth;      // message list depth
    ULONG                   m_MessageBlockLength;    // message block length   
    BOOL                    m_Initialized;           // initialized
};


#endif

// DO NOT REMOVE --- END EXTERNALLY DEVELOPED SOURCE CODE ID --- DO NOT REMOVE

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品美女视频| 欧美浪妇xxxx高跟鞋交| 91国产丝袜在线播放| 欧美色偷偷大香| 日韩欧美国产1| 成人欧美一区二区三区| 亚瑟在线精品视频| 久久99精品国产麻豆婷婷洗澡| 国产福利视频一区二区三区| 欧洲亚洲国产日韩| 精品国产亚洲一区二区三区在线观看| 欧美激情一区二区三区不卡| 亚洲高清不卡在线观看| 精品一区二区三区在线视频| 日本高清不卡在线观看| 欧美大片日本大片免费观看| 国产精品不卡一区二区三区| 日韩精品电影在线| 春色校园综合激情亚洲| 欧美日韩国产不卡| 国产清纯白嫩初高生在线观看91 | 国产精品一区久久久久| 欧洲一区二区三区在线| 国产日韩视频一区二区三区| 亚洲一区二区视频在线观看| 国产一区二区三区免费播放| 欧美三级电影在线看| 国产精品午夜久久| 免费人成在线不卡| 在线视频综合导航| 欧美激情一区二区三区全黄| 日韩高清一区在线| 色婷婷综合久色| 久久久影视传媒| 天堂影院一区二区| 91天堂素人约啪| 国产丝袜美腿一区二区三区| 丝袜美腿一区二区三区| 日本乱人伦一区| 国产精品久久久久久久久免费樱桃 | 国产剧情一区二区| 欧美猛男男办公室激情| 亚洲欧美激情插| 高清beeg欧美| 精品sm捆绑视频| 免费一级片91| 91精品国产综合久久精品图片| 亚洲免费观看高清完整| 成人h动漫精品一区二| 2023国产精品| 久久精品国产精品亚洲红杏| 欧美日韩精品电影| 一区二区三区 在线观看视频| 成人黄色大片在线观看| 欧美国产精品一区二区三区| 韩日欧美一区二区三区| 日韩欧美一卡二卡| 亚洲午夜精品一区二区三区他趣| 亚洲靠逼com| 天天影视网天天综合色在线播放| 色狠狠桃花综合| 亚洲欧洲av另类| av中文字幕在线不卡| 国产日韩精品视频一区| 91麻豆精品国产91久久久久久久久 | 一区二区三区中文字幕在线观看| 成人激情图片网| 国产精品久久三| 成人精品视频.| 国产精品美女久久久久aⅴ| 国产一区二区不卡| 久久天堂av综合合色蜜桃网| 国产一区在线看| 久久久久国产一区二区三区四区| 国产精品综合一区二区三区| 久久精品一区二区三区不卡牛牛 | 国产精品成人一区二区三区夜夜夜| 国产大陆亚洲精品国产| 中文字幕精品—区二区四季| 成人sese在线| 玉米视频成人免费看| 在线免费av一区| 五月激情综合婷婷| 欧美一区二区黄色| 精品一区二区免费视频| 久久久美女毛片| gogogo免费视频观看亚洲一| 一区二区三区波多野结衣在线观看| 欧美午夜精品久久久| 视频一区二区三区在线| 精品国产污网站| 成人深夜福利app| 亚洲精品视频在线看| 在线看日韩精品电影| 日本不卡视频一二三区| 国产亚洲综合在线| 91麻豆自制传媒国产之光| 亚洲成在人线在线播放| 欧美v国产在线一区二区三区| 国产91在线观看| 亚洲免费观看在线视频| 制服视频三区第一页精品| 国产在线视频一区二区| 国产精品欧美综合在线| 欧美日韩午夜在线视频| 狠狠色综合播放一区二区| 国产精品每日更新| 欧美日韩国产高清一区二区 | 国产精品视频你懂的| 日本韩国欧美在线| 麻豆精品一二三| 中文字幕第一区二区| 欧美在线一区二区| 欧美午夜精品久久久久久超碰| 精品在线观看视频| 亚洲色图在线播放| 日韩欧美国产精品| 91蝌蚪porny九色| 免费成人美女在线观看.| 久久精品亚洲一区二区三区浴池| 91免费观看在线| 国产在线视频一区二区| 一片黄亚洲嫩模| 久久久国产精华| 欧美三级电影网| 不卡视频在线看| 久久精品国产在热久久| 亚洲人成网站色在线观看 | 国产乱码精品一区二区三区av| 国产精品第五页| 欧美乱妇15p| www.日韩精品| 久久99九九99精品| 亚洲精选在线视频| 欧美精品一区二区三区高清aⅴ | 亚洲午夜电影网| 日本一区二区高清| 日韩一级在线观看| 一本一道综合狠狠老| 国产成人精品网址| 男人操女人的视频在线观看欧美| 中文字幕在线免费不卡| 精品国产乱码久久| 777色狠狠一区二区三区| 91在线精品一区二区三区| 精品一区二区影视| 丝袜美腿亚洲色图| 一区二区三区波多野结衣在线观看| 国产欧美日韩卡一| 26uuu欧美| 欧美一区永久视频免费观看| 在线看国产一区| 99r国产精品| 国产超碰在线一区| 久久精品99国产精品| 五月激情六月综合| 夜色激情一区二区| 亚洲三级电影全部在线观看高清| 亚洲国产精品黑人久久久| 26uuu另类欧美| 精品国产百合女同互慰| 欧美一区二区三区爱爱| 欧美日韩电影在线| 欧美亚洲动漫制服丝袜| 一道本成人在线| 91在线免费视频观看| 99热99精品| 国产69精品久久久久毛片| 韩国欧美国产一区| 韩国欧美一区二区| 国产一本一道久久香蕉| 理论电影国产精品| 久久精品国产99久久6| 免费成人在线观看| 美女视频免费一区| 蜜桃av一区二区| 蜜桃久久精品一区二区| 毛片基地黄久久久久久天堂| 天堂精品中文字幕在线| 日韩精品久久久久久| 免费成人在线视频观看| 久久精品国产在热久久| 久久aⅴ国产欧美74aaa| 捆绑紧缚一区二区三区视频| 久久精品国产精品亚洲精品| 久草在线在线精品观看| 国产在线国偷精品产拍免费yy | 国产精品天美传媒| 久久久久久99精品| 日本一区二区三区国色天香| 国产精品麻豆网站| 亚洲视频一区在线观看| 一区二区三区自拍| 日韩中文字幕av电影| 麻豆久久久久久久| 国产福利一区二区三区| 91香蕉视频在线| 一区二区三区自拍| 日韩激情一二三区| 国内成人免费视频|