9 #ifdef _WIN32 // patch for MRPT 59 "WinUsb_GetAssociatedInterface");
62 "WinUsb_GetDescriptor");
65 "WinUsb_QueryInterfaceSettings");
68 "WinUsb_QueryDeviceInformation");
71 "WinUsb_SetCurrentAlternateSetting");
74 "WinUsb_GetCurrentAlternateSetting");
79 "WinUsb_SetPipePolicy");
82 "WinUsb_GetPipePolicy");
89 "WinUsb_ControlTransfer");
98 "WinUsb_SetPowerPolicy");
101 "WinUsb_GetPowerPolicy");
104 "WinUsb_GetOverlappedResult");
120 HANDLE DeviceHandle, PWINUSB_INTERFACE_HANDLE InterfaceHandle)
158 WINUSB_INTERFACE_HANDLE InterfaceHandle, UCHAR AssociatedInterfaceIndex,
159 PWINUSB_INTERFACE_HANDLE AssociatedInterfaceHandle)
163 InterfaceHandle, AssociatedInterfaceIndex,
164 AssociatedInterfaceHandle);
189 WINUSB_INTERFACE_HANDLE InterfaceHandle, UCHAR DescriptorType, UCHAR Index,
190 USHORT LanguageID, PUCHAR Buffer, ULONG BufferLength,
191 PULONG LengthTransferred)
195 InterfaceHandle, DescriptorType, Index, LanguageID, Buffer,
196 BufferLength, LengthTransferred);
224 WINUSB_INTERFACE_HANDLE InterfaceHandle, UCHAR AlternateInterfaceNumber,
225 PUSB_INTERFACE_DESCRIPTOR UsbAltInterfaceDescriptor)
229 InterfaceHandle, AlternateInterfaceNumber,
230 UsbAltInterfaceDescriptor);
254 WINUSB_INTERFACE_HANDLE InterfaceHandle, ULONG InformationType,
255 PULONG BufferLength, PVOID Buffer)
259 InterfaceHandle, InformationType, BufferLength, Buffer);
278 WINUSB_INTERFACE_HANDLE InterfaceHandle, UCHAR SettingNumber)
282 InterfaceHandle, SettingNumber);
298 WINUSB_INTERFACE_HANDLE InterfaceHandle, PUCHAR SettingNumber)
302 InterfaceHandle, SettingNumber);
344 WINUSB_INTERFACE_HANDLE InterfaceHandle, UCHAR AlternateInterfaceNumber,
345 UCHAR PipeIndex, PWINUSB_PIPE_INFORMATION PipeInformation)
349 InterfaceHandle, AlternateInterfaceNumber, PipeIndex,
467 WINUSB_INTERFACE_HANDLE InterfaceHandle, UCHAR PipeID, ULONG PolicyType,
468 ULONG ValueLength, PVOID Value)
472 InterfaceHandle, PipeID, PolicyType, ValueLength, Value);
495 WINUSB_INTERFACE_HANDLE InterfaceHandle, UCHAR PipeID, ULONG PolicyType,
496 PULONG ValueLength, PVOID Value)
500 InterfaceHandle, PipeID, PolicyType, ValueLength, Value);
528 WINUSB_INTERFACE_HANDLE InterfaceHandle, UCHAR PipeID, PUCHAR Buffer,
529 ULONG BufferLength, PULONG LengthTransferred, LPOVERLAPPED Overlapped)
533 InterfaceHandle, PipeID, Buffer, BufferLength, LengthTransferred,
560 WINUSB_INTERFACE_HANDLE InterfaceHandle, UCHAR PipeID, PUCHAR Buffer,
561 ULONG BufferLength, PULONG LengthTransferred, LPOVERLAPPED Overlapped)
565 InterfaceHandle, PipeID, Buffer, BufferLength, LengthTransferred,
600 WINUSB_INTERFACE_HANDLE InterfaceHandle, WINUSB_SETUP_PACKET SetupPacket,
601 PUCHAR Buffer, ULONG BufferLength, PULONG LengthTransferred,
602 LPOVERLAPPED Overlapped)
606 InterfaceHandle, SetupPacket, Buffer, BufferLength,
607 LengthTransferred, Overlapped);
712 WINUSB_INTERFACE_HANDLE InterfaceHandle, ULONG PolicyType,
713 ULONG ValueLength, PVOID Value)
717 InterfaceHandle, PolicyType, ValueLength, Value);
757 WINUSB_INTERFACE_HANDLE InterfaceHandle, ULONG PolicyType,
758 PULONG ValueLength, PVOID Value)
762 InterfaceHandle, PolicyType, ValueLength, Value);
823 WINUSB_INTERFACE_HANDLE InterfaceHandle, LPOVERLAPPED lpOverlapped,
824 LPDWORD lpNumberOfBytesTransferred,
BOOL bWait)
828 InterfaceHandle, lpOverlapped, lpNumberOfBytesTransferred, bWait);
833 #endif // patch for MRPT BOOL __stdcall WinUSB_ResetPipe(WINUSB_INTERFACE_HANDLE InterfaceHandle, UCHAR PipeID)
BOOL __stdcall WinUSB_GetPipePolicy(WINUSB_INTERFACE_HANDLE InterfaceHandle, UCHAR PipeID, ULONG PolicyType, PULONG ValueLength, PVOID Value)
BOOL __stdcall WinUSB_GetCurrentAlternateSetting(WINUSB_INTERFACE_HANDLE InterfaceHandle, PUCHAR AltSettingNumber)
WinUSB_SetPipePolicy * SetPipePolicy
WinUSB_Free Free
Frees a WinUsb interface handle.
WinUSB_AbortPipe AbortPipe
Aborts all of the pending transfers for a pipe.
BOOL __stdcall WinUSB_GetAssociatedInterface(WINUSB_INTERFACE_HANDLE InterfaceHandle, UCHAR AssociatedInterfaceIndex, WINUSB_INTERFACE_HANDLE *AssociatedInterfaceHandle)
WinUSB_GetPipePolicy GetPipePolicy
Gets the policy for a specific pipe (endpoint).
WinUSB_GetAssociatedInterface * GetAssociatedInterface
BOOL __stdcall WinUSB_GetOverlappedResult(WINUSB_INTERFACE_HANDLE InterfaceHandle, LPOVERLAPPED Overlapped, LPDWORD lpNumberOfBytesTransferred, BOOL bWait)
struct XsLibraryLoader XsLibraryLoader
XsLibraryLoader * m_libraryLoader
WinUSB_QueryPipe QueryPipe
Retrieves information about a pipe that is associated with an interface. The QueryPipe function does ...
WinUSB_SetCurrentAlternateSetting SetCurrentAlternateSetting
Sets the alternate setting of an interface. Sets the active bAlternateSetting for the current/default...
WinUSB_Initialize * Initialize
BOOL __stdcall WinUSB_Initialize(HANDLE DeviceHandle, WINUSB_INTERFACE_HANDLE *InterfaceHandle)
WinUSB_GetPowerPolicy GetPowerPolicy
Gets the power policy for a device.
WinUSB_GetDescriptor * GetDescriptor
WinUSB_GetPowerPolicy * GetPowerPolicy
BOOL __stdcall WinUSB_GetDescriptor(WINUSB_INTERFACE_HANDLE InterfaceHandle, UCHAR DescriptorType, UCHAR Index, USHORT LanguageID, PUCHAR Buffer, ULONG BufferLength, PULONG LengthTransferred)
WinUSB_SetCurrentAlternateSetting * SetCurrentAlternateSetting
BOOL __stdcall WinUSB_ReadPipe(WINUSB_INTERFACE_HANDLE InterfaceHandle, UCHAR PipeID, PUCHAR Buffer, ULONG BufferLength, PULONG LengthTransferred, LPOVERLAPPED Overlapped)
BOOL __stdcall WinUSB_SetPowerPolicy(WINUSB_INTERFACE_HANDLE InterfaceHandle, ULONG PolicyType, ULONG ValueLength, PVOID Value)
WinUSB_ReadPipe ReadPipe
Reads data from the specified pipe.
BOOL __stdcall WinUSB_FlushPipe(WINUSB_INTERFACE_HANDLE InterfaceHandle, UCHAR PipeID)
BOOL __stdcall WinUSB_ControlTransfer(WINUSB_INTERFACE_HANDLE InterfaceHandle, WINUSB_SETUP_PACKET SetupPacket, PUCHAR Buffer, ULONG BufferLength, PULONG LengthTransferred, LPOVERLAPPED Overlapped)
BOOL __stdcall WinUSB_QueryInterfaceSettings(WINUSB_INTERFACE_HANDLE InterfaceHandle, UCHAR AltSettingIndex, PUSB_INTERFACE_DESCRIPTOR UsbAltInterfaceDescriptor)
WinUSB_Initialize Initialize
Creates/opens a WinUsb interface handle from the device list.
WinUSB_ResetPipe ResetPipe
Resets the data toggle and clears the stall condition on a pipe.
WinUSB_AbortPipe * AbortPipe
WinUSB_GetCurrentAlternateSetting * GetCurrentAlternateSetting
BOOL __stdcall WinUSB_GetPowerPolicy(WINUSB_INTERFACE_HANDLE InterfaceHandle, ULONG PolicyType, PULONG ValueLength, PVOID Value)
WinUSB_GetOverlappedResult GetOverlappedResult
Retrieves the results of an overlapped operation on the specified winUSB handle.
WinUSB_FlushPipe FlushPipe
Discards any data that is cached in a pipe.
BOOL __stdcall WinUSB_SetCurrentAlternateSetting(WINUSB_INTERFACE_HANDLE InterfaceHandle, UCHAR AltSettingNumber)
WinUSB_GetDescriptor GetDescriptor
Gets the requested descriptor. This is a synchronous operation.
BOOL __stdcall WinUSB_AbortPipe(WINUSB_INTERFACE_HANDLE InterfaceHandle, UCHAR PipeID)
WinUSB_QueryPipe * QueryPipe
WinUSB_SetPowerPolicy SetPowerPolicy
Sets the power policy for a device. The following list summarizes the effects of changes to power man...
WinUSB_QueryInterfaceSettings QueryInterfaceSettings
Retrieves the interface descriptor for the specified alternate interface settings for a particular in...
WinUSB_ResetPipe * ResetPipe
WinUSB_QueryDeviceInformation QueryDeviceInformation
Retrieves information about the physical device that is associated with a WinUSB handle.
WinUSB_WritePipe * WritePipe
WinUSB_GetAssociatedInterface GetAssociatedInterface
Retrieves a handle for an associated interface.
WinUSB_SetPipePolicy SetPipePolicy
Sets the policy for a specific pipe associated with an endpoint on the device. This is a synchronous ...
WinUSB_ReadPipe * ReadPipe
WinUSB_QueryInterfaceSettings * QueryInterfaceSettings
BOOL __stdcall WinUSB_QueryPipe(WINUSB_INTERFACE_HANDLE InterfaceHandle, UCHAR AltSettingNumber, UCHAR PipeIndex, PWINUSB_PIPE_INFORMATION PipeInformation)
WinUSB_QueryDeviceInformation * QueryDeviceInformation
WinUSB_FlushPipe * FlushPipe
BOOL __stdcall WinUSB_SetPipePolicy(WINUSB_INTERFACE_HANDLE InterfaceHandle, UCHAR PipeID, ULONG PolicyType, ULONG ValueLength, PVOID Value)
WinUSB_ControlTransfer * ControlTransfer
WinUSB_GetPipePolicy * GetPipePolicy
WinUSB_SetPowerPolicy * SetPowerPolicy
WinUSB_WritePipe WritePipe
Writes data to a pipe.
BOOL __stdcall WinUSB_Free(WINUSB_INTERFACE_HANDLE InterfaceHandle)
WinUSB_ControlTransfer ControlTransfer
Transmits control data over a default control endpoint. A ControlTransfer is never cached...
BOOL __stdcall WinUSB_QueryDeviceInformation(WINUSB_INTERFACE_HANDLE InterfaceHandle, ULONG InformationType, PULONG BufferLength, PVOID Buffer)
WinUSB_GetOverlappedResult * GetOverlappedResult
BOOL __stdcall WinUSB_WritePipe(WINUSB_INTERFACE_HANDLE InterfaceHandle, UCHAR PipeID, PUCHAR Buffer, ULONG BufferLength, PULONG LengthTransferred, LPOVERLAPPED Overlapped)
WinUSB_GetCurrentAlternateSetting GetCurrentAlternateSetting
Gets the current alternate interface setting for an interface. Gets the active bAlternateSetting for ...