ReactOS  0.4.15-dev-5618-g8866b9d
wdf113.h
Go to the documentation of this file.
1 #ifndef _WDF_V1_13_TYPES_H_
2 #define _WDF_V1_13_TYPES_H_
3 
4 
5 typedef enum _WDFFUNCENUM_V1_13 {
8 
65 typedef struct _WDF_DEVICE_INTERFACE_PROPERTY_DATA_V1_13 *PWDF_DEVICE_INTERFACE_PROPERTY_DATA_V1_13;
66 typedef const struct _WDF_DEVICE_INTERFACE_PROPERTY_DATA_V1_13 *PCWDF_DEVICE_INTERFACE_PROPERTY_DATA_V1_13;
163 
164 //
165 // Versioning of structures for wdf.h
166 //
167 // End of versioning of structures for wdf.h
168 
169 //
170 // Versioning of structures for wdfassert.h
171 //
172 // End of versioning of structures for wdfassert.h
173 
174 //
175 // Versioning of structures for wdfbugcodes.h
176 //
178  //
179  // Current power state associated with the timed out device
180  //
182 
183  //
184  // Current power policy state associated with the timed out device
185  //
187 
188  //
189  // The device object for the timed out device
190  //
192 
193  //
194  // The handle for the timed out device
195  //
196  WDFDEVICE Device;
197 
198  //
199  // The thread which is stuck
200  //
202 
204 
206  WDFREQUEST Request;
207 
209 
211 
213 
215 
217 
219  WDFQUEUE Queue;
220 
221  WDFREQUEST Request;
222 
224 
226 
227 // End of versioning of structures for wdfbugcodes.h
228 
229 //
230 // Versioning of structures for wdfchildlist.h
231 //
233  //
234  // Size in bytes of the entire description, including this header.
235  //
236  // Same value as WDF_CHILD_LIST_CONFIG::IdentificationDescriptionSize
237  // Used as a sanity check.
238  //
240 
242 
244  //
245  // Size in bytes of the entire description, including this header.
246  //
247  // Same value as WDF_CHILD_LIST_CONFIG::AddressDescriptionSize
248  // Used as a sanity check.
249  //
251 
253 
255  //
256  // Size of the structure in bytes
257  //
259 
260  //
261  // Must be a valid pointer when passed in, copied into upon success
262  //
264 
265  //
266  // Optional pointer when passed in, copied into upon success
267  //
269 
270  //
271  // Status of the returned device
272  //
274 
275  //
276  // If provided, will be used for searching through the list of devices
277  // instead of the default list ID compare function
278  //
280 
282 
284  //
285  // Size of this structure in bytes
286  //
288 
289  //
290  // The size in bytes of an identificaiton description to be used with the
291  // created WDFCHILDLIST handle
292  //
294 
295  //
296  // Optional size in bytes of an address description to be used with the
297  // created WDFCHILDLIST handle.
298  //
300 
301  //
302  // Required callback to be invoked when a description on the device list
303  // needs to be converted into a real WDFDEVICE handle.
304  //
306 
307  //
308  // Optional callback to be invoked when the device list needs to be
309  // rescanned. This function will be called after the device has entered D0
310  // and been fully initialized but before I/O has started.
311  //
313 
314  //
315  // Optional callback to be invoked when an identification description needs
316  // to be copied from one location to another.
317  //
318  // If left NULL, RtlCopyMemory will be used to copy the description.
319  //
321 
322  //
323  // Optional callback to be invoked when an identification description needs
324  // to be duplicated. As opposed to EvtChildListIdentificationDescriptionCopy,
325  // EvtChildListIdentificationDescriptionDuplicate can fail.
326  //
328 
329  //
330  // Optional callback to be invoked when an identification description needs
331  // to be cleaned up. This function should *NOT* free the description passed
332  // to it, just free any associated resources.
333  //
335 
336  //
337  // Optional callback to be invoked when an identification description needs
338  // to be compared with another identificaiton description.
339  //
340  // If left NULL, RtlCompareMemory will be used to compare the two
341  // descriptions.
342  //
344 
345  //
346  // Optional callback to be invoked when an address description needs
347  // to be copied from one location to another.
348  //
349  // If left NULL, RtlCopyMemory will be used to copy the description.
350  //
352 
353  //
354  // Optional callback to be invoked when an address description needs to be
355  // duplicated. As opposed to EvtChildListAddressDescriptionCopy,
356  // EvtChildListAddressDescriptionDuplicate can fail.
357  //
359 
360  //
361  // Optional callback to be invoked when an address description needs to be
362  // cleaned up. This function should *NOT* free the description passed to
363  // it, just free any associated resources.
364  //
366 
367  //
368  // If provided, will be called when the child's stack requests that the
369  // child be reenumerated. Returning TRUE allows for the reenumeration to
370  // proceed. FALSE will no reenumerate the stack.
371  //
373 
375 
377  //
378  // Size of this structure in bytes
379  //
381 
382  //
383  // What type of devices to return, see WDF_RETRIEVE_CHILD_FLAGS for
384  // flag values
385  //
386  //
388 
389  //
390  // For internal use, treat this field as opaque
391  //
393 
395 
396 // End of versioning of structures for wdfchildlist.h
397 
398 //
399 // Versioning of structures for wdfcollection.h
400 //
401 // End of versioning of structures for wdfcollection.h
402 
403 //
404 // Versioning of structures for wdfCommonBuffer.h
405 //
407  //
408  // Size of this structure in bytes
409  //
411 
412  //
413  // Alignment requirement of the buffer address
414  //
416 
418 
419 // End of versioning of structures for wdfCommonBuffer.h
420 
421 //
422 // Versioning of structures for wdfcontrol.h
423 //
424 // End of versioning of structures for wdfcontrol.h
425 
426 //
427 // Versioning of structures for wdfcore.h
428 //
429 // End of versioning of structures for wdfcore.h
430 
431 //
432 // Versioning of structures for wdfcx.h
433 //
435  //
436  // Size of this structure in bytes
437  //
439 
440  //
441  // Event callback for create requests
442  //
444 
445  //
446  // Event callback for close requests
447  //
449 
450  //
451  // Event callback for cleanup requests
452  //
454 
455  //
456  // If WdfTrue, create/cleanup/close file object related requests will be
457  // sent down the stack.
458  //
459  // If WdfFalse, create/cleanup/close will be completed at this location in
460  // the device stack.
461  //
462  // If WdfDefault, behavior depends on device type
463  // FDO, PDO, Control: use the WdfFalse behavior
464  // Filter: use the WdfTrue behavior
465  //
467 
468  //
469  // Specify whether framework should create WDFFILEOBJECT and also
470  // whether it can FsContexts fields in the WDM fileobject to store
471  // WDFFILEOBJECT so that it can avoid table look up and improve perf.
472  //
474 
476 
477 // End of versioning of structures for wdfcx.h
478 
479 //
480 // Versioning of structures for wdfcxbase.h
481 //
484 
486 
488 
490 
492 
493 typedef struct _WDF_CLASS_VERSION_V1_13 {
495 
497 
499 
501 
503  //
504  // Size of the structure in bytes
505  //
507 
508  //
509  // Name of the class to bind to
510  //
512 
513  //
514  // Version information for the class
515  //
517 
518  //
519  // Function export table from the class driver to resolve on bind
520  //
522 
523  //
524  // Number of entries in FunctionTable
525  //
527 
528  //
529  // Optional field where the client specify additional information
530  // for the class driver to resolve
531  //
533 
534  //
535  // Optional bind callback. If set, WdfVersionBindClass will not
536  // be called and it will be up to ClientClassBind to call this function
537  // if required.
538  //
540 
541  //
542  // Optional unbind callback. If set, WdfVersionUnbindClass will not be
543  // called and it will be up to ClientClassUnbind to call this function
544  // if required.
545  //
547 
548  //
549  // Diagnostic cookie to use during debugging
550  //
552 
554 
556  //
557  // Size of this structure in bytes
558  //
560 
561  //
562  // Version of this class library
563  //
565 
566  //
567  // Callback to be called by the loader to initialize the class library
568  //
570 
571  //
572  // Callback to be called by the loader to deinitialize the class library
573  // after succesful initialization (immediately before the class library will
574  // be unloaded).
575  //
577 
578  //
579  // Callback to be called by the loader when a client driver has request to
580  // be bound to this class library.
581  //
583 
584  //
585  // Callback to be called by the loader when a previously bound client driver
586  // is being unloaded.
587  //
589 
591 
592 // End of versioning of structures for wdfcxbase.h
593 
594 //
595 // Versioning of structures for wdfDevice.h
596 //
598  //
599  // Size of this structure in bytes
600  //
602 
603  //
604  // Event callback for create requests
605  //
607 
608  //
609  // Event callback for close requests
610  //
612 
613  //
614  // Event callback for cleanup requests
615  //
617 
618  //
619  // If WdfTrue, create/cleanup/close file object related requests will be
620  // sent down the stack.
621  //
622  // If WdfFalse, create/cleanup/close will be completed at this location in
623  // the device stack.
624  //
625  // If WdfDefault, behavior depends on device type
626  // FDO, PDO, Control: use the WdfFalse behavior
627  // Filter: use the WdfTrue behavior
628  //
630 
631  //
632  // Specify whether framework should create WDFFILEOBJECT and also
633  // whether it can FsContexts fields in the WDM fileobject to store
634  // WDFFILEOBJECT so that it can avoid table look up and improve perf.
635  //
637 
639 
641  //
642  // Type of data
643  //
645 
646  union {
647  struct {
648  //
649  // The current state that is about to be exited
650  //
652 
653  //
654  // The new state that is about to be entered
655  //
657 
658  } EnterState;
659 
660  struct {
661  //
662  // The current state
663  //
665 
667 
668  struct {
669  //
670  // The current state that is about to be exitted
671  //
673 
674  //
675  // The state that is about to be entered
676  //
678 
679  } LeaveState;
680 
681  } Data;
682 
684 
686  //
687  // Type of data
688  //
690 
691  union {
692  struct {
693  //
694  // The current state that is about to be exitted
695  //
697 
698  //
699  // The new state that is about to be entered
700  //
702 
703  } EnterState;
704 
705  struct {
706  //
707  // The current state
708  //
710 
712 
713  struct {
714  //
715  // The current state that is about to be exitted
716  //
718 
719  //
720  // The state that is about to be entered
721  //
723 
724  } LeaveState;
725 
726  } Data;
727 
729 
731  //
732  // Type of data
733  //
735 
736  union {
737  struct {
738  //
739  // The current state that is about to be exitted
740  //
742 
743  //
744  // The new state that is about to be entered
745  //
747 
748  } EnterState;
749 
750  struct {
751  //
752  // The current state
753  //
755 
757 
758  struct {
759  //
760  // The current state that is about to be exitted
761  //
763 
764  //
765  // The state that is about to be entered
766  //
768 
769  } LeaveState;
770 
771  } Data;
772 
774 
776  //
777  // Size of this structure in bytes
778  //
780 
782 
784 
786 
788 
790 
792 
794 
796 
798 
800 
802 
804 
806 
808 
810 
812 
814 
816 
818  //
819  // Size of this structure in bytes
820  //
822 
824 
826 
828 
830 
832 
834 
836 
838 
840  //
841  // Size of this structure in bytes
842  //
844 
845  //
846  // Indicates whether the device can wake itself up while the machine is in
847  // S0.
848  //
850 
851  //
852  // The low power state in which the device will be placed when it is idled
853  // out while the machine is in S0.
854  //
856 
857  //
858  // Amount of time the device must be idle before idling out. Timeout is in
859  // milliseconds.
860  //
862 
863  //
864  // Inidcates whether a user can control the idle policy of the device.
865  // By default, a user is allowed to change the policy.
866  //
868 
869  //
870  // If WdfTrue, idling out while the machine is in S0 will be enabled.
871  //
872  // If WdfFalse, idling out will be disabled.
873  //
874  // If WdfUseDefault, the idling out will be enabled. If
875  // UserControlOfIdleSettings is set to IdleAllowUserControl, the user's
876  // settings will override the default.
877  //
879 
880  //
881  // This field is applicable only when IdleCaps == IdleCannotWakeFromS0
882  // If WdfTrue,device is powered up on System Wake even if device is idle
883  // If WdfFalse, device is not powered up on system wake if it is idle
884  // If WdfUseDefault, the behavior is same as WdfFalse
885  //
887 
888  //
889  // This field determines how the IdleTimeout field is used.
890  //
891  // If the value is DriverManagedIdleTimeout, then the idle timeout value
892  // is determined by the IdleTimeout field of this structure.
893  //
894  // If the value is SystemManagedIdleTimeout, then the timeout value is
895  // determined by the power framework (PoFx) on operating systems where
896  // the PoFx is available (i.e. Windows 8 and later). The IdleTimeout field
897  // is ignored on these operating systems. On operating systems where the
898  // PoFx is not available, the behavior is same as DriverManagedIdleTimeout.
899  //
900  // If the value is SystemManagedIdleTimeoutWithHint, then the timeout value
901  // is determined by the power framework (PoFx) on operating systems where
902  // the PoFx is available (i.e. Windows 8 and later). In addition, the value
903  // specified in the IdleTimeout field is provided as a hint to the PoFx in
904  // determining when the device should be allowed to enter a low-power state.
905  // Since it is only a hint, the actual duration after which the PoFx allows
906  // the device to enter a low-power state might be greater than or less than
907  // the IdleTimeout value. On operating systems where the PoFx is not
908  // available, the behavior is same as DriverManagedIdleTimeout.
909  //
911 
912  //
913  // This field forces the device to avoid idling in the D3cold power state.
914  // WDF will ensure, with help from the bus drivers, that the device will
915  // idle in a D-state that can successfully generate a wake signal, if
916  // necessary. If the client specifies that DxState == PowerDeviceD3, this
917  // setting allows the client to distinguish betwen D3hot and D3cold. If
918  // the client sets DxState == PowerDeviceMaximum, then WDF will pick the
919  // deepest idle state identified by the bus driver. If that deepest state
920  // is D3cold, this field allows the client to override that and choose
921  // D3hot.
922  //
923  // If WdfTrue, device will not use D3cold in S0.
924  // If WdfFalse, device will use D3cold in S0 if the ACPI firmware indicates
925  // that the device can enter that state, if DxState above does not
926  // specify some other D-state and, if the device is armed for
927  // wake, that it can generate its wake signal from D3cold.
928  // If WdfUseDefault, this setting will be derived from the driver's INF,
929  // specifically the presence or absence of the following two lines in
930  // the DDInstall.HW section:
931  // Include=machine.inf
932  // Needs=PciD3ColdSupported
933  //
935 
937 
939  //
940  // Size of this structure in bytes
941  //
943 
944  //
945  // The low power state in which the device will be placed when it is armed
946  // for wake from Sx.
947  //
949 
950  //
951  // Inidcates whether a user can control the idle policy of the device.
952  // By default, a user is allowed to change the policy.
953  //
955 
956  //
957  // If WdfTrue, arming the device for wake while the machine is in Sx is
958  // enabled.
959  //
960  // If WdfFalse, arming the device for wake while the machine is in Sx is
961  // disabled.
962  //
963  // If WdfUseDefault, arming will be enabled. If UserControlOfWakeSettings
964  // is set to WakeAllowUserControl, the user's settings will override the
965  // default.
966  //
968 
969  //
970  // If set to TRUE, arming the parent device can depend on whether there
971  // is atleast one child device armed for wake.
972  //
973  // If set to FALSE, arming of the parent device will be independent of
974  // whether any of the child devices are armed for wake.
975  //
977 
978  //
979  // Indicates that whenever the parent device completes the wake irp
980  // successfully, the status needs to be also propagated to the child
981  // devices. This helps in tracking which devices were responsible for
982  // waking the system.
983  //
985 
987 
988 typedef struct _WDF_DEVICE_STATE_V1_13 {
989  //
990  // Size of this structure in bytes
991  //
993 
994  //
995  // If set to WdfTrue, the device will be disabled
996  //
998 
999  //
1000  // If set to WdfTrue, the device will not be displayed in device manager.
1001  // Once hidden, the device cannot be unhidden.
1002  //
1004 
1005  //
1006  // If set to WdfTrue, the device is reporting itself as failed. If set
1007  // in conjuction with ResourcesChanged to WdfTrue, the device will receive
1008  // a PnP stop and then a new PnP start device.
1009  //
1011 
1012  //
1013  // If set to WdfTrue, the device cannot be subsequently disabled.
1014  //
1016 
1017 
1018 
1019 
1020  //
1021  //
1022  // If set to WdfTrue, the device stack will be torn down.
1023  //
1025 
1026  //
1027  // If set to WdfTrue, the device will be sent another PnP start. If the
1028  // Failed field is set to WdfTrue as well, a PnP stop will be sent before
1029  // the start.
1030  //
1032 
1034 
1036  //
1037  // Size of the structure in bytes
1038  //
1040 
1041  //
1042  // NOTE: To mark a PDO as raw, call WdfPdoInitAssignRawDevice
1043  //
1044  //
1046 
1048 
1050 
1052 
1054 
1056 
1058 
1060 
1062 
1063  //
1064  // Default values of -1 indicate not to set this value
1065  //
1067 
1069 
1071 
1073  //
1074  // Size of the structure in bytes
1075  //
1077 
1079 
1081 
1083 
1085 
1087 
1089 
1090  //
1091  // Default value PowerDeviceMaximum indicates not to set this value
1092  //
1094 
1095  //
1096  // Default value PowerDeviceMaximum, PowerSystemMaximum indicates not to
1097  // set this value.
1098  //
1100 
1102 
1103  //
1104  // Default values of -1 indicate not to set this value
1105  //
1107 
1109 
1111 
1112  //
1113  // Ideal Dx state for the device to be put into when the machine moves into
1114  // Sx and the device is not armed for wake. By default, the default will be
1115  // placed into D3. If IdealDxStateForSx is lighter then
1116  // DeviceState[Sx], then DeviceState[Sx] will be used as the Dx state.
1117  //
1119 
1121 
1123  //
1124  // Size of the structure in bytes
1125  //
1127 
1128  //
1129  // Bit field combination of values from the WDF_REMOVE_LOCK_OPTIONS_FLAGS
1130  // enumeration
1131  //
1133 
1135 
1137  //
1138  // Size of the structure, in bytes.
1139  //
1141 
1142  //
1143  // Client driver's callback function that is invoked after KMDF has
1144  // registered with the power framework. This field can be NULL if the
1145  // client driver does not wish to specify this callback.
1146  //
1148 
1149  //
1150  // Client driver's callback function that is invoked before KMDF
1151  // unregisters with the power framework. This field can be NULL if the
1152  // client driver does not wish to specify this callback.
1153  //
1155 
1156  //
1157  // Pointer to a PO_FX_COMPONENT structure that describes the only component
1158  // in the single-component device. This field can be NULL if the client
1159  // driver wants KMDF to use the default specification for this component
1160  // (i.e. support for F0 only).
1161  //
1163 
1164  //
1165  // Client driver's PO_FX_COMPONENT_ACTIVE_CONDITION_CALLBACK callback
1166  // function. This field can be NULL if the client driver does not wish to
1167  // specify this callback.
1168  //
1170 
1171  //
1172  // Client driver's PO_FX_COMPONENT_IDLE_CONDITION_CALLBACK callback
1173  // function. This field can be NULL if the client driver does not wish to
1174  // specify this callback.
1175  //
1177 
1178  //
1179  // Client driver's PO_FX_COMPONENT_IDLE_STATE_CALLBACK callback function.
1180  // This field can be NULL if the client driver does not wish to specify
1181  // this callback.
1182  //
1184 
1185  //
1186  // Client driver's PO_FX_POWER_CONTROL_CALLBACK callback function. This
1187  // field can be NULL if the client driver does not wish to specify this
1188  // callback.
1189  //
1191 
1192  //
1193  // Context value that is passed in to the ComponentIdleStateCallback and
1194  // PowerControlCallback callback functions.
1195  //
1197 
1199 
1201  //
1202  // Size of this structure in bytes
1203  //
1205 
1206  //
1207  // <KMDF_DOC/>
1208  // Identifies the method that the driver will use to access data buffers
1209  // that it receives for read and write requests.
1210  //
1211  // <UMDF_DOC/>
1212  // Identifies the method that the driver will "prefer" to use to access data
1213  // buffers that it receives for read and write requests. Note that UMDF
1214  // driver provides just a preference, and not a guarantee.Therefore,
1215  // even if a driver specified direct access method, UMDF might use the
1216  // buffered access method for one or more of the device's requests to
1217  // improve performance. For example, UMDF uses buffered access for small
1218  // buffers, if it can copy the data to the driver's buffer faster than it
1219  // can map the buffers for direct access.
1220  //
1222 
1223  //
1224  // <UMDF_ONLY/>
1225  // Identifies the method that the driver will "prefer" to use to access data
1226  // buffers that it receives for IOCTL requests. Note that UMDF
1227  // driver provides just a preference, and not a guarantee. Therefore,
1228  // even if a driver specified direct access method, UMDF might use the
1229  // buffered access method for one or more of the device's requests to
1230  // improve performance. For example, UMDF uses buffered access for small
1231  // buffers, if it can copy the data to the driver's buffer faster than it
1232  // can map the buffers for direct access.
1233  //
1235 
1236  //
1237  // <UMDF_ONLY/>
1238  // Optional, Provides the smallest buffer size (in bytes) for which
1239  // UMDF will use direct access for the buffers. For example, set
1240  // DirectTransferThreshold to "12288" to indicate that UMDF should use buffered
1241  // access for all buffers that are smaller than 12 kilobytes, and direct
1242  // access for buffers equal to or greater than that. Typically, you
1243  // do not need to provide this value because UMDF uses a value that provides
1244  // the best performance. Note that there are other requirements that must be
1245  // met in order to get direct access of buffers. See Docs for details.
1246  //
1248 
1250 
1252  //
1253  // Size of this structure
1254  //
1256 
1257  //
1258  // A pointer to a DEVPROPKEY structure that specifies the device
1259  // property key.
1260  //
1262 
1263  //
1264  // A locale identifier. Set this parameter either to a language-specific
1265  // LCID value or to LOCALE_NEUTRAL. The LOCALE_NEUTRAL LCID specifies
1266  // that the property is language-neutral (that is, not specific to any
1267  // language). Do not set this parameter to LOCALE_SYSTEM_DEFAULT or
1268  // LOCALE_USER_DEFAULT. For more information about language-specific
1269  // LCID values, see LCID Structure.
1270  //
1272 
1273  //
1274  // Set this parameter to PLUGPLAY_PROPERTY_PERSISTENT if the property
1275  // value set by this routine should persist across computer restarts.
1276  // Otherwise, set Flags to zero. Ignored for Query DDIs.
1277  //
1279 
1281 
1282 // End of versioning of structures for wdfDevice.h
1283 
1284 //
1285 // Versioning of structures for wdfDmaEnabler.h
1286 //
1288  //
1289  // Size of this structure in bytes
1290  //
1292 
1293  //
1294  // One of the above WDF_DMA_PROFILES
1295  //
1297 
1298  //
1299  // Maximum DMA Transfer handled in bytes.
1300  //
1302 
1303  //
1304  // The various DMA PnP/Power event callbacks
1305  //
1307 
1309 
1311 
1313 
1315 
1317 
1318  //
1319  // Overrides the address width specified by the DMA profile.
1320  //
1322 
1323  //
1324  // Overrides the version of the WDM DMA interfaces that WDF uses
1325  // (0 for default).
1326  //
1328 
1329  //
1330  // Bit field combination of values from the WDF_DMA_ENABLER_CONFIG_FLAGS
1331  // enumeration
1332  //
1334 
1336 
1338  //
1339  // The size of this structure in bytes
1340  //
1342 
1343  //
1344  // Specifies that the transfer is controlled by the device's DMA
1345  // request line.
1346  //
1347  //
1349 
1350  //
1351  // Specifies that the DMA engine will loop back to the beginning
1352  // of the buffer once it reaches the end.
1353  //
1354  //
1356 
1357  //
1358  // Width of the register to DMA to/from
1359  //
1360  //
1362 
1363  //
1364  // The adress at which to write to the device
1365  //
1367 
1368  //
1369  // The translated resource descriptor for the DMA channel assigned
1370  // the device during EvtDevicePrepareHardware
1371  //
1373 
1375 
1376 // End of versioning of structures for wdfDmaEnabler.h
1377 
1378 //
1379 // Versioning of structures for wdfDmaTransaction.h
1380 //
1381 // End of versioning of structures for wdfDmaTransaction.h
1382 
1383 //
1384 // Versioning of structures for wdfdpc.h
1385 //
1386 typedef struct _WDF_DPC_CONFIG_V1_13 {
1388 
1390 
1391  //
1392  // If this is TRUE, the DPC will automatically serialize
1393  // with the event callback handlers of its Parent Object.
1394  //
1395  // Parent Object's callback constraints should be compatible
1396  // with the DPC (DISPATCH_LEVEL), or the request will fail.
1397  //
1399 
1401 
1402 // End of versioning of structures for wdfdpc.h
1403 
1404 //
1405 // Versioning of structures for wdfdriver.h
1406 //
1408  //
1409  // Size of this structure in bytes
1410  //
1412 
1413  //
1414  // Event callbacks
1415  //
1417 
1419 
1420  //
1421  // Combination of WDF_DRIVER_INIT_FLAGS values
1422  //
1424 
1425  //
1426  // Pool tag to use for all allocations made by the framework on behalf of
1427  // the client driver.
1428  //
1430 
1432 
1434  //
1435  // Size of the structure in bytes
1436  //
1438 
1439  //
1440  // Major Version requested
1441  //
1443 
1444  //
1445  // Minor Version requested
1446  //
1448 
1450 
1451 // End of versioning of structures for wdfdriver.h
1452 
1453 //
1454 // Versioning of structures for wdffdo.h
1455 //
1457  //
1458  // Size of this structure in bytes
1459  //
1461 
1463 
1465 
1467 
1469 
1470 // End of versioning of structures for wdffdo.h
1471 
1472 //
1473 // Versioning of structures for wdffileobject.h
1474 //
1475 // End of versioning of structures for wdffileobject.h
1476 
1477 //
1478 // Versioning of structures for wdfGlobals.h
1479 //
1481  // backpointer to the handle for this driver
1482  WDFDRIVER Driver;
1483 
1484  // Flags indicated by the driver during create
1486 
1487  // Tag generated by WDF for the driver. Tag used by allocations made on
1488  // behalf of the driver by WDF.
1490 
1492 
1493  // If TRUE, the stub code will capture DriverObject->DriverUnload and insert
1494  // itself first in the unload chain. If FALSE, DriverUnload is left alone
1495  // (but WDF will not be notified of unload and there will be no auto cleanup).
1497 
1499 
1500 // End of versioning of structures for wdfGlobals.h
1501 
1502 //
1503 // Versioning of structures for wdfhwaccess.h
1504 //
1505 // End of versioning of structures for wdfhwaccess.h
1506 
1507 //
1508 // Versioning of structures for wdfinstaller.h
1509 //
1510 // End of versioning of structures for wdfinstaller.h
1511 
1512 //
1513 // Versioning of structures for wdfinternal.h
1514 //
1515 // End of versioning of structures for wdfinternal.h
1516 
1517 //
1518 // Versioning of structures for wdfinterrupt.h
1519 //
1520 //
1521 // Interrupt Configuration Structure
1522 //
1525 
1526  //
1527  // If this interrupt is to be synchronized with other interrupt(s) assigned
1528  // to the same WDFDEVICE, create a WDFSPINLOCK and assign it to each of the
1529  // WDFINTERRUPTs config.
1530  //
1531  WDFSPINLOCK SpinLock;
1532 
1534 
1536 
1537  //
1538  // DIRQL handling: automatic serialization of the DpcForIsr/WaitItemForIsr.
1539  // Passive-level handling: automatic serialization of all callbacks.
1540  //
1542 
1543  //
1544  // Event Callbacks
1545  //
1547 
1549 
1551 
1553 
1555 
1556  //
1557  // These fields are only used when interrupt is created in
1558  // EvtDevicePrepareHardware callback.
1559  //
1561 
1563 
1564  //
1565  // Optional passive lock for handling interrupts at passive-level.
1566  //
1567  WDFWAITLOCK WaitLock;
1568 
1569  //
1570  // TRUE: handle interrupt at passive-level.
1571  // FALSE: handle interrupt at DIRQL level. This is the default.
1572  //
1574 
1575  //
1576  // TRUE: Interrupt is reported inactive on explicit power down
1577  // instead of disconnecting it.
1578  // FALSE: Interrupt is disconnected instead of reporting inactive
1579  // on explicit power down.
1580  // DEFAULT: Framework decides the right value.
1581  //
1583 
1584  //
1585  // TRUE: Interrupt is used to wake the device from low-power states
1586  // and when the device is armed for wake this interrupt should
1587  // remain connected.
1588  // FALSE: Interrupt is not used to wake the device from low-power states.
1589  // This is the default.
1590  //
1592 
1594 
1596  //
1597  // Size of this structure in bytes
1598  //
1600 
1602 
1604 
1606 
1608 
1610 
1612 
1614 
1616 
1618 
1619  // CM_SHARE_DISPOSITION
1621 
1623 
1625 
1626 //
1627 // Interrupt Extended Policy Configuration Structure
1628 //
1630  //
1631  // Size of this structure in bytes
1632  //
1634 
1636 
1638 
1640 
1642 
1643 // End of versioning of structures for wdfinterrupt.h
1644 
1645 //
1646 // Versioning of structures for wdfio.h
1647 //
1648 //
1649 // This is the structure used to configure an IoQueue and
1650 // register callback events to it.
1651 //
1652 //
1655 
1657 
1659 
1661 
1663 
1665 
1667 
1669 
1671 
1673 
1675 
1677 
1679 
1680  union {
1681  struct {
1683 
1684  } Parallel;
1685 
1686  } Settings;
1687 
1688  WDFDRIVER Driver;
1689 
1691 
1694 
1696 
1697  //
1698  // Specify the type of the policy here.
1699  //
1701 
1702  //
1703  // Structure which contains the policy specific fields
1704  //
1706 
1707  //
1708  // Callback for reserved request given at initialization time
1709  //
1711 
1712  //
1713  // Callback for reserved request given at run time
1714  //
1716 
1718 
1719 // End of versioning of structures for wdfio.h
1720 
1721 //
1722 // Versioning of structures for wdfIoTarget.h
1723 //
1725  //
1726  // Size of this structure in bytes
1727  //
1729 
1730  //
1731  // Indicates which fields of this structure are going to be used in
1732  // creating the WDFIOTARGET.
1733  //
1735 
1736  //
1737  // Notification when the target is being queried for removal.
1738  // If !NT_SUCCESS is returned, the query will fail and the target will
1739  // remain opened.
1740  //
1742 
1743  //
1744  // The previous query remove has been canceled and the target can now be
1745  // reopened.
1746  //
1748 
1749  //
1750  // The query remove has succeeded and the target is now removed from the
1751  // system.
1752  //
1754 
1755  // <KMDF_ONLY/>
1756  // ========== WdfIoTargetOpenUseExistingDevice begin ==========
1757  //
1758  // The device object to send requests to
1759  //
1761 
1762  // <KMDF_ONLY/>
1763  // File object representing the TargetDeviceObject. The PFILE_OBJECT will
1764  // be passed as a parameter in all requests sent to the resulting
1765  // WDFIOTARGET.
1766  //
1768 
1769  // ========== WdfIoTargetOpenUseExistingDevice end ==========
1770  //
1771  // ========== WdfIoTargetOpenByName begin ==========
1772  //
1773  // Name of the device to open.
1774  //
1776 
1777  // <KMDF_DOC>
1778  // The access desired on the device being opened up, ie WDM FILE_XXX_ACCESS
1779  // such as FILE_ANY_ACCESS, FILE_SPECIAL_ACCESS, FILE_READ_ACCESS, or
1780  // FILE_WRITE_ACCESS or you can use values such as GENERIC_READ,
1781  // GENERIC_WRITE, or GENERIC_ALL.
1782  // </KMDF_DOC>
1783  // <UMDF_DOC>
1784  // The requested access to the file or device, which can be summarized as
1785  // read, write, both or neither zero). For more information about
1786  // this member, see the dwDesiredAccess parameter of CreateFile in the
1787  // Windows SDK. Note that ACCESS_MASK data type is a DWORD value.
1788  // </UMDF_DOC>
1789  //
1791 
1792  //
1793  // <KMDF_DOC>
1794  // Share access desired on the target being opened, ie WDM FILE_SHARE_XXX
1795  // values such as FILE_SHARE_READ, FILE_SHARE_WRITE, FILE_SHARE_DELETE.
1796  // A zero value means exclusive access to the target.
1797  //
1798  // </KMDF_DOC>
1799  // <UMDF_DOC>
1800  // The type of sharing to allow for the file. For more information about
1801  // this member, see the dwShareMode parameter of CreateFile in the
1802  // Windows SDK. A value of 0 means exclusive access.
1803  // </UMDF_DOC>
1804  //
1806 
1807  //
1808  // <KMDF_DOC>
1809  // File attributes, see ZwCreateFile in the DDK for a list of valid
1810  // values and their meaning.
1811  // </KMDF_DOC>
1812  // <UMDF_DOC>
1813  // Additional flags and attributes for the file. For more information about
1814  // this member, see the dwFlagsAndAttributes parameter of CreateFile
1815  // in the Windows SDK.
1816  // </UMDF_DOC>
1817  //
1819 
1820  //
1821  // <KMDF_DOC>
1822  // Create disposition, see ZwCreateFile in the DDK for a list of valid
1823  // values and their meaning.
1824  // </KMDF_DOC>
1825  // <UMDF_DOC>
1826  // The action to take if the file already exists. For more information
1827  // about this member, see the dwCreationDisposition parameter of
1828  // CreateFile in the Windows SDK.
1829  // </UMDF_DOC>
1830  //
1832 
1833  //
1834  // <KMDF_ONLY/>
1835  // Options for opening the device, see CreateOptions for ZwCreateFile in the
1836  // DDK for a list of valid values and their meaning.
1837  //
1839 
1840  //
1841  // <KMDF_ONLY/>
1842  //
1844 
1845  //
1846  // <KMDF_ONLY/>
1847  //
1849 
1850  //
1851  // <KMDF_ONLY/>
1852  //
1854 
1855  // ========== WdfIoTargetOpenByName end ==========
1856  //
1857  //
1858  // <KMDF_ONLY/>
1859  //
1860  // On return for a create by name, this will contain one of the following
1861  // values: FILE_CREATED, FILE_OPENED, FILE_OVERWRITTEN, FILE_SUPERSEDED,
1862  // FILE_EXISTS, FILE_DOES_NOT_EXIST
1863  //
1865 
1866  // ========== WdfIoTargetOpenLocalTargetByFile begin ==========
1867  //
1868  //
1869  // <UMDF_ONLY/> A UNICODE_STRING-formatted string that contains the
1870  // name of the file to create a file object from. This parameter is
1871  // optional, and is applicable only when Type parameter is
1872  // WdfIoTargetOpenLocalTargetByFile. The driver can leave this member
1873  // unchanged if the driver does not have to create the file object
1874  // from a file name. If the driver must supply a name, the string that
1875  // the driver passes must not contain any path separator characters
1876  // ("/" or "\").
1877  //
1879 
1881 
1882 // End of versioning of structures for wdfIoTarget.h
1883 
1884 //
1885 // Versioning of structures for wdfMemory.h
1886 //
1887 typedef struct _WDFMEMORY_OFFSET_V1_13 {
1888  //
1889  // Offset into the WDFMEMORY that the operation should start at.
1890  //
1892 
1893  //
1894  // Number of bytes that the operation should access. If 0, the entire
1895  // length of the WDFMEMORY buffer will be used in the operation or ignored
1896  // depending on the API.
1897  //
1899 
1901 
1904 
1905  union {
1906  struct {
1908 
1910 
1911  } BufferType;
1912 
1913  struct {
1915 
1917 
1918  } MdlType;
1919 
1920  struct {
1921  WDFMEMORY Memory;
1922 
1924 
1925  } HandleType;
1926 
1927  } u;
1928 
1930 
1931 // End of versioning of structures for wdfMemory.h
1932 
1933 //
1934 // Versioning of structures for wdfMiniport.h
1935 //
1936 // End of versioning of structures for wdfMiniport.h
1937 
1938 //
1939 // Versioning of structures for wdfObject.h
1940 //
1942  //
1943  // Size in bytes of this structure
1944  //
1946 
1947  //
1948  // Function to call when the object is deleted
1949  //
1951 
1952  //
1953  // Function to call when the objects memory is destroyed when the
1954  // the last reference count goes to zero
1955  //
1957 
1958  //
1959  // Execution level constraints for Object
1960  //
1962 
1963  //
1964  // Synchronization level constraint for Object
1965  //
1967 
1968  //
1969  // Optional Parent Object
1970  //
1972 
1973  //
1974  // Overrides the size of the context allocated as specified by
1975  // ContextTypeInfo->ContextSize
1976  //
1978 
1979  //
1980  // Pointer to the type information to be associated with the object
1981  //
1983 
1985 
1986 //
1987 // Since C does not have strong type checking we must invent our own
1988 //
1990  //
1991  // The size of this structure in bytes
1992  //
1994 
1995  //
1996  // String representation of the context's type name, i.e. "DEVICE_CONTEXT"
1997  //
1999 
2000  //
2001  // The size of the context in bytes. This will be the size of the context
2002  // associated with the handle unless
2003  // WDF_OBJECT_ATTRIBUTES::ContextSizeOverride is specified.
2004  //
2005  size_t ContextSize;
2006 
2007  //
2008  // If NULL, this structure is the unique type identifier for the context
2009  // type. If != NULL, the UniqueType pointer value is the unique type id
2010  // for the context type.
2011  //
2013 
2014  //
2015  // Function pointer to retrieve the context type information structure
2016  // pointer from the provider of the context type. This function is invoked
2017  // by the client driver's entry point by the KMDF stub after all class
2018  // drivers are loaded and before DriverEntry is invoked.
2019  //
2021 
2023 
2024 //
2025 // Core structure for supporting custom types, see macros below.
2026 //
2029 
2031 
2033 
2034 // End of versioning of structures for wdfObject.h
2035 
2036 //
2037 // Versioning of structures for wdfpdo.h
2038 //
2040  //
2041  // The size of this structure in bytes
2042  //
2044 
2045  //
2046  // Called in response to IRP_MN_QUERY_RESOURCES
2047  //
2049 
2050  //
2051  // Called in response to IRP_MN_QUERY_RESOURCE_REQUIREMENTS
2052  //
2054 
2055  //
2056  // Called in response to IRP_MN_EJECT
2057  //
2059 
2060  //
2061  // Called in response to IRP_MN_SET_LOCK
2062  //
2064 
2065  //
2066  // Called in response to the power policy owner sending a wait wake to the
2067  // PDO. Bus generic arming shoulding occur here.
2068  //
2070 
2071  //
2072  // Called in response to the power policy owner sending a wait wake to the
2073  // PDO. Bus generic disarming shoulding occur here.
2074  //
2076 
2077  //
2078  // Called when reporting the PDO missing to PnP manager in response to
2079  // IRP_MN_QUERY_DEVICE_RELATIONS for Bus Relations.
2080  //
2082 
2084 
2085 // End of versioning of structures for wdfpdo.h
2086 
2087 //
2088 // Versioning of structures for wdfpool.h
2089 //
2090 // End of versioning of structures for wdfpool.h
2091 
2092 //
2093 // Versioning of structures for wdfqueryinterface.h
2094 //
2096  //
2097  // Size of this structure in bytes.
2098  //
2100 
2101  //
2102  // Interface to be returned to the caller. Optional if BehaviorType is set
2103  // to WdfQueryInterfaceTypePassThrough or ImportInterface is set to TRUE.
2104  //
2106 
2107  //
2108  // The GUID identifying the interface
2109  //
2111 
2112  //
2113  // Valid only for PDOs. The framework will allocate a new request and
2114  // forward it down the parent's device stack.
2115  //
2117 
2118  //
2119  // Driver supplied callback which is called after some basic interface
2120  // validation has been performed (size, version, and guid checking). This
2121  // is an optional parameter and may be NULL unless ImportInterface is
2122  // specified.
2123  //
2124  // If the callback returns !NT_SUCCESS, this error will be returned to the
2125  // caller and the query interface will fail.
2126  //
2127  // In this callback, the caller is free to modify the ExposedInterface in
2128  // any manner of its choosing. For instance, the callback may change any
2129  // field in the interface. The callback may also alloate a dynamic context
2130  // to be associated with the interface; the InterfaceReference and
2131  // InterfaceDereference functions may also be overridden.
2132  //
2133  // If ImportInterface is set to TRUE, then this is a required field and the
2134  // callback must initialize the interface (the framework will leave the
2135  // ExposedInterface buffer exactly as it received it) since the framework
2136  // has no way of knowing which fields to fill in and which to leave alone.
2137  //
2139 
2140  //
2141  // If TRUE, the interface provided by the caller contains data that the
2142  // driver is interested in. By setting to this field to TRUE, the
2143  // EvtDeviceProcessQueryInterfaceRequest callback must initialize the
2144  // ExposedInterface.
2145  //
2146  // If FALSE, the entire ExposedInterface is initialized through a memory
2147  // copy before the EvtDeviceProcessQueryInterfaceRequest is called.
2148  //
2150 
2152 
2153 // End of versioning of structures for wdfqueryinterface.h
2154 
2155 //
2156 // Versioning of structures for wdfregistry.h
2157 //
2158 // End of versioning of structures for wdfregistry.h
2159 
2160 //
2161 // Versioning of structures for wdfrequest.h
2162 //
2163 //
2164 // This parameters structure allows general access to a requests parameters
2165 //
2168 
2170 
2172 
2173  //
2174  // The following user parameters are based on the service that is being
2175  // invoked. Drivers and file systems can determine which set to use based
2176  // on the above major and minor function codes.
2177  //
2178  union {
2179  //
2180  // System service parameters for: Create
2181  //
2182  //
2183  struct {
2185 
2187 
2189 
2191 
2193 
2194  } Create;
2195 
2196  //
2197  // System service parameters for: Read
2198  //
2199  //
2200  struct {
2201  size_t Length;
2202 
2204 
2206 
2207  } Read;
2208 
2209  //
2210  // System service parameters for: Write
2211  //
2212  //
2213  struct {
2214  size_t Length;
2215 
2217 
2219 
2220  } Write;
2221 
2222  //
2223  // System service parameters for: Device Control
2224  //
2225  // Note that the user's output buffer is stored in the UserBuffer field
2226  // and the user's input buffer is stored in the SystemBuffer field.
2227  //
2228  //
2229  struct {
2231 
2233 
2235 
2237 
2238  } DeviceIoControl;
2239 
2240  struct {
2242 
2244 
2246 
2248 
2249  } Others;
2250 
2251  } Parameters;
2252 
2254 
2256  //
2257  // Size of the structure in bytes
2258  //
2260 
2262 
2264 
2265  union {
2266  struct {
2267  WDFMEMORY Buffer;
2268 
2269  size_t Length;
2270 
2271  size_t Offset;
2272 
2273  } Write;
2274 
2275  struct {
2276  WDFMEMORY Buffer;
2277 
2278  size_t Length;
2279 
2280  size_t Offset;
2281 
2282  } Read;
2283 
2284  struct {
2286 
2287  struct {
2288  WDFMEMORY Buffer;
2289 
2290  size_t Offset;
2291 
2292  } Input;
2293 
2294  struct {
2295  WDFMEMORY Buffer;
2296 
2297  size_t Offset;
2298 
2299  size_t Length;
2300 
2301  } Output;
2302 
2303  } Ioctl;
2304 
2305  struct {
2306  union {
2308 
2310 
2311  } Argument1;
2312 
2313  union {
2314  PVOID Ptr;
2315 
2316  ULONG_PTR Value;
2317 
2318  } Argument2;
2319 
2320  union {
2321  PVOID Ptr;
2322 
2323  ULONG_PTR Value;
2324 
2325  } Argument3;
2326 
2327  union {
2328  PVOID Ptr;
2329 
2330  ULONG_PTR Value;
2331 
2332  } Argument4;
2333 
2334  } Others;
2335 
2336  struct {
2338 
2339  } Usb;
2340 
2341  } Parameters;
2342 
2344 
2346  //
2347  // Size of this structure in bytes
2348  //
2350 
2351  //
2352  // Bit field combination of WDF_REQUEST_REUSE_Xxx values
2353  //
2355 
2356  //
2357  // The new status of the request.
2358  //
2360 
2361  //
2362  // New PIRP to be contained in the WDFREQUEST. Setting a new PIRP value
2363  // is only valid for WDFREQUESTs created by WdfRequestCreateFromIrp where
2364  // RequestFreesIrp == FALSE. No other WDFREQUESTs (presented by the
2365  // I/O queue for instance) may have their IRPs changed.
2366  //
2368 
2370 
2372  //
2373  // Size of the structure in bytes
2374  //
2376 
2377  //
2378  // Bit field combination of values from the WDF_REQUEST_SEND_OPTIONS_FLAGS
2379  // enumeration
2380  //
2382 
2383  //
2384  // Valid when WDF_REQUEST_SEND_OPTION_TIMEOUT is set
2385  //
2387 
2389 
2391  //
2392  // Size of the structure in bytes
2393  //
2395 
2396  //
2397  // Bit field combination of values from the WDF_REQUEST_FORWARD_OPTIONS_FLAGS
2398  // enumeration
2399  //
2401 
2403 
2404 // End of versioning of structures for wdfrequest.h
2405 
2406 //
2407 // Versioning of structures for wdfresource.h
2408 //
2409 // End of versioning of structures for wdfresource.h
2410 
2411 //
2412 // Versioning of structures for wdfroletypes.h
2413 //
2414 // End of versioning of structures for wdfroletypes.h
2415 
2416 //
2417 // Versioning of structures for wdfstring.h
2418 //
2419 // End of versioning of structures for wdfstring.h
2420 
2421 //
2422 // Versioning of structures for wdfsync.h
2423 //
2424 // End of versioning of structures for wdfsync.h
2425 
2426 //
2427 // Versioning of structures for wdftimer.h
2428 //
2429 typedef struct _WDF_TIMER_CONFIG_V1_13 {
2431 
2433 
2435 
2436  //
2437  // If this is TRUE, the Timer will automatically serialize
2438  // with the event callback handlers of its Parent Object.
2439  //
2440  // Parent Object's callback constraints should be compatible
2441  // with the Timer DPC (DISPATCH_LEVEL), or the request will fail.
2442  //
2444 
2445  //
2446  // Optional tolerance for the timer in milliseconds.
2447  //
2449 
2450  //
2451  // If this is TRUE, high resolution timers will be used. The default
2452  // value is FALSE
2453  //
2454  DECLSPEC_ALIGN(8) BOOLEAN UseHighResolutionTimer;
2455 
2457 
2458 // End of versioning of structures for wdftimer.h
2459 
2460 //
2461 // Versioning of structures for wdftriage.h
2462 //
2464  // value
2466 
2468 
2470 
2472 
2474 
2476 
2478 
2480 
2482  // value
2484 
2486 
2488 
2490 
2492 
2494 
2496  // value
2498 
2500 
2502 
2504 
2506  // value
2508 
2510 
2512 
2514 
2516 
2518 
2520 
2522 
2525 
2527 
2529 
2531 
2533  // value
2535 
2537 
2539 
2541 
2543 
2545  // value
2547 
2549 
2550  // WDF irp wrapper, see below.
2552 
2554 
2556 
2558 
2560 
2562 
2564  // value
2566 
2568 
2570 
2572  // value
2574 
2576 
2578 
2579 typedef struct _WDF_TRIAGE_INFO_V1_13 {
2580  //
2581  // Version.
2582  //
2584 
2586 
2588 
2590 
2591  //
2592  // Reserved pointer.
2593  //
2595 
2596  //
2597  // WDF objects triage info.
2598  //
2600 
2602 
2604 
2606 
2608 
2610 
2612 
2614 
2616 
2618 
2619 // End of versioning of structures for wdftriage.h
2620 
2621 //
2622 // Versioning of structures for wdftypes.h
2623 //
2624 // End of versioning of structures for wdftypes.h
2625 
2626 //
2627 // Versioning of structures for wdfUsb.h
2628 //
2631 
2633 
2634  union {
2635  struct {
2636  WDFMEMORY Buffer;
2637 
2639 
2641 
2642  //
2643  // If STATUS_BUFFER_OVERFLOW is returned, this field will contain the
2644  // number of bytes required to retrieve the entire string.
2645  //
2647 
2648  } DeviceString;
2649 
2650  struct {
2651  WDFMEMORY Buffer;
2652 
2654 
2656 
2657  } DeviceControlTransfer;
2658 
2659  struct {
2660  WDFMEMORY Buffer;
2661 
2662  } DeviceUrb;
2663 
2664  struct {
2665  WDFMEMORY Buffer;
2666 
2667  size_t Length;
2668 
2669  size_t Offset;
2670 
2671  } PipeWrite;
2672 
2673  struct {
2674  WDFMEMORY Buffer;
2675 
2676  size_t Length;
2677 
2678  size_t Offset;
2679 
2680  } PipeRead;
2681 
2682  struct {
2683  WDFMEMORY Buffer;
2684 
2685  } PipeUrb;
2686 
2687  } Parameters;
2688 
2690 
2692  //
2693  // Size of the string in bytes
2694  //
2696 
2697  //
2698  // Number of bytes to send ask for from the usb device.
2699  //
2701 
2702  //
2703  // Number of bytes to allocate before the requested transfer length
2704  //
2706 
2707  //
2708  // Number of bytes to allocate after the requested transfer length
2709  //
2711 
2712  //
2713  // Number of reads to send to the device at once. If zero is specified, the
2714  // default will be used.
2715  //
2717 
2718  //
2719  // Optional attributes to apply to each WDFMEMORY allocated for each read
2720  //
2722 
2723  //
2724  // Event callback invoked when a read is completed
2725  //
2727 
2728  //
2729  // Context to be passed to EvtUsbTargetPipeReadComplete
2730  //
2732 
2733  //
2734  // Event callback invoked when a reader fails. If TRUE is returned, the
2735  // readers are restarted.
2736  //
2738 
2740 
2742  //
2743  // Size of this structure in bytes
2744  //
2746 
2747  //
2748  // USBD version information
2749  //
2751 
2752  //
2753  // Usb controller port capabilities
2754  //
2756 
2757  //
2758  // Bitfield of WDF_USB_DEVICE_TRAITS values
2759  //
2761 
2763 
2765  //
2766  // Interface to select
2767  //
2768  WDFUSBINTERFACE UsbInterface;
2769 
2770  //
2771  // Setting to select on UsbInterface
2772  //
2774 
2776 
2778  //
2779  // Size of the structure in bytes
2780  //
2782 
2783  //
2784  // Type of select config, one of WdfUsbTargetDeviceSelectConfigType values
2785  //
2787 
2788  union {
2789  struct {
2790  //
2791  // Configuration descriptor to use
2792  //
2794 
2795  //
2796  // Array of interface descriptors pointers.
2797  //
2799 
2800  //
2801  // Number of elements in the InterfaceDescrtiptors pointer array.
2802  //
2804 
2805  } Descriptor;
2806 
2807  struct {
2808  //
2809  // Preallocated select config URB formatted by the caller.
2810  // Will be used, as supplied without modification, as the select
2811  // config request.
2812  //
2814 
2815  } Urb;
2816 
2817  struct {
2818  //
2819  // Number of pipes configured on the single after. This value is
2820  // returned to the caller after a succssful call.
2821  //
2823 
2824  //
2825  // The interface which was configred. This value is returned to the
2826  // caller after a successful call.
2827  //
2828  WDFUSBINTERFACE ConfiguredUsbInterface;
2829 
2830  } SingleInterface;
2831 
2832  struct {
2833  //
2834  // Number of interface pairs in the Pairs array
2835  //
2837 
2838  //
2839  // Array of interface + settings
2840  //
2842 
2843  //
2844  // Number of interfaces which were configured after a successful call
2845  //
2847 
2848  } MultiInterface;
2849 
2850  } Types;
2851 
2853 
2855  //
2856  // Size of this data structure in bytes
2857  //
2859 
2860  //
2861  // Type of select interface as indicated by one of the
2862  // WdfUsbTargetDeviceSelectSettingType values.
2863  //
2865 
2866  union {
2867  struct {
2868  //
2869  // Interface descriptor that will be used in the interface selection
2870  //
2872 
2873  } Descriptor;
2874 
2875  struct {
2876  //
2877  // The setting index of the WDFUSBINTERFACE to use
2878  //
2880 
2881  } Interface;
2882 
2883  struct {
2884  //
2885  // Preformatted select interface URB which will be used in the
2886  // select interface request.
2887  //
2889 
2890  } Urb;
2891 
2892  } Types;
2893 
2895 
2897  //
2898  // Size of the structure in bytes
2899  //
2901 
2902  //
2903  // Maximum packet size this device is capable of
2904  //
2906 
2907  //
2908  // Raw endpoint address of the device as described by its descriptor
2909  //
2911 
2912  //
2913  // Polling interval
2914  //
2916 
2917  //
2918  // Which alternate setting this structure is relevant for
2919  //
2921 
2922  //
2923  // The type of the pipe
2925 
2926  //
2927  // Maximum size of one transfer which should be sent to the host controller
2928  //
2930 
2932 
2934  //
2935  // Size of this structure in bytes
2936  //
2938 
2939  //
2940  // USBD Client Contraction of the Wdf Client
2941  //
2943 
2945 
2946 // End of versioning of structures for wdfUsb.h
2947 
2948 //
2949 // Versioning of structures for wdfverifier.h
2950 //
2951 // End of versioning of structures for wdfverifier.h
2952 
2953 //
2954 // Versioning of structures for wdfWMI.h
2955 //
2957  //
2958  // Size of this structure in bytes
2959  //
2961 
2962  //
2963  // The GUID being registered
2964  //
2966 
2967  //
2968  // Combination of values from the enum WDF_WMI_PROVIDER_FLAGS
2969  //
2971 
2972  //
2973  // Minimum expected buffer size for query and set instance requests.
2974  // Ignored if WdfWmiProviderEventOnly is set in Flags.
2975  //
2977 
2978  //
2979  // Callback when caller is opening a provider which ha been marked as
2980  // expensive or when a caller is interested in events.
2981  //
2983 
2985 
2987  //
2988  // Size of the structure in bytes
2989  //
2991 
2992  //
2993  // Optional parameter. If NULL, ProviderConfig must be set to a valid pointer
2994  // value. If specified, indicates the provider to create an instance for.
2995  //
2996  WDFWMIPROVIDER Provider;
2997 
2998  //
2999  // Optional parameter. If NULL, Provider must be set to a valid handle
3000  // value. If specifeid, indicates the configuration for a provider to be
3001  // created and for this instance to be associated with.
3002  //
3004 
3005  //
3006  // If the Provider is configured as read only and this field is set to TRUE,
3007  // the EvtWmiInstanceQueryInstance is ignored and WDF will blindly copy the
3008  // context associated with this instance (using RtlCopyMemory, with no locks
3009  // held) into the query buffer.
3010  //
3012 
3013  //
3014  // If TRUE, the instance will be registered as well as created.
3015  //
3017 
3018  //
3019  // Callback when caller wants to query the entire data item's buffer.
3020  //
3022 
3023  //
3024  // Callback when caller wants to set the entire data item's buffer.
3025  //
3027 
3028  //
3029  // Callback when caller wants to set a single field in the data item's buffer
3030  //
3032 
3033  //
3034  // Callback when caller wants to execute a method on the data item.
3035  //
3037 
3039 
3040 // End of versioning of structures for wdfWMI.h
3041 
3042 //
3043 // Versioning of structures for wdfworkitem.h
3044 //
3047 
3049 
3050  //
3051  // If this is TRUE, the workitem will automatically serialize
3052  // with the event callback handlers of its Parent Object.
3053  //
3054  // Parent Object's callback constraints should be compatible
3055  // with the work item (PASSIVE_LEVEL), or the request will fail.
3056  //
3058 
3060 
3061 // End of versioning of structures for wdfworkitem.h
3062 
3063 
3064 #endif // _WDF_V1_13_TYPES_H_
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble * u
Definition: glfuncs.h:240
enum _WDF_DEVICE_PNP_STATE WDF_DEVICE_PNP_STATE
EVT_WDF_DEVICE_DISARM_WAKE_FROM_S0 * PFN_WDF_DEVICE_DISARM_WAKE_FROM_S0
Definition: wdfdevice.h:1117
signed char * PCHAR
Definition: retypes.h:7
PFN_WDF_DMA_ENABLER_SELFMANAGED_IO_STOP EvtDmaEnablerSelfManagedIoStop
Definition: wdf113.h:1316
WDF_SYNCHRONIZATION_SCOPE SynchronizationScope
Definition: wdf113.h:1966
WDF_IO_QUEUE_DISPATCH_TYPE DispatchType
Definition: wdf113.h:1656
PFN_WDF_IO_QUEUE_IO_RESUME EvtIoResume
Definition: wdf113.h:1676
const struct _WDF_TRIAGE_INFO_V1_13 * PCWDF_TRIAGE_INFO_V1_13
Definition: wdf113.h:140
PDEVICE_OBJECT TargetDeviceObject
Definition: wdf113.h:1760
PFN_WDF_CHILD_LIST_IDENTIFICATION_DESCRIPTION_COPY EvtChildListIdentificationDescriptionCopy
Definition: wdf113.h:320
EVT_WDF_IO_QUEUE_IO_WRITE * PFN_WDF_IO_QUEUE_IO_WRITE
Definition: wdfio.h:306
EVT_WDF_IO_QUEUE_IO_READ * PFN_WDF_IO_QUEUE_IO_READ
Definition: wdfio.h:289
struct _WDFDEVICE_TRIAGE_INFO_V1_13 * PWDFDEVICE_TRIAGE_INFO_V1_13
Definition: wdf113.h:135
struct _WDF_POWER_FRAMEWORK_SETTINGS_V1_13 WDF_POWER_FRAMEWORK_SETTINGS_V1_13
PFN_WDF_INTERRUPT_ISR EvtInterruptIsr
Definition: wdf113.h:1546
EVT_WDF_DEVICE_ENABLE_WAKE_AT_BUS * PFN_WDF_DEVICE_ENABLE_WAKE_AT_BUS
Definition: wdfpdo.h:123
PFN_WDF_DEVICE_WAKE_FROM_S0_TRIGGERED EvtDeviceWakeFromS0Triggered
Definition: wdf113.h:827
PWDFCONTEXTTYPE_TRIAGE_INFO_V1_13 WdfContextTypeTriageInfo
Definition: wdf113.h:2603
WDF_MINOR_VERSION Minor
Definition: wdf113.h:496
_In_ BOOLEAN Read
Definition: strmini.h:479
PWDFCONTEXT_TRIAGE_INFO_V1_13 WdfContextTriageInfo
Definition: wdf113.h:2601
EVT_WDF_CHILD_LIST_ADDRESS_DESCRIPTION_CLEANUP * PFN_WDF_CHILD_LIST_ADDRESS_DESCRIPTION_CLEANUP
Definition: wdfchildlist.h:257
EVT_WDF_DMA_ENABLER_SELFMANAGED_IO_STOP * PFN_WDF_DMA_ENABLER_SELFMANAGED_IO_STOP
struct _WDF_REQUEST_FORWARD_OPTIONS_V1_13 WDF_REQUEST_FORWARD_OPTIONS_V1_13
EVT_WDF_CHILD_LIST_IDENTIFICATION_DESCRIPTION_CLEANUP * PFN_WDF_CHILD_LIST_IDENTIFICATION_DESCRIPTION_CLEANUP
Definition: wdfchildlist.h:208
struct _WDFCONTEXT_TRIAGE_INFO_V1_13 WDFCONTEXT_TRIAGE_INFO_V1_13
union _WDF_DEVICE_PNP_NOTIFICATION_DATA_V1_13::@4277 Data
struct _WDFMEMORY_OFFSET_V1_13 WDFMEMORY_OFFSET_V1_13
struct _WDF_USB_PIPE_INFORMATION_V1_13 * PWDF_USB_PIPE_INFORMATION_V1_13
Definition: wdf113.h:153
struct _WDF_MEMORY_DESCRIPTOR_V1_13 * PWDF_MEMORY_DESCRIPTOR_V1_13
Definition: wdf113.h:97
struct _WDF_IO_QUEUE_CONFIG_V1_13 WDF_IO_QUEUE_CONFIG_V1_13
struct _WDF_USB_DEVICE_CREATE_CONFIG_V1_13 * PWDF_USB_DEVICE_CREATE_CONFIG_V1_13
Definition: wdf113.h:155
struct _WDFCX_FILEOBJECT_CONFIG_V1_13 * PWDFCX_FILEOBJECT_CONFIG_V1_13
Definition: wdf113.h:27
PFN_WDF_DRIVER_UNLOAD EvtDriverUnload
Definition: wdf113.h:1418
EVT_WDF_CHILD_LIST_SCAN_FOR_CHILDREN * PFN_WDF_CHILD_LIST_SCAN_FOR_CHILDREN
Definition: wdfchildlist.h:142
struct _WDF_USB_DEVICE_SELECT_CONFIG_PARAMS_V1_13 WDF_USB_DEVICE_SELECT_CONFIG_PARAMS_V1_13
const struct _WDF_IO_QUEUE_CONFIG_V1_13 * PCWDF_IO_QUEUE_CONFIG_V1_13
Definition: wdf113.h:90
PFN_WDF_IO_TARGET_REMOVE_COMPLETE EvtIoTargetRemoveComplete
Definition: wdf113.h:1753
struct _WDF_WMI_PROVIDER_CONFIG_V1_13 * PWDF_WMI_PROVIDER_CONFIG_V1_13
Definition: wdf113.h:157
struct _WDF_USB_REQUEST_COMPLETION_PARAMS_V1_13 * PWDF_USB_REQUEST_COMPLETION_PARAMS_V1_13
Definition: wdf113.h:141
_In_ ULONG _In_ ULONG _In_ ULONG Length
Definition: ntddpcm.h:101
PFN_WDF_DEVICE_WAKE_FROM_SX_TRIGGERED EvtDeviceWakeFromSxTriggered
Definition: wdf113.h:833
_Must_inspect_result_ _In_ WDFIORESLIST _In_ PIO_RESOURCE_DESCRIPTOR Descriptor
Definition: wdfresource.h:339
const struct _WDF_CLASS_BIND_INFO_V1_13 * PCWDF_CLASS_BIND_INFO_V1_13
Definition: wdf113.h:34
struct _WDFCONTEXT_TRIAGE_INFO_V1_13 * PWDFCONTEXT_TRIAGE_INFO_V1_13
Definition: wdf113.h:123
struct _WDF_OBJECT_ATTRIBUTES_V1_13 * PWDF_OBJECT_ATTRIBUTES_V1_13
Definition: wdf113.h:99
PFN_WDF_FILE_CLOSE EvtFileClose
Definition: wdf113.h:611
struct _WDF_IO_TYPE_CONFIG_V1_13 WDF_IO_TYPE_CONFIG_V1_13
_IRQL_requires_same_ _In_opt_ PVOID Argument1
Definition: cmtypes.h:696
EVT_WDF_DMA_ENABLER_ENABLE * PFN_WDF_DMA_ENABLER_ENABLE
EVT_WDF_DEVICE_RESOURCE_REQUIREMENTS_QUERY * PFN_WDF_DEVICE_RESOURCE_REQUIREMENTS_QUERY
Definition: wdfpdo.h:80
EVT_WDF_DEVICE_RESOURCES_QUERY * PFN_WDF_DEVICE_RESOURCES_QUERY
Definition: wdfpdo.h:65
WDF_DEVICE_POWER_STATE CurrentState
Definition: wdf113.h:696
_Must_inspect_result_ _In_ WDFQUEUE _In_opt_ WDFREQUEST _In_opt_ WDFFILEOBJECT _Inout_opt_ PWDF_REQUEST_PARAMETERS Parameters
Definition: wdfio.h:863
WDF_TRI_STATE NotDisableable
Definition: wdf113.h:1015
PFN_WDF_DEVICE_USAGE_NOTIFICATION EvtDeviceUsageNotification
Definition: wdf113.h:809
EVT_WDF_IO_QUEUE_IO_DEVICE_CONTROL * PFN_WDF_IO_QUEUE_IO_DEVICE_CONTROL
Definition: wdfio.h:327
const struct _WDFCONTEXTTYPE_TRIAGE_INFO_V1_13 * PCWDFCONTEXTTYPE_TRIAGE_INFO_V1_13
Definition: wdf113.h:126
PFN_WDF_USB_READER_COMPLETION_ROUTINE EvtUsbTargetPipeReadComplete
Definition: wdf113.h:2726
const struct _WDF_DRIVER_VERSION_AVAILABLE_PARAMS_V1_13 * PCWDF_DRIVER_VERSION_AVAILABLE_PARAMS_V1_13
Definition: wdf113.h:78
struct _WDF_QUERY_INTERFACE_CONFIG_V1_13 WDF_QUERY_INTERFACE_CONFIG_V1_13
struct _WDF_CLASS_EXTENSION_DESCRIPTOR_V1_13 * PWDF_CLASS_EXTENSION_DESCRIPTOR_V1_13
Definition: wdf113.h:29
struct _WDF_FDO_EVENT_CALLBACKS_V1_13 WDF_FDO_EVENT_CALLBACKS_V1_13
const struct _WDF_DEVICE_PNP_CAPABILITIES_V1_13 * PCWDF_DEVICE_PNP_CAPABILITIES_V1_13
Definition: wdf113.h:56
DEVICE_POWER_STATE DeviceWake
Definition: wdf113.h:1099
const struct _WDF_QUEUE_FATAL_ERROR_DATA_V1_13 * PCWDF_QUEUE_FATAL_ERROR_DATA_V1_13
Definition: wdf113.h:14
struct _WDF_REMOVE_LOCK_OPTIONS_V1_13 * PWDF_REMOVE_LOCK_OPTIONS_V1_13
Definition: wdf113.h:59
struct _WDF_REQUEST_SEND_OPTIONS_V1_13 WDF_REQUEST_SEND_OPTIONS_V1_13
WDF_BUILD_NUMBER Build
Definition: wdf113.h:498
IN BOOLEAN OUT PSTR Buffer
Definition: progress.h:34
PUSB_INTERFACE_DESCRIPTOR * InterfaceDescriptors
Definition: wdf113.h:2798
struct _WDF_MEMORY_DESCRIPTOR_V1_13 WDF_MEMORY_DESCRIPTOR_V1_13
PFN_WDF_CLIENT_BIND_CLASS ClientBindClass
Definition: wdf113.h:539
struct _WDF_POWER_ROUTINE_TIMED_OUT_DATA_V1_13 * PWDF_POWER_ROUTINE_TIMED_OUT_DATA_V1_13
Definition: wdf113.h:9
const struct _WDF_DPC_CONFIG_V1_13 * PCWDF_DPC_CONFIG_V1_13
Definition: wdf113.h:74
const struct _WDF_USB_INTERFACE_SELECT_SETTING_PARAMS_V1_13 * PCWDF_USB_INTERFACE_SELECT_SETTING_PARAMS_V1_13
Definition: wdf113.h:152
EVT_WDF_DEVICE_ARM_WAKE_FROM_S0 * PFN_WDF_DEVICE_ARM_WAKE_FROM_S0
Definition: wdfdevice.h:1074
_Must_inspect_result_ _In_ WDFIOTARGET _In_opt_ WDFREQUEST _In_opt_ PWDF_MEMORY_DESCRIPTOR _In_opt_ PLONGLONG DeviceOffset
Definition: wdfiotarget.h:859
uint16_t * PWSTR
Definition: typedefs.h:56
PFN_WDF_DMA_ENABLER_SELFMANAGED_IO_START EvtDmaEnablerSelfManagedIoStart
Definition: wdf113.h:1314
enum _WDF_TRI_STATE WDF_TRI_STATE
struct _WDF_DRIVER_GLOBALS_V1_13 WDF_DRIVER_GLOBALS_V1_13
PFN_WDF_DMA_ENABLER_ENABLE EvtDmaEnablerEnable
Definition: wdf113.h:1312
_In_ BOOLEAN Create
Definition: pstypes.h:527
PWDFOBJECT_TRIAGE_INFO_V1_13 WdfObjectTriageInfo
Definition: wdf113.h:2599
EVT_WDF_DEVICE_DISABLE_WAKE_AT_BUS * PFN_WDF_DEVICE_DISABLE_WAKE_AT_BUS
Definition: wdfpdo.h:136
_In_ const DEVPROPKEY * PropertyKey
Definition: wdf113.h:1261
struct _WDFFWDPROGRESS_TRIAGE_INFO_V1_13 * PWDFFWDPROGRESS_TRIAGE_INFO_V1_13
Definition: wdf113.h:129
PFN_WDF_IO_QUEUE_IO_INTERNAL_DEVICE_CONTROL EvtIoInternalDeviceControl
Definition: wdf113.h:1672
PFN_WDF_INTERRUPT_WORKITEM EvtInterruptWorkItem
Definition: wdf113.h:1554
WDF_DEVICE_POWER_STATE PowerState
Definition: wdf113.h:181
EVT_WDF_DRIVER_DEVICE_ADD * PFN_WDF_DRIVER_DEVICE_ADD
Definition: wdfdriver.h:78
char ACPI_OBJECT_TYPE * Types
Definition: acdebug.h:353
PFN_WDFCX_DEVICE_FILE_CREATE EvtCxDeviceFileCreate
Definition: wdf113.h:443
_In_opt_ PSID Group
Definition: rtlfuncs.h:1646
PCWDF_OBJECT_CONTEXT_TYPE_INFO_V1_13 ContextTypeInfo
Definition: wdf113.h:1982
const struct _WDF_COMMON_BUFFER_CONFIG_V1_13 * PCWDF_COMMON_BUFFER_CONFIG_V1_13
Definition: wdf113.h:26
char CHAR
Definition: xmlstorage.h:175
WDF_EXTERN_C_START enum _WDF_INTERRUPT_POLARITY WDF_INTERRUPT_POLARITY
struct _WDF_PNPPOWER_EVENT_CALLBACKS_V1_13 * PWDF_PNPPOWER_EVENT_CALLBACKS_V1_13
Definition: wdf113.h:45
struct _WDF_USB_INTERFACE_SELECT_SETTING_PARAMS_V1_13 WDF_USB_INTERFACE_SELECT_SETTING_PARAMS_V1_13
_Must_inspect_result_ _In_ PFSRTL_PER_STREAM_CONTEXT Ptr
Definition: fsrtlfuncs.h:898
struct _WDF_DEVICE_PROPERTY_DATA_V1_13 WDF_DEVICE_PROPERTY_DATA_V1_13
const struct _WDF_PNPPOWER_EVENT_CALLBACKS_V1_13 * PCWDF_PNPPOWER_EVENT_CALLBACKS_V1_13
Definition: wdf113.h:46
WDF_DEVICE_IO_TYPE DeviceControlIoType
Definition: wdf113.h:1234
LONG NTSTATUS
Definition: precomp.h:26
EVT_WDF_WORKITEM * PFN_WDF_WORKITEM
Definition: wdfworkitem.h:64
enum _WDF_DEVICE_IO_TYPE WDF_DEVICE_IO_TYPE
PFN_WDF_CLASS_LIBRARY_INITIALIZE ClassLibraryInitialize
Definition: wdf113.h:569
const struct _WDF_DEVICE_POWER_NOTIFICATION_DATA_V1_13 * PCWDF_DEVICE_POWER_NOTIFICATION_DATA_V1_13
Definition: wdf113.h:42
PFN_WDF_DEVICE_REPORTED_MISSING EvtDeviceReportedMissing
Definition: wdf113.h:2081
const struct _WDF_DEVICE_PNP_NOTIFICATION_DATA_V1_13 * PCWDF_DEVICE_PNP_NOTIFICATION_DATA_V1_13
Definition: wdf113.h:40
PFN_WDFDEVICE_WDM_POST_PO_FX_REGISTER_DEVICE EvtDeviceWdmPostPoFxRegisterDevice
Definition: wdf113.h:1147
struct _WDF_USB_INTERFACE_SELECT_SETTING_PARAMS_V1_13 * PWDF_USB_INTERFACE_SELECT_SETTING_PARAMS_V1_13
Definition: wdf113.h:151
USBD_VERSION_INFORMATION UsbdVersionInformation
Definition: wdf113.h:2750
struct _WDF_DPC_CONFIG_V1_13 WDF_DPC_CONFIG_V1_13
ULONG POINTER_ALIGNMENT EaLength
Definition: wdf113.h:2192
WDF_CLASS_VERSION_V1_13 Version
Definition: wdf113.h:564
PFN_WDF_DEVICE_SET_LOCK EvtDeviceSetLock
Definition: wdf113.h:2063
const struct _WDF_CHILD_ADDRESS_DESCRIPTION_HEADER_V1_13 * PCWDF_CHILD_ADDRESS_DESCRIPTION_HEADER_V1_13
Definition: wdf113.h:18
Definition: arc.h:84
struct _WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY_V1_13 * PWDF_IO_QUEUE_FORWARD_PROGRESS_POLICY_V1_13
Definition: wdf113.h:91
struct _WDF_CHILD_ADDRESS_DESCRIPTION_HEADER_V1_13 * PWDF_CHILD_ADDRESS_DESCRIPTION_HEADER_V1_13
Definition: wdf113.h:17
WDF_INTERRUPT_POLICY Policy
Definition: wdf113.h:1635
PFN_WDF_WMI_INSTANCE_SET_INSTANCE EvtWmiInstanceSetInstance
Definition: wdf113.h:3026
EVT_WDF_WMI_INSTANCE_SET_INSTANCE * PFN_WDF_WMI_INSTANCE_SET_INSTANCE
Definition: wdfwmi.h:111
PFN_WDF_USB_READERS_FAILED EvtUsbTargetPipeReadersFailed
Definition: wdf113.h:2737
enum _DMA_WIDTH DMA_WIDTH
struct _WDF_IO_TYPE_CONFIG_V1_13 * PWDF_IO_TYPE_CONFIG_V1_13
Definition: wdf113.h:63
BOOLEAN DisplaceDriverUnload
Definition: wdf113.h:1496
PWDFIRPQUEUE_TRIAGE_INFO_V1_13 WdfIrpQueueTriageInfo
Definition: wdf113.h:2609
EVT_WDF_IO_QUEUE_IO_INTERNAL_DEVICE_CONTROL * PFN_WDF_IO_QUEUE_IO_INTERNAL_DEVICE_CONTROL
Definition: wdfio.h:348
PFN_WDF_CLASS_LIBRARY_BIND_CLIENT ClassLibraryBindClient
Definition: wdf113.h:582
PCWDF_CLASS_EXTENSION_DESCRIPTOR_V1_13 Next
Definition: wdf113.h:483
WDF_MAJOR_VERSION Major
Definition: wdf113.h:494
const struct _WDF_REQUEST_FORWARD_OPTIONS_V1_13 * PCWDF_REQUEST_FORWARD_OPTIONS_V1_13
Definition: wdf113.h:118
enum _WDF_STATE_NOTIFICATION_TYPE WDF_STATE_NOTIFICATION_TYPE
struct _WDF_REQUEST_REUSE_PARAMS_V1_13 WDF_REQUEST_REUSE_PARAMS_V1_13
const struct _WDF_USB_CONTINUOUS_READER_CONFIG_V1_13 * PCWDF_USB_CONTINUOUS_READER_CONFIG_V1_13
Definition: wdf113.h:144
WDF_POWER_POLICY_SX_WAKE_USER_CONTROL UserControlOfWakeSettings
Definition: wdf113.h:954
PFN_WDF_INTERRUPT_DPC EvtInterruptDpc
Definition: wdf113.h:1548
struct _WDF_DEVICE_INTERFACE_PROPERTY_DATA_V1_13 * PWDF_DEVICE_INTERFACE_PROPERTY_DATA_V1_13
Definition: wdf113.h:65
struct _WDF_REQUEST_FORWARD_OPTIONS_V1_13 * PWDF_REQUEST_FORWARD_OPTIONS_V1_13
Definition: wdf113.h:117
PFN_WDF_DMA_ENABLER_FILL EvtDmaEnablerFill
Definition: wdf113.h:1306
DWORD LCID
Definition: nls.h:13
struct _WDF_IO_QUEUE_CONFIG_V1_13 * PWDF_IO_QUEUE_CONFIG_V1_13
Definition: wdf113.h:89
EVT_WDF_FILE_CLEANUP * PFN_WDF_FILE_CLEANUP
Definition: wdfdevice.h:578
const struct _WDF_DEVICE_POWER_POLICY_NOTIFICATION_DATA_V1_13 * PCWDF_DEVICE_POWER_POLICY_NOTIFICATION_DATA_V1_13
Definition: wdf113.h:44
struct _WDF_TIMER_CONFIG_V1_13 * PWDF_TIMER_CONFIG_V1_13
Definition: wdf113.h:119
const struct _WDFDEVICE_TRIAGE_INFO_V1_13 * PCWDFDEVICE_TRIAGE_INFO_V1_13
Definition: wdf113.h:136
EVT_WDF_IO_QUEUE_IO_RESUME * PFN_WDF_IO_QUEUE_IO_RESUME
Definition: wdfio.h:272
const struct _WDFCONTEXT_TRIAGE_INFO_V1_13 * PCWDFCONTEXT_TRIAGE_INFO_V1_13
Definition: wdf113.h:124
struct _WDF_DEVICE_POWER_NOTIFICATION_DATA_V1_13::@4281::@4284 LeaveState
struct _WDF_CLASS_LIBRARY_INFO_V1_13 WDF_CLASS_LIBRARY_INFO_V1_13
const struct _WDF_IO_TYPE_CONFIG_V1_13 * PCWDF_IO_TYPE_CONFIG_V1_13
Definition: wdf113.h:64
size_t POINTER_ALIGNMENT InputBufferLength
Definition: wdf113.h:2232
struct _WDF_CLASS_VERSION_V1_13 * PWDF_CLASS_VERSION_V1_13
Definition: wdf113.h:31
EVT_WDF_IO_QUEUE_IO_STOP * PFN_WDF_IO_QUEUE_IO_STOP
Definition: wdfio.h:257
PFN_WDF_DEVICE_DISARM_WAKE_FROM_S0 EvtDeviceDisarmWakeFromS0
Definition: wdf113.h:825
EVT_WDF_WMI_PROVIDER_FUNCTION_CONTROL * PFN_WDF_WMI_PROVIDER_FUNCTION_CONTROL
Definition: wdfwmi.h:171
struct _WDF_TRIAGE_INFO_V1_13 * PWDF_TRIAGE_INFO_V1_13
Definition: wdf113.h:139
EVT_WDF_IO_QUEUE_IO_CANCELED_ON_QUEUE * PFN_WDF_IO_QUEUE_IO_CANCELED_ON_QUEUE
Definition: wdfio.h:364
WDF_DEVICE_POWER_POLICY_STATE NewState
Definition: wdf113.h:746
struct _WDF_REQUEST_SEND_OPTIONS_V1_13 * PWDF_REQUEST_SEND_OPTIONS_V1_13
Definition: wdf113.h:115
EVT_WDF_DEVICE_PREPARE_HARDWARE * PFN_WDF_DEVICE_PREPARE_HARDWARE
Definition: wdfdevice.h:893
WDF_DEVICE_POWER_STATE NewState
Definition: wdf113.h:701
PUSB_CONFIGURATION_DESCRIPTOR ConfigurationDescriptor
Definition: wdf113.h:2793
const struct _WDF_DMA_SYSTEM_PROFILE_CONFIG_V1_13 * PCWDF_DMA_SYSTEM_PROFILE_CONFIG_V1_13
Definition: wdf113.h:72
static BOOL Write(PBYTE Address, PBYTE Data, SIZE_T Size)
Definition: vmhorizon.c:15
EVT_WDF_DMA_ENABLER_FILL * PFN_WDF_DMA_ENABLER_FILL
Definition: wdfdmaenabler.h:85
PFN_WDF_DEVICE_PROCESS_QUERY_INTERFACE_REQUEST EvtDeviceProcessQueryInterfaceRequest
Definition: wdf113.h:2138
PFN_WDF_DEVICE_RESOURCE_REQUIREMENTS_QUERY EvtDeviceResourceRequirementsQuery
Definition: wdf113.h:2053
struct _WDF_USB_CONTINUOUS_READER_CONFIG_V1_13 * PWDF_USB_CONTINUOUS_READER_CONFIG_V1_13
Definition: wdf113.h:143
EVT_WDF_DEVICE_ARM_WAKE_FROM_SX_WITH_REASON * PFN_WDF_DEVICE_ARM_WAKE_FROM_SX_WITH_REASON
Definition: wdfdevice.h:1104
const struct _WDF_WMI_INSTANCE_CONFIG_V1_13 * PCWDF_WMI_INSTANCE_CONFIG_V1_13
Definition: wdf113.h:160
PFN_WDF_CHILD_LIST_DEVICE_REENUMERATED EvtChildListDeviceReenumerated
Definition: wdf113.h:372
EVT_WDF_DEVICE_REPORTED_MISSING * PFN_WDF_DEVICE_REPORTED_MISSING
Definition: wdfpdo.h:149
const struct _WDF_CLASS_EXTENSION_DESCRIPTOR_V1_13 * PCWDF_CLASS_EXTENSION_DESCRIPTOR_V1_13
Definition: wdf113.h:30
PFN_WDF_CHILD_LIST_IDENTIFICATION_DESCRIPTION_DUPLICATE EvtChildListIdentificationDescriptionDuplicate
Definition: wdf113.h:327
enum _SYSTEM_POWER_STATE SYSTEM_POWER_STATE
struct _WDF_DEVICE_POWER_POLICY_NOTIFICATION_DATA_V1_13::@4285::@4287 PostProcessState
EVT_WDF_DEVICE_SELF_MANAGED_IO_SUSPEND * PFN_WDF_DEVICE_SELF_MANAGED_IO_SUSPEND
Definition: wdfdevice.h:960
EVT_WDF_TIMER * PFN_WDF_TIMER
Definition: wdftimer.h:67
PPO_FX_COMPONENT_IDLE_STATE_CALLBACK ComponentIdleStateCallback
Definition: wdf113.h:1183
PFN_WDF_DEVICE_RELATIONS_QUERY EvtDeviceRelationsQuery
Definition: wdf113.h:811
struct _WDF_CLASS_LIBRARY_INFO_V1_13 * PWDF_CLASS_LIBRARY_INFO_V1_13
Definition: wdf113.h:35
const struct _WDF_WORKITEM_CONFIG_V1_13 * PCWDF_WORKITEM_CONFIG_V1_13
Definition: wdf113.h:162
WDF_STATE_NOTIFICATION_TYPE Type
Definition: wdf113.h:644
const struct _WDF_POWER_ROUTINE_TIMED_OUT_DATA_V1_13 * PCWDF_POWER_ROUTINE_TIMED_OUT_DATA_V1_13
Definition: wdf113.h:10
PFN_WDF_IO_QUEUE_IO_WRITE EvtIoWrite
Definition: wdf113.h:1668
struct _WDFQUEUE_TRIAGE_INFO_V1_13 * PWDFQUEUE_TRIAGE_INFO_V1_13
Definition: wdf113.h:127
enum _WDF_POWER_POLICY_S0_IDLE_USER_CONTROL WDF_POWER_POLICY_S0_IDLE_USER_CONTROL
BOOLEAN(STDCALL * PFN_WDFCX_DEVICE_FILE_CREATE)(_In_ WDFDEVICE Device, _In_ WDFREQUEST Request, _In_opt_ WDFFILEOBJECT FileObject)
Definition: wdfcx.h:12
WDF_POWER_POLICY_IDLE_TIMEOUT_TYPE IdleTimeoutType
Definition: wdf113.h:910
PFN_WDF_DEVICE_SELF_MANAGED_IO_FLUSH EvtDeviceSelfManagedIoFlush
Definition: wdf113.h:795
const struct _WDF_CLASS_LIBRARY_INFO_V1_13 * PCWDF_CLASS_LIBRARY_INFO_V1_13
Definition: wdf113.h:36
struct _WDF_QUEUE_FATAL_ERROR_DATA_V1_13 WDF_QUEUE_FATAL_ERROR_DATA_V1_13
PFN_WDF_INTERRUPT_DISABLE EvtInterruptDisable
Definition: wdf113.h:1552
struct _WDF_CHILD_ADDRESS_DESCRIPTION_HEADER_V1_13 WDF_CHILD_ADDRESS_DESCRIPTION_HEADER_V1_13
PFN_WDF_DEVICE_USAGE_NOTIFICATION_EX EvtDeviceUsageNotificationEx
Definition: wdf113.h:813
enum _WDF_IO_TARGET_OPEN_TYPE WDF_IO_TARGET_OPEN_TYPE
struct _WDF_DEVICE_POWER_NOTIFICATION_DATA_V1_13::@4281::@4283 PostProcessState
PFN_WDF_WMI_INSTANCE_SET_ITEM EvtWmiInstanceSetItem
Definition: wdf113.h:3031
struct _WDF_USB_INTERFACE_SETTING_PAIR_V1_13 WDF_USB_INTERFACE_SETTING_PAIR_V1_13
uint32_t ULONG_PTR
Definition: typedefs.h:65
const struct _WDF_WMI_PROVIDER_CONFIG_V1_13 * PCWDF_WMI_PROVIDER_CONFIG_V1_13
Definition: wdf113.h:158
struct _WDF_DEVICE_POWER_POLICY_WAKE_SETTINGS_V1_13 * PWDF_DEVICE_POWER_POLICY_WAKE_SETTINGS_V1_13
Definition: wdf113.h:51
WDF_TRI_STATE PowerManaged
Definition: wdf113.h:1658
PFN_WDF_DEVICE_SELF_MANAGED_IO_INIT EvtDeviceSelfManagedIoInit
Definition: wdf113.h:797
WDF_STATE_NOTIFICATION_TYPE Type
Definition: wdf113.h:734
_Must_inspect_result_ __in WDFIOTARGET __in_opt WDFREQUEST __in ULONG Ioctl
WDF_DEVICE_PNP_STATE NewState
Definition: wdf113.h:656
WDF_TRI_STATE Disabled
Definition: wdf113.h:997
const struct _WDF_PDO_EVENT_CALLBACKS_V1_13 * PCWDF_PDO_EVENT_CALLBACKS_V1_13
Definition: wdf113.h:106
const struct _WDF_REQUEST_SEND_OPTIONS_V1_13 * PCWDF_REQUEST_SEND_OPTIONS_V1_13
Definition: wdf113.h:116
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_DEVICE_POWER_POLICY_IDLE_SETTINGS Settings
Definition: wdfdevice.h:2592
struct _WDF_REQUEST_COMPLETION_PARAMS_V1_13 WDF_REQUEST_COMPLETION_PARAMS_V1_13
__GNU_EXTENSION typedef __int64 * PLONGLONG
Definition: ntbasedef.h:382
UCHAR KIRQL
Definition: env_spec_w32.h:591
struct _WDFIRP_TRIAGE_INFO_V1_13 WDFIRP_TRIAGE_INFO_V1_13
WdfUsbTargetDeviceSelectSettingType Type
Definition: wdf113.h:2864
struct _WDF_INTERRUPT_INFO_V1_13 * PWDF_INTERRUPT_INFO_V1_13
Definition: wdf113.h:85
WDF_EXTERN_C_START enum _WDF_DMA_PROFILE WDF_DMA_PROFILE
struct _WDF_REQUEST_FATAL_ERROR_INFORMATION_LENGTH_MISMATCH_DATA_V1_13 * PWDF_REQUEST_FATAL_ERROR_INFORMATION_LENGTH_MISMATCH_DATA_V1_13
Definition: wdf113.h:11
EVT_WDF_IO_TARGET_REMOVE_CANCELED * PFN_WDF_IO_TARGET_REMOVE_CANCELED
Definition: wdfiotarget.h:108
struct _WDF_DMA_ENABLER_CONFIG_V1_13 * PWDF_DMA_ENABLER_CONFIG_V1_13
Definition: wdf113.h:69
_In_ WDFDEVICE _Out_ PWDF_DEVICE_STATE DeviceState
Definition: wdfdevice.h:1996
PO_FX_COMPONENT_IDLE_CONDITION_CALLBACK * PPO_FX_COMPONENT_IDLE_CONDITION_CALLBACK
Definition: potypes.h:508
struct _WDF_REQUEST_FATAL_ERROR_INFORMATION_LENGTH_MISMATCH_DATA_V1_13 WDF_REQUEST_FATAL_ERROR_INFORMATION_LENGTH_MISMATCH_DATA_V1_13
PFN_WDF_IO_ALLOCATE_RESOURCES_FOR_RESERVED_REQUEST EvtIoAllocateResourcesForReservedRequest
Definition: wdf113.h:1710
struct _WDF_CHILD_RETRIEVE_INFO_V1_13 WDF_CHILD_RETRIEVE_INFO_V1_13
EVT_WDF_DEVICE_D0_EXIT_PRE_INTERRUPTS_DISABLED * PFN_WDF_DEVICE_D0_EXIT_PRE_INTERRUPTS_DISABLED
Definition: wdfdevice.h:876
struct _WDF_CLASS_EXTENSION_DESCRIPTOR_V1_13 WDF_CLASS_EXTENSION_DESCRIPTOR_V1_13
struct _WDF_CLASS_BIND_INFO_V1_13 * PWDF_CLASS_BIND_INFO_V1_13
Definition: wdf113.h:33
const struct _WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY_V1_13 * PCWDF_IO_QUEUE_FORWARD_PROGRESS_POLICY_V1_13
Definition: wdf113.h:92
struct _WDF_DEVICE_POWER_NOTIFICATION_DATA_V1_13 * PWDF_DEVICE_POWER_NOTIFICATION_DATA_V1_13
Definition: wdf113.h:41
PFN_WDF_DEVICE_RELEASE_HARDWARE EvtDeviceReleaseHardware
Definition: wdf113.h:791
EVT_WDF_FILE_CLOSE * PFN_WDF_FILE_CLOSE
Definition: wdfdevice.h:565
PUSB_INTERFACE_DESCRIPTOR InterfaceDescriptor
Definition: wdf113.h:2871
WDF_TRI_STATE DontDisplayInUI
Definition: wdf113.h:1003
PFN_WDF_IO_TARGET_REMOVE_CANCELED EvtIoTargetRemoveCanceled
Definition: wdf113.h:1747
EVT_WDF_DRIVER_UNLOAD * PFN_WDF_DRIVER_UNLOAD
Definition: wdfdriver.h:91
struct _WDF_COMMON_BUFFER_CONFIG_V1_13 * PWDF_COMMON_BUFFER_CONFIG_V1_13
Definition: wdf113.h:25
struct _WDF_DEVICE_POWER_CAPABILITIES_V1_13 * PWDF_DEVICE_POWER_CAPABILITIES_V1_13
Definition: wdf113.h:57
BOOLEAN AutomaticSerialization
Definition: wdf113.h:1398
EVT_WDF_CHILD_LIST_CREATE_DEVICE * PFN_WDF_CHILD_LIST_CREATE_DEVICE
Definition: wdfchildlist.h:129
struct _WDF_INTERRUPT_CONFIG_V1_13 * PWDF_INTERRUPT_CONFIG_V1_13
Definition: wdf113.h:83
struct _WDF_DEVICE_PROPERTY_DATA_V1_13 * PWDF_DEVICE_PROPERTY_DATA_V1_13
Definition: wdf113.h:67
struct _WDF_PDO_EVENT_CALLBACKS_V1_13 * PWDF_PDO_EVENT_CALLBACKS_V1_13
Definition: wdf113.h:105
WDF_EXTERN_C_START enum _WDF_MEMORY_DESCRIPTOR_TYPE WDF_MEMORY_DESCRIPTOR_TYPE
struct _WDFOBJECT_TRIAGE_INFO_V1_13 WDFOBJECT_TRIAGE_INFO_V1_13
enum _WDF_FILEOBJECT_CLASS WDF_FILEOBJECT_CLASS
struct _WDF_TRIAGE_INFO_V1_13 WDF_TRIAGE_INFO_V1_13
PWDF_WMI_PROVIDER_CONFIG_V1_13 ProviderConfig
Definition: wdf113.h:3003
EVT_WDF_CHILD_LIST_ADDRESS_DESCRIPTION_COPY * PFN_WDF_CHILD_LIST_ADDRESS_DESCRIPTION_COPY
Definition: wdfchildlist.h:225
enum _WDF_POWER_POLICY_SX_WAKE_USER_CONTROL WDF_POWER_POLICY_SX_WAKE_USER_CONTROL
PFN_WDF_CHILD_LIST_ADDRESS_DESCRIPTION_CLEANUP EvtChildListAddressDescriptionCleanup
Definition: wdf113.h:365
PFN_WDF_DEVICE_RESOURCES_QUERY EvtDeviceResourcesQuery
Definition: wdf113.h:2048
PFN_WDF_FILE_CLEANUP EvtFileCleanup
Definition: wdf113.h:616
struct _WDF_POWER_FRAMEWORK_SETTINGS_V1_13 * PWDF_POWER_FRAMEWORK_SETTINGS_V1_13
Definition: wdf113.h:61
enum _WDF_INTERRUPT_POLICY WDF_INTERRUPT_POLICY
unsigned char BOOLEAN
PFN_WDF_CHILD_LIST_IDENTIFICATION_DESCRIPTION_COMPARE EvtChildListIdentificationDescriptionCompare
Definition: wdf113.h:279
PFN_WDF_OBJECT_CONTEXT_DESTROY EvtDestroyCallback
Definition: wdf113.h:1956
struct _WDF_QUEUE_FATAL_ERROR_DATA_V1_13 * PWDF_QUEUE_FATAL_ERROR_DATA_V1_13
Definition: wdf113.h:13
enum _KINTERRUPT_MODE KINTERRUPT_MODE
struct _WDF_CHILD_IDENTIFICATION_DESCRIPTION_HEADER_V1_13 * PWDF_CHILD_IDENTIFICATION_DESCRIPTION_HEADER_V1_13
Definition: wdf113.h:15
PFN_WDF_IO_TARGET_QUERY_REMOVE EvtIoTargetQueryRemove
Definition: wdf113.h:1741
const struct _WDF_FDO_EVENT_CALLBACKS_V1_13 * PCWDF_FDO_EVENT_CALLBACKS_V1_13
Definition: wdf113.h:80
struct _WDF_WORKITEM_CONFIG_V1_13 WDF_WORKITEM_CONFIG_V1_13
CHAR DriverName[WDF_DRIVER_GLOBALS_NAME_LEN]
Definition: wdf113.h:1491
#define _In_
Definition: ms_sal.h:308
struct _WDFCONTEXTTYPE_TRIAGE_INFO_V1_13 WDFCONTEXTTYPE_TRIAGE_INFO_V1_13
struct _WDF_QUERY_INTERFACE_CONFIG_V1_13 * PWDF_QUERY_INTERFACE_CONFIG_V1_13
Definition: wdf113.h:107
struct _WDFCONTEXTTYPE_TRIAGE_INFO_V1_13 * PWDFCONTEXTTYPE_TRIAGE_INFO_V1_13
Definition: wdf113.h:125
_Must_inspect_result_ _In_ WDFDEVICE _In_ ULONG _In_ ACCESS_MASK _In_opt_ PWDF_OBJECT_ATTRIBUTES _Out_ WDFKEY * Key
Definition: wdfdevice.h:2654
PFN_WDF_DEVICE_SELF_MANAGED_IO_RESTART EvtDeviceSelfManagedIoRestart
Definition: wdf113.h:801
_Reserved_ PVOID Reserved
Definition: winddi.h:3974
const struct _WDF_CLASS_VERSION_V1_13 * PCWDF_CLASS_VERSION_V1_13
Definition: wdf113.h:32
enum _WDF_POWER_POLICY_S0_IDLE_CAPABILITIES WDF_POWER_POLICY_S0_IDLE_CAPABILITIES
WDF_EXECUTION_LEVEL ExecutionLevel
Definition: wdf113.h:1961
WDF_MEMORY_DESCRIPTOR_TYPE Type
Definition: wdf113.h:1903
struct _WDFREQUEST_TRIAGE_INFO_V1_13 * PWDFREQUEST_TRIAGE_INFO_V1_13
Definition: wdf113.h:133
WDF_USB_CONTROL_SETUP_PACKET SetupPacket
Definition: wdf113.h:2653
EVT_WDF_DEVICE_EJECT * PFN_WDF_DEVICE_EJECT
Definition: wdfpdo.h:93
PFN_WDF_IO_QUEUE_IO_CANCELED_ON_QUEUE EvtIoCanceledOnQueue
Definition: wdf113.h:1678
struct _WDF_POWER_POLICY_EVENT_CALLBACKS_V1_13 WDF_POWER_POLICY_EVENT_CALLBACKS_V1_13
struct _WDF_INTERRUPT_EXTENDED_POLICY_V1_13 * PWDF_INTERRUPT_EXTENDED_POLICY_V1_13
Definition: wdf113.h:87
union _WDF_DEVICE_POWER_POLICY_NOTIFICATION_DATA_V1_13::@4285 Data
_In_ PVOID Argument2
Definition: classpnp.h:721
struct _WDF_DEVICE_PNP_NOTIFICATION_DATA_V1_13::@4277::@4279 PostProcessState
WDF_CLASS_VERSION_V1_13 Version
Definition: wdf113.h:516
PFN_WDF_DEVICE_ENABLE_WAKE_AT_BUS EvtDeviceEnableWakeAtBus
Definition: wdf113.h:2069
PFN_WDF_DPC EvtDpcFunc
Definition: wdf113.h:1389
struct _WDF_FILEOBJECT_CONFIG_V1_13 * PWDF_FILEOBJECT_CONFIG_V1_13
Definition: wdf113.h:37
EVT_WDF_DEVICE_D0_EXIT * PFN_WDF_DEVICE_D0_EXIT
Definition: wdfdevice.h:861
PFN_WDF_CHILD_LIST_IDENTIFICATION_DESCRIPTION_CLEANUP EvtChildListIdentificationDescriptionCleanup
Definition: wdf113.h:334
#define POINTER_ALIGNMENT
struct _WDF_WMI_PROVIDER_CONFIG_V1_13 WDF_WMI_PROVIDER_CONFIG_V1_13
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _Out_opt_ PUSHORT _Inout_opt_ PUNICODE_STRING Value
Definition: wdfregistry.h:406
PFN_WDF_OBJECT_CONTEXT_CLEANUP EvtCleanupCallback
Definition: wdf113.h:1950
GROUP_AFFINITY TargetProcessorSetAndGroup
Definition: wdf113.h:1639
KAFFINITY TargetProcessorSet
Definition: wdf113.h:1603
const struct _WDF_DEVICE_STATE_V1_13 * PCWDF_DEVICE_STATE_V1_13
Definition: wdf113.h:54
enum _WDF_SYNCHRONIZATION_SCOPE WDF_SYNCHRONIZATION_SCOPE
PFN_WDF_INTERRUPT_ENABLE EvtInterruptEnable
Definition: wdf113.h:1550
WDF_TRI_STATE Failed
Definition: wdf113.h:1010
WDF_CHILD_LIST_RETRIEVE_DEVICE_STATUS Status
Definition: wdf113.h:273
struct _WDF_DEVICE_POWER_POLICY_IDLE_SETTINGS_V1_13 WDF_DEVICE_POWER_POLICY_IDLE_SETTINGS_V1_13
enum _DEVICE_POWER_STATE DEVICE_POWER_STATE
struct _WDF_FDO_EVENT_CALLBACKS_V1_13 * PWDF_FDO_EVENT_CALLBACKS_V1_13
Definition: wdf113.h:79
PFN_WDF_DEVICE_PREPARE_HARDWARE EvtDevicePrepareHardware
Definition: wdf113.h:789
const struct _WDF_DEVICE_POWER_POLICY_WAKE_SETTINGS_V1_13 * PCWDF_DEVICE_POWER_POLICY_WAKE_SETTINGS_V1_13
Definition: wdf113.h:52
int64_t LONGLONG
Definition: typedefs.h:68
PO_FX_POWER_CONTROL_CALLBACK * PPO_FX_POWER_CONTROL_CALLBACK
Definition: potypes.h:552
PFN_WDF_DEVICE_SURPRISE_REMOVAL EvtDeviceSurpriseRemoval
Definition: wdf113.h:803
struct _WDFFWDPROGRESS_TRIAGE_INFO_V1_13 WDFFWDPROGRESS_TRIAGE_INFO_V1_13
struct _WDF_USB_REQUEST_COMPLETION_PARAMS_V1_13 WDF_USB_REQUEST_COMPLETION_PARAMS_V1_13
const struct _WDF_CHILD_LIST_ITERATOR_V1_13 * PCWDF_CHILD_LIST_ITERATOR_V1_13
Definition: wdf113.h:24
ULONG TriageInfoMajorVersion
Definition: wdf113.h:2587
WDF_EXTERN_C_START enum _WDF_CHILD_LIST_RETRIEVE_DEVICE_STATUS WDF_CHILD_LIST_RETRIEVE_DEVICE_STATUS
EVT_WDF_DEVICE_SELF_MANAGED_IO_INIT * PFN_WDF_DEVICE_SELF_MANAGED_IO_INIT
Definition: wdfdevice.h:947
PWDF_CHILD_IDENTIFICATION_DESCRIPTION_HEADER_V1_13 IdentificationDescription
Definition: wdf113.h:263
PFN_WDF_DEVICE_D0_EXIT EvtDeviceD0Exit
Definition: wdf113.h:785
EVT_WDF_DEVICE_ARM_WAKE_FROM_SX * PFN_WDF_DEVICE_ARM_WAKE_FROM_SX
Definition: wdfdevice.h:1087
const struct _WDF_REQUEST_COMPLETION_PARAMS_V1_13 * PCWDF_REQUEST_COMPLETION_PARAMS_V1_13
Definition: wdf113.h:112
InternalIoctlParams Argument4
WDF_INTERRUPT_POLARITY Polarity
Definition: wdf113.h:1615
PWDFIRP_TRIAGE_INFO_V1_13 WdfIrpTriageInfo
Definition: wdf113.h:2615
EVT_WDF_DEVICE_USAGE_NOTIFICATION_EX * PFN_WDF_DEVICE_USAGE_NOTIFICATION_EX
Definition: wdfdevice.h:1046
PFN_WDF_DEVICE_SELF_MANAGED_IO_CLEANUP EvtDeviceSelfManagedIoCleanup
Definition: wdf113.h:793
WDF_DMA_PROFILE Profile
Definition: wdf113.h:1296
WDF_TRI_STATE ResourcesChanged
Definition: wdf113.h:1031
EVT_WDF_DEVICE_SELF_MANAGED_IO_CLEANUP * PFN_WDF_DEVICE_SELF_MANAGED_IO_CLEANUP
Definition: wdfdevice.h:921
enum _WDF_REQUEST_TYPE WDF_REQUEST_TYPE
const struct _WDF_CHILD_LIST_CONFIG_V1_13 * PCWDF_CHILD_LIST_CONFIG_V1_13
Definition: wdf113.h:22
PFN_WDF_CHILD_LIST_ADDRESS_DESCRIPTION_COPY EvtChildListAddressDescriptionCopy
Definition: wdf113.h:351
struct _WDF_DEVICE_PNP_NOTIFICATION_DATA_V1_13 WDF_DEVICE_PNP_NOTIFICATION_DATA_V1_13
EVT_WDF_IO_TARGET_REMOVE_COMPLETE * PFN_WDF_IO_TARGET_REMOVE_COMPLETE
Definition: wdfiotarget.h:121
EVT_WDF_WMI_INSTANCE_EXECUTE_METHOD * PFN_WDF_WMI_INSTANCE_EXECUTE_METHOD
Definition: wdfwmi.h:154
WDF_EXTERN_C_START enum _WDF_IO_QUEUE_DISPATCH_TYPE WDF_IO_QUEUE_DISPATCH_TYPE
struct _WDF_CHILD_LIST_ITERATOR_V1_13 * PWDF_CHILD_LIST_ITERATOR_V1_13
Definition: wdf113.h:23
WDF_TRI_STATE ReportInactiveOnPowerDown
Definition: wdf113.h:1582
EVT_WDF_INTERRUPT_WORKITEM * PFN_WDF_INTERRUPT_WORKITEM
Definition: wdfinterrupt.h:153
EVT_WDF_DEVICE_D0_ENTRY_POST_INTERRUPTS_ENABLED * PFN_WDF_DEVICE_D0_ENTRY_POST_INTERRUPTS_ENABLED
Definition: wdfdevice.h:846
PFN_WDF_CHILD_LIST_IDENTIFICATION_DESCRIPTION_COMPARE EvtChildListIdentificationDescriptionCompare
Definition: wdf113.h:343
PFN_WDF_CHILD_LIST_SCAN_FOR_CHILDREN EvtChildListScanForChildren
Definition: wdf113.h:312
const struct _WDF_TIMER_CONFIG_V1_13 * PCWDF_TIMER_CONFIG_V1_13
Definition: wdf113.h:120
enum _WDF_INTERRUPT_PRIORITY WDF_INTERRUPT_PRIORITY
struct _WDF_USB_CONTINUOUS_READER_CONFIG_V1_13 WDF_USB_CONTINUOUS_READER_CONFIG_V1_13
struct _WDF_CHILD_LIST_CONFIG_V1_13 * PWDF_CHILD_LIST_CONFIG_V1_13
Definition: wdf113.h:21
struct _WDF_DPC_CONFIG_V1_13 * PWDF_DPC_CONFIG_V1_13
Definition: wdf113.h:73
enum _WDFFUNCENUM_V1_13 WDFFUNCENUM_V1_13
PCM_PARTIAL_RESOURCE_DESCRIPTOR DmaDescriptor
Definition: wdf113.h:1372
enum _WdfUsbTargetDeviceSelectSettingType WdfUsbTargetDeviceSelectSettingType
PWDF_CHILD_ADDRESS_DESCRIPTION_HEADER_V1_13 AddressDescription
Definition: wdf113.h:268
struct _WDF_CLASS_VERSION_V1_13 WDF_CLASS_VERSION_V1_13
enum _WDF_IO_FORWARD_PROGRESS_RESERVED_POLICY WDF_IO_FORWARD_PROGRESS_RESERVED_POLICY
ULONG WDF_MINOR_VERSION
Definition: fxldrum.h:27
EVT_WDF_DMA_ENABLER_DISABLE * PFN_WDF_DMA_ENABLER_DISABLE
WDF_TRI_STATE AutoForwardCleanupClose
Definition: wdf113.h:629
struct _WDF_INTERRUPT_CONFIG_V1_13 WDF_INTERRUPT_CONFIG_V1_13
EVT_WDF_CHILD_LIST_DEVICE_REENUMERATED * PFN_WDF_CHILD_LIST_DEVICE_REENUMERATED
Definition: wdfchildlist.h:276
struct _WDF_CUSTOM_TYPE_CONTEXT_V1_13 * PWDF_CUSTOM_TYPE_CONTEXT_V1_13
Definition: wdf113.h:103
PFN_WDF_TIMER EvtTimerFunc
Definition: wdf113.h:2432
PFN_WDF_DEVICE_ARM_WAKE_FROM_S0 EvtDeviceArmWakeFromS0
Definition: wdf113.h:823
EVT_WDF_DEVICE_REMOVE_ADDED_RESOURCES * PFN_WDF_DEVICE_REMOVE_ADDED_RESOURCES
Definition: wdffdo.h:83
struct _WDF_DMA_ENABLER_CONFIG_V1_13 WDF_DMA_ENABLER_CONFIG_V1_13
PFN_WDF_CLASS_EXPORT * FunctionTable
Definition: wdf113.h:521
const struct _WDF_IO_TARGET_OPEN_PARAMS_V1_13 * PCWDF_IO_TARGET_OPEN_PARAMS_V1_13
Definition: wdf113.h:94
EVT_WDF_INTERRUPT_ISR * PFN_WDF_INTERRUPT_ISR
Definition: wdfinterrupt.h:94
struct _WDFIRPQUEUE_TRIAGE_INFO_V1_13 * PWDFIRPQUEUE_TRIAGE_INFO_V1_13
Definition: wdf113.h:131
const struct _WDFIRP_TRIAGE_INFO_V1_13 * PCWDFIRP_TRIAGE_INFO_V1_13
Definition: wdf113.h:138
EVT_WDF_DEVICE_SELF_MANAGED_IO_RESTART * PFN_WDF_DEVICE_SELF_MANAGED_IO_RESTART
Definition: wdfdevice.h:973
EVT_WDF_DMA_ENABLER_FLUSH * PFN_WDF_DMA_ENABLER_FLUSH
Definition: wdfdmaenabler.h:98
struct _WDF_CHILD_RETRIEVE_INFO_V1_13 * PWDF_CHILD_RETRIEVE_INFO_V1_13
Definition: wdf113.h:19
const struct _WDF_MEMORY_DESCRIPTOR_V1_13 * PCWDF_MEMORY_DESCRIPTOR_V1_13
Definition: wdf113.h:98
PFN_WDF_CLASS_EXTENSIONIN_UNBIND Unbind
Definition: wdf113.h:489
* PFILE_OBJECT
Definition: iotypes.h:1998
const struct _WDF_DEVICE_POWER_POLICY_IDLE_SETTINGS_V1_13 * PCWDF_DEVICE_POWER_POLICY_IDLE_SETTINGS_V1_13
Definition: wdf113.h:50
EVT_WDF_INTERRUPT_ENABLE * PFN_WDF_INTERRUPT_ENABLE
Definition: wdfinterrupt.h:175
PPO_FX_COMPONENT_IDLE_CONDITION_CALLBACK ComponentIdleConditionCallback
Definition: wdf113.h:1176
struct _WDFREQUEST_TRIAGE_INFO_V1_13 WDFREQUEST_TRIAGE_INFO_V1_13
struct _WDFCX_FILEOBJECT_CONFIG_V1_13 WDFCX_FILEOBJECT_CONFIG_V1_13
const struct _WDF_REMOVE_LOCK_OPTIONS_V1_13 * PCWDF_REMOVE_LOCK_OPTIONS_V1_13
Definition: wdf113.h:60
const struct _WDF_USB_DEVICE_SELECT_CONFIG_PARAMS_V1_13 * PCWDF_USB_DEVICE_SELECT_CONFIG_PARAMS_V1_13
Definition: wdf113.h:150
struct _WDF_USB_DEVICE_INFORMATION_V1_13 * PWDF_USB_DEVICE_INFORMATION_V1_13
Definition: wdf113.h:145
DECLSPEC_ALIGN(8) USHORT Group
EVT_WDF_DEVICE_DISARM_WAKE_FROM_SX * PFN_WDF_DEVICE_DISARM_WAKE_FROM_SX
Definition: wdfdevice.h:1130
PFN_WDF_CLIENT_UNBIND_CLASS ClientUnbindClass
Definition: wdf113.h:546
unsigned __int64 ULONG64
Definition: imports.h:198
ULONG WDF_BUILD_NUMBER
Definition: fxldrum.h:28
WDF_REQUEST_TYPE Type
Definition: wdf113.h:2171
unsigned char UCHAR
Definition: xmlstorage.h:181
const struct _WDF_USB_DEVICE_INFORMATION_V1_13 * PCWDF_USB_DEVICE_INFORMATION_V1_13
Definition: wdf113.h:146
EVT_WDF_OBJECT_CONTEXT_DESTROY * PFN_WDF_OBJECT_CONTEXT_DESTROY
Definition: wdfobject.h:95
PFN_WDF_IO_QUEUE_IO_DEFAULT EvtIoDefault
Definition: wdf113.h:1664
const struct _WDF_REQUEST_REUSE_PARAMS_V1_13 * PCWDF_REQUEST_REUSE_PARAMS_V1_13
Definition: wdf113.h:114
struct _WDF_POWER_ROUTINE_TIMED_OUT_DATA_V1_13 WDF_POWER_ROUTINE_TIMED_OUT_DATA_V1_13
const struct _WDF_QUERY_INTERFACE_CONFIG_V1_13 * PCWDF_QUERY_INTERFACE_CONFIG_V1_13
Definition: wdf113.h:108
const struct _WDF_POWER_POLICY_EVENT_CALLBACKS_V1_13 * PCWDF_POWER_POLICY_EVENT_CALLBACKS_V1_13
Definition: wdf113.h:48
PFN_WDF_DEVICE_QUERY_REMOVE EvtDeviceQueryRemove
Definition: wdf113.h:805
PFN_WDF_DEVICE_ARM_WAKE_FROM_SX EvtDeviceArmWakeFromSx
Definition: wdf113.h:829
struct _WDF_CLASS_BIND_INFO_V1_13 WDF_CLASS_BIND_INFO_V1_13
PFN_WDF_WMI_PROVIDER_FUNCTION_CONTROL EvtWmiProviderFunctionControl
Definition: wdf113.h:2982
PWDFMEMORY_OFFSET_V1_13 Offsets
Definition: wdf113.h:1923
struct _WDF_REQUEST_REUSE_PARAMS_V1_13 * PWDF_REQUEST_REUSE_PARAMS_V1_13
Definition: wdf113.h:113
LONG USBD_STATUS
Definition: usb.h:165
EVT_WDF_OBJECT_CONTEXT_CLEANUP * PFN_WDF_OBJECT_CONTEXT_CLEANUP
Definition: wdfobject.h:82
Definition: arc.h:85
UNICODE_STRING TargetDeviceName
Definition: wdf113.h:1775
PFN_WDF_DEVICE_QUERY_STOP EvtDeviceQueryStop
Definition: wdf113.h:807
PFN_WDF_DEVICE_FILTER_RESOURCE_REQUIREMENTS EvtDeviceFilterAddResourceRequirements
Definition: wdf113.h:1462
WDF_STATE_NOTIFICATION_TYPE Type
Definition: wdf113.h:689
PFN_WDF_WORKITEM EvtWorkItemFunc
Definition: wdf113.h:3048
WDF_DEVICE_IO_TYPE ReadWriteIoType
Definition: wdf113.h:1221
_In_ WDFREQUEST _In_ size_t _In_ size_t _In_ ULONG IoControlCode
Definition: wdfio.h:318
EVT_WDF_DEVICE_FILE_CREATE * PFN_WDF_DEVICE_FILE_CREATE
Definition: wdfdevice.h:552
EVT_WDF_DPC * PFN_WDF_DPC
Definition: wdfdpc.h:64
struct _WDF_DEVICE_POWER_POLICY_NOTIFICATION_DATA_V1_13::@4285::@4286 EnterState
const struct _WDF_INTERRUPT_INFO_V1_13 * PCWDF_INTERRUPT_INFO_V1_13
Definition: wdf113.h:86
const struct _WDF_OBJECT_ATTRIBUTES_V1_13 * PCWDF_OBJECT_ATTRIBUTES_V1_13
Definition: wdf113.h:100
struct _WDF_REMOVE_LOCK_OPTIONS_V1_13 WDF_REMOVE_LOCK_OPTIONS_V1_13
DEVICE_POWER_STATE IdealDxStateForSx
Definition: wdf113.h:1118
struct _WDF_DEVICE_PNP_CAPABILITIES_V1_13 * PWDF_DEVICE_PNP_CAPABILITIES_V1_13
Definition: wdf113.h:55
EVT_WDF_CHILD_LIST_ADDRESS_DESCRIPTION_DUPLICATE * PFN_WDF_CHILD_LIST_ADDRESS_DESCRIPTION_DUPLICATE
Definition: wdfchildlist.h:242
PFN_WDF_DMA_ENABLER_DISABLE EvtDmaEnablerDisable
Definition: wdf113.h:1310
struct _WDF_DEVICE_STATE_V1_13 * PWDF_DEVICE_STATE_V1_13
Definition: wdf113.h:53
const struct _WDF_OBJECT_CONTEXT_TYPE_INFO_V1_13 * PCWDF_OBJECT_CONTEXT_TYPE_INFO_V1_13
Definition: wdf113.h:102
PFN_WDF_FILE_CLEANUP EvtFileCleanup
Definition: wdf113.h:453
const struct _WDF_POWER_FRAMEWORK_SETTINGS_V1_13 * PCWDF_POWER_FRAMEWORK_SETTINGS_V1_13
Definition: wdf113.h:62
KINTERRUPT_MODE Mode
Definition: wdf113.h:1613
PWDF_USB_INTERFACE_SETTING_PAIR_V1_13 Pairs
Definition: wdf113.h:2841
EVT_WDF_IO_QUEUE_IO_DEFAULT * PFN_WDF_IO_QUEUE_IO_DEFAULT
Definition: wdfio.h:239
const struct _WDF_FILEOBJECT_CONFIG_V1_13 * PCWDF_FILEOBJECT_CONFIG_V1_13
Definition: wdf113.h:38
PFN_WDF_IO_ALLOCATE_REQUEST_RESOURCES EvtIoAllocateRequestResources
Definition: wdf113.h:1715
WdfUsbTargetDeviceSelectConfigType Type
Definition: wdf113.h:2786
const struct _WDF_REQUEST_FATAL_ERROR_INFORMATION_LENGTH_MISMATCH_DATA_V1_13 * PCWDF_REQUEST_FATAL_ERROR_INFORMATION_LENGTH_MISMATCH_DATA_V1_13
Definition: wdf113.h:12
struct _WDF_REQUEST_PARAMETERS_V1_13 WDF_REQUEST_PARAMETERS_V1_13
PFN_WDFDEVICE_WDM_PRE_PO_FX_UNREGISTER_DEVICE EvtDeviceWdmPrePoFxUnregisterDevice
Definition: wdf113.h:1154
WDF_TRI_STATE ShareVector
Definition: wdf113.h:1533
struct _WDF_DRIVER_VERSION_AVAILABLE_PARAMS_V1_13 * PWDF_DRIVER_VERSION_AVAILABLE_PARAMS_V1_13
Definition: wdf113.h:77
EVT_WDF_IO_ALLOCATE_REQUEST_RESOURCES * PFN_WDF_IO_ALLOCATE_REQUEST_RESOURCES
Definition: wdfio.h:500
struct _WDF_CUSTOM_TYPE_CONTEXT_V1_13 WDF_CUSTOM_TYPE_CONTEXT_V1_13
const struct _WDF_USB_INTERFACE_SETTING_PAIR_V1_13 * PCWDF_USB_INTERFACE_SETTING_PAIR_V1_13
Definition: wdf113.h:148
WDF_DEVICE_POWER_POLICY_STATE CurrentState
Definition: wdf113.h:741
EVT_WDF_CHILD_LIST_IDENTIFICATION_DESCRIPTION_DUPLICATE * PFN_WDF_CHILD_LIST_IDENTIFICATION_DESCRIPTION_DUPLICATE
Definition: wdfchildlist.h:176
_In_ ULONG _In_ ULONG Offset
Definition: ntddpcm.h:101
EVT_WDF_DEVICE_SELF_MANAGED_IO_FLUSH * PFN_WDF_DEVICE_SELF_MANAGED_IO_FLUSH
Definition: wdfdevice.h:934
struct _WDF_CHILD_LIST_CONFIG_V1_13 WDF_CHILD_LIST_CONFIG_V1_13
struct _WDF_WMI_INSTANCE_CONFIG_V1_13 WDF_WMI_INSTANCE_CONFIG_V1_13
const struct _WDF_USB_REQUEST_COMPLETION_PARAMS_V1_13 * PCWDF_USB_REQUEST_COMPLETION_PARAMS_V1_13
Definition: wdf113.h:142
struct _WDF_DRIVER_CONFIG_V1_13 WDF_DRIVER_CONFIG_V1_13
struct _WDF_FILEOBJECT_CONFIG_V1_13 WDF_FILEOBJECT_CONFIG_V1_13
const struct _WDFREQUEST_TRIAGE_INFO_V1_13 * PCWDFREQUEST_TRIAGE_INFO_V1_13
Definition: wdf113.h:134
PCM_PARTIAL_RESOURCE_DESCRIPTOR InterruptTranslated
Definition: wdf113.h:1562
EVT_WDF_DEVICE_PROCESS_QUERY_INTERFACE_REQUEST * PFN_WDF_DEVICE_PROCESS_QUERY_INTERFACE_REQUEST
const struct _WDF_CHILD_IDENTIFICATION_DESCRIPTION_HEADER_V1_13 * PCWDF_CHILD_IDENTIFICATION_DESCRIPTION_HEADER_V1_13
Definition: wdf113.h:16
struct _WDF_REQUEST_COMPLETION_PARAMS_V1_13 * PWDF_REQUEST_COMPLETION_PARAMS_V1_13
Definition: wdf113.h:111
struct _WDF_IO_TARGET_OPEN_PARAMS_V1_13 * PWDF_IO_TARGET_OPEN_PARAMS_V1_13
Definition: wdf113.h:93
PWDFQUEUE_TRIAGE_INFO_V1_13 WdfQueueTriageInfo
Definition: wdf113.h:2605
EVT_WDF_DEVICE_WAKE_FROM_SX_TRIGGERED * PFN_WDF_DEVICE_WAKE_FROM_SX_TRIGGERED
Definition: wdfdevice.h:1156
BOOL WINAPI DeviceIoControl(IN HANDLE hDevice, IN DWORD dwIoControlCode, IN LPVOID lpInBuffer OPTIONAL, IN DWORD nInBufferSize OPTIONAL, OUT LPVOID lpOutBuffer OPTIONAL, IN DWORD nOutBufferSize OPTIONAL, OUT LPDWORD lpBytesReturned OPTIONAL, IN LPOVERLAPPED lpOverlapped OPTIONAL)
Definition: deviceio.c:136
PWDF_USB_REQUEST_COMPLETION_PARAMS_V1_13 Completion
Definition: wdf113.h:2337
struct _WDF_DEVICE_POWER_POLICY_IDLE_SETTINGS_V1_13 * PWDF_DEVICE_POWER_POLICY_IDLE_SETTINGS_V1_13
Definition: wdf113.h:49
struct _WDF_DEVICE_POWER_NOTIFICATION_DATA_V1_13 WDF_DEVICE_POWER_NOTIFICATION_DATA_V1_13
struct _WDF_DEVICE_POWER_CAPABILITIES_V1_13 WDF_DEVICE_POWER_CAPABILITIES_V1_13
const struct _WDF_DRIVER_CONFIG_V1_13 * PCWDF_DRIVER_CONFIG_V1_13
Definition: wdf113.h:76
struct _WDF_USB_DEVICE_INFORMATION_V1_13 WDF_USB_DEVICE_INFORMATION_V1_13
EVT_WDF_USB_READERS_FAILED * PFN_WDF_USB_READERS_FAILED
Definition: wdfusb.h:405
IN PVOID IN PVOID IN USHORT IN USHORT IN PINTERFACE Interface
Definition: pci.h:361
Definition: usb.h:529
struct _WDF_DEVICE_POWER_POLICY_NOTIFICATION_DATA_V1_13::@4285::@4288 LeaveState
PFN_GET_UNIQUE_CONTEXT_TYPE EvtDriverGetUniqueContextType
Definition: wdf113.h:2020
const struct _WDFOBJECT_TRIAGE_INFO_V1_13 * PCWDFOBJECT_TRIAGE_INFO_V1_13
Definition: wdf113.h:122
unsigned short USHORT
Definition: pedump.c:61
ULONG POINTER_ALIGNMENT Key
Definition: wdf113.h:2203
EVT_WDF_USB_READER_COMPLETION_ROUTINE * PFN_WDF_USB_READER_COMPLETION_ROUTINE
Definition: wdfusb.h:388
USHORT POINTER_ALIGNMENT FileAttributes
Definition: wdf113.h:2188
const struct _WDFMEMORY_OFFSET_V1_13 * PCWDFMEMORY_OFFSET_V1_13
Definition: wdf113.h:96
PFN_WDF_DMA_ENABLER_FLUSH EvtDmaEnablerFlush
Definition: wdf113.h:1308
const struct _WDF_USB_PIPE_INFORMATION_V1_13 * PCWDF_USB_PIPE_INFORMATION_V1_13
Definition: wdf113.h:154
ULONG_PTR KAFFINITY
Definition: compat.h:85
WDF_IO_FORWARD_PROGRESS_RESERVED_POLICY_SETTINGS ForwardProgressReservePolicySettings
Definition: wdf113.h:1705
PIO_SECURITY_CONTEXT SecurityContext
Definition: wdf113.h:2184
PFN_WDF_DEVICE_SELF_MANAGED_IO_SUSPEND EvtDeviceSelfManagedIoSuspend
Definition: wdf113.h:799
enum _WDF_POWER_POLICY_IDLE_TIMEOUT_TYPE WDF_POWER_POLICY_IDLE_TIMEOUT_TYPE
const struct _WDFCX_FILEOBJECT_CONFIG_V1_13 * PCWDFCX_FILEOBJECT_CONFIG_V1_13
Definition: wdf113.h:28
struct _WDFQUEUE_TRIAGE_INFO_V1_13 WDFQUEUE_TRIAGE_INFO_V1_13
const struct _WDF_REQUEST_PARAMETERS_V1_13 * PCWDF_REQUEST_PARAMETERS_V1_13
Definition: wdf113.h:110
EVT_WDF_DEVICE_SET_LOCK * PFN_WDF_DEVICE_SET_LOCK
Definition: wdfpdo.h:108
PFN_WDF_DEVICE_DISABLE_WAKE_AT_BUS EvtDeviceDisableWakeAtBus
Definition: wdf113.h:2075
PFN_WDF_DEVICE_FILTER_RESOURCE_REQUIREMENTS EvtDeviceFilterRemoveResourceRequirements
Definition: wdf113.h:1464
struct _WDF_IO_TARGET_OPEN_PARAMS_V1_13 WDF_IO_TARGET_OPEN_PARAMS_V1_13
struct _WDF_DMA_SYSTEM_PROFILE_CONFIG_V1_13 WDF_DMA_SYSTEM_PROFILE_CONFIG_V1_13
PFN_WDF_DEVICE_ARM_WAKE_FROM_SX_WITH_REASON EvtDeviceArmWakeFromSxWithReason
Definition: wdf113.h:835
struct _WDF_DEVICE_STATE_V1_13 WDF_DEVICE_STATE_V1_13
PFN_WDF_CLASS_LIBRARY_UNBIND_CLIENT ClassLibraryUnbindClient
Definition: wdf113.h:588
PFN_WDF_DRIVER_DEVICE_ADD EvtDriverDeviceAdd
Definition: wdf113.h:1416
PO_FX_COMPONENT_IDLE_STATE_CALLBACK * PPO_FX_COMPONENT_IDLE_STATE_CALLBACK
Definition: potypes.h:519
EVT_WDFDEVICE_WDM_POST_PO_FX_REGISTER_DEVICE * PFN_WDFDEVICE_WDM_POST_PO_FX_REGISTER_DEVICE
Definition: wdfdevice.h:1743
PCM_PARTIAL_RESOURCE_DESCRIPTOR InterruptRaw
Definition: wdf113.h:1560
PPO_FX_COMPONENT_ACTIVE_CONDITION_CALLBACK ComponentActiveConditionCallback
Definition: wdf113.h:1169
struct _WDF_USB_INTERFACE_SETTING_PAIR_V1_13 * PWDF_USB_INTERFACE_SETTING_PAIR_V1_13
Definition: wdf113.h:147
EVT_WDF_INTERRUPT_DISABLE * PFN_WDF_INTERRUPT_DISABLE
Definition: wdfinterrupt.h:197
PFN_WDF_IO_QUEUE_IO_STOP EvtIoStop
Definition: wdf113.h:1674
const struct _WDF_DEVICE_PROPERTY_DATA_V1_13 * PCWDF_DEVICE_PROPERTY_DATA_V1_13
Definition: wdf113.h:68
WDF_INTERRUPT_PRIORITY Priority
Definition: wdf113.h:1637
struct _WDF_WMI_INSTANCE_CONFIG_V1_13 * PWDF_WMI_INSTANCE_CONFIG_V1_13
Definition: wdf113.h:159
struct _WDF_DEVICE_PNP_NOTIFICATION_DATA_V1_13::@4277::@4280 LeaveState
PFN_WDF_DEVICE_D0_ENTRY EvtDeviceD0Entry
Definition: wdf113.h:781
EVT_WDF_DEVICE_D0_ENTRY * PFN_WDF_DEVICE_D0_ENTRY
Definition: wdfdevice.h:831
union _WDF_DEVICE_POWER_NOTIFICATION_DATA_V1_13::@4281 Data
PWDFFWDPROGRESS_TRIAGE_INFO_V1_13 WdfFwdProgressTriageInfo
Definition: wdf113.h:2607
struct _WDF_USB_PIPE_INFORMATION_V1_13 WDF_USB_PIPE_INFORMATION_V1_13
PFN_WDF_IO_QUEUE_IO_READ EvtIoRead
Definition: wdf113.h:1666
struct _WDF_OBJECT_ATTRIBUTES_V1_13 WDF_OBJECT_ATTRIBUTES_V1_13
SYSTEM_POWER_STATE SystemWake
Definition: wdf113.h:1101
const struct _WDF_DEVICE_POWER_CAPABILITIES_V1_13 * PCWDF_DEVICE_POWER_CAPABILITIES_V1_13
Definition: wdf113.h:58
enum _WDF_DEVICE_POWER_POLICY_STATE WDF_DEVICE_POWER_POLICY_STATE
struct _WDF_DMA_SYSTEM_PROFILE_CONFIG_V1_13 * PWDF_DMA_SYSTEM_PROFILE_CONFIG_V1_13
Definition: wdf113.h:71
PWDF_OBJECT_ATTRIBUTES_V1_13 BufferAttributes
Definition: wdf113.h:2721
struct _WDF_CHILD_LIST_ITERATOR_V1_13 WDF_CHILD_LIST_ITERATOR_V1_13
PFN_WDF_DEVICE_D0_EXIT_PRE_INTERRUPTS_DISABLED EvtDeviceD0ExitPreInterruptsDisabled
Definition: wdf113.h:787
const struct _WDFQUEUE_TRIAGE_INFO_V1_13 * PCWDFQUEUE_TRIAGE_INFO_V1_13
Definition: wdf113.h:128
struct _WDF_DRIVER_VERSION_AVAILABLE_PARAMS_V1_13 WDF_DRIVER_VERSION_AVAILABLE_PARAMS_V1_13
EVT_WDF_DEVICE_QUERY_REMOVE * PFN_WDF_DEVICE_QUERY_REMOVE
Definition: wdfdevice.h:999
WDF_TRI_STATE AutoForwardCleanupClose
Definition: wdf113.h:466
PFN_WDF_DEVICE_DISARM_WAKE_FROM_SX EvtDeviceDisarmWakeFromSx
Definition: wdf113.h:831
struct _WDFDEVICE_TRIAGE_INFO_V1_13 WDFDEVICE_TRIAGE_INFO_V1_13
struct _WDFMEMORY_OFFSET_V1_13 * PWDFMEMORY_OFFSET_V1_13
Definition: wdf113.h:95
struct _WDF_PNPPOWER_EVENT_CALLBACKS_V1_13 WDF_PNPPOWER_EVENT_CALLBACKS_V1_13
PFN_WDF_DEVICE_FILE_CREATE EvtDeviceFileCreate
Definition: wdf113.h:606
const struct _WDFIRPQUEUE_TRIAGE_INFO_V1_13 * PCWDFIRPQUEUE_TRIAGE_INFO_V1_13
Definition: wdf113.h:132
EVT_WDF_DEVICE_RELATIONS_QUERY * PFN_WDF_DEVICE_RELATIONS_QUERY
Definition: wdfdevice.h:1061
const struct _WDF_INTERRUPT_CONFIG_V1_13 * PCWDF_INTERRUPT_CONFIG_V1_13
Definition: wdf113.h:84
struct _WDF_DEVICE_PNP_NOTIFICATION_DATA_V1_13::@4277::@4278 EnterState
WDF_IO_FORWARD_PROGRESS_RESERVED_POLICY ForwardProgressReservedPolicy
Definition: wdf113.h:1700
BOOLEAN AutomaticSerialization
Definition: wdf113.h:3057
enum _WDF_USB_PIPE_TYPE WDF_USB_PIPE_TYPE
EVT_WDF_DEVICE_QUERY_STOP * PFN_WDF_DEVICE_QUERY_STOP
Definition: wdfdevice.h:986
struct _WDF_CHILD_IDENTIFICATION_DESCRIPTION_HEADER_V1_13 WDF_CHILD_IDENTIFICATION_DESCRIPTION_HEADER_V1_13
struct _WDF_POWER_POLICY_EVENT_CALLBACKS_V1_13 * PWDF_POWER_POLICY_EVENT_CALLBACKS_V1_13
Definition: wdf113.h:47
PWDFDEVICE_TRIAGE_INFO_V1_13 WdfDeviceTriageInfo
Definition: wdf113.h:2613
const struct _WDF_DEVICE_INTERFACE_PROPERTY_DATA_V1_13 * PCWDF_DEVICE_INTERFACE_PROPERTY_DATA_V1_13
Definition: wdf113.h:66
unsigned int ULONG
Definition: retypes.h:1
const struct _WDF_INTERRUPT_EXTENDED_POLICY_V1_13 * PCWDF_INTERRUPT_EXTENDED_POLICY_V1_13
Definition: wdf113.h:88
PWDFREQUEST_TRIAGE_INFO_V1_13 WdfRequestTriageInfo
Definition: wdf113.h:2611
WDF_EXTERN_C_START enum _WDF_EXECUTION_LEVEL WDF_EXECUTION_LEVEL
struct _WDF_DRIVER_CONFIG_V1_13 * PWDF_DRIVER_CONFIG_V1_13
Definition: wdf113.h:75
struct _WDFIRPQUEUE_TRIAGE_INFO_V1_13 WDFIRPQUEUE_TRIAGE_INFO_V1_13
PFN_WDF_CHILD_LIST_CREATE_DEVICE EvtChildListCreateDevice
Definition: wdf113.h:305
struct _WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY_V1_13 WDF_IO_QUEUE_FORWARD_PROGRESS_POLICY_V1_13
PFN_WDF_FILE_CLOSE EvtFileClose
Definition: wdf113.h:448
_WDFFUNCENUM_V1_13
Definition: wdf113.h:5
const struct _WDF_USB_DEVICE_CREATE_CONFIG_V1_13 * PCWDF_USB_DEVICE_CREATE_CONFIG_V1_13
Definition: wdf113.h:156
enum _WDF_DEVICE_POWER_STATE WDF_DEVICE_POWER_STATE
PFN_WDF_CLASS_EXTENSIONIN_BIND Bind
Definition: wdf113.h:487
PFN_WDF_DEVICE_REMOVE_ADDED_RESOURCES EvtDeviceRemoveAddedResources
Definition: wdf113.h:1466
WDF_DEVICE_PNP_STATE CurrentState
Definition: wdf113.h:651
EVT_WDF_DEVICE_WAKE_FROM_S0_TRIGGERED * PFN_WDF_DEVICE_WAKE_FROM_S0_TRIGGERED
Definition: wdfdevice.h:1143
EVT_WDF_CHILD_LIST_IDENTIFICATION_DESCRIPTION_COMPARE * PFN_WDF_CHILD_LIST_IDENTIFICATION_DESCRIPTION_COMPARE
Definition: wdfchildlist.h:193
struct _WDF_INTERRUPT_EXTENDED_POLICY_V1_13 WDF_INTERRUPT_EXTENDED_POLICY_V1_13
struct _WDFOBJECT_TRIAGE_INFO_V1_13 * PWDFOBJECT_TRIAGE_INFO_V1_13
Definition: wdf113.h:121
const struct _WDF_DMA_ENABLER_CONFIG_V1_13 * PCWDF_DMA_ENABLER_CONFIG_V1_13
Definition: wdf113.h:70
PCWDF_OBJECT_CONTEXT_TYPE_INFO_V1_13 UniqueType
Definition: wdf113.h:2012
EVT_WDF_DMA_ENABLER_SELFMANAGED_IO_START * PFN_WDF_DMA_ENABLER_SELFMANAGED_IO_START
WDF_FILEOBJECT_CLASS FileObjectClass
Definition: wdf113.h:636
EVT_WDF_IO_TARGET_QUERY_REMOVE * PFN_WDF_IO_TARGET_QUERY_REMOVE
Definition: wdfiotarget.h:95
PCWDF_OBJECT_CONTEXT_TYPE_INFO(__cdecl * PFN_GET_UNIQUE_CONTEXT_TYPE)(VOID)
Definition: wdfobject.h:176
const struct _WDFFWDPROGRESS_TRIAGE_INFO_V1_13 * PCWDFFWDPROGRESS_TRIAGE_INFO_V1_13
Definition: wdf113.h:130
struct _WDF_DEVICE_PNP_CAPABILITIES_V1_13 WDF_DEVICE_PNP_CAPABILITIES_V1_13
PFN_WDF_CHILD_LIST_ADDRESS_DESCRIPTION_DUPLICATE EvtChildListAddressDescriptionDuplicate
Definition: wdf113.h:358
EVT_WDF_DEVICE_SURPRISE_REMOVAL * PFN_WDF_DEVICE_SURPRISE_REMOVAL
Definition: wdfdevice.h:1012
PFN_WDF_WMI_INSTANCE_EXECUTE_METHOD EvtWmiInstanceExecuteMethod
Definition: wdf113.h:3036
EVT_WDF_CHILD_LIST_IDENTIFICATION_DESCRIPTION_COPY * PFN_WDF_CHILD_LIST_IDENTIFICATION_DESCRIPTION_COPY
Definition: wdfchildlist.h:159
PFN_WDF_IO_QUEUE_IO_DEVICE_CONTROL EvtIoDeviceControl
Definition: wdf113.h:1670
PFN_WDF_DEVICE_D0_ENTRY_POST_INTERRUPTS_ENABLED EvtDeviceD0EntryPostInterruptsEnabled
Definition: wdf113.h:783
struct _WDF_REQUEST_PARAMETERS_V1_13 * PWDF_REQUEST_PARAMETERS_V1_13
Definition: wdf113.h:109
EVT_WDFDEVICE_WDM_PRE_PO_FX_UNREGISTER_DEVICE * PFN_WDFDEVICE_WDM_PRE_PO_FX_UNREGISTER_DEVICE
Definition: wdfdevice.h:1758
struct _WDF_OBJECT_CONTEXT_TYPE_INFO_V1_13 WDF_OBJECT_CONTEXT_TYPE_INFO_V1_13
PPO_FX_POWER_CONTROL_CALLBACK PowerControlCallback
Definition: wdf113.h:1190
struct _WDF_COMMON_BUFFER_CONFIG_V1_13 WDF_COMMON_BUFFER_CONFIG_V1_13
BOOLEAN AllowZeroLengthRequests
Definition: wdf113.h:1660
enum _WdfUsbTargetDeviceSelectConfigType WdfUsbTargetDeviceSelectConfigType
const struct _WDF_DRIVER_GLOBALS_V1_13 * PCWDF_DRIVER_GLOBALS_V1_13
Definition: wdf113.h:82