ReactOS  0.4.15-dev-3295-gaa8fc87
fxdynamics.h
Go to the documentation of this file.
1 /*++
2 
3 Copyright (c) Microsoft. All rights reserved.
4 
5 Module Name: FxDynamics.h
6 
7 Abstract:
8  Generated header for WDF APIs
9 
10 Environment:
11  User mode only
12 
13  Warning: manual changes to this file will be lost.
14 --*/
15 
16 #ifndef _FXDYNAMICS_H_
17 #define _FXDYNAMICS_H_
18 
19 
20 typedef struct _WDFFUNCTIONS {
21 
22  PFN_WDFCOLLECTIONCREATE pfnWdfCollectionCreate;
23  PFN_WDFCOLLECTIONGETCOUNT pfnWdfCollectionGetCount;
24  PFN_WDFCOLLECTIONADD pfnWdfCollectionAdd;
25  PFN_WDFCOLLECTIONREMOVE pfnWdfCollectionRemove;
26  PFN_WDFCOLLECTIONREMOVEITEM pfnWdfCollectionRemoveItem;
27  PFN_WDFCOLLECTIONGETITEM pfnWdfCollectionGetItem;
28  PFN_WDFCOLLECTIONGETFIRSTITEM pfnWdfCollectionGetFirstItem;
29  PFN_WDFCOLLECTIONGETLASTITEM pfnWdfCollectionGetLastItem;
34  PFN_WDFDEVICEGETDEVICESTATE pfnWdfDeviceGetDeviceState;
35  PFN_WDFDEVICESETDEVICESTATE pfnWdfDeviceSetDeviceState;
36  PFN_WDFDEVICEGETDRIVER pfnWdfDeviceGetDriver;
37  PFN_WDFDEVICEGETIOTARGET pfnWdfDeviceGetIoTarget;
38  PFN_WDFDEVICEASSIGNS0IDLESETTINGS pfnWdfDeviceAssignS0IdleSettings;
39  PFN_WDFDEVICEASSIGNSXWAKESETTINGS pfnWdfDeviceAssignSxWakeSettings;
40  PFN_WDFDEVICEOPENREGISTRYKEY pfnWdfDeviceOpenRegistryKey;
41  PFN_WDFDEVICEINITSETPNPPOWEREVENTCALLBACKS pfnWdfDeviceInitSetPnpPowerEventCallbacks;
42  PFN_WDFDEVICEINITSETPOWERPOLICYEVENTCALLBACKS pfnWdfDeviceInitSetPowerPolicyEventCallbacks;
43  PFN_WDFDEVICEINITSETPOWERPOLICYOWNERSHIP pfnWdfDeviceInitSetPowerPolicyOwnership;
44  PFN_WDFDEVICEINITSETIOTYPE pfnWdfDeviceInitSetIoType;
45  PFN_WDFDEVICEINITSETFILEOBJECTCONFIG pfnWdfDeviceInitSetFileObjectConfig;
46  PFN_WDFDEVICEINITSETREQUESTATTRIBUTES pfnWdfDeviceInitSetRequestAttributes;
47  PFN_WDFDEVICECREATE pfnWdfDeviceCreate;
48  PFN_WDFDEVICESETSTATICSTOPREMOVE pfnWdfDeviceSetStaticStopRemove;
49  PFN_WDFDEVICECREATEDEVICEINTERFACE pfnWdfDeviceCreateDeviceInterface;
50  PFN_WDFDEVICESETDEVICEINTERFACESTATE pfnWdfDeviceSetDeviceInterfaceState;
51  PFN_WDFDEVICERETRIEVEDEVICEINTERFACESTRING pfnWdfDeviceRetrieveDeviceInterfaceString;
52  PFN_WDFDEVICECREATESYMBOLICLINK pfnWdfDeviceCreateSymbolicLink;
53  PFN_WDFDEVICEQUERYPROPERTY pfnWdfDeviceQueryProperty;
54  PFN_WDFDEVICEALLOCANDQUERYPROPERTY pfnWdfDeviceAllocAndQueryProperty;
55  PFN_WDFDEVICESETPNPCAPABILITIES pfnWdfDeviceSetPnpCapabilities;
56  PFN_WDFDEVICESETPOWERCAPABILITIES pfnWdfDeviceSetPowerCapabilities;
57  PFN_WDFDEVICESETFAILED pfnWdfDeviceSetFailed;
58  PFN_WDFDEVICESTOPIDLENOTRACK pfnWdfDeviceStopIdleNoTrack;
59  PFN_WDFDEVICERESUMEIDLENOTRACK pfnWdfDeviceResumeIdleNoTrack;
60  PFN_WDFDEVICEGETFILEOBJECT pfnWdfDeviceGetFileObject;
61  PFN_WDFDEVICEGETDEFAULTQUEUE pfnWdfDeviceGetDefaultQueue;
62  PFN_WDFDEVICECONFIGUREREQUESTDISPATCHING pfnWdfDeviceConfigureRequestDispatching;
63  PFN_WDFDEVICEGETSYSTEMPOWERACTION pfnWdfDeviceGetSystemPowerAction;
64  PFN_WDFDEVICEINITSETRELEASEHARDWAREORDERONFAILURE pfnWdfDeviceInitSetReleaseHardwareOrderOnFailure;
65  PFN_WDFDEVICEINITSETIOTYPEEX pfnWdfDeviceInitSetIoTypeEx;
66  PFN_WDFDEVICEPOSTEVENT pfnWdfDevicePostEvent;
67  PFN_WDFDEVICEMAPIOSPACE pfnWdfDeviceMapIoSpace;
68  PFN_WDFDEVICEUNMAPIOSPACE pfnWdfDeviceUnmapIoSpace;
69  PFN_WDFDEVICEGETHARDWAREREGISTERMAPPEDADDRESS pfnWdfDeviceGetHardwareRegisterMappedAddress;
70  PFN_WDFDEVICEREADFROMHARDWARE pfnWdfDeviceReadFromHardware;
71  PFN_WDFDEVICEWRITETOHARDWARE pfnWdfDeviceWriteToHardware;
72  PFN_WDFDEVICEASSIGNINTERFACEPROPERTY pfnWdfDeviceAssignInterfaceProperty;
73  PFN_WDFDEVICEALLOCANDQUERYINTERFACEPROPERTY pfnWdfDeviceAllocAndQueryInterfaceProperty;
74  PFN_WDFDEVICEQUERYINTERFACEPROPERTY pfnWdfDeviceQueryInterfaceProperty;
75  PFN_WDFDEVICEGETDEVICESTACKIOTYPE pfnWdfDeviceGetDeviceStackIoType;
76  PFN_WDFDEVICEQUERYPROPERTYEX pfnWdfDeviceQueryPropertyEx;
77  PFN_WDFDEVICEALLOCANDQUERYPROPERTYEX pfnWdfDeviceAllocAndQueryPropertyEx;
78  PFN_WDFDEVICEASSIGNPROPERTY pfnWdfDeviceAssignProperty;
79  PFN_WDFDRIVERCREATE pfnWdfDriverCreate;
80  PFN_WDFDRIVERGETREGISTRYPATH pfnWdfDriverGetRegistryPath;
81  PFN_WDFDRIVEROPENPARAMETERSREGISTRYKEY pfnWdfDriverOpenParametersRegistryKey;
82  PFN_WDFDRIVERRETRIEVEVERSIONSTRING pfnWdfDriverRetrieveVersionString;
83  PFN_WDFDRIVERISVERSIONAVAILABLE pfnWdfDriverIsVersionAvailable;
84  PFN_WDFFDOINITOPENREGISTRYKEY pfnWdfFdoInitOpenRegistryKey;
85  PFN_WDFFDOINITQUERYPROPERTY pfnWdfFdoInitQueryProperty;
86  PFN_WDFFDOINITALLOCANDQUERYPROPERTY pfnWdfFdoInitAllocAndQueryProperty;
87  PFN_WDFFDOINITQUERYPROPERTYEX pfnWdfFdoInitQueryPropertyEx;
88  PFN_WDFFDOINITALLOCANDQUERYPROPERTYEX pfnWdfFdoInitAllocAndQueryPropertyEx;
89  PFN_WDFFDOINITSETFILTER pfnWdfFdoInitSetFilter;
90  PFN_WDFFILEOBJECTGETFILENAME pfnWdfFileObjectGetFileName;
91  PFN_WDFFILEOBJECTGETDEVICE pfnWdfFileObjectGetDevice;
92  PFN_WDFFILEOBJECTGETINITIATORPROCESSID pfnWdfFileObjectGetInitiatorProcessId;
93  PFN_WDFFILEOBJECTGETRELATEDFILEOBJECT pfnWdfFileObjectGetRelatedFileObject;
94  PFN_WDFINTERRUPTCREATE pfnWdfInterruptCreate;
97  PFN_WDFINTERRUPTSYNCHRONIZE pfnWdfInterruptSynchronize;
98  PFN_WDFINTERRUPTACQUIRELOCK pfnWdfInterruptAcquireLock;
99  PFN_WDFINTERRUPTRELEASELOCK pfnWdfInterruptReleaseLock;
100  PFN_WDFINTERRUPTENABLE pfnWdfInterruptEnable;
101  PFN_WDFINTERRUPTDISABLE pfnWdfInterruptDisable;
102  PFN_WDFINTERRUPTGETINFO pfnWdfInterruptGetInfo;
103  PFN_WDFINTERRUPTSETPOLICY pfnWdfInterruptSetPolicy;
104  PFN_WDFINTERRUPTSETEXTENDEDPOLICY pfnWdfInterruptSetExtendedPolicy;
106  PFN_WDFINTERRUPTTRYTOACQUIRELOCK pfnWdfInterruptTryToAcquireLock;
107  PFN_WDFIOQUEUECREATE pfnWdfIoQueueCreate;
108  PFN_WDFIOQUEUEGETSTATE pfnWdfIoQueueGetState;
109  PFN_WDFIOQUEUESTART pfnWdfIoQueueStart;
110  PFN_WDFIOQUEUESTOP pfnWdfIoQueueStop;
111  PFN_WDFIOQUEUESTOPSYNCHRONOUSLY pfnWdfIoQueueStopSynchronously;
112  PFN_WDFIOQUEUEGETDEVICE pfnWdfIoQueueGetDevice;
113  PFN_WDFIOQUEUERETRIEVENEXTREQUEST pfnWdfIoQueueRetrieveNextRequest;
114  PFN_WDFIOQUEUERETRIEVEREQUESTBYFILEOBJECT pfnWdfIoQueueRetrieveRequestByFileObject;
115  PFN_WDFIOQUEUEFINDREQUEST pfnWdfIoQueueFindRequest;
116  PFN_WDFIOQUEUERETRIEVEFOUNDREQUEST pfnWdfIoQueueRetrieveFoundRequest;
117  PFN_WDFIOQUEUEDRAINSYNCHRONOUSLY pfnWdfIoQueueDrainSynchronously;
118  PFN_WDFIOQUEUEDRAIN pfnWdfIoQueueDrain;
119  PFN_WDFIOQUEUEPURGESYNCHRONOUSLY pfnWdfIoQueuePurgeSynchronously;
120  PFN_WDFIOQUEUEPURGE pfnWdfIoQueuePurge;
121  PFN_WDFIOQUEUEREADYNOTIFY pfnWdfIoQueueReadyNotify;
122  PFN_WDFIOQUEUESTOPANDPURGE pfnWdfIoQueueStopAndPurge;
123  PFN_WDFIOQUEUESTOPANDPURGESYNCHRONOUSLY pfnWdfIoQueueStopAndPurgeSynchronously;
124  PFN_WDFIOTARGETCREATE pfnWdfIoTargetCreate;
125  PFN_WDFIOTARGETOPEN pfnWdfIoTargetOpen;
126  PFN_WDFIOTARGETCLOSEFORQUERYREMOVE pfnWdfIoTargetCloseForQueryRemove;
127  PFN_WDFIOTARGETCLOSE pfnWdfIoTargetClose;
128  PFN_WDFIOTARGETSTART pfnWdfIoTargetStart;
129  PFN_WDFIOTARGETSTOP pfnWdfIoTargetStop;
130  PFN_WDFIOTARGETPURGE pfnWdfIoTargetPurge;
131  PFN_WDFIOTARGETGETSTATE pfnWdfIoTargetGetState;
132  PFN_WDFIOTARGETGETDEVICE pfnWdfIoTargetGetDevice;
133  PFN_WDFIOTARGETSENDREADSYNCHRONOUSLY pfnWdfIoTargetSendReadSynchronously;
134  PFN_WDFIOTARGETFORMATREQUESTFORREAD pfnWdfIoTargetFormatRequestForRead;
135  PFN_WDFIOTARGETSENDWRITESYNCHRONOUSLY pfnWdfIoTargetSendWriteSynchronously;
136  PFN_WDFIOTARGETFORMATREQUESTFORWRITE pfnWdfIoTargetFormatRequestForWrite;
137  PFN_WDFIOTARGETSENDIOCTLSYNCHRONOUSLY pfnWdfIoTargetSendIoctlSynchronously;
138  PFN_WDFIOTARGETFORMATREQUESTFORIOCTL pfnWdfIoTargetFormatRequestForIoctl;
139  PFN_WDFMEMORYCREATE pfnWdfMemoryCreate;
140  PFN_WDFMEMORYCREATEPREALLOCATED pfnWdfMemoryCreatePreallocated;
141  PFN_WDFMEMORYGETBUFFER pfnWdfMemoryGetBuffer;
142  PFN_WDFMEMORYASSIGNBUFFER pfnWdfMemoryAssignBuffer;
143  PFN_WDFMEMORYCOPYTOBUFFER pfnWdfMemoryCopyToBuffer;
144  PFN_WDFMEMORYCOPYFROMBUFFER pfnWdfMemoryCopyFromBuffer;
150  PFN_WDFOBJECTCREATE pfnWdfObjectCreate;
151  PFN_WDFOBJECTDELETE pfnWdfObjectDelete;
152  PFN_WDFOBJECTQUERY pfnWdfObjectQuery;
153  PFN_WDFREGISTRYOPENKEY pfnWdfRegistryOpenKey;
154  PFN_WDFREGISTRYCREATEKEY pfnWdfRegistryCreateKey;
155  PFN_WDFREGISTRYCLOSE pfnWdfRegistryClose;
156  PFN_WDFREGISTRYREMOVEKEY pfnWdfRegistryRemoveKey;
157  PFN_WDFREGISTRYREMOVEVALUE pfnWdfRegistryRemoveValue;
158  PFN_WDFREGISTRYQUERYVALUE pfnWdfRegistryQueryValue;
159  PFN_WDFREGISTRYQUERYMEMORY pfnWdfRegistryQueryMemory;
160  PFN_WDFREGISTRYQUERYMULTISTRING pfnWdfRegistryQueryMultiString;
161  PFN_WDFREGISTRYQUERYUNICODESTRING pfnWdfRegistryQueryUnicodeString;
162  PFN_WDFREGISTRYQUERYSTRING pfnWdfRegistryQueryString;
163  PFN_WDFREGISTRYQUERYULONG pfnWdfRegistryQueryULong;
164  PFN_WDFREGISTRYASSIGNVALUE pfnWdfRegistryAssignValue;
165  PFN_WDFREGISTRYASSIGNMEMORY pfnWdfRegistryAssignMemory;
166  PFN_WDFREGISTRYASSIGNMULTISTRING pfnWdfRegistryAssignMultiString;
167  PFN_WDFREGISTRYASSIGNUNICODESTRING pfnWdfRegistryAssignUnicodeString;
168  PFN_WDFREGISTRYASSIGNSTRING pfnWdfRegistryAssignString;
169  PFN_WDFREGISTRYASSIGNULONG pfnWdfRegistryAssignULong;
170  PFN_WDFREQUESTCREATE pfnWdfRequestCreate;
171  PFN_WDFREQUESTREUSE pfnWdfRequestReuse;
172  PFN_WDFREQUESTCHANGETARGET pfnWdfRequestChangeTarget;
173  PFN_WDFREQUESTFORMATREQUESTUSINGCURRENTTYPE pfnWdfRequestFormatRequestUsingCurrentType;
175  PFN_WDFREQUESTGETSTATUS pfnWdfRequestGetStatus;
176  PFN_WDFREQUESTMARKCANCELABLE pfnWdfRequestMarkCancelable;
177  PFN_WDFREQUESTMARKCANCELABLEEX pfnWdfRequestMarkCancelableEx;
178  PFN_WDFREQUESTUNMARKCANCELABLE pfnWdfRequestUnmarkCancelable;
179  PFN_WDFREQUESTISCANCELED pfnWdfRequestIsCanceled;
180  PFN_WDFREQUESTCANCELSENTREQUEST pfnWdfRequestCancelSentRequest;
181  PFN_WDFREQUESTISFROM32BITPROCESS pfnWdfRequestIsFrom32BitProcess;
182  PFN_WDFREQUESTSETCOMPLETIONROUTINE pfnWdfRequestSetCompletionRoutine;
183  PFN_WDFREQUESTGETCOMPLETIONPARAMS pfnWdfRequestGetCompletionParams;
184  PFN_WDFREQUESTALLOCATETIMER pfnWdfRequestAllocateTimer;
185  PFN_WDFREQUESTCOMPLETE pfnWdfRequestComplete;
186  PFN_WDFREQUESTCOMPLETEWITHINFORMATION pfnWdfRequestCompleteWithInformation;
187  PFN_WDFREQUESTGETPARAMETERS pfnWdfRequestGetParameters;
188  PFN_WDFREQUESTRETRIEVEINPUTMEMORY pfnWdfRequestRetrieveInputMemory;
189  PFN_WDFREQUESTRETRIEVEOUTPUTMEMORY pfnWdfRequestRetrieveOutputMemory;
190  PFN_WDFREQUESTRETRIEVEINPUTBUFFER pfnWdfRequestRetrieveInputBuffer;
191  PFN_WDFREQUESTRETRIEVEOUTPUTBUFFER pfnWdfRequestRetrieveOutputBuffer;
192  PFN_WDFREQUESTSETINFORMATION pfnWdfRequestSetInformation;
193  PFN_WDFREQUESTGETINFORMATION pfnWdfRequestGetInformation;
194  PFN_WDFREQUESTGETFILEOBJECT pfnWdfRequestGetFileObject;
195  PFN_WDFREQUESTGETREQUESTORMODE pfnWdfRequestGetRequestorMode;
196  PFN_WDFREQUESTFORWARDTOIOQUEUE pfnWdfRequestForwardToIoQueue;
197  PFN_WDFREQUESTGETIOQUEUE pfnWdfRequestGetIoQueue;
198  PFN_WDFREQUESTREQUEUE pfnWdfRequestRequeue;
199  PFN_WDFREQUESTSTOPACKNOWLEDGE pfnWdfRequestStopAcknowledge;
200  PFN_WDFREQUESTIMPERSONATE pfnWdfRequestImpersonate;
201  PFN_WDFREQUESTGETREQUESTORPROCESSID pfnWdfRequestGetRequestorProcessId;
202  PFN_WDFREQUESTISFROMUSERMODEDRIVER pfnWdfRequestIsFromUserModeDriver;
203  PFN_WDFREQUESTSETUSERMODEDRIVERINITIATEDIO pfnWdfRequestSetUserModeDriverInitiatedIo;
204  PFN_WDFREQUESTGETUSERMODEDRIVERINITIATEDIO pfnWdfRequestGetUserModeDriverInitiatedIo;
205  PFN_WDFREQUESTSETACTIVITYID pfnWdfRequestSetActivityId;
206  PFN_WDFREQUESTRETRIEVEACTIVITYID pfnWdfRequestRetrieveActivityId;
207  PFN_WDFREQUESTGETEFFECTIVEIOTYPE pfnWdfRequestGetEffectiveIoType;
208  PFN_WDFCMRESOURCELISTGETCOUNT pfnWdfCmResourceListGetCount;
209  PFN_WDFCMRESOURCELISTGETDESCRIPTOR pfnWdfCmResourceListGetDescriptor;
210  PFN_WDFSTRINGCREATE pfnWdfStringCreate;
211  PFN_WDFSTRINGGETUNICODESTRING pfnWdfStringGetUnicodeString;
212  PFN_WDFOBJECTACQUIRELOCK pfnWdfObjectAcquireLock;
213  PFN_WDFOBJECTRELEASELOCK pfnWdfObjectReleaseLock;
214  PFN_WDFWAITLOCKCREATE pfnWdfWaitLockCreate;
216  PFN_WDFWAITLOCKRELEASE pfnWdfWaitLockRelease;
217  PFN_WDFSPINLOCKCREATE pfnWdfSpinLockCreate;
218  PFN_WDFSPINLOCKACQUIRE pfnWdfSpinLockAcquire;
219  PFN_WDFSPINLOCKRELEASE pfnWdfSpinLockRelease;
220  PFN_WDFTIMERCREATE pfnWdfTimerCreate;
221  PFN_WDFTIMERSTART pfnWdfTimerStart;
222  PFN_WDFTIMERSTOP pfnWdfTimerStop;
223  PFN_WDFTIMERGETPARENTOBJECT pfnWdfTimerGetParentObject;
224  PFN_WDFUSBTARGETDEVICECREATE pfnWdfUsbTargetDeviceCreate;
225  PFN_WDFUSBTARGETDEVICECREATEWITHPARAMETERS pfnWdfUsbTargetDeviceCreateWithParameters;
226  PFN_WDFUSBTARGETDEVICERETRIEVEINFORMATION pfnWdfUsbTargetDeviceRetrieveInformation;
227  PFN_WDFUSBTARGETDEVICEGETDEVICEDESCRIPTOR pfnWdfUsbTargetDeviceGetDeviceDescriptor;
228  PFN_WDFUSBTARGETDEVICERETRIEVECONFIGDESCRIPTOR pfnWdfUsbTargetDeviceRetrieveConfigDescriptor;
229  PFN_WDFUSBTARGETDEVICEQUERYSTRING pfnWdfUsbTargetDeviceQueryString;
230  PFN_WDFUSBTARGETDEVICEALLOCANDQUERYSTRING pfnWdfUsbTargetDeviceAllocAndQueryString;
231  PFN_WDFUSBTARGETDEVICEFORMATREQUESTFORSTRING pfnWdfUsbTargetDeviceFormatRequestForString;
232  PFN_WDFUSBTARGETDEVICEGETNUMINTERFACES pfnWdfUsbTargetDeviceGetNumInterfaces;
233  PFN_WDFUSBTARGETDEVICESELECTCONFIG pfnWdfUsbTargetDeviceSelectConfig;
234  PFN_WDFUSBTARGETDEVICESENDCONTROLTRANSFERSYNCHRONOUSLY pfnWdfUsbTargetDeviceSendControlTransferSynchronously;
235  PFN_WDFUSBTARGETDEVICEFORMATREQUESTFORCONTROLTRANSFER pfnWdfUsbTargetDeviceFormatRequestForControlTransfer;
236  PFN_WDFUSBTARGETDEVICERESETPORTSYNCHRONOUSLY pfnWdfUsbTargetDeviceResetPortSynchronously;
237  PFN_WDFUSBTARGETDEVICEQUERYUSBCAPABILITY pfnWdfUsbTargetDeviceQueryUsbCapability;
238  PFN_WDFUSBTARGETPIPEGETINFORMATION pfnWdfUsbTargetPipeGetInformation;
239  PFN_WDFUSBTARGETPIPEISINENDPOINT pfnWdfUsbTargetPipeIsInEndpoint;
240  PFN_WDFUSBTARGETPIPEISOUTENDPOINT pfnWdfUsbTargetPipeIsOutEndpoint;
241  PFN_WDFUSBTARGETPIPEGETTYPE pfnWdfUsbTargetPipeGetType;
242  PFN_WDFUSBTARGETPIPESETNOMAXIMUMPACKETSIZECHECK pfnWdfUsbTargetPipeSetNoMaximumPacketSizeCheck;
243  PFN_WDFUSBTARGETPIPEWRITESYNCHRONOUSLY pfnWdfUsbTargetPipeWriteSynchronously;
244  PFN_WDFUSBTARGETPIPEFORMATREQUESTFORWRITE pfnWdfUsbTargetPipeFormatRequestForWrite;
245  PFN_WDFUSBTARGETPIPEREADSYNCHRONOUSLY pfnWdfUsbTargetPipeReadSynchronously;
246  PFN_WDFUSBTARGETPIPEFORMATREQUESTFORREAD pfnWdfUsbTargetPipeFormatRequestForRead;
247  PFN_WDFUSBTARGETPIPECONFIGCONTINUOUSREADER pfnWdfUsbTargetPipeConfigContinuousReader;
248  PFN_WDFUSBTARGETPIPEABORTSYNCHRONOUSLY pfnWdfUsbTargetPipeAbortSynchronously;
249  PFN_WDFUSBTARGETPIPEFORMATREQUESTFORABORT pfnWdfUsbTargetPipeFormatRequestForAbort;
250  PFN_WDFUSBTARGETPIPERESETSYNCHRONOUSLY pfnWdfUsbTargetPipeResetSynchronously;
251  PFN_WDFUSBTARGETPIPEFORMATREQUESTFORRESET pfnWdfUsbTargetPipeFormatRequestForReset;
252  PFN_WDFUSBINTERFACEGETINTERFACENUMBER pfnWdfUsbInterfaceGetInterfaceNumber;
253  PFN_WDFUSBINTERFACEGETNUMENDPOINTS pfnWdfUsbInterfaceGetNumEndpoints;
254  PFN_WDFUSBINTERFACEGETDESCRIPTOR pfnWdfUsbInterfaceGetDescriptor;
255  PFN_WDFUSBINTERFACEGETNUMSETTINGS pfnWdfUsbInterfaceGetNumSettings;
256  PFN_WDFUSBINTERFACESELECTSETTING pfnWdfUsbInterfaceSelectSetting;
257  PFN_WDFUSBINTERFACEGETENDPOINTINFORMATION pfnWdfUsbInterfaceGetEndpointInformation;
258  PFN_WDFUSBTARGETDEVICEGETINTERFACE pfnWdfUsbTargetDeviceGetInterface;
259  PFN_WDFUSBINTERFACEGETCONFIGUREDSETTINGINDEX pfnWdfUsbInterfaceGetConfiguredSettingIndex;
260  PFN_WDFUSBINTERFACEGETNUMCONFIGUREDPIPES pfnWdfUsbInterfaceGetNumConfiguredPipes;
261  PFN_WDFUSBINTERFACEGETCONFIGUREDPIPE pfnWdfUsbInterfaceGetConfiguredPipe;
265  PFN_WDFWORKITEMCREATE pfnWdfWorkItemCreate;
266  PFN_WDFWORKITEMENQUEUE pfnWdfWorkItemEnqueue;
267  PFN_WDFWORKITEMGETPARENTOBJECT pfnWdfWorkItemGetParentObject;
268  PFN_WDFWORKITEMFLUSH pfnWdfWorkItemFlush;
269  PFN_WDFREGISTRYWDMGETHANDLE pfnWdfRegistryWdmGetHandle;
270  PFN_WDFDEVICESTOPIDLEACTUAL pfnWdfDeviceStopIdleActual;
271  PFN_WDFDEVICERESUMEIDLEACTUAL pfnWdfDeviceResumeIdleActual;
272  PFN_WDFDEVICEINITENABLEHIDINTERFACE pfnWdfDeviceInitEnableHidInterface;
273  PFN_WDFDEVICEHIDNOTIFYPRESENCE pfnWdfDeviceHidNotifyPresence;
277  PFN_WDFDEVICEOPENDEVICEMAPKEY pfnWdfDeviceOpenDevicemapKey;
278  PFN_WDFIOTARGETWDMGETTARGETFILEHANDLE pfnWdfIoTargetWdmGetTargetFileHandle;
279  PFN_WDFDEVICEWDMDISPATCHIRP pfnWdfDeviceWdmDispatchIrp;
280  PFN_WDFDEVICEWDMDISPATCHIRPTOIOQUEUE pfnWdfDeviceWdmDispatchIrpToIoQueue;
281  PFN_WDFDEVICECONFIGUREWDMIRPDISPATCHCALLBACK pfnWdfDeviceConfigureWdmIrpDispatchCallback;
282 
284 
285 
286 typedef struct _WDFVERSION {
287 
288  ULONG Size;
291 
293 
294 
297 WDFAPI
298 NTSTATUS
299 WDFEXPORT(WdfCollectionCreate)(
300  _In_
302  _In_opt_
304  _Out_
305  WDFCOLLECTION* Collection
306  );
307 
309 WDFAPI
310 ULONG
311 WDFEXPORT(WdfCollectionGetCount)(
312  _In_
314  _In_
315  WDFCOLLECTION Collection
316  );
317 
320 WDFAPI
321 NTSTATUS
322 WDFEXPORT(WdfCollectionAdd)(
323  _In_
325  _In_
326  WDFCOLLECTION Collection,
327  _In_
329  );
330 
332 WDFAPI
333 VOID
334 WDFEXPORT(WdfCollectionRemove)(
335  _In_
337  _In_
338  WDFCOLLECTION Collection,
339  _In_
341  );
342 
344 WDFAPI
345 VOID
346 WDFEXPORT(WdfCollectionRemoveItem)(
347  _In_
349  _In_
350  WDFCOLLECTION Collection,
351  _In_
352  ULONG Index
353  );
354 
356 WDFAPI
357 WDFOBJECT
358 WDFEXPORT(WdfCollectionGetItem)(
359  _In_
361  _In_
362  WDFCOLLECTION Collection,
363  _In_
364  ULONG Index
365  );
366 
368 WDFAPI
369 WDFOBJECT
370 WDFEXPORT(WdfCollectionGetFirstItem)(
371  _In_
373  _In_
374  WDFCOLLECTION Collection
375  );
376 
378 WDFAPI
379 WDFOBJECT
380 WDFEXPORT(WdfCollectionGetLastItem)(
381  _In_
383  _In_
384  WDFCOLLECTION Collection
385  );
386 
389 WDFAPI
391 WDFEXPORT(WdfCxDeviceInitAllocate)(
392  _In_
394  _In_
396  );
397 
399 WDFAPI
400 VOID
401 WDFEXPORT(WdfCxDeviceInitSetRequestAttributes)(
402  _In_
404  _In_
406  _In_
408  );
409 
411 WDFAPI
412 VOID
413 WDFEXPORT(WdfCxDeviceInitSetFileObjectConfig)(
414  _In_
416  _In_
418  _In_
420  _In_opt_
422  );
423 
424 WDFAPI
425 VOID
427  _In_
429  _In_opt_
431  _In_
432  ULONG BugCheckCode,
433  _In_
434  ULONG_PTR BugCheckParameter1,
435  _In_
436  ULONG_PTR BugCheckParameter2,
437  _In_
438  ULONG_PTR BugCheckParameter3,
439  _In_
440  ULONG_PTR BugCheckParameter4
441  );
442 
444 WDFAPI
445 VOID
446 WDFEXPORT(WdfDeviceGetDeviceState)(
447  _In_
449  _In_
450  WDFDEVICE Device,
451  _Out_
453  );
454 
456 WDFAPI
457 VOID
458 WDFEXPORT(WdfDeviceSetDeviceState)(
459  _In_
461  _In_
462  WDFDEVICE Device,
463  _In_
465  );
466 
469 WDFAPI
470 NTSTATUS
471 WDFEXPORT(WdfDeviceWdmDispatchIrp)(
472  _In_
474  _In_
475  WDFDEVICE Device,
476  _In_
477  PIRP Irp,
478  _In_
480  );
481 
484 WDFAPI
485 NTSTATUS
486 WDFEXPORT(WdfDeviceWdmDispatchIrpToIoQueue)(
487  _In_
489  _In_
490  WDFDEVICE Device,
491  _In_
492  PIRP Irp,
493  _In_
494  WDFQUEUE Queue,
495  _In_
496  ULONG Flags
497  );
498 
500 WDFAPI
501 WDFDRIVER
502 WDFEXPORT(WdfDeviceGetDriver)(
503  _In_
505  _In_
506  WDFDEVICE Device
507  );
508 
510 WDFAPI
511 WDFIOTARGET
512 WDFEXPORT(WdfDeviceGetIoTarget)(
513  _In_
515  _In_
516  WDFDEVICE Device
517  );
518 
521 WDFAPI
522 NTSTATUS
523 WDFEXPORT(WdfDeviceAssignS0IdleSettings)(
524  _In_
526  _In_
527  WDFDEVICE Device,
528  _In_
530  );
531 
534 WDFAPI
535 NTSTATUS
536 WDFEXPORT(WdfDeviceAssignSxWakeSettings)(
537  _In_
539  _In_
540  WDFDEVICE Device,
541  _In_
543  );
544 
547 WDFAPI
548 NTSTATUS
549 WDFEXPORT(WdfDeviceOpenRegistryKey)(
550  _In_
552  _In_
553  WDFDEVICE Device,
554  _In_
556  _In_
558  _In_opt_
560  _Out_
561  WDFKEY* Key
562  );
563 
566 WDFAPI
567 NTSTATUS
568 WDFEXPORT(WdfDeviceOpenDevicemapKey)(
569  _In_
571  _In_
572  WDFDEVICE Device,
573  _In_
575  _In_
577  _In_opt_
579  _Out_
580  WDFKEY* Key
581  );
582 
584 WDFAPI
585 VOID
586 WDFEXPORT(WdfDeviceInitSetPnpPowerEventCallbacks)(
587  _In_
589  _In_
591  _In_
593  );
594 
596 WDFAPI
597 VOID
598 WDFEXPORT(WdfDeviceInitSetPowerPolicyEventCallbacks)(
599  _In_
601  _In_
603  _In_
605  );
606 
608 WDFAPI
609 VOID
610 WDFEXPORT(WdfDeviceInitSetPowerPolicyOwnership)(
611  _In_
613  _In_
615  _In_
617  );
618 
620 WDFAPI
621 VOID
622 WDFEXPORT(WdfDeviceInitSetIoType)(
623  _In_
625  _In_
627  _In_
629  );
630 
632 WDFAPI
633 VOID
634 WDFEXPORT(WdfDeviceInitSetFileObjectConfig)(
635  _In_
637  _In_
639  _In_
641  _In_opt_
643  );
644 
646 WDFAPI
647 VOID
648 WDFEXPORT(WdfDeviceInitSetRequestAttributes)(
649  _In_
651  _In_
653  _In_
655  );
656 
659 WDFAPI
660 NTSTATUS
661 WDFEXPORT(WdfDeviceCreate)(
662  _In_
664  _Inout_
666  _In_opt_
668  _Out_
669  WDFDEVICE* Device
670  );
671 
673 WDFAPI
674 VOID
675 WDFEXPORT(WdfDeviceSetStaticStopRemove)(
676  _In_
678  _In_
679  WDFDEVICE Device,
680  _In_
682  );
683 
686 WDFAPI
687 NTSTATUS
688 WDFEXPORT(WdfDeviceCreateDeviceInterface)(
689  _In_
691  _In_
692  WDFDEVICE Device,
693  _In_
695  _In_opt_
697  );
698 
700 WDFAPI
701 VOID
702 WDFEXPORT(WdfDeviceSetDeviceInterfaceState)(
703  _In_
705  _In_
706  WDFDEVICE Device,
707  _In_
709  _In_opt_
711  _In_
713  );
714 
717 WDFAPI
718 NTSTATUS
719 WDFEXPORT(WdfDeviceRetrieveDeviceInterfaceString)(
720  _In_
722  _In_
723  WDFDEVICE Device,
724  _In_
726  _In_opt_
728  _In_
729  WDFSTRING String
730  );
731 
734 WDFAPI
735 NTSTATUS
736 WDFEXPORT(WdfDeviceCreateSymbolicLink)(
737  _In_
739  _In_
740  WDFDEVICE Device,
741  _In_
743  );
744 
747 WDFAPI
748 NTSTATUS
749 WDFEXPORT(WdfDeviceQueryProperty)(
750  _In_
752  _In_
753  WDFDEVICE Device,
754  _In_
756  _In_
760  _Out_
762  );
763 
766 WDFAPI
767 NTSTATUS
768 WDFEXPORT(WdfDeviceAllocAndQueryProperty)(
769  _In_
771  _In_
772  WDFDEVICE Device,
773  _In_
775  _In_
778  _In_opt_
780  _Out_
781  WDFMEMORY* PropertyMemory
782  );
783 
785 WDFAPI
786 VOID
787 WDFEXPORT(WdfDeviceSetPnpCapabilities)(
788  _In_
790  _In_
791  WDFDEVICE Device,
792  _In_
794  );
795 
797 WDFAPI
798 VOID
799 WDFEXPORT(WdfDeviceSetPowerCapabilities)(
800  _In_
802  _In_
803  WDFDEVICE Device,
804  _In_
806  );
807 
809 WDFAPI
810 VOID
811 WDFEXPORT(WdfDeviceSetFailed)(
812  _In_
814  _In_
815  WDFDEVICE Device,
816  _In_
818  );
819 
823 WDFAPI
824 NTSTATUS
825 WDFEXPORT(WdfDeviceStopIdleNoTrack)(
826  _In_
828  _In_
829  WDFDEVICE Device,
830  _In_
832  );
833 
835 WDFAPI
836 VOID
837 WDFEXPORT(WdfDeviceResumeIdleNoTrack)(
838  _In_
840  _In_
841  WDFDEVICE Device
842  );
843 
847 WDFAPI
848 NTSTATUS
849 WDFEXPORT(WdfDeviceStopIdleActual)(
850  _In_
852  _In_
853  WDFDEVICE Device,
854  _In_
856  _In_opt_
857  PVOID Tag,
858  _In_
859  LONG Line,
860  _In_z_
861  PCHAR File
862  );
863 
865 WDFAPI
866 VOID
867 WDFEXPORT(WdfDeviceResumeIdleActual)(
868  _In_
870  _In_
871  WDFDEVICE Device,
872  _In_opt_
873  PVOID Tag,
874  _In_
875  LONG Line,
876  _In_z_
877  PCHAR File
878  );
879 
881 WDFAPI
882 WDFFILEOBJECT
883 WDFEXPORT(WdfDeviceGetFileObject)(
884  _In_
886  _In_
887  WDFDEVICE Device,
888  _In_
890  );
891 
893 WDFAPI
894 WDFQUEUE
895 WDFEXPORT(WdfDeviceGetDefaultQueue)(
896  _In_
898  _In_
899  WDFDEVICE Device
900  );
901 
904 WDFAPI
905 NTSTATUS
906 WDFEXPORT(WdfDeviceConfigureRequestDispatching)(
907  _In_
909  _In_
910  WDFDEVICE Device,
911  _In_
912  WDFQUEUE Queue,
913  _In_
916  );
917 
920 WDFAPI
921 NTSTATUS
922 WDFEXPORT(WdfDeviceConfigureWdmIrpDispatchCallback)(
923  _In_
925  _In_
926  WDFDEVICE Device,
927  _In_opt_
928  WDFDRIVER Driver,
929  _In_
931  _In_
933  _In_opt_
935  );
936 
938 WDFAPI
940 WDFEXPORT(WdfDeviceGetSystemPowerAction)(
941  _In_
943  _In_
944  WDFDEVICE Device
945  );
946 
948 WDFAPI
949 VOID
950 WDFEXPORT(WdfDeviceInitSetReleaseHardwareOrderOnFailure)(
951  _In_
953  _In_
955  _In_
957  );
958 
960 WDFAPI
961 VOID
962 WDFEXPORT(WdfDeviceInitSetIoTypeEx)(
963  _In_
965  _In_
967  _In_
969  );
970 
972 WDFAPI
973 NTSTATUS
974 WDFEXPORT(WdfDevicePostEvent)(
975  _In_
977  _In_
978  WDFDEVICE Device,
979  _In_
981  _In_
984  BYTE* Data,
985  _In_
987  );
988 
991 WDFAPI
992 NTSTATUS
993 WDFEXPORT(WdfDeviceMapIoSpace)(
994  _In_
996  _In_
997  WDFDEVICE Device,
998  _In_
1000  _In_
1002  _In_
1004  _Out_
1006  );
1007 
1009 WDFAPI
1010 VOID
1011 WDFEXPORT(WdfDeviceUnmapIoSpace)(
1012  _In_
1014  _In_
1015  WDFDEVICE Device,
1016  _In_
1018  _In_
1020  );
1021 
1023 WDFAPI
1024 PVOID
1025 WDFEXPORT(WdfDeviceGetHardwareRegisterMappedAddress)(
1026  _In_
1028  _In_
1029  WDFDEVICE Device,
1030  _In_
1032  );
1033 
1035 WDFAPI
1036 SIZE_T
1037 WDFEXPORT(WdfDeviceReadFromHardware)(
1038  _In_
1040  _In_
1041  WDFDEVICE Device,
1042  _In_
1043  WDF_DEVICE_HWACCESS_TARGET_TYPE Type,
1044  _In_
1045  WDF_DEVICE_HWACCESS_TARGET_SIZE Size,
1046  _In_
1049  PVOID Buffer,
1050  _In_opt_
1051  ULONG Count
1052  );
1053 
1055 WDFAPI
1056 VOID
1057 WDFEXPORT(WdfDeviceWriteToHardware)(
1058  _In_
1060  _In_
1061  WDFDEVICE Device,
1062  _In_
1063  WDF_DEVICE_HWACCESS_TARGET_TYPE Type,
1064  _In_
1065  WDF_DEVICE_HWACCESS_TARGET_SIZE Size,
1066  _In_
1068  _In_
1069  SIZE_T Value,
1071  PVOID Buffer,
1072  _In_opt_
1073  ULONG Count
1074  );
1075 
1077 WDFAPI
1078 NTSTATUS
1079 WDFEXPORT(WdfDeviceAssignInterfaceProperty)(
1080  _In_
1082  _In_
1083  WDFDEVICE Device,
1084  _In_
1085  PWDF_DEVICE_INTERFACE_PROPERTY_DATA PropertyData,
1086  _In_
1087  DEVPROPTYPE Type,
1088  _In_
1092  );
1093 
1095 WDFAPI
1096 NTSTATUS
1097 WDFEXPORT(WdfDeviceAllocAndQueryInterfaceProperty)(
1098  _In_
1100  _In_
1101  WDFDEVICE Device,
1102  _In_
1103  PWDF_DEVICE_INTERFACE_PROPERTY_DATA PropertyData,
1104  _In_
1106  _In_opt_
1108  _Out_
1109  WDFMEMORY* PropertyMemory,
1110  _Out_
1112  );
1113 
1115 WDFAPI
1116 NTSTATUS
1117 WDFEXPORT(WdfDeviceQueryInterfaceProperty)(
1118  _In_
1120  _In_
1121  WDFDEVICE Device,
1122  _In_
1123  PWDF_DEVICE_INTERFACE_PROPERTY_DATA PropertyData,
1124  _In_
1128  _Out_
1130  _Out_
1132  );
1133 
1135 WDFAPI
1136 VOID
1137 WDFEXPORT(WdfDeviceGetDeviceStackIoType)(
1138  _In_
1140  _In_
1141  WDFDEVICE Device,
1142  _Out_
1144  _Out_
1146  );
1147 
1150 WDFAPI
1151 NTSTATUS
1152 WDFEXPORT(WdfDeviceQueryPropertyEx)(
1153  _In_
1155  _In_
1156  WDFDEVICE Device,
1157  _In_
1159  _In_
1161  _Out_
1163  _Out_
1165  _Out_
1167  );
1168 
1171 WDFAPI
1172 NTSTATUS
1173 WDFEXPORT(WdfDeviceAllocAndQueryPropertyEx)(
1174  _In_
1176  _In_
1177  WDFDEVICE Device,
1178  _In_
1180  _In_
1183  _In_opt_
1185  _Out_
1186  WDFMEMORY* PropertyMemory,
1187  _Out_
1189  );
1190 
1193 WDFAPI
1194 NTSTATUS
1195 WDFEXPORT(WdfDeviceAssignProperty)(
1196  _In_
1198  _In_
1199  WDFDEVICE Device,
1200  _In_
1202  _In_
1203  DEVPROPTYPE Type,
1204  _In_
1205  ULONG Size,
1206  _In_opt_
1207  PVOID Data
1208  );
1209 
1211 WDFAPI
1212 WDFIOTARGET
1213 WDFEXPORT(WdfDeviceGetSelfIoTarget)(
1214  _In_
1216  _In_
1217  WDFDEVICE Device
1218  );
1219 
1221 WDFAPI
1222 VOID
1223 WDFEXPORT(WdfDeviceInitAllowSelfIoTarget)(
1224  _In_
1226  _In_
1228  );
1229 
1232 WDFAPI
1233 NTSTATUS
1234 WDFEXPORT(WdfDriverCreate)(
1235  _In_
1237  _In_
1239  _In_
1241  _In_opt_
1243  _In_
1245  _Out_opt_
1246  WDFDRIVER* Driver
1247  );
1248 
1250 WDFAPI
1251 PWSTR
1252 WDFEXPORT(WdfDriverGetRegistryPath)(
1253  _In_
1255  _In_
1256  WDFDRIVER Driver
1257  );
1258 
1261 WDFAPI
1262 NTSTATUS
1263 WDFEXPORT(WdfDriverOpenParametersRegistryKey)(
1264  _In_
1266  _In_
1267  WDFDRIVER Driver,
1268  _In_
1270  _In_opt_
1272  _Out_
1273  WDFKEY* Key
1274  );
1275 
1278 WDFAPI
1279 NTSTATUS
1280 WDFEXPORT(WdfDriverRetrieveVersionString)(
1281  _In_
1283  _In_
1284  WDFDRIVER Driver,
1285  _In_
1286  WDFSTRING String
1287  );
1288 
1291 WDFAPI
1292 BOOLEAN
1293 WDFEXPORT(WdfDriverIsVersionAvailable)(
1294  _In_
1296  _In_
1297  WDFDRIVER Driver,
1298  _In_
1300  );
1301 
1304 WDFAPI
1305 NTSTATUS
1306 WDFEXPORT(WdfFdoInitOpenRegistryKey)(
1307  _In_
1309  _In_
1311  _In_
1313  _In_
1315  _In_opt_
1317  _Out_
1318  WDFKEY* Key
1319  );
1320 
1323 WDFAPI
1324 NTSTATUS
1325 WDFEXPORT(WdfFdoInitQueryProperty)(
1326  _In_
1328  _In_
1330  _In_
1332  _In_
1336  _Out_
1338  );
1339 
1342 WDFAPI
1343 NTSTATUS
1344 WDFEXPORT(WdfFdoInitAllocAndQueryProperty)(
1345  _In_
1347  _In_
1349  _In_
1351  _In_
1354  _In_opt_
1356  _Out_
1357  WDFMEMORY* PropertyMemory
1358  );
1359 
1362 WDFAPI
1363 NTSTATUS
1364 WDFEXPORT(WdfFdoInitQueryPropertyEx)(
1365  _In_
1367  _In_
1369  _In_
1371  _In_
1373  _Out_
1375  _Out_
1377  _Out_
1379  );
1380 
1383 WDFAPI
1384 NTSTATUS
1385 WDFEXPORT(WdfFdoInitAllocAndQueryPropertyEx)(
1386  _In_
1388  _In_
1390  _In_
1392  _In_
1395  _In_opt_
1397  _Out_
1398  WDFMEMORY* PropertyMemory,
1399  _Out_
1401  );
1402 
1404 WDFAPI
1405 VOID
1406 WDFEXPORT(WdfFdoInitSetFilter)(
1407  _In_
1409  _In_
1411  );
1412 
1414 WDFAPI
1416 WDFEXPORT(WdfFileObjectGetFileName)(
1417  _In_
1419  _In_
1420  WDFFILEOBJECT FileObject
1421  );
1422 
1424 WDFAPI
1425 WDFDEVICE
1426 WDFEXPORT(WdfFileObjectGetDevice)(
1427  _In_
1429  _In_
1430  WDFFILEOBJECT FileObject
1431  );
1432 
1434 WDFAPI
1435 ULONG
1436 WDFEXPORT(WdfFileObjectGetInitiatorProcessId)(
1437  _In_
1439  _In_
1440  WDFFILEOBJECT FileObject
1441  );
1442 
1444 WDFAPI
1445 WDFFILEOBJECT
1446 WDFEXPORT(WdfFileObjectGetRelatedFileObject)(
1447  _In_
1449  _In_
1450  WDFFILEOBJECT FileObject
1451  );
1452 
1454 WDFAPI
1455 VOID
1456 WDFEXPORT(WdfDeviceInitEnableHidInterface)(
1457  _In_
1459  _In_
1461  );
1462 
1465 WDFAPI
1466 NTSTATUS
1467 WDFEXPORT(WdfDeviceHidNotifyPresence)(
1468  _In_
1470  _In_
1471  WDFDEVICE Device,
1472  _In_
1474  );
1475 
1478 WDFAPI
1479 NTSTATUS
1480 WDFEXPORT(WdfInterruptCreate)(
1481  _In_
1483  _In_
1484  WDFDEVICE Device,
1485  _In_
1487  _In_opt_
1489  _Out_
1490  WDFINTERRUPT* Interrupt
1491  );
1492 
1493 WDFAPI
1494 BOOLEAN
1496  _In_
1498  _In_
1499  WDFINTERRUPT Interrupt
1500  );
1501 
1502 WDFAPI
1503 BOOLEAN
1505  _In_
1507  _In_
1508  WDFINTERRUPT Interrupt
1509  );
1510 
1512 WDFAPI
1513 BOOLEAN
1514 WDFEXPORT(WdfInterruptSynchronize)(
1515  _In_
1517  _In_
1518  WDFINTERRUPT Interrupt,
1519  _In_
1521  _In_
1523  );
1524 
1526 WDFAPI
1527 VOID
1528 WDFEXPORT(WdfInterruptAcquireLock)(
1529  _In_
1531  _In_
1532  _Requires_lock_not_held_(_Curr_)
1533  _Acquires_lock_(_Curr_)
1534  WDFINTERRUPT Interrupt
1535  );
1536 
1538 WDFAPI
1539 VOID
1540 WDFEXPORT(WdfInterruptReleaseLock)(
1541  _In_
1543  _In_
1544  _Requires_lock_held_(_Curr_)
1545  _Releases_lock_(_Curr_)
1546  WDFINTERRUPT Interrupt
1547  );
1548 
1550 WDFAPI
1551 VOID
1552 WDFEXPORT(WdfInterruptEnable)(
1553  _In_
1555  _In_
1556  WDFINTERRUPT Interrupt
1557  );
1558 
1560 WDFAPI
1561 VOID
1562 WDFEXPORT(WdfInterruptDisable)(
1563  _In_
1565  _In_
1566  WDFINTERRUPT Interrupt
1567  );
1568 
1570 WDFAPI
1571 VOID
1572 WDFEXPORT(WdfInterruptGetInfo)(
1573  _In_
1575  _In_
1576  WDFINTERRUPT Interrupt,
1577  _Out_
1579  );
1580 
1582 WDFAPI
1583 VOID
1584 WDFEXPORT(WdfInterruptSetPolicy)(
1585  _In_
1587  _In_
1588  WDFINTERRUPT Interrupt,
1589  _In_
1591  _In_
1593  _In_
1595  );
1596 
1598 WDFAPI
1599 VOID
1600 WDFEXPORT(WdfInterruptSetExtendedPolicy)(
1601  _In_
1603  _In_
1604  WDFINTERRUPT Interrupt,
1605  _In_
1607  );
1608 
1609 WDFAPI
1610 WDFDEVICE
1612  _In_
1614  _In_
1615  WDFINTERRUPT Interrupt
1616  );
1617 
1619 _Post_satisfies_(return == 1 || return == 0)
1621 WDFAPI
1622 BOOLEAN
1623 WDFEXPORT(WdfInterruptTryToAcquireLock)(
1624  _In_
1626  _In_
1627  _Requires_lock_not_held_(_Curr_)
1628  _When_(return!=0, _Acquires_lock_(_Curr_))
1629  WDFINTERRUPT Interrupt
1630  );
1631 
1634 WDFAPI
1635 NTSTATUS
1636 WDFEXPORT(WdfIoQueueCreate)(
1637  _In_
1639  _In_
1640  WDFDEVICE Device,
1641  _In_
1643  _In_opt_
1645  _Out_opt_
1646  WDFQUEUE* Queue
1647  );
1648 
1650 WDFAPI
1652 WDFEXPORT(WdfIoQueueGetState)(
1653  _In_
1655  _In_
1656  WDFQUEUE Queue,
1657  _Out_opt_
1659  _Out_opt_
1661  );
1662 
1664 WDFAPI
1665 VOID
1666 WDFEXPORT(WdfIoQueueStart)(
1667  _In_
1669  _In_
1670  WDFQUEUE Queue
1671  );
1672 
1674 WDFAPI
1675 VOID
1676 WDFEXPORT(WdfIoQueueStop)(
1677  _In_
1679  _In_
1680  WDFQUEUE Queue,
1681  _When_(Context != 0, _In_)
1682  _When_(Context == 0, _In_opt_)
1684  _When_(StopComplete != 0, _In_)
1687  );
1688 
1690 WDFAPI
1691 VOID
1692 WDFEXPORT(WdfIoQueueStopSynchronously)(
1693  _In_
1695  _In_
1696  WDFQUEUE Queue
1697  );
1698 
1700 WDFAPI
1701 WDFDEVICE
1702 WDFEXPORT(WdfIoQueueGetDevice)(
1703  _In_
1705  _In_
1706  WDFQUEUE Queue
1707  );
1708 
1711 WDFAPI
1712 NTSTATUS
1713 WDFEXPORT(WdfIoQueueRetrieveNextRequest)(
1714  _In_
1716  _In_
1717  WDFQUEUE Queue,
1718  _Out_
1719  WDFREQUEST* OutRequest
1720  );
1721 
1724 WDFAPI
1725 NTSTATUS
1726 WDFEXPORT(WdfIoQueueRetrieveRequestByFileObject)(
1727  _In_
1729  _In_
1730  WDFQUEUE Queue,
1731  _In_
1732  WDFFILEOBJECT FileObject,
1733  _Out_
1734  WDFREQUEST* OutRequest
1735  );
1736 
1739 WDFAPI
1740 NTSTATUS
1741 WDFEXPORT(WdfIoQueueFindRequest)(
1742  _In_
1744  _In_
1745  WDFQUEUE Queue,
1746  _In_opt_
1747  WDFREQUEST FoundRequest,
1748  _In_opt_
1749  WDFFILEOBJECT FileObject,
1750  _Inout_opt_
1752  _Out_
1753  WDFREQUEST* OutRequest
1754  );
1755 
1758 WDFAPI
1759 NTSTATUS
1760 WDFEXPORT(WdfIoQueueRetrieveFoundRequest)(
1761  _In_
1763  _In_
1764  WDFQUEUE Queue,
1765  _In_
1766  WDFREQUEST FoundRequest,
1767  _Out_
1768  WDFREQUEST* OutRequest
1769  );
1770 
1772 WDFAPI
1773 VOID
1774 WDFEXPORT(WdfIoQueueDrainSynchronously)(
1775  _In_
1777  _In_
1778  WDFQUEUE Queue
1779  );
1780 
1782 WDFAPI
1783 VOID
1784 WDFEXPORT(WdfIoQueueDrain)(
1785  _In_
1787  _In_
1788  WDFQUEUE Queue,
1789  _When_(Context != 0, _In_)
1790  _When_(Context == 0, _In_opt_)
1792  _When_(DrainComplete != 0, _In_)
1795  );
1796 
1798 WDFAPI
1799 VOID
1800 WDFEXPORT(WdfIoQueuePurgeSynchronously)(
1801  _In_
1803  _In_
1804  WDFQUEUE Queue
1805  );
1806 
1808 WDFAPI
1809 VOID
1810 WDFEXPORT(WdfIoQueuePurge)(
1811  _In_
1813  _In_
1814  WDFQUEUE Queue,
1815  _When_(Context != 0, _In_)
1816  _When_(Context == 0, _In_opt_)
1818  _When_(PurgeComplete != 0, _In_)
1821  );
1822 
1825 WDFAPI
1826 NTSTATUS
1827 WDFEXPORT(WdfIoQueueReadyNotify)(
1828  _In_
1830  _In_
1831  WDFQUEUE Queue,
1832  _In_opt_
1834  _In_opt_
1836  );
1837 
1839 WDFAPI
1840 VOID
1841 WDFEXPORT(WdfIoQueueStopAndPurge)(
1842  _In_
1844  _In_
1845  WDFQUEUE Queue,
1846  _When_(Context != 0, _In_)
1847  _When_(Context == 0, _In_opt_)
1852  );
1853 
1855 WDFAPI
1856 VOID
1857 WDFEXPORT(WdfIoQueueStopAndPurgeSynchronously)(
1858  _In_
1860  _In_
1861  WDFQUEUE Queue
1862  );
1863 
1866 WDFAPI
1867 NTSTATUS
1868 WDFEXPORT(WdfIoTargetCreate)(
1869  _In_
1871  _In_
1872  WDFDEVICE Device,
1873  _In_opt_
1875  _Out_
1876  WDFIOTARGET* IoTarget
1877  );
1878 
1881 WDFAPI
1882 NTSTATUS
1883 WDFEXPORT(WdfIoTargetOpen)(
1884  _In_
1886  _In_
1887  WDFIOTARGET IoTarget,
1888  _In_
1890  );
1891 
1893 WDFAPI
1894 VOID
1895 WDFEXPORT(WdfIoTargetCloseForQueryRemove)(
1896  _In_
1898  _In_
1899  WDFIOTARGET IoTarget
1900  );
1901 
1903 WDFAPI
1904 VOID
1905 WDFEXPORT(WdfIoTargetClose)(
1906  _In_
1908  _In_
1909  WDFIOTARGET IoTarget
1910  );
1911 
1914 WDFAPI
1915 NTSTATUS
1916 WDFEXPORT(WdfIoTargetStart)(
1917  _In_
1919  _In_
1920  WDFIOTARGET IoTarget
1921  );
1922 
1925 WDFAPI
1926 VOID
1927 WDFEXPORT(WdfIoTargetStop)(
1928  _In_
1930  _In_
1931  WDFIOTARGET IoTarget,
1932  _In_
1935  );
1936 
1939 WDFAPI
1940 VOID
1941 WDFEXPORT(WdfIoTargetPurge)(
1942  _In_
1944  _In_
1945  WDFIOTARGET IoTarget,
1946  _In_
1949  );
1950 
1952 WDFAPI
1954 WDFEXPORT(WdfIoTargetGetState)(
1955  _In_
1957  _In_
1958  WDFIOTARGET IoTarget
1959  );
1960 
1962 WDFAPI
1963 WDFDEVICE
1964 WDFEXPORT(WdfIoTargetGetDevice)(
1965  _In_
1967  _In_
1968  WDFIOTARGET IoTarget
1969  );
1970 
1972 WDFAPI
1973 HANDLE
1974 WDFEXPORT(WdfIoTargetWdmGetTargetFileHandle)(
1975  _In_
1977  _In_
1978  WDFIOTARGET IoTarget
1979  );
1980 
1983 WDFAPI
1984 NTSTATUS
1985 WDFEXPORT(WdfIoTargetSendReadSynchronously)(
1986  _In_
1988  _In_
1989  WDFIOTARGET IoTarget,
1990  _In_opt_
1991  WDFREQUEST Request,
1992  _In_opt_
1994  _In_opt_
1996  _In_opt_
1998  _Out_opt_
2000  );
2001 
2004 WDFAPI
2005 NTSTATUS
2006 WDFEXPORT(WdfIoTargetFormatRequestForRead)(
2007  _In_
2009  _In_
2010  WDFIOTARGET IoTarget,
2011  _In_
2012  WDFREQUEST Request,
2013  _In_opt_
2014  WDFMEMORY OutputBuffer,
2015  _In_opt_
2017  _In_opt_
2019  );
2020 
2023 WDFAPI
2024 NTSTATUS
2025 WDFEXPORT(WdfIoTargetSendWriteSynchronously)(
2026  _In_
2028  _In_
2029  WDFIOTARGET IoTarget,
2030  _In_opt_
2031  WDFREQUEST Request,
2032  _In_opt_
2034  _In_opt_
2036  _In_opt_
2038  _Out_opt_
2040  );
2041 
2044 WDFAPI
2045 NTSTATUS
2046 WDFEXPORT(WdfIoTargetFormatRequestForWrite)(
2047  _In_
2049  _In_
2050  WDFIOTARGET IoTarget,
2051  _In_
2052  WDFREQUEST Request,
2053  _In_opt_
2054  WDFMEMORY InputBuffer,
2055  _In_opt_
2057  _In_opt_
2059  );
2060 
2063 WDFAPI
2064 NTSTATUS
2065 WDFEXPORT(WdfIoTargetSendIoctlSynchronously)(
2066  _In_
2068  _In_
2069  WDFIOTARGET IoTarget,
2070  _In_opt_
2071  WDFREQUEST Request,
2072  _In_
2073  ULONG IoctlCode,
2074  _In_opt_
2076  _In_opt_
2078  _In_opt_
2080  _Out_opt_
2082  );
2083 
2086 WDFAPI
2087 NTSTATUS
2088 WDFEXPORT(WdfIoTargetFormatRequestForIoctl)(
2089  _In_
2091  _In_
2092  WDFIOTARGET IoTarget,
2093  _In_
2094  WDFREQUEST Request,
2095  _In_
2096  ULONG IoctlCode,
2097  _In_opt_
2098  WDFMEMORY InputBuffer,
2099  _In_opt_
2101  _In_opt_
2102  WDFMEMORY OutputBuffer,
2103  _In_opt_
2105  );
2106 
2108 WDFAPI
2109 NTSTATUS
2110 WDFEXPORT(WdfIoTargetSelfAssignDefaultIoQueue)(
2111  _In_
2113  _In_
2114  WDFIOTARGET IoTarget,
2115  _In_
2116  WDFQUEUE Queue
2117  );
2118 
2122 WDFAPI
2123 NTSTATUS
2124 WDFEXPORT(WdfMemoryCreate)(
2125  _In_
2127  _In_opt_
2129  _In_
2132  _In_opt_
2133  ULONG PoolTag,
2134  _In_
2136  size_t BufferSize,
2137  _Out_
2138  WDFMEMORY* Memory,
2140  PVOID* Buffer
2141  );
2142 
2145 WDFAPI
2146 NTSTATUS
2147 WDFEXPORT(WdfMemoryCreatePreallocated)(
2148  _In_
2150  _In_opt_
2153  PVOID Buffer,
2154  _In_
2156  size_t BufferSize,
2157  _Out_
2158  WDFMEMORY* Memory
2159  );
2160 
2162 WDFAPI
2163 PVOID
2164 WDFEXPORT(WdfMemoryGetBuffer)(
2165  _In_
2167  _In_
2168  WDFMEMORY Memory,
2169  _Out_opt_
2170  size_t* BufferSize
2171  );
2172 
2175 WDFAPI
2176 NTSTATUS
2177 WDFEXPORT(WdfMemoryAssignBuffer)(
2178  _In_
2180  _In_
2181  WDFMEMORY Memory,
2183  PVOID Buffer,
2184  _In_
2186  size_t BufferSize
2187  );
2188 
2191 WDFAPI
2192 NTSTATUS
2193 WDFEXPORT(WdfMemoryCopyToBuffer)(
2194  _In_
2196  _In_
2197  WDFMEMORY SourceMemory,
2198  _In_
2199  size_t SourceOffset,
2200  _Out_writes_bytes_( NumBytesToCopyTo )
2201  PVOID Buffer,
2202  _In_
2203  _When_(NumBytesToCopyTo == 0, __drv_reportError(NumBytesToCopyTo cannot be zero))
2204  size_t NumBytesToCopyTo
2205  );
2206 
2209 WDFAPI
2210 NTSTATUS
2211 WDFEXPORT(WdfMemoryCopyFromBuffer)(
2212  _In_
2214  _In_
2216  _In_
2217  size_t DestinationOffset,
2218  _In_
2219  PVOID Buffer,
2220  _In_
2221  _When_(NumBytesToCopyFrom == 0, __drv_reportError(NumBytesToCopyFrom cannot be zero))
2222  size_t NumBytesToCopyFrom
2223  );
2224 
2225 WDFAPI
2226 PVOID
2227 FASTCALL
2229  _In_
2231  _In_
2232  WDFOBJECT Handle,
2233  _In_
2235  );
2236 
2237 WDFAPI
2238 NTSTATUS
2240  _In_
2242  _In_
2243  WDFOBJECT Handle,
2244  _In_
2245  PWDF_OBJECT_ATTRIBUTES ContextAttributes,
2246  _Outptr_opt_
2247  PVOID* Context
2248  );
2249 
2250 WDFAPI
2251 WDFOBJECT
2252 FASTCALL
2254  _In_
2256  _In_
2258  );
2259 
2260 WDFAPI
2261 VOID
2263  _In_
2265  _In_
2266  WDFOBJECT Handle,
2267  _In_opt_
2268  PVOID Tag,
2269  _In_
2270  LONG Line,
2271  _In_z_
2272  PCHAR File
2273  );
2274 
2275 WDFAPI
2276 VOID
2278  _In_
2280  _In_
2281  WDFOBJECT Handle,
2282  _In_opt_
2283  PVOID Tag,
2284  _In_
2285  LONG Line,
2286  _In_z_
2287  PCHAR File
2288  );
2289 
2292 WDFAPI
2293 NTSTATUS
2294 WDFEXPORT(WdfObjectCreate)(
2295  _In_
2297  _In_opt_
2299  _Out_
2300  WDFOBJECT* Object
2301  );
2302 
2304 WDFAPI
2305 VOID
2306 WDFEXPORT(WdfObjectDelete)(
2307  _In_
2309  _In_
2311  );
2312 
2315 WDFAPI
2316 NTSTATUS
2317 WDFEXPORT(WdfObjectQuery)(
2318  _In_
2320  _In_
2322  _In_
2323  CONST GUID* Guid,
2324  _In_
2327  PVOID QueryBuffer
2328  );
2329 
2332 WDFAPI
2333 NTSTATUS
2334 WDFEXPORT(WdfRegistryOpenKey)(
2335  _In_
2337  _In_opt_
2338  WDFKEY ParentKey,
2339  _In_
2341  _In_
2343  _In_opt_
2345  _Out_
2346  WDFKEY* Key
2347  );
2348 
2351 WDFAPI
2352 NTSTATUS
2353 WDFEXPORT(WdfRegistryCreateKey)(
2354  _In_
2356  _In_opt_
2357  WDFKEY ParentKey,
2358  _In_
2360  _In_
2362  _In_
2364  _Out_opt_
2366  _In_opt_
2368  _Out_
2369  WDFKEY* Key
2370  );
2371 
2373 WDFAPI
2374 VOID
2375 WDFEXPORT(WdfRegistryClose)(
2376  _In_
2378  _In_
2379  WDFKEY Key
2380  );
2381 
2383 WDFAPI
2384 HANDLE
2385 WDFEXPORT(WdfRegistryWdmGetHandle)(
2386  _In_
2388  _In_
2389  WDFKEY Key
2390  );
2391 
2394 WDFAPI
2395 NTSTATUS
2396 WDFEXPORT(WdfRegistryRemoveKey)(
2397  _In_
2399  _In_
2400  WDFKEY Key
2401  );
2402 
2405 WDFAPI
2406 NTSTATUS
2407 WDFEXPORT(WdfRegistryRemoveValue)(
2408  _In_
2410  _In_
2411  WDFKEY Key,
2412  _In_
2414  );
2415 
2418 WDFAPI
2419 NTSTATUS
2420 WDFEXPORT(WdfRegistryQueryValue)(
2421  _In_
2423  _In_
2424  WDFKEY Key,
2425  _In_
2427  _In_
2430  PVOID Value,
2431  _Out_opt_
2433  _Out_opt_
2435  );
2436 
2439 WDFAPI
2440 NTSTATUS
2441 WDFEXPORT(WdfRegistryQueryMemory)(
2442  _In_
2444  _In_
2445  WDFKEY Key,
2446  _In_
2448  _In_
2451  _In_opt_
2453  _Out_
2454  WDFMEMORY* Memory,
2455  _Out_opt_
2457  );
2458 
2461 WDFAPI
2462 NTSTATUS
2463 WDFEXPORT(WdfRegistryQueryMultiString)(
2464  _In_
2466  _In_
2467  WDFKEY Key,
2468  _In_
2470  _In_opt_
2472  _In_
2473  WDFCOLLECTION Collection
2474  );
2475 
2478 WDFAPI
2479 NTSTATUS
2480 WDFEXPORT(WdfRegistryQueryUnicodeString)(
2481  _In_
2483  _In_
2484  WDFKEY Key,
2485  _In_
2487  _Out_opt_
2489  _Inout_opt_
2491  );
2492 
2495 WDFAPI
2496 NTSTATUS
2497 WDFEXPORT(WdfRegistryQueryString)(
2498  _In_
2500  _In_
2501  WDFKEY Key,
2502  _In_
2504  _In_
2505  WDFSTRING String
2506  );
2507 
2510 WDFAPI
2511 NTSTATUS
2512 WDFEXPORT(WdfRegistryQueryULong)(
2513  _In_
2515  _In_
2516  WDFKEY Key,
2517  _In_
2519  _Out_
2520  PULONG Value
2521  );
2522 
2525 WDFAPI
2526 NTSTATUS
2527 WDFEXPORT(WdfRegistryAssignValue)(
2528  _In_
2530  _In_
2531  WDFKEY Key,
2532  _In_
2534  _In_
2535  ULONG ValueType,
2536  _In_
2539  PVOID Value
2540  );
2541 
2544 WDFAPI
2545 NTSTATUS
2546 WDFEXPORT(WdfRegistryAssignMemory)(
2547  _In_
2549  _In_
2550  WDFKEY Key,
2551  _In_
2553  _In_
2554  ULONG ValueType,
2555  _In_
2556  WDFMEMORY Memory,
2557  _In_opt_
2559  );
2560 
2563 WDFAPI
2564 NTSTATUS
2565 WDFEXPORT(WdfRegistryAssignMultiString)(
2566  _In_
2568  _In_
2569  WDFKEY Key,
2570  _In_
2572  _In_
2573  WDFCOLLECTION StringsCollection
2574  );
2575 
2578 WDFAPI
2579 NTSTATUS
2580 WDFEXPORT(WdfRegistryAssignUnicodeString)(
2581  _In_
2583  _In_
2584  WDFKEY Key,
2585  _In_
2587  _In_
2589  );
2590 
2593 WDFAPI
2594 NTSTATUS
2595 WDFEXPORT(WdfRegistryAssignString)(
2596  _In_
2598  _In_
2599  WDFKEY Key,
2600  _In_
2602  _In_
2603  WDFSTRING String
2604  );
2605 
2608 WDFAPI
2609 NTSTATUS
2610 WDFEXPORT(WdfRegistryAssignULong)(
2611  _In_
2613  _In_
2614  WDFKEY Key,
2615  _In_
2617  _In_
2618  ULONG Value
2619  );
2620 
2623 WDFAPI
2624 NTSTATUS
2625 WDFEXPORT(WdfRequestCreate)(
2626  _In_
2628  _In_opt_
2630  _In_opt_
2631  WDFIOTARGET IoTarget,
2632  _Out_
2633  WDFREQUEST* Request
2634  );
2635 
2637 WDFAPI
2638 NTSTATUS
2639 WDFEXPORT(WdfRequestReuse)(
2640  _In_
2642  _In_
2643  WDFREQUEST Request,
2644  _In_
2646  );
2647 
2650 WDFAPI
2651 NTSTATUS
2652 WDFEXPORT(WdfRequestChangeTarget)(
2653  _In_
2655  _In_
2656  WDFREQUEST Request,
2657  _In_
2658  WDFIOTARGET IoTarget
2659  );
2660 
2662 WDFAPI
2663 VOID
2664 WDFEXPORT(WdfRequestFormatRequestUsingCurrentType)(
2665  _In_
2667  _In_
2668  WDFREQUEST Request
2669  );
2670 
2673 WDFAPI
2674 BOOLEAN
2676  _In_
2678  _In_
2679  WDFREQUEST Request,
2680  _In_
2681  WDFIOTARGET Target,
2682  _In_opt_
2684  );
2685 
2688 WDFAPI
2689 NTSTATUS
2690 WDFEXPORT(WdfRequestGetStatus)(
2691  _In_
2693  _In_
2694  WDFREQUEST Request
2695  );
2696 
2698 WDFAPI
2699 VOID
2700 WDFEXPORT(WdfRequestMarkCancelable)(
2701  _In_
2703  _In_
2704  WDFREQUEST Request,
2705  _In_
2707  );
2708 
2711 WDFAPI
2712 NTSTATUS
2713 WDFEXPORT(WdfRequestMarkCancelableEx)(
2714  _In_
2716  _In_
2717  WDFREQUEST Request,
2718  _In_
2720  );
2721 
2724 WDFAPI
2725 NTSTATUS
2726 WDFEXPORT(WdfRequestUnmarkCancelable)(
2727  _In_
2729  _In_
2730  WDFREQUEST Request
2731  );
2732 
2735 WDFAPI
2736 BOOLEAN
2737 WDFEXPORT(WdfRequestIsCanceled)(
2738  _In_
2740  _In_
2741  WDFREQUEST Request
2742  );
2743 
2745 WDFAPI
2746 BOOLEAN
2747 WDFEXPORT(WdfRequestCancelSentRequest)(
2748  _In_
2750  _In_
2751  WDFREQUEST Request
2752  );
2753 
2756 WDFAPI
2757 BOOLEAN
2758 WDFEXPORT(WdfRequestIsFrom32BitProcess)(
2759  _In_
2761  _In_
2762  WDFREQUEST Request
2763  );
2764 
2766 WDFAPI
2767 VOID
2768 WDFEXPORT(WdfRequestSetCompletionRoutine)(
2769  _In_
2771  _In_
2772  WDFREQUEST Request,
2773  _In_opt_
2777  );
2778 
2780 WDFAPI
2781 VOID
2782 WDFEXPORT(WdfRequestGetCompletionParams)(
2783  _In_
2785  _In_
2786  WDFREQUEST Request,
2787  _Out_
2789  );
2790 
2793 WDFAPI
2794 NTSTATUS
2795 WDFEXPORT(WdfRequestAllocateTimer)(
2796  _In_
2798  _In_
2799  WDFREQUEST Request
2800  );
2801 
2803 WDFAPI
2804 VOID
2805 WDFEXPORT(WdfRequestComplete)(
2806  _In_
2808  _In_
2809  WDFREQUEST Request,
2810  _In_
2812  );
2813 
2815 WDFAPI
2816 VOID
2817 WDFEXPORT(WdfRequestCompleteWithInformation)(
2818  _In_
2820  _In_
2821  WDFREQUEST Request,
2822  _In_
2823  NTSTATUS Status,
2824  _In_
2826  );
2827 
2829 WDFAPI
2830 VOID
2831 WDFEXPORT(WdfRequestGetParameters)(
2832  _In_
2834  _In_
2835  WDFREQUEST Request,
2836  _Out_
2838  );
2839 
2842 WDFAPI
2843 NTSTATUS
2844 WDFEXPORT(WdfRequestRetrieveInputMemory)(
2845  _In_
2847  _In_
2848  WDFREQUEST Request,
2849  _Out_
2850  WDFMEMORY* Memory
2851  );
2852 
2855 WDFAPI
2856 NTSTATUS
2857 WDFEXPORT(WdfRequestRetrieveOutputMemory)(
2858  _In_
2860  _In_
2861  WDFREQUEST Request,
2862  _Out_
2863  WDFMEMORY* Memory
2864  );
2865 
2868 WDFAPI
2869 NTSTATUS
2870 WDFEXPORT(WdfRequestRetrieveInputBuffer)(
2871  _In_
2873  _In_
2874  WDFREQUEST Request,
2875  _In_
2876  size_t MinimumRequiredLength,
2878  PVOID* Buffer,
2879  _Out_opt_
2880  size_t* Length
2881  );
2882 
2885 WDFAPI
2886 NTSTATUS
2887 WDFEXPORT(WdfRequestRetrieveOutputBuffer)(
2888  _In_
2890  _In_
2891  WDFREQUEST Request,
2892  _In_
2893  size_t MinimumRequiredSize,
2895  PVOID* Buffer,
2896  _Out_opt_
2897  size_t* Length
2898  );
2899 
2901 WDFAPI
2902 VOID
2903 WDFEXPORT(WdfRequestSetInformation)(
2904  _In_
2906  _In_
2907  WDFREQUEST Request,
2908  _In_
2910  );
2911 
2913 WDFAPI
2914 ULONG_PTR
2915 WDFEXPORT(WdfRequestGetInformation)(
2916  _In_
2918  _In_
2919  WDFREQUEST Request
2920  );
2921 
2923 WDFAPI
2924 WDFFILEOBJECT
2925 WDFEXPORT(WdfRequestGetFileObject)(
2926  _In_
2928  _In_
2929  WDFREQUEST Request
2930  );
2931 
2933 WDFAPI
2935 WDFEXPORT(WdfRequestGetRequestorMode)(
2936  _In_
2938  _In_
2939  WDFREQUEST Request
2940  );
2941 
2944 WDFAPI
2945 NTSTATUS
2946 WDFEXPORT(WdfRequestForwardToIoQueue)(
2947  _In_
2949  _In_
2950  WDFREQUEST Request,
2951  _In_
2952  WDFQUEUE DestinationQueue
2953  );
2954 
2956 WDFAPI
2957 WDFQUEUE
2958 WDFEXPORT(WdfRequestGetIoQueue)(
2959  _In_
2961  _In_
2962  WDFREQUEST Request
2963  );
2964 
2967 WDFAPI
2968 NTSTATUS
2969 WDFEXPORT(WdfRequestRequeue)(
2970  _In_
2972  _In_
2973  WDFREQUEST Request
2974  );
2975 
2977 WDFAPI
2978 VOID
2979 WDFEXPORT(WdfRequestStopAcknowledge)(
2980  _In_
2982  _In_
2983  WDFREQUEST Request,
2984  _In_
2986  );
2987 
2990 WDFAPI
2991 NTSTATUS
2992 WDFEXPORT(WdfRequestImpersonate)(
2993  _In_
2995  _In_
2996  WDFREQUEST Request,
2997  _In_
2999  _In_
3000  PFN_WDF_REQUEST_IMPERSONATE EvtRequestImpersonate,
3001  _In_opt_
3002  PVOID Context
3003  );
3004 
3006 WDFAPI
3007 ULONG
3008 WDFEXPORT(WdfRequestGetRequestorProcessId)(
3009  _In_
3011  _In_
3012  WDFREQUEST Request
3013  );
3014 
3016 WDFAPI
3017 BOOLEAN
3018 WDFEXPORT(WdfRequestIsFromUserModeDriver)(
3019  _In_
3021  _In_
3022  WDFREQUEST Request
3023  );
3024 
3026 WDFAPI
3027 VOID
3028 WDFEXPORT(WdfRequestSetUserModeDriverInitiatedIo)(
3029  _In_
3031  _In_
3032  WDFREQUEST Request,
3033  _In_
3035  );
3036 
3038 WDFAPI
3039 BOOLEAN
3040 WDFEXPORT(WdfRequestGetUserModeDriverInitiatedIo)(
3041  _In_
3043  _In_
3044  WDFREQUEST Request
3045  );
3046 
3048 WDFAPI
3049 VOID
3050 WDFEXPORT(WdfRequestSetActivityId)(
3051  _In_
3053  _In_
3054  WDFREQUEST Request,
3055  _In_
3057  );
3058 
3060 WDFAPI
3061 NTSTATUS
3062 WDFEXPORT(WdfRequestRetrieveActivityId)(
3063  _In_
3065  _In_
3066  WDFREQUEST Request,
3067  _Out_
3069  );
3070 
3072 WDFAPI
3074 WDFEXPORT(WdfRequestGetEffectiveIoType)(
3075  _In_
3077  _In_
3078  WDFREQUEST Request
3079  );
3080 
3082 WDFAPI
3083 ULONG
3084 WDFEXPORT(WdfCmResourceListGetCount)(
3085  _In_
3087  _In_
3088  WDFCMRESLIST List
3089  );
3090 
3092 WDFAPI
3094 WDFEXPORT(WdfCmResourceListGetDescriptor)(
3095  _In_
3097  _In_
3098  WDFCMRESLIST List,
3099  _In_
3100  ULONG Index
3101  );
3102 
3105 WDFAPI
3106 NTSTATUS
3107 WDFEXPORT(WdfStringCreate)(
3108  _In_
3110  _In_opt_
3112  _In_opt_
3114  _Out_
3115  WDFSTRING* String
3116  );
3117 
3119 WDFAPI
3120 VOID
3121 WDFEXPORT(WdfStringGetUnicodeString)(
3122  _In_
3124  _In_
3125  WDFSTRING String,
3126  _Out_
3128  );
3129 
3131 WDFAPI
3132 VOID
3133 WDFEXPORT(WdfObjectAcquireLock)(
3134  _In_
3136  _In_
3137  _Requires_lock_not_held_(_Curr_)
3138  _Acquires_lock_(_Curr_)
3140  );
3141 
3143 WDFAPI
3144 VOID
3145 WDFEXPORT(WdfObjectReleaseLock)(
3146  _In_
3148  _In_
3149  _Requires_lock_held_(_Curr_)
3150  _Releases_lock_(_Curr_)
3152  );
3153 
3156 WDFAPI
3157 NTSTATUS
3158 WDFEXPORT(WdfWaitLockCreate)(
3159  _In_
3161  _In_opt_
3163  _Out_
3164  WDFWAITLOCK* Lock
3165  );
3166 
3173 WDFAPI
3174 NTSTATUS
3176  _In_
3178  _In_
3179  _Requires_lock_not_held_(_Curr_)
3180  WDFWAITLOCK Lock,
3181  _In_opt_
3183  );
3184 
3186 WDFAPI
3187 VOID
3188 WDFEXPORT(WdfWaitLockRelease)(
3189  _In_
3191  _In_
3192  _Requires_lock_held_(_Curr_)
3193  _Releases_lock_(_Curr_)
3194  WDFWAITLOCK Lock
3195  );
3196 
3199 WDFAPI
3200 NTSTATUS
3201 WDFEXPORT(WdfSpinLockCreate)(
3202  _In_
3204  _In_opt_
3206  _Out_
3207  WDFSPINLOCK* SpinLock
3208  );
3209 
3212 WDFAPI
3213 VOID
3214 WDFEXPORT(WdfSpinLockAcquire)(
3215  _In_
3217  _In_
3218  _Requires_lock_not_held_(_Curr_)
3219  _Acquires_lock_(_Curr_)
3220  _IRQL_saves_
3221  WDFSPINLOCK SpinLock
3222  );
3223 
3226 WDFAPI
3227 VOID
3228 WDFEXPORT(WdfSpinLockRelease)(
3229  _In_
3231  _In_
3232  _Requires_lock_held_(_Curr_)
3233  _Releases_lock_(_Curr_)
3235  WDFSPINLOCK SpinLock
3236  );
3237 
3240 WDFAPI
3241 NTSTATUS
3242 WDFEXPORT(WdfTimerCreate)(
3243  _In_
3245  _In_
3247  _In_
3249  _Out_
3250  WDFTIMER* Timer
3251  );
3252 
3254 WDFAPI
3255 BOOLEAN
3256 WDFEXPORT(WdfTimerStart)(
3257  _In_
3259  _In_
3260  WDFTIMER Timer,
3261  _In_
3263  );
3264 
3267 WDFAPI
3268 BOOLEAN
3269 WDFEXPORT(WdfTimerStop)(
3270  _In_
3272  _In_
3273  WDFTIMER Timer,
3274  _In_
3275  BOOLEAN Wait
3276  );
3277 
3279 WDFAPI
3280 WDFOBJECT
3281 WDFEXPORT(WdfTimerGetParentObject)(
3282  _In_
3284  _In_
3285  WDFTIMER Timer
3286  );
3287 
3290 WDFAPI
3291 NTSTATUS
3292 WDFEXPORT(WdfUsbTargetDeviceCreate)(
3293  _In_
3295  _In_
3296  WDFDEVICE Device,
3297  _In_opt_
3299  _Out_
3300  WDFUSBDEVICE* UsbDevice
3301  );
3302 
3305 WDFAPI
3306 NTSTATUS
3307 WDFEXPORT(WdfUsbTargetDeviceCreateWithParameters)(
3308  _In_
3310  _In_
3311  WDFDEVICE Device,
3312  _In_
3314  _In_opt_
3316  _Out_
3317  WDFUSBDEVICE* UsbDevice
3318  );
3319 
3322 WDFAPI
3323 NTSTATUS
3324 WDFEXPORT(WdfUsbTargetDeviceRetrieveInformation)(
3325  _In_
3327  _In_
3328  WDFUSBDEVICE UsbDevice,
3329  _Out_
3331  );
3332 
3334 WDFAPI
3335 VOID
3336 WDFEXPORT(WdfUsbTargetDeviceGetDeviceDescriptor)(
3337  _In_
3339  _In_
3340  WDFUSBDEVICE UsbDevice,
3341  _Out_
3343  );
3344 
3347 WDFAPI
3348 NTSTATUS
3349 WDFEXPORT(WdfUsbTargetDeviceRetrieveConfigDescriptor)(
3350  _In_
3352  _In_
3353  WDFUSBDEVICE UsbDevice,
3356  _Inout_
3358  );
3359 
3362 WDFAPI
3363 NTSTATUS
3364 WDFEXPORT(WdfUsbTargetDeviceQueryString)(
3365  _In_
3367  _In_
3368  WDFUSBDEVICE UsbDevice,
3369  _In_opt_
3370  WDFREQUEST Request,
3371  _In_opt_
3374  PUSHORT String,
3375  _Inout_
3377  _In_
3379  _In_opt_
3380  USHORT LangID
3381  );
3382 
3385 WDFAPI
3386 NTSTATUS
3387 WDFEXPORT(WdfUsbTargetDeviceAllocAndQueryString)(
3388  _In_
3390  _In_
3391  WDFUSBDEVICE UsbDevice,
3392  _In_opt_
3394  _Out_
3395  WDFMEMORY* StringMemory,
3396  _Out_opt_
3398  _In_
3400  _In_opt_
3401  USHORT LangID
3402  );
3403 
3406 WDFAPI
3407 NTSTATUS
3408 WDFEXPORT(WdfUsbTargetDeviceFormatRequestForString)(
3409  _In_
3411  _In_
3412  WDFUSBDEVICE UsbDevice,
3413  _In_
3414  WDFREQUEST Request,
3415  _In_
3416  WDFMEMORY Memory,
3417  _In_opt_
3419  _In_
3421  _In_opt_
3422  USHORT LangID
3423  );
3424 
3426 WDFAPI
3427 UCHAR
3428 WDFEXPORT(WdfUsbTargetDeviceGetNumInterfaces)(
3429  _In_
3431  _In_
3432  WDFUSBDEVICE UsbDevice
3433  );
3434 
3437 WDFAPI
3438 NTSTATUS
3439 WDFEXPORT(WdfUsbTargetDeviceSelectConfig)(
3440  _In_
3442  _In_
3443  WDFUSBDEVICE UsbDevice,
3444  _In_opt_
3446  _Inout_
3448  );
3449 
3452 WDFAPI
3453 NTSTATUS
3454 WDFEXPORT(WdfUsbTargetDeviceSendControlTransferSynchronously)(
3455  _In_
3457  _In_
3458  WDFUSBDEVICE UsbDevice,
3459  _In_opt_
3460  WDFREQUEST Request,
3461  _In_opt_
3463  _In_
3465  _In_opt_
3467  _Out_opt_
3469  );
3470 
3473 WDFAPI
3474 NTSTATUS
3475 WDFEXPORT(WdfUsbTargetDeviceFormatRequestForControlTransfer)(
3476  _In_
3478  _In_
3479  WDFUSBDEVICE UsbDevice,
3480  _In_
3481  WDFREQUEST Request,
3482  _In_
3484  _In_opt_
3485  WDFMEMORY TransferMemory,
3486  _In_opt_
3488  );
3489 
3492 WDFAPI
3493 NTSTATUS
3494 WDFEXPORT(WdfUsbTargetDeviceResetPortSynchronously)(
3495  _In_
3497  _In_
3498  WDFUSBDEVICE UsbDevice
3499  );
3500 
3503 WDFAPI
3504 NTSTATUS
3505 WDFEXPORT(WdfUsbTargetDeviceQueryUsbCapability)(
3506  _In_
3508  _In_
3509  WDFUSBDEVICE UsbDevice,
3510  _In_
3512  _In_
3517  PVOID CapabilityBuffer,
3518  _Out_opt_
3521  );
3522 
3524 WDFAPI
3525 VOID
3526 WDFEXPORT(WdfUsbTargetPipeGetInformation)(
3527  _In_
3529  _In_
3530  WDFUSBPIPE Pipe,
3531  _Out_
3533  );
3534 
3536 WDFAPI
3537 BOOLEAN
3538 WDFEXPORT(WdfUsbTargetPipeIsInEndpoint)(
3539  _In_
3541  _In_
3542  WDFUSBPIPE Pipe
3543  );
3544 
3546 WDFAPI
3547 BOOLEAN
3548 WDFEXPORT(WdfUsbTargetPipeIsOutEndpoint)(
3549  _In_
3551  _In_
3552  WDFUSBPIPE Pipe
3553  );
3554 
3556 WDFAPI
3558 WDFEXPORT(WdfUsbTargetPipeGetType)(
3559  _In_
3561  _In_
3562  WDFUSBPIPE Pipe
3563  );
3564 
3566 WDFAPI
3567 VOID
3568 WDFEXPORT(WdfUsbTargetPipeSetNoMaximumPacketSizeCheck)(
3569  _In_
3571  _In_
3572  WDFUSBPIPE Pipe
3573  );
3574 
3577 WDFAPI
3578 NTSTATUS
3579 WDFEXPORT(WdfUsbTargetPipeWriteSynchronously)(
3580  _In_
3582  _In_
3583  WDFUSBPIPE Pipe,
3584  _In_opt_
3585  WDFREQUEST Request,
3586  _In_opt_
3588  _In_opt_
3590  _Out_opt_
3592  );
3593 
3596 WDFAPI
3597 NTSTATUS
3598 WDFEXPORT(WdfUsbTargetPipeFormatRequestForWrite)(
3599  _In_
3601  _In_
3602  WDFUSBPIPE Pipe,
3603  _In_
3604  WDFREQUEST Request,
3605  _In_opt_
3606  WDFMEMORY WriteMemory,
3607  _In_opt_
3609  );
3610 
3613 WDFAPI
3614 NTSTATUS
3615 WDFEXPORT(WdfUsbTargetPipeReadSynchronously)(
3616  _In_
3618  _In_
3619  WDFUSBPIPE Pipe,
3620  _In_opt_
3621  WDFREQUEST Request,
3622  _In_opt_
3624  _In_opt_
3626  _Out_opt_
3628  );
3629 
3632 WDFAPI
3633 NTSTATUS
3634 WDFEXPORT(WdfUsbTargetPipeFormatRequestForRead)(
3635  _In_
3637  _In_
3638  WDFUSBPIPE Pipe,
3639  _In_
3640  WDFREQUEST Request,
3641  _In_opt_
3642  WDFMEMORY ReadMemory,
3643  _In_opt_
3645  );
3646 
3649 WDFAPI
3650 NTSTATUS
3651 WDFEXPORT(WdfUsbTargetPipeConfigContinuousReader)(
3652  _In_
3654  _In_
3655  WDFUSBPIPE Pipe,
3656  _In_
3658  );
3659 
3662 WDFAPI
3663 NTSTATUS
3664 WDFEXPORT(WdfUsbTargetPipeAbortSynchronously)(
3665  _In_
3667  _In_
3668  WDFUSBPIPE Pipe,
3669  _In_opt_
3670  WDFREQUEST Request,
3671  _In_opt_
3673  );
3674 
3677 WDFAPI
3678 NTSTATUS
3679 WDFEXPORT(WdfUsbTargetPipeFormatRequestForAbort)(
3680  _In_
3682  _In_
3683  WDFUSBPIPE Pipe,
3684  _In_
3685  WDFREQUEST Request
3686  );
3687 
3690 WDFAPI
3691 NTSTATUS
3692 WDFEXPORT(WdfUsbTargetPipeResetSynchronously)(
3693  _In_
3695  _In_
3696  WDFUSBPIPE Pipe,
3697  _In_opt_
3698  WDFREQUEST Request,
3699  _In_opt_
3701  );
3702 
3705 WDFAPI
3706 NTSTATUS
3707 WDFEXPORT(WdfUsbTargetPipeFormatRequestForReset)(
3708  _In_
3710  _In_
3711  WDFUSBPIPE Pipe,
3712  _In_
3713  WDFREQUEST Request
3714  );
3715 
3717 WDFAPI
3718 BYTE
3719 WDFEXPORT(WdfUsbInterfaceGetInterfaceNumber)(
3720  _In_
3722  _In_
3723  WDFUSBINTERFACE UsbInterface
3724  );
3725 
3727 WDFAPI
3728 BYTE
3729 WDFEXPORT(WdfUsbInterfaceGetNumEndpoints)(
3730  _In_
3732  _In_
3733  WDFUSBINTERFACE UsbInterface,
3734  _In_
3736  );
3737 
3739 WDFAPI
3740 VOID
3741 WDFEXPORT(WdfUsbInterfaceGetDescriptor)(
3742  _In_
3744  _In_
3745  WDFUSBINTERFACE UsbInterface,
3746  _In_
3748  _Out_
3750  );
3751 
3753 WDFAPI
3754 BYTE
3755 WDFEXPORT(WdfUsbInterfaceGetNumSettings)(
3756  _In_
3758  _In_
3759  WDFUSBINTERFACE UsbInterface
3760  );
3761 
3764 WDFAPI
3765 NTSTATUS
3766 WDFEXPORT(WdfUsbInterfaceSelectSetting)(
3767  _In_
3769  _In_
3770  WDFUSBINTERFACE UsbInterface,
3771  _In_opt_
3773  _In_
3775  );
3776 
3778 WDFAPI
3779 VOID
3780 WDFEXPORT(WdfUsbInterfaceGetEndpointInformation)(
3781  _In_
3783  _In_
3784  WDFUSBINTERFACE UsbInterface,
3785  _In_
3787  _In_
3789  _Out_
3791  );
3792 
3794 WDFAPI
3795 WDFUSBINTERFACE
3796 WDFEXPORT(WdfUsbTargetDeviceGetInterface)(
3797  _In_
3799  _In_
3800  WDFUSBDEVICE UsbDevice,
3801  _In_
3803  );
3804 
3806 WDFAPI
3807 BYTE
3808 WDFEXPORT(WdfUsbInterfaceGetConfiguredSettingIndex)(
3809  _In_
3811  _In_
3812  WDFUSBINTERFACE Interface
3813  );
3814 
3816 WDFAPI
3817 BYTE
3818 WDFEXPORT(WdfUsbInterfaceGetNumConfiguredPipes)(
3819  _In_
3821  _In_
3822  WDFUSBINTERFACE UsbInterface
3823  );
3824 
3826 WDFAPI
3827 WDFUSBPIPE
3828 WDFEXPORT(WdfUsbInterfaceGetConfiguredPipe)(
3829  _In_
3831  _In_
3832  WDFUSBINTERFACE UsbInterface,
3833  _In_
3834  UCHAR PipeIndex,
3835  _Out_opt_
3837  );
3838 
3839 WDFAPI
3840 VOID
3842  _In_
3844  );
3845 
3846 WDFAPI
3847 VOID
3849  _In_
3851  _In_
3852  ULONG BugCheckCode,
3853  _In_
3854  ULONG_PTR BugCheckParameter1,
3855  _In_
3856  ULONG_PTR BugCheckParameter2,
3857  _In_
3858  ULONG_PTR BugCheckParameter3,
3859  _In_
3860  ULONG_PTR BugCheckParameter4
3861  );
3862 
3863 WDFAPI
3864 PVOID
3866  _In_
3868  );
3869 
3872 WDFAPI
3873 NTSTATUS
3874 WDFEXPORT(WdfWorkItemCreate)(
3875  _In_
3877  _In_
3879  _In_
3881  _Out_
3882  WDFWORKITEM* WorkItem
3883  );
3884 
3886 WDFAPI
3887 VOID
3888 WDFEXPORT(WdfWorkItemEnqueue)(
3889  _In_
3891  _In_
3892  WDFWORKITEM WorkItem
3893  );
3894 
3896 WDFAPI
3897 WDFOBJECT
3898 WDFEXPORT(WdfWorkItemGetParentObject)(
3899  _In_
3901  _In_
3902  WDFWORKITEM WorkItem
3903  );
3904 
3906 WDFAPI
3907 VOID
3908 WDFEXPORT(WdfWorkItemFlush)(
3909  _In_
3911  _In_
3912  WDFWORKITEM WorkItem
3913  );
3914 
3915 
3916 #ifdef FX_DYNAMICS_GENERATE_TABLE
3917 
3919  sizeof(WDFVERSION),
3920  sizeof(WDFFUNCTIONS)/sizeof(PVOID),
3921  {
3922  WDFEXPORT(WdfCollectionCreate),
3923  WDFEXPORT(WdfCollectionGetCount),
3924  WDFEXPORT(WdfCollectionAdd),
3925  WDFEXPORT(WdfCollectionRemove),
3926  WDFEXPORT(WdfCollectionRemoveItem),
3927  WDFEXPORT(WdfCollectionGetItem),
3928  WDFEXPORT(WdfCollectionGetFirstItem),
3929  WDFEXPORT(WdfCollectionGetLastItem),
3930  WDFEXPORT(WdfCxDeviceInitAllocate),
3931  WDFEXPORT(WdfCxDeviceInitSetRequestAttributes),
3932  WDFEXPORT(WdfCxDeviceInitSetFileObjectConfig),
3934  WDFEXPORT(WdfDeviceGetDeviceState),
3935  WDFEXPORT(WdfDeviceSetDeviceState),
3936  WDFEXPORT(WdfDeviceGetDriver),
3937  WDFEXPORT(WdfDeviceGetIoTarget),
3938  WDFEXPORT(WdfDeviceAssignS0IdleSettings),
3939  WDFEXPORT(WdfDeviceAssignSxWakeSettings),
3940  WDFEXPORT(WdfDeviceOpenRegistryKey),
3941  WDFEXPORT(WdfDeviceInitSetPnpPowerEventCallbacks),
3942  WDFEXPORT(WdfDeviceInitSetPowerPolicyEventCallbacks),
3943  WDFEXPORT(WdfDeviceInitSetPowerPolicyOwnership),
3944  WDFEXPORT(WdfDeviceInitSetIoType),
3945  WDFEXPORT(WdfDeviceInitSetFileObjectConfig),
3946  WDFEXPORT(WdfDeviceInitSetRequestAttributes),
3947  WDFEXPORT(WdfDeviceCreate),
3948  WDFEXPORT(WdfDeviceSetStaticStopRemove),
3949  WDFEXPORT(WdfDeviceCreateDeviceInterface),
3950  WDFEXPORT(WdfDeviceSetDeviceInterfaceState),
3951  WDFEXPORT(WdfDeviceRetrieveDeviceInterfaceString),
3952  WDFEXPORT(WdfDeviceCreateSymbolicLink),
3953  WDFEXPORT(WdfDeviceQueryProperty),
3954  WDFEXPORT(WdfDeviceAllocAndQueryProperty),
3955  WDFEXPORT(WdfDeviceSetPnpCapabilities),
3956  WDFEXPORT(WdfDeviceSetPowerCapabilities),
3957  WDFEXPORT(WdfDeviceSetFailed),
3958  WDFEXPORT(WdfDeviceStopIdleNoTrack),
3959  WDFEXPORT(WdfDeviceResumeIdleNoTrack),
3960  WDFEXPORT(WdfDeviceGetFileObject),
3961  WDFEXPORT(WdfDeviceGetDefaultQueue),
3962  WDFEXPORT(WdfDeviceConfigureRequestDispatching),
3963  WDFEXPORT(WdfDeviceGetSystemPowerAction),
3964  WDFEXPORT(WdfDeviceInitSetReleaseHardwareOrderOnFailure),
3965  WDFEXPORT(WdfDeviceInitSetIoTypeEx),
3966  WDFEXPORT(WdfDevicePostEvent),
3967  WDFEXPORT(WdfDeviceMapIoSpace),
3968  WDFEXPORT(WdfDeviceUnmapIoSpace),
3969  WDFEXPORT(WdfDeviceGetHardwareRegisterMappedAddress),
3970  WDFEXPORT(WdfDeviceReadFromHardware),
3971  WDFEXPORT(WdfDeviceWriteToHardware),
3972  WDFEXPORT(WdfDeviceAssignInterfaceProperty),
3973  WDFEXPORT(WdfDeviceAllocAndQueryInterfaceProperty),
3974  WDFEXPORT(WdfDeviceQueryInterfaceProperty),
3975  WDFEXPORT(WdfDeviceGetDeviceStackIoType),
3976  WDFEXPORT(WdfDeviceQueryPropertyEx),
3977  WDFEXPORT(WdfDeviceAllocAndQueryPropertyEx),
3978  WDFEXPORT(WdfDeviceAssignProperty),
3979  WDFEXPORT(WdfDriverCreate),
3980  WDFEXPORT(WdfDriverGetRegistryPath),
3981  WDFEXPORT(WdfDriverOpenParametersRegistryKey),
3982  WDFEXPORT(WdfDriverRetrieveVersionString),
3983  WDFEXPORT(WdfDriverIsVersionAvailable),
3984  WDFEXPORT(WdfFdoInitOpenRegistryKey),
3985  WDFEXPORT(WdfFdoInitQueryProperty),
3986  WDFEXPORT(WdfFdoInitAllocAndQueryProperty),
3987  WDFEXPORT(WdfFdoInitQueryPropertyEx),
3988  WDFEXPORT(WdfFdoInitAllocAndQueryPropertyEx),
3989  WDFEXPORT(WdfFdoInitSetFilter),
3990  WDFEXPORT(WdfFileObjectGetFileName),
3991  WDFEXPORT(WdfFileObjectGetDevice),
3992  WDFEXPORT(WdfFileObjectGetInitiatorProcessId),
3993  WDFEXPORT(WdfFileObjectGetRelatedFileObject),
3994  WDFEXPORT(WdfInterruptCreate),
3997  WDFEXPORT(WdfInterruptSynchronize),
3998  WDFEXPORT(WdfInterruptAcquireLock),
3999  WDFEXPORT(WdfInterruptReleaseLock),
4000  WDFEXPORT(WdfInterruptEnable),
4001  WDFEXPORT(WdfInterruptDisable),
4002  WDFEXPORT(WdfInterruptGetInfo),
4003  WDFEXPORT(WdfInterruptSetPolicy),
4004  WDFEXPORT(WdfInterruptSetExtendedPolicy),
4006  WDFEXPORT(WdfInterruptTryToAcquireLock),
4007  WDFEXPORT(WdfIoQueueCreate),
4008  WDFEXPORT(WdfIoQueueGetState),
4009  WDFEXPORT(WdfIoQueueStart),
4010  WDFEXPORT(WdfIoQueueStop),
4011  WDFEXPORT(WdfIoQueueStopSynchronously),
4012  WDFEXPORT(WdfIoQueueGetDevice),
4013  WDFEXPORT(WdfIoQueueRetrieveNextRequest),
4014  WDFEXPORT(WdfIoQueueRetrieveRequestByFileObject),
4015  WDFEXPORT(WdfIoQueueFindRequest),
4016  WDFEXPORT(WdfIoQueueRetrieveFoundRequest),
4017  WDFEXPORT(WdfIoQueueDrainSynchronously),
4018  WDFEXPORT(WdfIoQueueDrain),
4019  WDFEXPORT(WdfIoQueuePurgeSynchronously),
4020  WDFEXPORT(WdfIoQueuePurge),
4021  WDFEXPORT(WdfIoQueueReadyNotify),
4022  WDFEXPORT(WdfIoQueueStopAndPurge),
4023  WDFEXPORT(WdfIoQueueStopAndPurgeSynchronously),
4024  WDFEXPORT(WdfIoTargetCreate),
4025  WDFEXPORT(WdfIoTargetOpen),
4026  WDFEXPORT(WdfIoTargetCloseForQueryRemove),
4027  WDFEXPORT(WdfIoTargetClose),
4028  WDFEXPORT(WdfIoTargetStart),
4029  WDFEXPORT(WdfIoTargetStop),
4030  WDFEXPORT(WdfIoTargetPurge),
4031  WDFEXPORT(WdfIoTargetGetState),
4032  WDFEXPORT(WdfIoTargetGetDevice),
4033  WDFEXPORT(WdfIoTargetSendReadSynchronously),
4034  WDFEXPORT(WdfIoTargetFormatRequestForRead),
4035  WDFEXPORT(WdfIoTargetSendWriteSynchronously),
4036  WDFEXPORT(WdfIoTargetFormatRequestForWrite),
4037  WDFEXPORT(WdfIoTargetSendIoctlSynchronously),
4038  WDFEXPORT(WdfIoTargetFormatRequestForIoctl),
4039  WDFEXPORT(WdfMemoryCreate),
4040  WDFEXPORT(WdfMemoryCreatePreallocated),
4041  WDFEXPORT(WdfMemoryGetBuffer),
4042  WDFEXPORT(WdfMemoryAssignBuffer),
4043  WDFEXPORT(WdfMemoryCopyToBuffer),
4044  WDFEXPORT(WdfMemoryCopyFromBuffer),
4050  WDFEXPORT(WdfObjectCreate),
4051  WDFEXPORT(WdfObjectDelete),
4052  WDFEXPORT(WdfObjectQuery),
4053  WDFEXPORT(WdfRegistryOpenKey),
4054  WDFEXPORT(WdfRegistryCreateKey),
4055  WDFEXPORT(WdfRegistryClose),
4056  WDFEXPORT(WdfRegistryRemoveKey),
4057  WDFEXPORT(WdfRegistryRemoveValue),
4058  WDFEXPORT(WdfRegistryQueryValue),
4059  WDFEXPORT(WdfRegistryQueryMemory),
4060  WDFEXPORT(WdfRegistryQueryMultiString),
4061  WDFEXPORT(WdfRegistryQueryUnicodeString),
4062  WDFEXPORT(WdfRegistryQueryString),
4063  WDFEXPORT(WdfRegistryQueryULong),
4064  WDFEXPORT(WdfRegistryAssignValue),
4065  WDFEXPORT(WdfRegistryAssignMemory),
4066  WDFEXPORT(WdfRegistryAssignMultiString),
4067  WDFEXPORT(WdfRegistryAssignUnicodeString),
4068  WDFEXPORT(WdfRegistryAssignString),
4069  WDFEXPORT(WdfRegistryAssignULong),
4070  WDFEXPORT(WdfRequestCreate),
4071  WDFEXPORT(WdfRequestReuse),
4072  WDFEXPORT(WdfRequestChangeTarget),
4073  WDFEXPORT(WdfRequestFormatRequestUsingCurrentType),
4075  WDFEXPORT(WdfRequestGetStatus),
4076  WDFEXPORT(WdfRequestMarkCancelable),
4077  WDFEXPORT(WdfRequestMarkCancelableEx),
4078  WDFEXPORT(WdfRequestUnmarkCancelable),
4079  WDFEXPORT(WdfRequestIsCanceled),
4080  WDFEXPORT(WdfRequestCancelSentRequest),
4081  WDFEXPORT(WdfRequestIsFrom32BitProcess),
4082  WDFEXPORT(WdfRequestSetCompletionRoutine),
4083  WDFEXPORT(WdfRequestGetCompletionParams),
4084  WDFEXPORT(WdfRequestAllocateTimer),
4085  WDFEXPORT(WdfRequestComplete),
4086  WDFEXPORT(WdfRequestCompleteWithInformation),
4087  WDFEXPORT(WdfRequestGetParameters),
4088  WDFEXPORT(WdfRequestRetrieveInputMemory),
4089  WDFEXPORT(WdfRequestRetrieveOutputMemory),
4090  WDFEXPORT(WdfRequestRetrieveInputBuffer),
4091  WDFEXPORT(WdfRequestRetrieveOutputBuffer),
4092  WDFEXPORT(WdfRequestSetInformation),
4093  WDFEXPORT(WdfRequestGetInformation),
4094  WDFEXPORT(WdfRequestGetFileObject),
4095  WDFEXPORT(WdfRequestGetRequestorMode),
4096  WDFEXPORT(WdfRequestForwardToIoQueue),
4097  WDFEXPORT(WdfRequestGetIoQueue),
4098  WDFEXPORT(WdfRequestRequeue),
4099  WDFEXPORT(WdfRequestStopAcknowledge),
4100  WDFEXPORT(WdfRequestImpersonate),
4101  WDFEXPORT(WdfRequestGetRequestorProcessId),
4102  WDFEXPORT(WdfRequestIsFromUserModeDriver),
4103  WDFEXPORT(WdfRequestSetUserModeDriverInitiatedIo),
4104  WDFEXPORT(WdfRequestGetUserModeDriverInitiatedIo),
4105  WDFEXPORT(WdfRequestSetActivityId),
4106  WDFEXPORT(WdfRequestRetrieveActivityId),
4107  WDFEXPORT(WdfRequestGetEffectiveIoType),
4108  WDFEXPORT(WdfCmResourceListGetCount),
4109  WDFEXPORT(WdfCmResourceListGetDescriptor),
4110  WDFEXPORT(WdfStringCreate),
4111  WDFEXPORT(WdfStringGetUnicodeString),
4112  WDFEXPORT(WdfObjectAcquireLock),
4113  WDFEXPORT(WdfObjectReleaseLock),
4114  WDFEXPORT(WdfWaitLockCreate),
4116  WDFEXPORT(WdfWaitLockRelease),
4117  WDFEXPORT(WdfSpinLockCreate),
4118  WDFEXPORT(WdfSpinLockAcquire),
4119  WDFEXPORT(WdfSpinLockRelease),
4120  WDFEXPORT(WdfTimerCreate),
4121  WDFEXPORT(WdfTimerStart),
4122  WDFEXPORT(WdfTimerStop),
4123  WDFEXPORT(WdfTimerGetParentObject),
4124  WDFEXPORT(WdfUsbTargetDeviceCreate),
4125  WDFEXPORT(WdfUsbTargetDeviceCreateWithParameters),
4126  WDFEXPORT(WdfUsbTargetDeviceRetrieveInformation),
4127  WDFEXPORT(WdfUsbTargetDeviceGetDeviceDescriptor),
4128  WDFEXPORT(WdfUsbTargetDeviceRetrieveConfigDescriptor),
4129  WDFEXPORT(WdfUsbTargetDeviceQueryString),
4130  WDFEXPORT(WdfUsbTargetDeviceAllocAndQueryString),
4131  WDFEXPORT(WdfUsbTargetDeviceFormatRequestForString),
4132  WDFEXPORT(WdfUsbTargetDeviceGetNumInterfaces),
4133  WDFEXPORT(WdfUsbTargetDeviceSelectConfig),
4134  WDFEXPORT(WdfUsbTargetDeviceSendControlTransferSynchronously),
4135  WDFEXPORT(WdfUsbTargetDeviceFormatRequestForControlTransfer),
4136  WDFEXPORT(WdfUsbTargetDeviceResetPortSynchronously),
4137  WDFEXPORT(WdfUsbTargetDeviceQueryUsbCapability),
4138  WDFEXPORT(WdfUsbTargetPipeGetInformation),
4139  WDFEXPORT(WdfUsbTargetPipeIsInEndpoint),
4140  WDFEXPORT(WdfUsbTargetPipeIsOutEndpoint),
4141  WDFEXPORT(WdfUsbTargetPipeGetType),
4142  WDFEXPORT(WdfUsbTargetPipeSetNoMaximumPacketSizeCheck),
4143  WDFEXPORT(WdfUsbTargetPipeWriteSynchronously),
4144  WDFEXPORT(WdfUsbTargetPipeFormatRequestForWrite),
4145  WDFEXPORT(WdfUsbTargetPipeReadSynchronously),
4146  WDFEXPORT(WdfUsbTargetPipeFormatRequestForRead),
4147  WDFEXPORT(WdfUsbTargetPipeConfigContinuousReader),
4148  WDFEXPORT(WdfUsbTargetPipeAbortSynchronously),
4149  WDFEXPORT(WdfUsbTargetPipeFormatRequestForAbort),
4150  WDFEXPORT(WdfUsbTargetPipeResetSynchronously),
4151  WDFEXPORT(WdfUsbTargetPipeFormatRequestForReset),
4152  WDFEXPORT(WdfUsbInterfaceGetInterfaceNumber),
4153  WDFEXPORT(WdfUsbInterfaceGetNumEndpoints),
4154  WDFEXPORT(WdfUsbInterfaceGetDescriptor),
4155  WDFEXPORT(WdfUsbInterfaceGetNumSettings),
4156  WDFEXPORT(WdfUsbInterfaceSelectSetting),
4157  WDFEXPORT(WdfUsbInterfaceGetEndpointInformation),
4158  WDFEXPORT(WdfUsbTargetDeviceGetInterface),
4159  WDFEXPORT(WdfUsbInterfaceGetConfiguredSettingIndex),
4160  WDFEXPORT(WdfUsbInterfaceGetNumConfiguredPipes),
4161  WDFEXPORT(WdfUsbInterfaceGetConfiguredPipe),
4165  WDFEXPORT(WdfWorkItemCreate),
4166  WDFEXPORT(WdfWorkItemEnqueue),
4167  WDFEXPORT(WdfWorkItemGetParentObject),
4168  WDFEXPORT(WdfWorkItemFlush),
4169  WDFEXPORT(WdfRegistryWdmGetHandle),
4170  WDFEXPORT(WdfDeviceStopIdleActual),
4171  WDFEXPORT(WdfDeviceResumeIdleActual),
4172  WDFEXPORT(WdfDeviceInitEnableHidInterface),
4173  WDFEXPORT(WdfDeviceHidNotifyPresence),
4174  WDFEXPORT(WdfDeviceGetSelfIoTarget),
4175  WDFEXPORT(WdfDeviceInitAllowSelfIoTarget),
4176  WDFEXPORT(WdfIoTargetSelfAssignDefaultIoQueue),
4177  WDFEXPORT(WdfDeviceOpenDevicemapKey),
4178  WDFEXPORT(WdfIoTargetWdmGetTargetFileHandle),
4179  WDFEXPORT(WdfDeviceWdmDispatchIrp),
4180  WDFEXPORT(WdfDeviceWdmDispatchIrpToIoQueue),
4181  WDFEXPORT(WdfDeviceConfigureWdmIrpDispatchCallback),
4182  }
4183 };
4184 
4185 #endif // FX_DYNAMICS_GENERATE_TABLE
4186 
4187 #endif // _FXDYNAMICS_H_
4188 
PFN_WDFREQUESTRETRIEVEACTIVITYID pfnWdfRequestRetrieveActivityId
Definition: fxdynamics.h:206
_Must_inspect_result_ _In_ WDFIOTARGET _In_opt_ WDFREQUEST _In_opt_ PWDF_MEMORY_DESCRIPTOR _In_opt_ PLONGLONG _In_opt_ PWDF_REQUEST_SEND_OPTIONS _Out_opt_ PULONG_PTR BytesWritten
Definition: wdfiotarget.h:949
signed char * PCHAR
Definition: retypes.h:7
DEVICE_REGISTRY_PROPERTY
Definition: iotypes.h:1194
PFN_WDFDEVICEALLOCANDQUERYPROPERTY pfnWdfDeviceAllocAndQueryProperty
Definition: fxdynamics.h:115
PFN_WDFREQUESTGETREQUESTORMODE pfnWdfRequestGetRequestorMode
Definition: fxdynamics.h:331
_In_ WDFDEVICE _In_ WDF_DEVICE_HWACCESS_TARGET_TYPE _In_ WDF_DEVICE_HWACCESS_TARGET_SIZE _In_ PVOID TargetAddress
Definition: fxdynamics.h:1041
_Must_inspect_result_ _In_ WDFUSBDEVICE _In_opt_ WDFREQUEST _In_opt_ PWDF_REQUEST_SEND_OPTIONS _In_ PWDF_USB_CONTROL_SETUP_PACKET _In_opt_ PWDF_MEMORY_DESCRIPTOR _Out_opt_ PULONG BytesTransferred
Definition: wdfusb.h:1331
_In_ WDFREQUEST _In_ PFN_WDF_REQUEST_CANCEL EvtRequestCancel
Definition: wdfrequest.h:727
PFN_WDFINTERRUPTTRYTOACQUIRELOCK pfnWdfInterruptTryToAcquireLock
Definition: fxdynamics.h:549
PFN_WDFDEVICEGETDEVICESTATE pfnWdfDeviceGetDeviceState
Definition: fxdynamics.h:61
_Must_inspect_result_ _In_ WDFDEVICE Device
Definition: fxdynamics.h:608
struct _WDFFUNCTIONS * PWDFFUNCTIONS
_Must_inspect_result_ _In_ WDFUSBDEVICE _In_ CONST GUID * CapabilityType
Definition: wdfusb.h:1611
_Must_inspect_result_ _In_ WDFQUEUE _In_opt_ PFN_WDF_IO_QUEUE_STATE QueueReady
Definition: wdfio.h:1065
PFN_WDFDEVICEASSIGNPROPERTY pfnWdfDeviceAssignProperty
Definition: fxdynamics.h:577
PFN_WDFSTRINGCREATE pfnWdfStringCreate
Definition: fxdynamics.h:359
PFN_WDFREQUESTSETACTIVITYID pfnWdfRequestSetActivityId
Definition: fxdynamics.h:205
PFN_WDFFILEOBJECTGETINITIATORPROCESSID pfnWdfFileObjectGetInitiatorProcessId
Definition: fxdynamics.h:92
PFN_WDFIOQUEUEGETSTATE pfnWdfIoQueueGetState
Definition: fxdynamics.h:204
enum _WDF_IO_TARGET_PURGE_IO_ACTION WDF_IO_TARGET_PURGE_IO_ACTION
PFN_WDFFDOINITALLOCANDQUERYPROPERTY pfnWdfFdoInitAllocAndQueryProperty
Definition: fxdynamics.h:178
_Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS STDCALL WDFEXPORT(WdfChildListCreate)(_In_ PWDF_DRIVER_GLOBALS DriverGlobals
Queries information details about a security descriptor.
Definition: Messaging.c:64
PFN_WDFMEMORYASSIGNBUFFER pfnWdfMemoryAssignBuffer
Definition: fxdynamics.h:246
WDFAPI VOID(STDCALL * PFN_WDFOBJECTREFERENCEACTUAL)(_In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFOBJECT Handle, _In_opt_ PVOID Tag, _In_ LONG Line, _In_z_ PCHAR File)
Definition: wdfobject.h:628
_Must_inspect_result_ _In_ WDFDEVICE _In_ DEVICE_REGISTRY_PROPERTY _In_ ULONG BufferLength
Definition: wdfdevice.h:3767
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_IO_QUEUE_CONFIG _In_opt_ PWDF_OBJECT_ATTRIBUTES QueueAttributes
Definition: wdfio.h:613
return
Definition: dirsup.c:529
_Must_inspect_result_ _In_ WDFDEVICE _In_ CONST GUID _In_opt_ PCUNICODE_STRING ReferenceString
Definition: fxdynamics.h:1827
_Must_inspect_result_ _In_ WDFDEVICE _In_ ULONG _In_ ACCESS_MASK DesiredAccess
Definition: wdfdevice.h:2654
_In_ WDFUSBDEVICE _In_ UCHAR InterfaceIndex
Definition: wdfusb.h:2459
__in WDFOBJECT __in PCWDF_OBJECT_CONTEXT_TYPE_INFO TypeInfo
Definition: handleapi.cpp:601
PFN_WDFOBJECTRELEASELOCK pfnWdfObjectReleaseLock
Definition: fxdynamics.h:362
_Must_inspect_result_ _In_ WDFQUEUE _Out_ WDFREQUEST * OutRequest
Definition: wdfio.h:797
PFN_WDFDEVICEQUERYPROPERTY pfnWdfDeviceQueryProperty
Definition: fxdynamics.h:114
PFN_WDFUSBTARGETDEVICEGETNUMINTERFACES pfnWdfUsbTargetDeviceGetNumInterfaces
Definition: fxdynamics.h:232
_Must_inspect_result_ WDFAPI BOOLEAN(STDCALL * PFN_WDFREQUESTSEND)(_In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFREQUEST Request, _In_ WDFIOTARGET Target, _In_opt_ PWDF_REQUEST_SEND_OPTIONS Options)
Definition: wdfrequest.h:662
PFN_WDFDEVICEASSIGNS0IDLESETTINGS pfnWdfDeviceAssignS0IdleSettings
Definition: fxdynamics.h:79
_In_ ULONG _In_ ULONG _In_ ULONG Length
Definition: ntddpcm.h:101
PFN_WDFIOTARGETSTOP pfnWdfIoTargetStop
Definition: fxdynamics.h:223
#define __drv_reportError(why)
Definition: driverspecs.h:319
_Must_inspect_result_ _In_ WDFDEVICE _In_ DEVICE_REGISTRY_PROPERTY _In_ ULONG _Out_writes_bytes_all_(BufferLength) PVOID PropertyBuffer
_In_ PWDFDEVICE_INIT _In_ PFN_WDF_DEVICE_SHUTDOWN_NOTIFICATION _In_ UCHAR Flags
Definition: fxdynamics.h:973
PFN_WDFUSBTARGETPIPEISINENDPOINT pfnWdfUsbTargetPipeIsInEndpoint
Definition: fxdynamics.h:239
PFN_WDFGETTRIAGEINFO pfnWdfGetTriageInfo
Definition: fxdynamics.h:264
_Must_inspect_result_ _In_ WDFQUEUE _In_opt_ WDFREQUEST FoundRequest
Definition: wdfio.h:863
PFN_WDFREQUESTFORWARDTOIOQUEUE pfnWdfRequestForwardToIoQueue
Definition: fxdynamics.h:332
#define _In_opt_
Definition: ms_sal.h:309
NTSTATUS(STDCALL * PFN_WDFIOTARGETSELFASSIGNDEFAULTIOQUEUE)(_In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFIOTARGET IoTarget, _In_ WDFQUEUE Queue)
Definition: wdfcx.h:124
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_DEVICE_PROPERTY_DATA _In_ ULONG _Out_ PVOID _Out_ PULONG RequiredSize
Definition: fxdynamics.h:2189
PFN_WDFDEVICEINITENABLEHIDINTERFACE pfnWdfDeviceInitEnableHidInterface
Definition: fxdynamics.h:272
#define _Inout_
Definition: ms_sal.h:378
PFN_WDFUSBINTERFACEGETDESCRIPTOR pfnWdfUsbInterfaceGetDescriptor
Definition: fxdynamics.h:254
_Must_inspect_result_ _In_ WDFQUEUE _In_opt_ WDFREQUEST _In_opt_ WDFFILEOBJECT _Inout_opt_ PWDF_REQUEST_PARAMETERS Parameters
Definition: wdfio.h:863
_Must_inspect_result_ _In_ WDFUSBDEVICE _In_ CONST GUID _In_ ULONG CapabilityBufferLength
Definition: wdfusb.h:1611
_Must_inspect_result_ _In_ WDFDEVICE _In_ PHYSICAL_ADDRESS _In_ SIZE_T _In_ MEMORY_CACHING_TYPE _Out_ PVOID * PseudoBaseAddress
Definition: fxdynamics.h:997
_In_ WDFIOTARGET _In_ PWDF_REQUEST_COMPLETION_PARAMS Params
Definition: wdfrequest.h:306
_In_ WDFQUEUE _In_opt_ PFN_WDF_IO_QUEUE_STATE StopComplete
Definition: wdfio.h:712
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _In_opt_ PWDF_OBJECT_ATTRIBUTES StringsAttributes
Definition: wdfregistry.h:367
Definition: scsiwmi.h:51
PFN_WDFINTERRUPTQUEUEDPCFORISR pfnWdfInterruptQueueDpcForIsr
Definition: fxdynamics.h:193
_In_ WDFREQUEST _In_opt_ PFN_WDF_REQUEST_COMPLETION_ROUTINE _In_opt_ __drv_aliasesMem WDFCONTEXT CompletionContext
Definition: wdfrequest.h:893
#define _Out_
Definition: ms_sal.h:345
PFN_WDFREQUESTALLOCATETIMER pfnWdfRequestAllocateTimer
Definition: fxdynamics.h:313
_Must_inspect_result_ _In_opt_ PWDF_OBJECT_ATTRIBUTES SpinLockAttributes
Definition: wdfsync.h:225
PFN_WDFREQUESTGETEFFECTIVEIOTYPE pfnWdfRequestGetEffectiveIoType
Definition: fxdynamics.h:207
ULONG Size
Definition: fxdynamics.h:592
PFN_WDFDEVICESETFAILED pfnWdfDeviceSetFailed
Definition: fxdynamics.h:120
_Must_inspect_result_ WDFAPI BOOLEAN STDCALL WDFEXPORT() WdfRequestSend(_In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFREQUEST Request, _In_ WDFIOTARGET Target, _In_opt_ PWDF_REQUEST_SEND_OPTIONS Options)
PFN_WDFUSBTARGETDEVICERESETPORTSYNCHRONOUSLY pfnWdfUsbTargetDeviceResetPortSynchronously
Definition: fxdynamics.h:236
PFN_WDFUSBINTERFACEGETNUMCONFIGUREDPIPES pfnWdfUsbInterfaceGetNumConfiguredPipes
Definition: fxdynamics.h:260
__in PVOID ContextPointer
Definition: handleapi.cpp:679
EVT_WDF_IO_QUEUE_STATE * PFN_WDF_IO_QUEUE_STATE
Definition: wdfio.h:380
PFN_WDFOBJECTQUERY pfnWdfObjectQuery
Definition: fxdynamics.h:260
PFN_WDFDEVICECREATEDEVICEINTERFACE pfnWdfDeviceCreateDeviceInterface
Definition: fxdynamics.h:110
EVT_WDF_REQUEST_CANCEL * PFN_WDF_REQUEST_CANCEL
Definition: wdfrequest.h:130
_Must_inspect_result_ _In_ WDFUSBDEVICE _In_opt_ WDFREQUEST _In_opt_ PWDF_REQUEST_SEND_OPTIONS _In_ PWDF_USB_CONTROL_SETUP_PACKET SetupPacket
Definition: wdfusb.h:1331
_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_WDFCXDEVICEINITSETFILEOBJECTCONFIG pfnWdfCxDeviceInitSetFileObjectConfig
Definition: fxdynamics.h:32
_Must_inspect_result_ _In_ WDFDEVICE _In_ PIRP _In_ WDFQUEUE Queue
Definition: wdfdevice.h:2221
_In_ WDFREQUEST _In_ PWDF_REQUEST_REUSE_PARAMS ReuseParams
Definition: wdfrequest.h:551
PFN_WDFDEVICEINITSETFILEOBJECTCONFIG pfnWdfDeviceInitSetFileObjectConfig
Definition: fxdynamics.h:104
PFN_WDFIOTARGETFORMATREQUESTFORWRITE pfnWdfIoTargetFormatRequestForWrite
Definition: fxdynamics.h:236
_In_ WDFDPC _In_ BOOLEAN Wait
Definition: wdfdpc.h:167
_Must_inspect_result_ _In_ WDFDEVICE _In_ PIRP _In_ WDFCONTEXT DispatchContext
Definition: fxdynamics.h:1178
PFN_WDFREGISTRYQUERYSTRING pfnWdfRegistryQueryString
Definition: fxdynamics.h:290
_Must_inspect_result_ _In_ WDFUSBDEVICE _In_ WDFREQUEST _In_ PWDF_USB_CONTROL_SETUP_PACKET _In_opt_ WDFMEMORY _In_opt_ PWDFMEMORY_OFFSET TransferOffset
Definition: wdfusb.h:1378
_Must_inspect_result_ _In_ WDFDEVICE _In_opt_ PWDF_OBJECT_ATTRIBUTES IoTargetAttributes
Definition: wdfiotarget.h:363
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_INTERRUPT_CONFIG _In_opt_ PWDF_OBJECT_ATTRIBUTES _Out_ WDFINTERRUPT * Interrupt
Definition: wdfinterrupt.h:372
PFN_WDFFDOINITSETFILTER pfnWdfFdoInitSetFilter
Definition: fxdynamics.h:180
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _In_opt_ PWDF_OBJECT_ATTRIBUTES _In_ WDFCOLLECTION Collection
Definition: wdfregistry.h:367
_In_ WDFUSBINTERFACE _In_ UCHAR _Out_ PUSB_INTERFACE_DESCRIPTOR InterfaceDescriptor
Definition: wdfusb.h:2329
_Must_inspect_result_ _In_ WDFUSBPIPE _In_ WDFREQUEST _In_opt_ WDFMEMORY _In_opt_ PWDFMEMORY_OFFSET WriteOffset
Definition: wdfusb.h:1914
PFN_WDFIOTARGETSELFASSIGNDEFAULTIOQUEUE pfnWdfIoTargetSelfAssignDefaultIoQueue
Definition: fxdynamics.h:584
PFN_WDFREGISTRYREMOVEVALUE pfnWdfRegistryRemoveValue
Definition: fxdynamics.h:285
PFN_WDFDEVICEGETFILEOBJECT pfnWdfDeviceGetFileObject
Definition: fxdynamics.h:123
struct _WDFFUNCTIONS WDFFUNCTIONS
LONG NTSTATUS
Definition: precomp.h:26
PFN_WDFINTERRUPTACQUIRELOCK pfnWdfInterruptAcquireLock
Definition: fxdynamics.h:195
enum _WDF_DEVICE_IO_TYPE WDF_DEVICE_IO_TYPE
_In_ WDFDEVICE _In_ REFGUID EventGuid
Definition: fxdynamics.h:978
_Must_inspect_result_ _In_ WDFUSBDEVICE _Out_writes_bytes_to_opt_ ConfigDescriptorLength PVOID _Inout_ PUSHORT ConfigDescriptorLength
Definition: wdfusb.h:1036
_IRQL_restores_(OldIrql)) _When_(OldIrql !
_Must_inspect_result_ _In_ WDFDEVICE _In_ DEVICE_REGISTRY_PROPERTY _In_ ULONG _Out_ PULONG ResultLength
Definition: fxdynamics.h:1901
PFN_WDFREQUESTRETRIEVEINPUTBUFFER pfnWdfRequestRetrieveInputBuffer
Definition: fxdynamics.h:320
PFN_WDFFDOINITQUERYPROPERTYEX pfnWdfFdoInitQueryPropertyEx
Definition: fxdynamics.h:578
PFN_WDFDEVICEWRITETOHARDWARE pfnWdfDeviceWriteToHardware
Definition: fxdynamics.h:71
_In_ WDFQUEUE _In_opt_ PFN_WDF_IO_QUEUE_STATE PurgeComplete
Definition: wdfio.h:1030
WDFAPI WDFOBJECT(FASTCALL * PFN_WDFOBJECTCONTEXTGETOBJECT)(_In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PVOID ContextPointer)
Definition: wdfobject.h:605
PFN_WDFUSBTARGETPIPERESETSYNCHRONOUSLY pfnWdfUsbTargetPipeResetSynchronously
Definition: fxdynamics.h:250
PFN_WDFDEVICEALLOCANDQUERYINTERFACEPROPERTY pfnWdfDeviceAllocAndQueryInterfaceProperty
Definition: fxdynamics.h:73
WDFAPI VOID STDCALL WDFEXPORT() WdfVerifierDbgBreakPoint(_In_ PWDF_DRIVER_GLOBALS DriverGlobals)
WDFAPI PVOID FASTCALL WDFEXPORT() WdfObjectGetTypedContextWorker(_In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFOBJECT Handle, _In_ PCWDF_OBJECT_CONTEXT_TYPE_INFO TypeInfo)
PFN_WDFUSBTARGETDEVICECREATEWITHPARAMETERS pfnWdfUsbTargetDeviceCreateWithParameters
Definition: fxdynamics.h:225
PFN_WDFCOLLECTIONGETITEM pfnWdfCollectionGetItem
Definition: fxdynamics.h:46
_Must_inspect_result_ _In_ WDFMEMORY _In_ size_t SourceOffset
Definition: wdfmemory.h:318
PFN_WDFREQUESTGETFILEOBJECT pfnWdfRequestGetFileObject
Definition: fxdynamics.h:328
_Must_inspect_result_ _In_opt_ PWDF_OBJECT_ATTRIBUTES _In_ __drv_aliasesMem PVOID Buffer
Definition: fxdynamics.h:4136
_Must_inspect_result_ _In_ WDFUSBDEVICE _In_opt_ PWDF_OBJECT_ATTRIBUTES PipeAttributes
Definition: wdfusb.h:1240
PFN_WDFUSBTARGETDEVICESENDCONTROLTRANSFERSYNCHRONOUSLY pfnWdfUsbTargetDeviceSendControlTransferSynchronously
Definition: fxdynamics.h:234
_In_ WDFREQUEST Request
Definition: wdfdevice.h:547
_Must_inspect_result_ _In_ WDFUSBDEVICE _In_opt_ WDFREQUEST _In_opt_ PWDF_REQUEST_SEND_OPTIONS _Out_writes_opt_ NumCharacters PUSHORT _Inout_ PUSHORT _In_ UCHAR StringIndex
Definition: wdfusb.h:1075
_Must_inspect_result_ _In_ WDFMEMORY SourceMemory
Definition: wdfmemory.h:318
_In_ WDFDEVICE _Out_ PWDF_DEVICE_STATE DeviceState
Definition: fxdynamics.h:1093
PFN_WDFREGISTRYQUERYMULTISTRING pfnWdfRegistryQueryMultiString
Definition: fxdynamics.h:288
_In_ PWDFDEVICE_INIT _In_ PWDF_PNPPOWER_EVENT_CALLBACKS PnpPowerEventCallbacks
Definition: fxdynamics.h:1501
PFN_WDFVERIFIERDBGBREAKPOINT pfnWdfVerifierDbgBreakPoint
Definition: fxdynamics.h:262
_Must_inspect_result_ _In_ WDFUSBDEVICE _In_opt_ WDFREQUEST _In_opt_ PWDF_REQUEST_SEND_OPTIONS _In_ PWDF_USB_CONTROL_SETUP_PACKET _In_opt_ PWDF_MEMORY_DESCRIPTOR MemoryDescriptor
Definition: wdfusb.h:1331
PFN_WDFDEVICESETPOWERCAPABILITIES pfnWdfDeviceSetPowerCapabilities
Definition: fxdynamics.h:117
_Must_inspect_result_ _In_ WDFDEVICE _In_ ULONG _In_ ACCESS_MASK _In_opt_ PWDF_OBJECT_ATTRIBUTES KeyAttributes
Definition: fxdynamics.h:1388
_In_ WDFQUEUE _Out_opt_ PULONG _Out_opt_ PULONG DriverRequests
Definition: wdfio.h:651
PFN_WDFIOTARGETSENDWRITESYNCHRONOUSLY pfnWdfIoTargetSendWriteSynchronously
Definition: fxdynamics.h:235
PFN_WDFWAITLOCKRELEASE pfnWdfWaitLockRelease
Definition: fxdynamics.h:365
DriverGlobals
_Must_inspect_result_ _In_ _Acquires_lock_(_Curr_)) WDFINTERRUPT Interrupt)
Definition: wdfinterrupt.h:755
PFN_WDFMEMORYCREATEPREALLOCATED pfnWdfMemoryCreatePreallocated
Definition: fxdynamics.h:244
_Must_inspect_result_ _In_ WDFIOTARGET _In_opt_ WDFREQUEST _In_ ULONG IoctlCode
Definition: wdfiotarget.h:1039
WDFAPI VOID(STDCALL * PFN_WDFVERIFIERDBGBREAKPOINT)(_In_ PWDF_DRIVER_GLOBALS DriverGlobals)
Definition: wdfverifier.h:61
PFN_WDFIOQUEUESTART pfnWdfIoQueueStart
Definition: fxdynamics.h:205
PFN_WDFOBJECTCONTEXTGETOBJECT pfnWdfObjectContextGetObject
Definition: fxdynamics.h:255
ULONG * PDEVPROPTYPE
Definition: devpropdef.h:24
PFN_WDFUSBTARGETDEVICERETRIEVECONFIGDESCRIPTOR pfnWdfUsbTargetDeviceRetrieveConfigDescriptor
Definition: fxdynamics.h:228
_Must_inspect_result_ _In_ WDFREQUEST _In_ size_t MinimumRequiredLength
Definition: wdfrequest.h:1169
PFN_WDFUSBTARGETDEVICEFORMATREQUESTFORCONTROLTRANSFER pfnWdfUsbTargetDeviceFormatRequestForControlTransfer
Definition: fxdynamics.h:235
PFN_WDFDEVICEGETIOTARGET pfnWdfDeviceGetIoTarget
Definition: fxdynamics.h:75
PFN_WDFIOTARGETCREATE pfnWdfIoTargetCreate
Definition: fxdynamics.h:218
PFN_WDFUSBTARGETPIPEFORMATREQUESTFORREAD pfnWdfUsbTargetPipeFormatRequestForRead
Definition: fxdynamics.h:246
ULONG DEVPROPTYPE
Definition: devpropdef.h:24
PFN_WDFREGISTRYASSIGNULONG pfnWdfRegistryAssignULong
Definition: fxdynamics.h:297
PFN_WDFREQUESTIMPERSONATE pfnWdfRequestImpersonate
Definition: fxdynamics.h:200
PFN_WDFREGISTRYOPENKEY pfnWdfRegistryOpenKey
Definition: fxdynamics.h:280
_In_ WDFQUEUE _In_opt_ PFN_WDF_IO_QUEUE_STATE StopAndPurgeComplete
Definition: wdfio.h:1133
PFN_WDFDEVICESETSTATICSTOPREMOVE pfnWdfDeviceSetStaticStopRemove
Definition: fxdynamics.h:109
PFN_WDFUSBINTERFACEGETCONFIGUREDPIPE pfnWdfUsbInterfaceGetConfiguredPipe
Definition: fxdynamics.h:261
PFN_WDFINTERRUPTQUEUEWORKITEMFORISR pfnWdfInterruptQueueWorkItemForIsr
Definition: fxdynamics.h:548
enum _WDF_RELEASE_HARDWARE_ORDER_ON_FAILURE WDF_RELEASE_HARDWARE_ORDER_ON_FAILURE
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _In_ ULONG _Out_opt_ PULONG _Out_opt_ PULONG ValueType
Definition: wdfregistry.h:279
#define FASTCALL
Definition: nt_native.h:50
PFN_WDFFDOINITQUERYPROPERTY pfnWdfFdoInitQueryProperty
Definition: fxdynamics.h:177
WDFAPI VOID(STDCALL * PFN_WDFOBJECTDEREFERENCEACTUAL)(_In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFOBJECT Handle, _In_opt_ PVOID Tag, _In_ LONG Line, _In_z_ PCHAR File)
Definition: wdfobject.h:663
_Must_inspect_result_ _In_ WDFOBJECT _In_ CONST GUID _In_ ULONG QueryBufferLength
Definition: wdfobject.h:760
_In_ WDFREQUEST _In_ NTSTATUS _In_ ULONG_PTR Information
Definition: wdfrequest.h:1044
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_DEVICE_PROPERTY_DATA _In_ DEVPROPTYPE _In_ ULONG _In_opt_ PVOID Data
Definition: fxdynamics.h:2234
_Must_inspect_result_ _In_ WDFDEVICE _In_ DEVICE_REGISTRY_PROPERTY DeviceProperty
Definition: fxdynamics.h:1892
PFN_WDFOBJECTALLOCATECONTEXT pfnWdfObjectAllocateContext
Definition: fxdynamics.h:254
PFN_WDFUSBTARGETDEVICERETRIEVEINFORMATION pfnWdfUsbTargetDeviceRetrieveInformation
Definition: fxdynamics.h:226
PFN_WDFFDOINITALLOCANDQUERYPROPERTYEX pfnWdfFdoInitAllocAndQueryPropertyEx
Definition: fxdynamics.h:579
PFN_WDFIOTARGETSENDREADSYNCHRONOUSLY pfnWdfIoTargetSendReadSynchronously
Definition: fxdynamics.h:233
#define _IRQL_raises_(irql)
Definition: driverspecs.h:228
VOID(STDCALL * PFN_WDFCXDEVICEINITSETFILEOBJECTCONFIG)(_In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ PWDFCXDEVICE_INIT CxDeviceInit, _In_ PWDFCX_FILEOBJECT_CONFIG CxFileObjectConfig, _In_opt_ PWDF_OBJECT_ATTRIBUTES FileObjectAttributes)
Definition: wdfcx.h:97
PFN_WDFIOQUEUEFINDREQUEST pfnWdfIoQueueFindRequest
Definition: fxdynamics.h:211
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _Out_opt_ PUSHORT ValueByteLength
Definition: wdfregistry.h:406
_Must_inspect_result_ _In_ WDFDMAENABLER _In_ _In_opt_ PWDF_OBJECT_ATTRIBUTES Attributes
Definition: fxdynamics.h:892
_In_ WDFDEVICE _Out_ WDF_DEVICE_IO_TYPE * ReadWriteIoType
Definition: fxdynamics.h:1141
_Must_inspect_result_ _In_ WDFUSBDEVICE _In_ WDFREQUEST _In_ PWDF_USB_CONTROL_SETUP_PACKET _In_opt_ WDFMEMORY TransferMemory
Definition: wdfusb.h:1378
_Must_inspect_result_ _In_ WDFIOTARGET _In_opt_ WDFREQUEST _In_ ULONG _In_opt_ PWDF_MEMORY_DESCRIPTOR _In_opt_ PWDF_MEMORY_DESCRIPTOR _In_opt_ PWDF_REQUEST_SEND_OPTIONS _Out_opt_ PULONG_PTR BytesReturned
Definition: wdfiotarget.h:1039
WDFAPI NTSTATUS STDCALL WDFEXPORT() WdfObjectAllocateContext(_In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFOBJECT Handle, _In_ PWDF_OBJECT_ATTRIBUTES ContextAttributes, _Outptr_opt_ PVOID *Context)
_Must_inspect_result_ _In_ WDFIOTARGET _In_opt_ WDFREQUEST _In_opt_ PWDF_MEMORY_DESCRIPTOR _In_opt_ PLONGLONG _In_opt_ PWDF_REQUEST_SEND_OPTIONS _Out_opt_ PULONG_PTR BytesRead
Definition: wdfiotarget.h:859
PFN_WDFREGISTRYQUERYMEMORY pfnWdfRegistryQueryMemory
Definition: fxdynamics.h:287
_In_ _Requires_lock_held_(_Curr_) _Releases_lock_(_Curr_) WDFINTERRUPT Interrupt)
PFN_WDFREQUESTGETINFORMATION pfnWdfRequestGetInformation
Definition: fxdynamics.h:327
_Must_inspect_result_ _In_opt_ PWDF_OBJECT_ATTRIBUTES CollectionAttributes
Definition: fxdynamics.h:787
PFN_WDFDEVICECONFIGUREWDMIRPDISPATCHCALLBACK pfnWdfDeviceConfigureWdmIrpDispatchCallback
Definition: fxdynamics.h:524
_Must_inspect_result_ _In_ WDFREQUEST _In_ size_t MinimumRequiredSize
Definition: wdfrequest.h:1208
EVT_WDFDEVICE_WDM_IRP_DISPATCH * PFN_WDFDEVICE_WDM_IRP_DISPATCH
Definition: wdfdevice.h:1710
uint32_t ULONG_PTR
Definition: typedefs.h:65
PFN_WDFINTERRUPTENABLE pfnWdfInterruptEnable
Definition: fxdynamics.h:197
_Must_inspect_result_ _In_ WDFUSBDEVICE _In_opt_ PWDF_OBJECT_ATTRIBUTES _Out_ WDFMEMORY * StringMemory
Definition: wdfusb.h:1121
_Must_inspect_result_ _In_ WDFCHILDLIST _In_ PWDF_CHILD_LIST_ITERATOR _Out_ WDFDEVICE _Inout_opt_ PWDF_CHILD_RETRIEVE_INFO Info
Definition: wdfchildlist.h:683
enum _WDF_IO_TARGET_SENT_IO_ACTION WDF_IO_TARGET_SENT_IO_ACTION
PFN_WDFREQUESTRETRIEVEOUTPUTBUFFER pfnWdfRequestRetrieveOutputBuffer
Definition: fxdynamics.h:321
_Must_inspect_result_ _In_ WDFUSBDEVICE _In_opt_ WDFREQUEST _In_opt_ PWDF_REQUEST_SEND_OPTIONS _Out_writes_opt_ NumCharacters PUSHORT _Inout_ PUSHORT NumCharacters
Definition: wdfusb.h:1075
PFN_WDFDEVICESTOPIDLEACTUAL pfnWdfDeviceStopIdleActual
Definition: fxdynamics.h:580
PFN_WDFREQUESTREUSE pfnWdfRequestReuse
Definition: fxdynamics.h:300
WDFAPI VOID STDCALL WDFEXPORT() WdfCxVerifierKeBugCheck(_In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_opt_ WDFOBJECT Object, _In_ ULONG BugCheckCode, _In_ ULONG_PTR BugCheckParameter1, _In_ ULONG_PTR BugCheckParameter2, _In_ ULONG_PTR BugCheckParameter3, _In_ ULONG_PTR BugCheckParameter4)
__GNU_EXTENSION typedef __int64 * PLONGLONG
Definition: ntbasedef.h:382
PFN_WDFUSBTARGETDEVICEQUERYUSBCAPABILITY pfnWdfUsbTargetDeviceQueryUsbCapability
Definition: fxdynamics.h:237
WDFAPI NTSTATUS(STDCALL * PFN_WDFOBJECTALLOCATECONTEXT)(_In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFOBJECT Handle, _In_ PWDF_OBJECT_ATTRIBUTES ContextAttributes, _Outptr_opt_ PVOID *Context)
Definition: wdfobject.h:574
_In_ PWDFDEVICE_INIT _In_ WDF_RELEASE_HARDWARE_ORDER_ON_FAILURE ReleaseHardwareOrderOnFailure
Definition: fxdynamics.h:2162
PFN_WDFCMRESOURCELISTGETDESCRIPTOR pfnWdfCmResourceListGetDescriptor
Definition: fxdynamics.h:356
_In_ WDFUSBINTERFACE _In_ UCHAR PipeIndex
Definition: wdfusb.h:2538
WDFFUNCTIONS Functions
Definition: fxdynamics.h:594
PFN_WDFTIMERSTART pfnWdfTimerStart
Definition: fxdynamics.h:370
WDFAPI VOID STDCALL WDFEXPORT() WdfObjectDereferenceActual(_In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFOBJECT Handle, _In_opt_ PVOID Tag, _In_ LONG Line, _In_z_ PCHAR File)
_In_ WDFUSBPIPE _Out_ PWDF_USB_PIPE_INFORMATION PipeInformation
Definition: wdfusb.h:1741
PFN_WDFREQUESTCREATE pfnWdfRequestCreate
Definition: fxdynamics.h:298
_In_ WDFDEVICE _In_ WDF_DEVICE_FAILED_ACTION FailedAction
Definition: fxdynamics.h:1985
PFN_WDFDEVICEGETDRIVER pfnWdfDeviceGetDriver
Definition: fxdynamics.h:72
PFN_WDFUSBTARGETPIPEWRITESYNCHRONOUSLY pfnWdfUsbTargetPipeWriteSynchronously
Definition: fxdynamics.h:243
_Must_inspect_result_ _In_ WDFDEVICE _In_ WDFSTRING String
Definition: wdfdevice.h:2430
PFN_WDFUSBINTERFACEGETNUMSETTINGS pfnWdfUsbInterfaceGetNumSettings
Definition: fxdynamics.h:255
PFN_WDFUSBTARGETPIPESETNOMAXIMUMPACKETSIZECHECK pfnWdfUsbTargetPipeSetNoMaximumPacketSizeCheck
Definition: fxdynamics.h:242
PFN_WDFMEMORYGETBUFFER pfnWdfMemoryGetBuffer
Definition: fxdynamics.h:245
PFN_WDFINTERRUPTGETDEVICE pfnWdfInterruptGetDevice
Definition: fxdynamics.h:202
PFN_WDFREQUESTGETUSERMODEDRIVERINITIATEDIO pfnWdfRequestGetUserModeDriverInitiatedIo
Definition: fxdynamics.h:204
#define _Outptr_result_bytebuffer_(size)
Definition: ms_sal.h:472
PFN_WDFIOQUEUESTOPANDPURGESYNCHRONOUSLY pfnWdfIoQueueStopAndPurgeSynchronously
Definition: fxdynamics.h:551
_In_ WDFDEVICE _In_ PWDF_DEVICE_INTERFACE_PROPERTY_DATA PropertyData
Definition: fxdynamics.h:1083
PFN_WDFREQUESTCOMPLETEWITHINFORMATION pfnWdfRequestCompleteWithInformation
Definition: fxdynamics.h:316
long LONG
Definition: pedump.c:60
EVT_WDF_INTERRUPT_SYNCHRONIZE * PFN_WDF_INTERRUPT_SYNCHRONIZE
Definition: wdfinterrupt.h:115
PFN_WDFOBJECTDELETE pfnWdfObjectDelete
Definition: fxdynamics.h:259
PFN_WDFINTERRUPTSETPOLICY pfnWdfInterruptSetPolicy
Definition: fxdynamics.h:201
_Must_inspect_result_ _In_ WDFUSBPIPE _In_ WDFREQUEST _In_opt_ WDFMEMORY _In_opt_ PWDFMEMORY_OFFSET ReadOffset
Definition: wdfusb.h:1996
PFN_WDFDRIVEROPENPARAMETERSREGISTRYKEY pfnWdfDriverOpenParametersRegistryKey
Definition: fxdynamics.h:170
#define WDFEXPORT(a)
Definition: fxmacros.hpp:157
_Must_inspect_result_ _In_ WDFWMIINSTANCE _In_opt_ ULONG _In_reads_bytes_opt_(EventDataSize) PVOID EventData)
Definition: wdfwmi.h:631
_In_ WDFQUEUE _Out_opt_ PULONG QueueRequests
Definition: wdfio.h:651
#define WDFAPI
Definition: wdftypes.h:53
#define _IRQL_requires_min_(irql)
Definition: driverspecs.h:231
_In_ PWDFDEVICE_INIT _In_ PWDF_IO_TYPE_CONFIG IoTypeConfig
Definition: fxdynamics.h:2175
WDFAPI WDFDEVICE STDCALL WDFEXPORT() WdfInterruptGetDevice(_In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFINTERRUPT Interrupt)
enum _SECURITY_IMPERSONATION_LEVEL SECURITY_IMPERSONATION_LEVEL
_In_ PWDFDEVICE_INIT _In_ PWDF_OBJECT_ATTRIBUTES RequestAttributes
Definition: wdfdevice.h:3428
PFN_WDFWAITLOCKCREATE pfnWdfWaitLockCreate
Definition: fxdynamics.h:363
PFN_WDFREQUESTGETSTATUS pfnWdfRequestGetStatus
Definition: fxdynamics.h:305
PFN_WDFUSBINTERFACEGETNUMENDPOINTS pfnWdfUsbInterfaceGetNumEndpoints
Definition: fxdynamics.h:253
#define _Releases_lock_(a)
Definition: btrfs_drv.h:208
PFN_WDFTIMERGETPARENTOBJECT pfnWdfTimerGetParentObject
Definition: fxdynamics.h:372
_Must_inspect_result_ _In_opt_ PWDF_OBJECT_ATTRIBUTES _Out_ WDFSPINLOCK * SpinLock
Definition: wdfsync.h:225
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_INTERRUPT_CONFIG _In_opt_ PWDF_OBJECT_ATTRIBUTES _Out_ WDFINTERRUPT * Interrupt
Definition: fxdynamics.h:3175
PFN_WDFDEVICESTOPIDLENOTRACK pfnWdfDeviceStopIdleNoTrack
Definition: fxdynamics.h:121
PFN_WDFREQUESTSEND pfnWdfRequestSend
Definition: fxdynamics.h:304
_Must_inspect_result_ _In_ WDFDEVICE _In_ WDFQUEUE _In_ _Strict_type_match_ WDF_REQUEST_TYPE RequestType
Definition: fxdynamics.h:2101
#define __drv_aliasesMem
Definition: btrfs_drv.h:205
_In_ PWDFDEVICE_INIT _In_ PWDF_POWER_POLICY_EVENT_CALLBACKS PowerPolicyEventCallbacks
Definition: fxdynamics.h:1514
PFN_WDFDEVICESETDEVICEINTERFACESTATE pfnWdfDeviceSetDeviceInterfaceState
Definition: fxdynamics.h:111
PFN_WDFREGISTRYQUERYUNICODESTRING pfnWdfRegistryQueryUnicodeString
Definition: fxdynamics.h:289
WDFIOTARGET(STDCALL * PFN_WDFDEVICEGETSELFIOTARGET)(_In_ PWDF_DRIVER_GLOBALS DriverGlobals, _In_ WDFDEVICE Device)
Definition: wdfcx.h:114
_Must_inspect_result_ _In_ WDFDEVICE _In_ ULONG _In_ ACCESS_MASK DesiredAccess
Definition: fxdynamics.h:1388
PFN_WDFIOTARGETFORMATREQUESTFORREAD pfnWdfIoTargetFormatRequestForRead
Definition: fxdynamics.h:234
PFN_WDFCOLLECTIONREMOVEITEM pfnWdfCollectionRemoveItem
Definition: fxdynamics.h:45
PFN_WDFMEMORYCOPYTOBUFFER pfnWdfMemoryCopyToBuffer
Definition: fxdynamics.h:247
enum _WDF_INTERRUPT_POLICY WDF_INTERRUPT_POLICY
unsigned char BOOLEAN
PFN_WDFINTERRUPTSETEXTENDEDPOLICY pfnWdfInterruptSetExtendedPolicy
Definition: fxdynamics.h:503
int zero
Definition: sehframes.cpp:29
_Must_inspect_result_ _In_ WDFDEVICE _In_ BOOLEAN IsPresent
Definition: fxdynamics.h:1471
_Must_inspect_result_ _In_ PDRIVER_OBJECT _In_ PCUNICODE_STRING _In_opt_ PWDF_OBJECT_ATTRIBUTES _In_ PWDF_DRIVER_CONFIG DriverConfig
Definition: fxdynamics.h:2775
PFN_WDFDEVICEOPENREGISTRYKEY pfnWdfDeviceOpenRegistryKey
Definition: fxdynamics.h:81
_Must_inspect_result_ _In_ WDFUSBDEVICE _Out_writes_bytes_to_opt_ ConfigDescriptorLength PVOID ConfigDescriptor
Definition: wdfusb.h:1036
PFN_WDFWORKITEMGETPARENTOBJECT pfnWdfWorkItemGetParentObject
Definition: fxdynamics.h:490
#define _In_
Definition: ms_sal.h:308
PFN_WDFUSBTARGETDEVICEGETDEVICEDESCRIPTOR pfnWdfUsbTargetDeviceGetDeviceDescriptor
Definition: fxdynamics.h:227
_Must_inspect_result_ _In_ WDFDMATRANSACTION _In_opt_ WDFCONTEXT Context
Definition: fxdynamics.h:2452
_Must_inspect_result_ _In_ WDFDEVICE _In_ DEVICE_REGISTRY_PROPERTY _In_ _Strict_type_match_ POOL_TYPE PoolType
Definition: fxdynamics.h:1912
PFN_WDFUSBTARGETDEVICEGETINTERFACE pfnWdfUsbTargetDeviceGetInterface
Definition: fxdynamics.h:258
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_DEVICE_POWER_POLICY_IDLE_SETTINGS Settings
Definition: fxdynamics.h:1360
PFN_WDFIOTARGETSTART pfnWdfIoTargetStart
Definition: fxdynamics.h:222
#define _In_z_
Definition: ms_sal.h:313
EVT_WDF_REQUEST_COMPLETION_ROUTINE * PFN_WDF_REQUEST_COMPLETION_ROUTINE
Definition: wdfrequest.h:313
Definition: bufpool.h:45
_Must_inspect_result_ _In_ WDFKEY _