ReactOS 0.4.15-dev-8119-g4fb2fdb
cmtypes.h
Go to the documentation of this file.
1/*++ NDK Version: 0098
2
3Copyright (c) Alex Ionescu. All rights reserved.
4
5Header Name:
6
7 cmtypes.h
8
9Abstract:
10
11 Type definitions for the Configuration Manager.
12
13Author:
14
15 Alex Ionescu (alexi@tinykrnl.org) - Updated - 27-Feb-2006
16
17--*/
18
19#ifndef _CMTYPES_H
20#define _CMTYPES_H
21
22//
23// Dependencies
24//
25#include <umtypes.h>
26#include <cfg.h>
27#include <iotypes.h>
28
29#define MAX_BUS_NAME 24
30
31//
32// PLUGPLAY_CONTROL_PROPERTY_DATA.Properties
33//
34#define PNP_PROPERTY_UI_NUMBER 0
35#define PNP_PROPERTY_PHYSICAL_DEVICE_OBJECT_NAME 1
36#define PNP_PROPERTY_BUSTYPEGUID 2
37#define PNP_PROPERTY_LEGACYBUSTYPE 3
38#define PNP_PROPERTY_BUSNUMBER 4
39#define PNP_PROPERTY_POWER_DATA 5
40#define PNP_PROPERTY_REMOVAL_POLICY 6
41#define PNP_PROPERTY_REMOVAL_POLICY_OVERRIDE 7
42#define PNP_PROPERTY_ADDRESS 8
43#define PNP_PROPERTY_ENUMERATOR_NAME 9
44#define PNP_PROPERTY_REMOVAL_POLICY_HARDWARE_DEFAULT 10
45#define PNP_PROPERTY_INSTALL_STATE 11
46#define PNP_PROPERTY_LOCATION_PATHS 12
47#define PNP_PROPERTY_CONTAINERID 13
48
49//
50// PLUGPLAY_CONTROL_RELATED_DEVICE_DATA.Relations
51//
52#define PNP_GET_PARENT_DEVICE 1
53#define PNP_GET_CHILD_DEVICE 2
54#define PNP_GET_SIBLING_DEVICE 3
55
56//
57// PLUGPLAY_CONTROL_STATUS_DATA.Operation
58//
59#define PNP_GET_DEVICE_STATUS 0
60#define PNP_SET_DEVICE_STATUS 1
61#define PNP_CLEAR_DEVICE_STATUS 2
62
63//
64// PLUGPLAY_CONTROL_DEVICE_RELATIONS_DATA.Relations
65//
66#define PNP_EJECT_RELATIONS 0
67#define PNP_REMOVAL_RELATIONS 1
68#define PNP_POWER_RELATIONS 2
69#define PNP_BUS_RELATIONS 3
70
71
72#ifdef NTOS_MODE_USER
73
74//
75// Resource Type
76//
77#define CmResourceTypeNull 0
78#define CmResourceTypePort 1
79#define CmResourceTypeInterrupt 2
80#define CmResourceTypeMemory 3
81#define CmResourceTypeDma 4
82#define CmResourceTypeDeviceSpecific 5
83#define CmResourceTypeBusNumber 6
84#define CmResourceTypeMemoryLarge 7
85#define CmResourceTypeNonArbitrated 128
86#define CmResourceTypeConfigData 128
87#define CmResourceTypeDevicePrivate 129
88#define CmResourceTypePcCardConfig 130
89#define CmResourceTypeMfCardConfig 131
90
91
92//
93// Resource Descriptor Share Dispositions
94//
95typedef enum _CM_SHARE_DISPOSITION
96{
102
103#endif
104
105//
106// Port Resource Descriptor Flags
107//
108#define CM_RESOURCE_PORT_MEMORY 0x0000
109#define CM_RESOURCE_PORT_IO 0x0001
110#define CM_RESOURCE_PORT_10_BIT_DECODE 0x0004
111#define CM_RESOURCE_PORT_12_BIT_DECODE 0x0008
112#define CM_RESOURCE_PORT_16_BIT_DECODE 0x0010
113#define CM_RESOURCE_PORT_POSITIVE_DECODE 0x0020
114#define CM_RESOURCE_PORT_PASSIVE_DECODE 0x0040
115#define CM_RESOURCE_PORT_WINDOW_DECODE 0x0080
116
117//
118// Memory Resource Descriptor Flags
119//
120#define CM_RESOURCE_MEMORY_READ_WRITE 0x0000
121#define CM_RESOURCE_MEMORY_READ_ONLY 0x0001
122#define CM_RESOURCE_MEMORY_WRITE_ONLY 0x0002
123#define CM_RESOURCE_MEMORY_PREFETCHABLE 0x0004
124#define CM_RESOURCE_MEMORY_COMBINEDWRITE 0x0008
125#define CM_RESOURCE_MEMORY_24 0x0010
126#define CM_RESOURCE_MEMORY_CACHEABLE 0x0020
127
128//
129// DMA Resource Descriptor Flags
130//
131#define CM_RESOURCE_DMA_8 0x0000
132#define CM_RESOURCE_DMA_16 0x0001
133#define CM_RESOURCE_DMA_32 0x0002
134#define CM_RESOURCE_DMA_8_AND_16 0x0004
135#define CM_RESOURCE_DMA_BUS_MASTER 0x0008
136#define CM_RESOURCE_DMA_TYPE_A 0x0010
137#define CM_RESOURCE_DMA_TYPE_B 0x0020
138#define CM_RESOURCE_DMA_TYPE_F 0x0040
139
140//
141// Interrupt Resource Descriptor Flags
142//
143#define CM_RESOURCE_INTERRUPT_LEVEL_SENSITIVE 0x0000
144#define CM_RESOURCE_INTERRUPT_LATCHED 0x0001
145#define CM_RESOURCE_INTERRUPT_MESSAGE 0x0002
146#define CM_RESOURCE_INTERRUPT_POLICY_INCLUDED 0x0004
147#define CM_RESOURCE_INTERRUPT_ALLOW_RESERVED_IDT 0x0008
148#define CM_RESOURCE_INTERRUPT_SECONDARY_INTERRUPT 0x0010
149#define CM_RESOURCE_INTERRUPT_WAKE_HINT 0x0020
150
151#define CM_RESOURCE_INTERRUPT_LEVEL_LATCHED_BITS 0x0001
152
153#define CM_RESOURCE_INTERRUPT_MESSAGE_TOKEN ((ULONG)-2)
154
155//
156// NtInitializeRegistry Flags
157//
158#define CM_BOOT_FLAG_SMSS 0x0000
159#define CM_BOOT_FLAG_SETUP 0x0001
160#define CM_BOOT_FLAG_ACCEPTED 0x0002
161#define CM_BOOT_FLAG_MAX (CM_BOOT_FLAG_ACCEPTED + 999)
162
163#ifdef NTOS_MODE_USER
164
165//
166// Information Classes for NtQueryKey
167//
168typedef enum _KEY_INFORMATION_CLASS
169{
180
182{
188 MaxKeyValueInfoClass
190
192{
201
202#endif
203
204//
205// Plag and Play Classes
206//
208{
234
236{
241
242//
243// Plag and Play Bus Types
244//
246{
250
251//
252// Plag and Play Event Categories
253//
255{
267
268#ifdef NTOS_MODE_USER
269
270//
271// Information Structures for NtQueryKeyInformation
272//
273typedef struct _KEY_WRITE_TIME_INFORMATION
274{
277
278typedef struct _KEY_WOW64_FLAGS_INFORMATION
279{
282
283typedef struct _KEY_USER_FLAGS_INFORMATION
284{
285 ULONG UserFlags;
286} KEY_USER_FLAGS_INFORMATION, *PKEY_USER_FLAGS_INFORMATION;
287
288typedef struct _KEY_HANDLE_TAGS_INFORMATION
289{
292
294{
297
299{
305 ULONG Reserved:27;
307
309{
313 ULONG Reserved:29;
315
316
317typedef struct _KEY_FULL_INFORMATION
318{
329 WCHAR Class[1];
331
332typedef struct _KEY_NAME_INFORMATION
333{
335 WCHAR Name[1];
337
338
339typedef struct _KEY_NODE_INFORMATION
340{
346 WCHAR Name[1];
348
349typedef struct _KEY_VALUE_ENTRY
350{
354 ULONG Type;
356
358{
360 ULONG Type;
362 UCHAR Data[1];
364
366{
367 ULONG Type;
369 UCHAR Data[1];
371
372typedef struct _KEY_VALUE_BASIC_INFORMATION
373{
375 ULONG Type;
377 WCHAR Name[1];
379
380typedef struct _KEY_VALUE_FULL_INFORMATION
381{
383 ULONG Type;
387 WCHAR Name[1];
389
390typedef struct _KEY_BASIC_INFORMATION
391{
395 WCHAR Name[1];
397
398#endif
399
400//
401// Plug and Play Event Block
402//
404{
411 union
412 {
413 struct
414 {
418 struct
419 {
422 struct
423 {
426 struct
427 {
431 struct
432 {
435 struct
436 {
440 struct
441 {
445 struct
446 {
449 };
451
452//
453// Plug and Play Control Classes
454//
455
456// PlugPlayControlEnumerateDevice (0x00)
458{
462
463// PlugPlayControlRegisterNewDevice (0x1)
464// PlugPlayControlDeregisterDevice (0x2)
465// PlugPlayControlInitializeDevice (0x3)
466// PlugPlayControlStartDevice (0x4)
467// PlugPlayControlUnlockDevice (0x5)
468// PlugPlayControlResetDevice (0x14)
469// PlugPlayControlHaltDevice (0x15)
471{
474
475// PlugPlayControlQueryAndRemoveDevice (0x06)
477{
484
485// PlugPlayControlUserResponse (0x07)
487{
493
494// PlugPlayControlGetInterfaceDeviceList (0x09)
496{
503
504// PlugPlayControlProperty (0x0A)
506{
512
513// PlugPlayControlGetRelatedDevice (0x0C)
515{
521
522// PlugPlayControlDeviceStatus (0x0E)
524{
530
531// PlugPlayControlGetDeviceDepth (0x0F)
533{
537
538// PlugPlayControlQueryDeviceRelations (0x10)
540{
546
547// PlugPlayControlRetrieveDock (0x13)
549{
553
554//
555// Plug and Play Bus Type Definition
556//
557typedef struct _PLUGPLAY_BUS_TYPE
558{
560 union
561 {
564 };
566
567//
568// Plug and Play Bus Instance Definition
569//
571{
576
577#ifdef NTOS_MODE_USER
578
579//
580// Partial Resource Descriptor and List for Hardware
581//
582#include <pshpack1.h>
584{
585 UCHAR Type;
588 union
589 {
590 struct
591 {
594 } Generic;
595 struct
596 {
599 } Port;
600 struct
601 {
602 ULONG Level;
605 } Interrupt;
606#if (NTDDI_VERSION >= NTDDI_LONGHORN)
607 struct
608 {
609 union
610 {
611 struct
612 {
617 } Raw;
618 struct
619 {
620 ULONG Level;
623 } Translated;
624 };
626#endif
627 struct
628 {
631 } Memory;
632 struct
633 {
635 ULONG Port;
637 } Dma;
638 struct
639 {
640 ULONG Data[3];
642 struct
643 {
644 ULONG Start;
647 } BusNumber;
648 struct
649 {
654#if (NTDDI_VERSION >= NTDDI_LONGHORN)
655 struct
656 {
659 } Memory40;
660 struct
661 {
664 } Memory48;
665 struct
666 {
669 } Memory64;
670#endif
671 } u;
673
674typedef struct _CM_PARTIAL_RESOURCE_LIST
675{
678 ULONG Count;
681
682//
683// Full Resource Descriptor and List for Hardware
684//
685typedef struct _CM_FULL_RESOURCE_DESCRIPTOR
686{
691
692typedef struct _CM_RESOURCE_LIST
693{
694 ULONG Count;
697
698//
699// ROM Block Structure
700//
701typedef struct _CM_ROM_BLOCK
702{
704 ULONG Size;
706
707//
708// Disk/INT13 Structures
709//
710typedef struct _CM_INT13_DRIVE_PARAMETER
711{
718
720{
726
727#include <poppack.h>
728
729#endif // _!NTOS_MODE_USER
730
731#endif // _CMTYPES_H
732
733
734
enum _PNP_VETO_TYPE PNP_VETO_TYPE
ULONG_PTR KAFFINITY
Definition: compat.h:85
struct _CM_FULL_RESOURCE_DESCRIPTOR CM_FULL_RESOURCE_DESCRIPTOR
struct _CM_FULL_RESOURCE_DESCRIPTOR * PCM_FULL_RESOURCE_DESCRIPTOR
struct _CM_RESOURCE_LIST CM_RESOURCE_LIST
struct _CM_RESOURCE_LIST * PCM_RESOURCE_LIST
struct _CM_PARTIAL_RESOURCE_LIST CM_PARTIAL_RESOURCE_LIST
struct _CM_PARTIAL_RESOURCE_DESCRIPTOR * PCM_PARTIAL_RESOURCE_DESCRIPTOR
struct _CM_PARTIAL_RESOURCE_DESCRIPTOR CM_PARTIAL_RESOURCE_DESCRIPTOR
enum _INTERFACE_TYPE INTERFACE_TYPE
struct _CM_PARTIAL_RESOURCE_LIST * PCM_PARTIAL_RESOURCE_LIST
@ KeySetVirtualizationInformation
Definition: winternl.h:375
@ KeyControlFlagsInformation
Definition: winternl.h:374
@ KeySetDebugInformation
Definition: winternl.h:376
@ KeyWow64FlagsInformation
Definition: winternl.h:373
@ KeySetHandleTagsInformation
Definition: winternl.h:377
@ MaxKeySetInfoClass
Definition: winternl.h:378
@ KeyFlagsInformation
Definition: winternl.h:833
@ KeyVirtualizationInformation
Definition: winternl.h:834
@ KeyCachedInformation
Definition: winternl.h:832
@ KeyNameInformation
Definition: winternl.h:831
@ KeyHandleTagsInformation
Definition: winternl.h:835
@ MaxKeyInfoClass
Definition: winternl.h:836
struct _KEY_NAME_INFORMATION * PKEY_NAME_INFORMATION
struct _KEY_NAME_INFORMATION KEY_NAME_INFORMATION
@ KeyValuePartialInformationAlign64
Definition: reg.c:103
@ KeyValueFullInformationAlign64
Definition: reg.c:102
struct _PLUGPLAY_CONTROL_RETRIEVE_DOCK_DATA PLUGPLAY_CONTROL_RETRIEVE_DOCK_DATA
enum _PLUGPLAY_BUS_CLASS * PPLUGPLAY_BUS_CLASS
struct _PLUGPLAY_CONTROL_RELATED_DEVICE_DATA * PPLUGPLAY_CONTROL_RELATED_DEVICE_DATA
enum _PLUGPLAY_CONTROL_CLASS PLUGPLAY_CONTROL_CLASS
struct _PLUGPLAY_CONTROL_DEPTH_DATA * PPLUGPLAY_CONTROL_DEPTH_DATA
struct _PLUGPLAY_BUS_INSTANCE PLUGPLAY_BUS_INSTANCE
struct _PLUGPLAY_BUS_TYPE * PPLUGPLAY_BUS_TYPE
struct _PLUGPLAY_CONTROL_USER_RESPONSE_DATA PLUGPLAY_CONTROL_USER_RESPONSE_DATA
struct _PLUGPLAY_CONTROL_RELATED_DEVICE_DATA PLUGPLAY_CONTROL_RELATED_DEVICE_DATA
struct _PLUGPLAY_CONTROL_QUERY_REMOVE_DATA PLUGPLAY_CONTROL_QUERY_REMOVE_DATA
struct _PLUGPLAY_CONTROL_INTERFACE_DEVICE_LIST_DATA PLUGPLAY_CONTROL_INTERFACE_DEVICE_LIST_DATA
_PLUGPLAY_EVENT_CATEGORY
Definition: cmtypes.h:255
@ HardwareProfileChangeEvent
Definition: cmtypes.h:256
@ MaxPlugEventCategory
Definition: cmtypes.h:265
@ DeviceArrivalEvent
Definition: cmtypes.h:261
@ TargetDeviceChangeEvent
Definition: cmtypes.h:257
@ VetoEvent
Definition: cmtypes.h:263
@ PowerEvent
Definition: cmtypes.h:262
@ CustomDeviceEvent
Definition: cmtypes.h:259
@ DeviceClassChangeEvent
Definition: cmtypes.h:258
@ BlockedDriverEvent
Definition: cmtypes.h:264
@ DeviceInstallEvent
Definition: cmtypes.h:260
struct _PLUGPLAY_CONTROL_INTERFACE_DEVICE_LIST_DATA * PPLUGPLAY_CONTROL_INTERFACE_DEVICE_LIST_DATA
struct _PLUGPLAY_EVENT_BLOCK * PPLUGPLAY_EVENT_BLOCK
enum _PLUGPLAY_EVENT_CATEGORY PLUGPLAY_EVENT_CATEGORY
struct _PLUGPLAY_CONTROL_DEPTH_DATA PLUGPLAY_CONTROL_DEPTH_DATA
enum _PLUGPLAY_VIRTUAL_BUS_TYPE * PPLUGPLAY_VIRTUAL_BUS_TYPE
struct _PLUGPLAY_CONTROL_QUERY_REMOVE_DATA * PPLUGPLAY_CONTROL_QUERY_REMOVE_DATA
struct _PLUGPLAY_CONTROL_DEVICE_RELATIONS_DATA PLUGPLAY_CONTROL_DEVICE_RELATIONS_DATA
struct _PLUGPLAY_CONTROL_PROPERTY_DATA PLUGPLAY_CONTROL_PROPERTY_DATA
struct _PLUGPLAY_CONTROL_DEVICE_CONTROL_DATA * PPLUGPLAY_CONTROL_DEVICE_CONTROL_DATA
_PLUGPLAY_CONTROL_CLASS
Definition: cmtypes.h:208
@ PlugPlayControlTargetDeviceRelation
Definition: cmtypes.h:226
@ PlugPlayControlEnumerateDevice
Definition: cmtypes.h:209
@ PlugPlayControlUnlockDevice
Definition: cmtypes.h:214
@ PlugPlayControlUserResponse
Definition: cmtypes.h:216
@ PlugPlayControlProperty
Definition: cmtypes.h:219
@ PlugPlayControlQueryConflictList
Definition: cmtypes.h:227
@ PlugPlayControlRegisterNewDevice
Definition: cmtypes.h:210
@ PlugPlayControlQueryDeviceRelations
Definition: cmtypes.h:225
@ MaxPlugPlayControl
Definition: cmtypes.h:232
@ PlugPlayControlGetRelatedDevice
Definition: cmtypes.h:221
@ PlugPlayControlDeviceStatus
Definition: cmtypes.h:223
@ PlugPlayControlQueryAndRemoveDevice
Definition: cmtypes.h:215
@ PlugPlayControlGenerateLegacyDevice
Definition: cmtypes.h:217
@ PlugPlayControlGetDeviceDepth
Definition: cmtypes.h:224
@ PlugPlayControlDeregisterDevice
Definition: cmtypes.h:211
@ PlugPlayControlHaltDevice
Definition: cmtypes.h:230
@ PlugPlayControlDeviceClassAssociation
Definition: cmtypes.h:220
@ PlugPlayControlInitializeDevice
Definition: cmtypes.h:212
@ PlugPlayControlGetInterfaceDeviceList
Definition: cmtypes.h:218
@ PlugPlayControlGetBlockedDriverList
Definition: cmtypes.h:231
@ PlugPlayControlStartDevice
Definition: cmtypes.h:213
@ PlugPlayControlGetInterfaceDeviceAlias
Definition: cmtypes.h:222
@ PlugPlayControlRetrieveDock
Definition: cmtypes.h:228
@ PlugPlayControlResetDevice
Definition: cmtypes.h:229
struct _PLUGPLAY_CONTROL_DEVICE_CONTROL_DATA PLUGPLAY_CONTROL_DEVICE_CONTROL_DATA
#define MAX_BUS_NAME
Definition: cmtypes.h:29
struct _PLUGPLAY_CONTOL_STATUS_DATA * PPLUGPLAY_CONTROL_STATUS_DATA
struct _PLUGPLAY_CONTOL_STATUS_DATA PLUGPLAY_CONTROL_STATUS_DATA
struct _PLUGPLAY_CONTROL_USER_RESPONSE_DATA * PPLUGPLAY_CONTROL_USER_RESPONSE_DATA
struct _PLUGPLAY_CONTROL_DEVICE_RELATIONS_DATA * PPLUGPLAY_CONTROL_DEVICE_RELATIONS_DATA
_PLUGPLAY_VIRTUAL_BUS_TYPE
Definition: cmtypes.h:246
@ MaxPlugPlayVirtualBusType
Definition: cmtypes.h:248
@ Root
Definition: cmtypes.h:247
struct _PLUGPLAY_BUS_TYPE PLUGPLAY_BUS_TYPE
_PLUGPLAY_BUS_CLASS
Definition: cmtypes.h:236
@ PlugPlayVirtualBus
Definition: cmtypes.h:238
@ SystemBus
Definition: cmtypes.h:237
@ MaxPlugPlayBusClass
Definition: cmtypes.h:239
enum _PLUGPLAY_BUS_CLASS PLUGPLAY_BUS_CLASS
struct _PLUGPLAY_CONTROL_PROPERTY_DATA * PPLUGPLAY_CONTROL_PROPERTY_DATA
struct _PLUGPLAY_CONTROL_ENUMERATE_DEVICE_DATA * PPLUGPLAY_CONTROL_ENUMERATE_DEVICE_DATA
struct _PLUGPLAY_CONTROL_ENUMERATE_DEVICE_DATA PLUGPLAY_CONTROL_ENUMERATE_DEVICE_DATA
struct _PLUGPLAY_BUS_INSTANCE * PPLUGPLAY_BUS_INSTANCE
struct _PLUGPLAY_CONTROL_RETRIEVE_DOCK_DATA * PPLUGPLAY_CONTROL_RETRIEVE_DOCK_DATA
enum _PLUGPLAY_VIRTUAL_BUS_TYPE PLUGPLAY_VIRTUAL_BUS_TYPE
struct _PLUGPLAY_EVENT_BLOCK PLUGPLAY_EVENT_BLOCK
struct _KEY_VALUE_BASIC_INFORMATION KEY_VALUE_BASIC_INFORMATION
struct _KEY_VALUE_FULL_INFORMATION KEY_VALUE_FULL_INFORMATION
_KEY_INFORMATION_CLASS
Definition: nt_native.h:1130
@ KeyBasicInformation
Definition: nt_native.h:1131
@ KeyNodeInformation
Definition: nt_native.h:1132
@ KeyFullInformation
Definition: nt_native.h:1133
struct _KEY_NODE_INFORMATION * PKEY_NODE_INFORMATION
_KEY_VALUE_INFORMATION_CLASS
Definition: nt_native.h:1179
@ KeyValueBasicInformation
Definition: nt_native.h:1180
@ KeyValuePartialInformation
Definition: nt_native.h:1182
@ KeyValueFullInformation
Definition: nt_native.h:1181
enum _KEY_SET_INFORMATION_CLASS KEY_SET_INFORMATION_CLASS
struct _KEY_BASIC_INFORMATION KEY_BASIC_INFORMATION
struct _KEY_VALUE_ENTRY KEY_VALUE_ENTRY
struct _KEY_NODE_INFORMATION KEY_NODE_INFORMATION
struct _KEY_WRITE_TIME_INFORMATION KEY_WRITE_TIME_INFORMATION
struct _KEY_BASIC_INFORMATION * PKEY_BASIC_INFORMATION
struct _KEY_VALUE_ENTRY * PKEY_VALUE_ENTRY
struct _KEY_FULL_INFORMATION KEY_FULL_INFORMATION
_KEY_SET_INFORMATION_CLASS
Definition: nt_native.h:1140
@ KeyWriteTimeInformation
Definition: nt_native.h:1141
struct _KEY_VALUE_PARTIAL_INFORMATION KEY_VALUE_PARTIAL_INFORMATION
enum _KEY_VALUE_INFORMATION_CLASS KEY_VALUE_INFORMATION_CLASS
Definition: reg.c:135
enum _KEY_INFORMATION_CLASS KEY_INFORMATION_CLASS
struct _KEY_WRITE_TIME_INFORMATION * PKEY_WRITE_TIME_INFORMATION
struct _KEY_VALUE_PARTIAL_INFORMATION * PKEY_VALUE_PARTIAL_INFORMATION
struct _KEY_VALUE_BASIC_INFORMATION * PKEY_VALUE_BASIC_INFORMATION
struct _KEY_FULL_INFORMATION * PKEY_FULL_INFORMATION
struct _KEY_VALUE_FULL_INFORMATION * PKEY_VALUE_FULL_INFORMATION
unsigned short USHORT
Definition: pedump.c:61
CM_PARTIAL_RESOURCE_LIST PartialResourceList
Definition: hwresource.cpp:160
struct _CM_PARTIAL_RESOURCE_DESCRIPTOR::@396::@400 MessageInterrupt
struct _CM_PARTIAL_RESOURCE_DESCRIPTOR::@396::@400::@409::@410 Raw
struct _CM_PARTIAL_RESOURCE_DESCRIPTOR::@396::@397 Generic
struct _CM_PARTIAL_RESOURCE_DESCRIPTOR::@396::@400::@409::@411 Translated
struct _CM_PARTIAL_RESOURCE_DESCRIPTOR::@396::@402 Dma
struct _CM_PARTIAL_RESOURCE_DESCRIPTOR::@396::@406 Memory40
struct _CM_PARTIAL_RESOURCE_DESCRIPTOR::@396::@404 BusNumber
union _CM_PARTIAL_RESOURCE_DESCRIPTOR::@396 u
struct _CM_PARTIAL_RESOURCE_DESCRIPTOR::@396::@405 DeviceSpecificData
struct _CM_PARTIAL_RESOURCE_DESCRIPTOR::@396::@398 Port
struct _CM_PARTIAL_RESOURCE_DESCRIPTOR::@396::@403 DevicePrivate
struct _CM_PARTIAL_RESOURCE_DESCRIPTOR::@396::@399 Interrupt
struct _CM_PARTIAL_RESOURCE_DESCRIPTOR::@396::@407 Memory48
struct _CM_PARTIAL_RESOURCE_DESCRIPTOR::@396::@408 Memory64
struct _CM_PARTIAL_RESOURCE_DESCRIPTOR::@396::@401 Memory
CM_PARTIAL_RESOURCE_DESCRIPTOR PartialDescriptors[1]
Definition: hwresource.cpp:119
ULONG Address
Definition: cmtypes.h:341
ULONG Size
Definition: cmtypes.h:342
LARGE_INTEGER LastWriteTime
Definition: nt_native.h:1100
LARGE_INTEGER LastWriteTime
Definition: nt_native.h:1117
LARGE_INTEGER LastWriteTime
Definition: nt_native.h:1107
Definition: nt_native.h:1172
PUNICODE_STRING ValueName
Definition: nt_native.h:1173
ULONG DataLength
Definition: nt_native.h:1174
ULONG DataOffset
Definition: nt_native.h:1175
ULONG Type
Definition: nt_native.h:1176
LARGE_INTEGER LastWriteTime
Definition: nt_native.h:1137
PLUGPLAY_BUS_TYPE BusType
Definition: cmtypes.h:572
WCHAR BusName[MAX_BUS_NAME]
Definition: cmtypes.h:574
PLUGPLAY_VIRTUAL_BUS_TYPE PlugPlayVirtualBusType
Definition: cmtypes.h:563
PLUGPLAY_BUS_CLASS BusClass
Definition: cmtypes.h:559
INTERFACE_TYPE SystemBusType
Definition: cmtypes.h:562
UNICODE_STRING DeviceInstance
Definition: cmtypes.h:525
UNICODE_STRING DeviceInstance
Definition: cmtypes.h:534
UNICODE_STRING DeviceInstance
Definition: cmtypes.h:507
struct _PLUGPLAY_EVENT_BLOCK::@2398::@2404 ProfileNotification
PNP_VETO_TYPE VetoType
Definition: cmtypes.h:442
PVOID NotificationStructure
Definition: cmtypes.h:428
WCHAR DeviceId[ANYSIZE_ARRAY]
Definition: cmtypes.h:424
struct _PLUGPLAY_EVENT_BLOCK::@2398::@2403 CustomNotification
struct _PLUGPLAY_EVENT_BLOCK::@2398::@2402 InstallDevice
struct _PLUGPLAY_EVENT_BLOCK::@2398::@2401 TargetDevice
PLUGPLAY_EVENT_CATEGORY EventCategory
Definition: cmtypes.h:406
struct _PLUGPLAY_EVENT_BLOCK::@2398::@2400 DeviceClass
WCHAR DeviceIdVetoNameBuffer[ANYSIZE_ARRAY]
Definition: cmtypes.h:443
struct _PLUGPLAY_EVENT_BLOCK::@2398::@2407 BlockedDriverNotification
struct _PLUGPLAY_EVENT_BLOCK::@2398::@2405 PowerNotification
WCHAR DeviceIds[ANYSIZE_ARRAY]
Definition: cmtypes.h:420
struct _PLUGPLAY_EVENT_BLOCK::@2398::@2406 VetoNotification
uint16_t * PWSTR
Definition: typedefs.h:56
uint32_t * PULONG
Definition: typedefs.h:59
#define ANYSIZE_ARRAY
Definition: typedefs.h:46
uint16_t * PWCHAR
Definition: typedefs.h:56
uint32_t ULONG
Definition: typedefs.h:59
_Must_inspect_result_ _In_ WDFDEVICE _In_ PCUNICODE_STRING SymbolicLinkName
Definition: wdfdevice.h:3739
_Must_inspect_result_ _In_ WDFCMRESLIST List
Definition: wdfresource.h:550
struct _KEY_SET_VIRTUALIZATION_INFORMATION KEY_SET_VIRTUALIZATION_INFORMATION
enum _CM_SHARE_DISPOSITION CM_SHARE_DISPOSITION
struct _KEY_VIRTUALIZATION_INFORMATION KEY_VIRTUALIZATION_INFORMATION
struct _CM_INT13_DRIVE_PARAMETER * PCM_INT13_DRIVE_PARAMETER
struct _KEY_VALUE_PARTIAL_INFORMATION_ALIGN64 * PKEY_VALUE_PARTIAL_INFORMATION_ALIGN64
struct _CM_DISK_GEOMETRY_DEVICE_DATA CM_DISK_GEOMETRY_DEVICE_DATA
struct _KEY_HANDLE_TAGS_INFORMATION KEY_HANDLE_TAGS_INFORMATION
struct _KEY_HANDLE_TAGS_INFORMATION * PKEY_HANDLE_TAGS_INFORMATION
struct _CM_ROM_BLOCK * PCM_ROM_BLOCK
struct _CM_DISK_GEOMETRY_DEVICE_DATA * PCM_DISK_GEOMETRY_DEVICE_DATA
struct _KEY_SET_VIRTUALIZATION_INFORMATION * PKEY_SET_VIRTUALIZATION_INFORMATION
struct _CM_INT13_DRIVE_PARAMETER CM_INT13_DRIVE_PARAMETER
struct _KEY_WOW64_FLAGS_INFORMATION KEY_WOW64_FLAGS_INFORMATION
struct _KEY_CONTROL_FLAGS_INFORMATION KEY_CONTROL_FLAGS_INFORMATION
struct _KEY_CONTROL_FLAGS_INFORMATION * PKEY_CONTROL_FLAGS_INFORMATION
struct _CM_ROM_BLOCK CM_ROM_BLOCK
struct _KEY_VALUE_PARTIAL_INFORMATION_ALIGN64 KEY_VALUE_PARTIAL_INFORMATION_ALIGN64
_CM_SHARE_DISPOSITION
Definition: cmtypes.h:239
@ CmResourceShareDeviceExclusive
Definition: cmtypes.h:241
@ CmResourceShareShared
Definition: cmtypes.h:243
@ CmResourceShareUndetermined
Definition: cmtypes.h:240
@ CmResourceShareDriverExclusive
Definition: cmtypes.h:242
struct _KEY_WOW64_FLAGS_INFORMATION * PKEY_WOW64_FLAGS_INFORMATION
struct _KEY_VIRTUALIZATION_INFORMATION * PKEY_VIRTUALIZATION_INFORMATION
unsigned char UCHAR
Definition: xmlstorage.h:181
__wchar_t WCHAR
Definition: xmlstorage.h:180
WCHAR * LPWSTR
Definition: xmlstorage.h:184