ReactOS 0.4.15-dev-8076-g06e89b2
usbrpmif.h
Go to the documentation of this file.
1/*
2 * usbrpmif.h
3 *
4 * This file is part of the ReactOS PSDK package.
5 *
6 * Contributors:
7 * Created by Amine Khaldi <amine.khaldi@reactos.org>
8 *
9 * THIS SOFTWARE IS NOT COPYRIGHTED
10 *
11 * This source code is offered for use in the public domain. You may
12 * use, modify or distribute it freely.
13 *
14 * This code is distributed in the hope that it will be useful but
15 * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
16 * DISCLAIMED. This includes but is not limited to warranties of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
18 *
19 */
20
21#pragma once
22
23#include "windef.h"
24#include "usb100.h"
25
26#if !defined(_USBRPM_DRIVER_)
27#define USBRPMAPI DECLSPEC_IMPORT
28#else
29#define USBRPMAPI
30#endif
31
42
43typedef struct _USBRPM_DEVICE_LIST {
47
53 IN LPCWSTR CompatibleId,
54 OUT PHANDLE RegisteredDriver);
55
60 IN HANDLE RegisteredDriver);
61
65 IN HANDLE RegisteredDriver,
66 IN USHORT Locale,
68
73 IN HANDLE RegisteredDriver,
74 IN ULONG64 HubID,
75 IN ULONG ConnectionIndex,
76 IN OPTIONAL REFGUID OwnerGuid);
77
82 IN HANDLE RegisteredDriver,
83 IN ULONG64 HubID,
84 IN ULONG ConnectionIndex);
LONG NTSTATUS
Definition: precomp.h:26
#define MAX_PATH
Definition: compat.h:34
PDEVICE_LIST DeviceList
Definition: utils.c:27
unsigned __int64 ULONG64
Definition: imports.h:198
PVOID *typedef PHANDLE
Definition: ntsecpkg.h:455
unsigned short USHORT
Definition: pedump.c:61
PULONG MinorVersion OPTIONAL
Definition: CrossNt.h:68
Definition: scsiwmi.h:51
WCHAR HubSymbolicLinkName[MAX_PATH]
Definition: usbrpmif.h:40
WCHAR ManufacturerString[MAXIMUM_USB_STRING_LENGTH]
Definition: usbrpmif.h:38
WCHAR ProductString[MAXIMUM_USB_STRING_LENGTH]
Definition: usbrpmif.h:39
ULONG NumberOfDevices
Definition: usbrpmif.h:44
#define NTAPI
Definition: typedefs.h:36
#define IN
Definition: typedefs.h:39
uint32_t ULONG
Definition: typedefs.h:59
#define OUT
Definition: typedefs.h:40
#define MAXIMUM_USB_STRING_LENGTH
Definition: usb100.h:43
USBRPMAPI NTSTATUS RPMGetAvailableDevices(IN HANDLE RegisteredDriver, IN USHORT Locale, OUT PUSBRPM_DEVICE_LIST *DeviceList)
struct _USBRPM_DEVICE_LIST * PUSBRPM_DEVICE_LIST
USBRPMAPI NTSTATUS NTAPI RPMLoadAlternateDriverForDevice(IN HANDLE RegisteredDriver, IN ULONG64 HubID, IN ULONG ConnectionIndex, IN OPTIONAL REFGUID OwnerGuid)
struct _USBRPM_DEVICE_INFORMATION USBRPM_DEVICE_INFORMATION
struct _USBRPM_DEVICE_LIST USBRPM_DEVICE_LIST
USBRPMAPI NTSTATUS NTAPI RPMRegisterAlternateDriver(IN PDRIVER_OBJECT DriverObject, IN LPCWSTR CompatibleId, OUT PHANDLE RegisteredDriver)
struct _USBRPM_DEVICE_INFORMATION * PUSBRPM_DEVICE_INFORMATION
USBRPMAPI NTSTATUS NTAPI RPMUnregisterAlternateDriver(IN HANDLE RegisteredDriver)
#define USBRPMAPI
Definition: usbrpmif.h:27
USBRPMAPI NTSTATUS NTAPI RPMUnloadAlternateDriverForDevice(IN HANDLE RegisteredDriver, IN ULONG64 HubID, IN ULONG ConnectionIndex)
_Must_inspect_result_ _In_ WDFDEVICE Device
Definition: wdfchildlist.h:474
_Must_inspect_result_ _In_ PDRIVER_OBJECT DriverObject
Definition: wdfdriver.h:213
unsigned char UCHAR
Definition: xmlstorage.h:181
__wchar_t WCHAR
Definition: xmlstorage.h:180
const WCHAR * LPCWSTR
Definition: xmlstorage.h:185