5#include <revolution/BTE.h>
6#include <revolution/SC.h>
11#define WUD_MAX_DEV_ENTRY_FOR_STD SC_MAX_DEV_ENTRY_FOR_STD
12#define WUD_MAX_DEV_ENTRY_FOR_SMP SC_MAX_DEV_ENTRY_FOR_SMP
13#define WUD_MAX_DEV_ENTRY SC_MAX_DEV_ENTRY
14#define WUD_DEV_HANDLE_INVALID (-1)
39 WUD_SYNC_TYPE_STANDARD,
43typedef void* (*WUDAllocFunc)(u32 size);
44typedef BOOL (*WUDFreeFunc)(
void* pBlock);
46typedef void (*WUDSyncDeviceCallback)(s32 result, s32 num);
47typedef void (*WUDClearDeviceCallback)(s32 result);
49typedef void (*WUDHidConnCallback)(UINT8 devHandle, u8 open);
50typedef void (*WUDHidRecvCallback)(UINT8 devHandle, UINT8* pReport, UINT16 len);
64 tBTA_HH_ATTR_MASK hhAttrMask;
69void WUDRegisterAllocator(WUDAllocFunc pAllocFunc, WUDFreeFunc pFreeFunc);
70u32 WUDGetAllocatedMemSize(
void);
71void WUDShutdown(
void);
73WUDLibStatus WUDGetStatus(
void);
74u8 WUDGetBufferStatus(
void);
76void WUDSetSniffMode(BD_ADDR addr, s32 interval);
80WUDSetSyncSimpleCallback(WUDSyncDeviceCallback pCallback);
83WUDSetClearDeviceCallback(WUDClearDeviceCallback pCallback);
86BOOL WUDStartSyncDevice(
void);
87BOOL WUDStartFastSyncSimple(
void);
88BOOL WUDStartSyncSimple(
void);
89BOOL WUDStopSyncSimple(
void);
91BOOL WUDStartClearDevice(
void);
92BOOL WUDSetDisableChannel(s8 afhChannel);
94WUDHidRecvCallback WUDSetHidRecvCallback(WUDHidRecvCallback pCallback);
95WUDHidConnCallback WUDSetHidConnCallback(WUDHidConnCallback pCallback);
97void WUDSetVisibility(u8 disc, u8 conn);
98u8 WUDGetConnectable(
void);
100void WUDiGetFirmwareVersion(
void);
101void WUDiInitSub(
void);
103void WUDiEnableStack(
void);
104void WUDiAutoSync(
void);
105void WUDiDeleteAllLinkKeys(
void);
107void WUDiRegisterDevice(BD_ADDR addr);
108void WUDiRemoveDevice(BD_ADDR addr);
113void WUDiRemoveDevInfo(BD_ADDR addr);
114void WUDiClearDevice(
void);
116u8 WUDiGetDevNumber(
void);
117u8 WUDiGetDevSmpNumber(
void);
118u8 WUDiGetConnNumber(
void);
119u8 WUDiGetLinkNum(
void);
121void WUDiMoveTopSmpDevInfoPtr(
WUDDevInfo* pInfo);
122void WUDiMoveBottomSmpDevInfoPtr(
WUDDevInfo* pInfo);
124void WUDiMoveTopOfDisconnectedSmpDevice(
WUDDevInfo* pInfo);
126void WUDiMoveTopStdDevInfoPtr(
WUDDevInfo* pInfo);
127void WUDiMoveBottomStdDevInfoPtr(
WUDDevInfo* pInfo);
129void WUDiMoveTopOfDisconnectedStdDevice(
WUDDevInfo* pInfo);
131BD_ADDR_PTR _WUDGetDevAddr(UINT8 handle);
132u16 _WUDGetQueuedSize(s8 handle);
133u16 _WUDGetNotAckedSize(s8 handle);
134u8 _WUDGetLinkNumber(
void);