⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 hidpkt.h

📁 CE下串口复用程序
💻 H
字号:
//
// Copyright (c) Microsoft Corporation.  All rights reserved.
//
//
// This source code is licensed under Microsoft Shared Source License
// Version 1.0 for Windows CE.
// For a copy of the license visit http://go.microsoft.com/fwlink/?LinkId=3223.
//
#if ! defined (__hidpkt_H__)
#define __hidpkt_H__		1

#define BTHHID_TYPICAL_PAYLOAD	64

class BTHHIDPacket
{
public:
    BTHHIDPacket();
    BTHHIDPacket(BYTE* pPayload, int cbBuffer);
    ~BTHHIDPacket();

    void ReleasePayload();

    void SetReportType(E_BTHID_REPORT_TYPES iReportType);
    void SetHeader(BYTE bHeader);
    void SetPayload(BYTE* pbPayload, int cbPayload);     // no copying
    void SetMTU(int iMTU);
	void SetOwner(void *lpOwner);

    E_BTHID_REPORT_TYPES GetReportType() const;
    BYTE GetHeader() const;
    int  GetMTU() const;
    void *GetOwner() const;
    void GetPayload(BYTE** ppbPayload, int* pcbPayload) const; // no copying

    // Copies to and from pbPayload
    BOOL AddPayloadChunk(BYTE* pbPayload, int cbPayload);
    BOOL GetPayloadChunk(BYTE* pbPayload, int cbPayload, int* pcbTransfered);

	void *operator new (size_t iSize);
	void operator delete(void *ptr);

private:
    BTHHIDPacket(const BTHHIDPacket& packet); // shouldn't need that

    BYTE  m_bHeader;
    BYTE* m_pbPayload;
    int   m_cbPayload;
    int   m_cbRemaining;
    int   m_iMTU;

	void  *m_pOwner;
    E_BTHID_REPORT_TYPES m_iReportType;

	unsigned char m_ucBuffer[BTHHID_TYPICAL_PAYLOAD];
};

int BthPktInitAllocator (void);
int BthPktFreeAllocator (void);

#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -