ReactOS  0.4.15-dev-2528-g5506091
fxdynamics.h
Go to the documentation of this file.
1 /*++
2 
3 Module Name: FxDynamics.h
4 
5 Abstract:
6  Generated header for WDF APIs
7 
8 Environment:
9  kernel mode only
10 
11  Warning: manual changes to this file will be lost.
12 --*/
13 
14 #ifndef _FXDYNAMICS_H_
15 #define _FXDYNAMICS_H_
16 
17 typedef WDFAPI NTSTATUS
19 
20 WDFAPI
22 STDCALL
24 
25 
26 typedef struct _WDFFUNCTIONS {
27 
28  PFN_WDFCHILDLISTCREATE pfnWdfChildListCreate;
29  PFN_WDFCHILDLISTGETDEVICE pfnWdfChildListGetDevice;
30  PFN_WDFCHILDLISTRETRIEVEPDO pfnWdfChildListRetrievePdo;
31  PFN_WDFCHILDLISTRETRIEVEADDRESSDESCRIPTION pfnWdfChildListRetrieveAddressDescription;
32  PFN_WDFCHILDLISTBEGINSCAN pfnWdfChildListBeginScan;
33  PFN_WDFCHILDLISTENDSCAN pfnWdfChildListEndScan;
34  PFN_WDFCHILDLISTBEGINITERATION pfnWdfChildListBeginIteration;
35  PFN_WDFCHILDLISTRETRIEVENEXTDEVICE pfnWdfChildListRetrieveNextDevice;
36  PFN_WDFCHILDLISTENDITERATION pfnWdfChildListEndIteration;
37  PFN_WDFCHILDLISTADDORUPDATECHILDDESCRIPTIONASPRESENT pfnWdfChildListAddOrUpdateChildDescriptionAsPresent;
38  PFN_WDFCHILDLISTUPDATECHILDDESCRIPTIONASMISSING pfnWdfChildListUpdateChildDescriptionAsMissing;
39  PFN_WDFCHILDLISTUPDATEALLCHILDDESCRIPTIONSASPRESENT pfnWdfChildListUpdateAllChildDescriptionsAsPresent;
40  PFN_WDFCHILDLISTREQUESTCHILDEJECT pfnWdfChildListRequestChildEject;
41  PFN_WDFCOLLECTIONCREATE pfnWdfCollectionCreate;
42  PFN_WDFCOLLECTIONGETCOUNT pfnWdfCollectionGetCount;
43  PFN_WDFCOLLECTIONADD pfnWdfCollectionAdd;
44  PFN_WDFCOLLECTIONREMOVE pfnWdfCollectionRemove;
45  PFN_WDFCOLLECTIONREMOVEITEM pfnWdfCollectionRemoveItem;
46  PFN_WDFCOLLECTIONGETITEM pfnWdfCollectionGetItem;
47  PFN_WDFCOLLECTIONGETFIRSTITEM pfnWdfCollectionGetFirstItem;
48  PFN_WDFCOLLECTIONGETLASTITEM pfnWdfCollectionGetLastItem;
49  // PFN_WDFCOMMONBUFFERCREATE pfnWdfCommonBufferCreate;
50  // PFN_WDFCOMMONBUFFERGETALIGNEDVIRTUALADDRESS pfnWdfCommonBufferGetAlignedVirtualAddress;
51  // PFN_WDFCOMMONBUFFERGETALIGNEDLOGICALADDRESS pfnWdfCommonBufferGetAlignedLogicalAddress;
52  // PFN_WDFCOMMONBUFFERGETLENGTH pfnWdfCommonBufferGetLength;
57 
58  PFN_WDFCONTROLDEVICEINITALLOCATE pfnWdfControlDeviceInitAllocate;
59  PFN_WDFCONTROLDEVICEINITSETSHUTDOWNNOTIFICATION pfnWdfControlDeviceInitSetShutdownNotification;
60  PFN_WDFCONTROLFINISHINITIALIZING pfnWdfControlFinishInitializing;
61  PFN_WDFDEVICEGETDEVICESTATE pfnWdfDeviceGetDeviceState;
62  PFN_WDFDEVICESETDEVICESTATE pfnWdfDeviceSetDeviceState;
63  PFN_WDFWDMDEVICEGETWDFDEVICEHANDLE pfnWdfWdmDeviceGetWdfDeviceHandle;
64  PFN_WDFDEVICEWDMGETDEVICEOBJECT pfnWdfDeviceWdmGetDeviceObject;
65  PFN_WDFDEVICEWDMGETATTACHEDDEVICE pfnWdfDeviceWdmGetAttachedDevice;
66  PFN_WDFDEVICEWDMGETPHYSICALDEVICE pfnWdfDeviceWdmGetPhysicalDevice;
67  PFN_WDFDEVICEWDMDISPATCHPREPROCESSEDIRP pfnWdfDeviceWdmDispatchPreprocessedIrp;
68  PFN_WDFDEVICEADDDEPENDENTUSAGEDEVICEOBJECT pfnWdfDeviceAddDependentUsageDeviceObject;
69  PFN_WDFDEVICEADDREMOVALRELATIONSPHYSICALDEVICE pfnWdfDeviceAddRemovalRelationsPhysicalDevice;
70  PFN_WDFDEVICEREMOVEREMOVALRELATIONSPHYSICALDEVICE pfnWdfDeviceRemoveRemovalRelationsPhysicalDevice;
71  PFN_WDFDEVICECLEARREMOVALRELATIONSDEVICES pfnWdfDeviceClearRemovalRelationsDevices;
72  PFN_WDFDEVICEGETDRIVER pfnWdfDeviceGetDriver;
73  PFN_WDFDEVICERETRIEVEDEVICENAME pfnWdfDeviceRetrieveDeviceName;
74  PFN_WDFDEVICEASSIGNMOFRESOURCENAME pfnWdfDeviceAssignMofResourceName;
75  PFN_WDFDEVICEGETIOTARGET pfnWdfDeviceGetIoTarget;
76  PFN_WDFDEVICEGETDEVICEPNPSTATE pfnWdfDeviceGetDevicePnpState;
77  PFN_WDFDEVICEGETDEVICEPOWERSTATE pfnWdfDeviceGetDevicePowerState;
78  PFN_WDFDEVICEGETDEVICEPOWERPOLICYSTATE pfnWdfDeviceGetDevicePowerPolicyState;
79  PFN_WDFDEVICEASSIGNS0IDLESETTINGS pfnWdfDeviceAssignS0IdleSettings;
80  PFN_WDFDEVICEASSIGNSXWAKESETTINGS pfnWdfDeviceAssignSxWakeSettings;
81  PFN_WDFDEVICEOPENREGISTRYKEY pfnWdfDeviceOpenRegistryKey;
82  PFN_WDFDEVICESETSPECIALFILESUPPORT pfnWdfDeviceSetSpecialFileSupport;
83  PFN_WDFDEVICESETCHARACTERISTICS pfnWdfDeviceSetCharacteristics;
84  PFN_WDFDEVICEGETCHARACTERISTICS pfnWdfDeviceGetCharacteristics;
85  PFN_WDFDEVICEGETALIGNMENTREQUIREMENT pfnWdfDeviceGetAlignmentRequirement;
86  PFN_WDFDEVICESETALIGNMENTREQUIREMENT pfnWdfDeviceSetAlignmentRequirement;
87  PFN_WDFDEVICEINITFREE pfnWdfDeviceInitFree;
88  PFN_WDFDEVICEINITSETPNPPOWEREVENTCALLBACKS pfnWdfDeviceInitSetPnpPowerEventCallbacks;
89  PFN_WDFDEVICEINITSETPOWERPOLICYEVENTCALLBACKS pfnWdfDeviceInitSetPowerPolicyEventCallbacks;
90  PFN_WDFDEVICEINITSETPOWERPOLICYOWNERSHIP pfnWdfDeviceInitSetPowerPolicyOwnership;
91  PFN_WDFDEVICEINITREGISTERPNPSTATECHANGECALLBACK pfnWdfDeviceInitRegisterPnpStateChangeCallback;
92  PFN_WDFDEVICEINITREGISTERPOWERSTATECHANGECALLBACK pfnWdfDeviceInitRegisterPowerStateChangeCallback;
93  PFN_WDFDEVICEINITREGISTERPOWERPOLICYSTATECHANGECALLBACK pfnWdfDeviceInitRegisterPowerPolicyStateChangeCallback;
94  PFN_WDFDEVICEINITSETIOTYPE pfnWdfDeviceInitSetIoType;
95  PFN_WDFDEVICEINITSETEXCLUSIVE pfnWdfDeviceInitSetExclusive;
96  PFN_WDFDEVICEINITSETPOWERNOTPAGEABLE pfnWdfDeviceInitSetPowerNotPageable;
97  PFN_WDFDEVICEINITSETPOWERPAGEABLE pfnWdfDeviceInitSetPowerPageable;
98  PFN_WDFDEVICEINITSETPOWERINRUSH pfnWdfDeviceInitSetPowerInrush;
99  PFN_WDFDEVICEINITSETDEVICETYPE pfnWdfDeviceInitSetDeviceType;
100  PFN_WDFDEVICEINITASSIGNNAME pfnWdfDeviceInitAssignName;
101  PFN_WDFDEVICEINITASSIGNSDDLSTRING pfnWdfDeviceInitAssignSDDLString;
102  PFN_WDFDEVICEINITSETDEVICECLASS pfnWdfDeviceInitSetDeviceClass;
103  PFN_WDFDEVICEINITSETCHARACTERISTICS pfnWdfDeviceInitSetCharacteristics;
104  PFN_WDFDEVICEINITSETFILEOBJECTCONFIG pfnWdfDeviceInitSetFileObjectConfig;
105  PFN_WDFDEVICEINITSETREQUESTATTRIBUTES pfnWdfDeviceInitSetRequestAttributes;
106  PFN_WDFDEVICEINITASSIGNWDMIRPPREPROCESSCALLBACK pfnWdfDeviceInitAssignWdmIrpPreprocessCallback;
107  PFN_WDFDEVICEINITSETIOINCALLERCONTEXTCALLBACK pfnWdfDeviceInitSetIoInCallerContextCallback;
108  PFN_WDFDEVICECREATE pfnWdfDeviceCreate;
109  PFN_WDFDEVICESETSTATICSTOPREMOVE pfnWdfDeviceSetStaticStopRemove;
110  PFN_WDFDEVICECREATEDEVICEINTERFACE pfnWdfDeviceCreateDeviceInterface;
111  PFN_WDFDEVICESETDEVICEINTERFACESTATE pfnWdfDeviceSetDeviceInterfaceState;
112  PFN_WDFDEVICERETRIEVEDEVICEINTERFACESTRING pfnWdfDeviceRetrieveDeviceInterfaceString;
113  PFN_WDFDEVICECREATESYMBOLICLINK pfnWdfDeviceCreateSymbolicLink;
114  PFN_WDFDEVICEQUERYPROPERTY pfnWdfDeviceQueryProperty;
115  PFN_WDFDEVICEALLOCANDQUERYPROPERTY pfnWdfDeviceAllocAndQueryProperty;
116  PFN_WDFDEVICESETPNPCAPABILITIES pfnWdfDeviceSetPnpCapabilities;
117  PFN_WDFDEVICESETPOWERCAPABILITIES pfnWdfDeviceSetPowerCapabilities;
118  PFN_WDFDEVICESETBUSINFORMATIONFORCHILDREN pfnWdfDeviceSetBusInformationForChildren;
119  PFN_WDFDEVICEINDICATEWAKESTATUS pfnWdfDeviceIndicateWakeStatus;
120  PFN_WDFDEVICESETFAILED pfnWdfDeviceSetFailed;
121  PFN_WDFDEVICESTOPIDLENOTRACK pfnWdfDeviceStopIdleNoTrack;
122  PFN_WDFDEVICERESUMEIDLENOTRACK pfnWdfDeviceResumeIdleNoTrack;
123  PFN_WDFDEVICEGETFILEOBJECT pfnWdfDeviceGetFileObject;
124  PFN_WDFDEVICEENQUEUEREQUEST pfnWdfDeviceEnqueueRequest;
125  PFN_WDFDEVICEGETDEFAULTQUEUE pfnWdfDeviceGetDefaultQueue;
126  PFN_WDFDEVICECONFIGUREREQUESTDISPATCHING pfnWdfDeviceConfigureRequestDispatching;
127  // PFN_WDFDMAENABLERCREATE pfnWdfDmaEnablerCreate;
128  // PFN_WDFDMAENABLERGETMAXIMUMLENGTH pfnWdfDmaEnablerGetMaximumLength;
129  // PFN_WDFDMAENABLERGETMAXIMUMSCATTERGATHERELEMENTS pfnWdfDmaEnablerGetMaximumScatterGatherElements;
130  // PFN_WDFDMAENABLERSETMAXIMUMSCATTERGATHERELEMENTS pfnWdfDmaEnablerSetMaximumScatterGatherElements;
131  // PFN_WDFDMATRANSACTIONCREATE pfnWdfDmaTransactionCreate;
132  // PFN_WDFDMATRANSACTIONINITIALIZE pfnWdfDmaTransactionInitialize;
133  // PFN_WDFDMATRANSACTIONINITIALIZEUSINGREQUEST pfnWdfDmaTransactionInitializeUsingRequest;
134  // PFN_WDFDMATRANSACTIONEXECUTE pfnWdfDmaTransactionExecute;
135  // PFN_WDFDMATRANSACTIONRELEASE pfnWdfDmaTransactionRelease;
136  // PFN_WDFDMATRANSACTIONDMACOMPLETED pfnWdfDmaTransactionDmaCompleted;
137  // PFN_WDFDMATRANSACTIONDMACOMPLETEDWITHLENGTH pfnWdfDmaTransactionDmaCompletedWithLength;
138  // PFN_WDFDMATRANSACTIONDMACOMPLETEDFINAL pfnWdfDmaTransactionDmaCompletedFinal;
139  // PFN_WDFDMATRANSACTIONGETBYTESTRANSFERRED pfnWdfDmaTransactionGetBytesTransferred;
140  // PFN_WDFDMATRANSACTIONSETMAXIMUMLENGTH pfnWdfDmaTransactionSetMaximumLength;
141  // PFN_WDFDMATRANSACTIONGETREQUEST pfnWdfDmaTransactionGetRequest;
142  // PFN_WDFDMATRANSACTIONGETCURRENTDMATRANSFERLENGTH pfnWdfDmaTransactionGetCurrentDmaTransferLength;
143  // PFN_WDFDMATRANSACTIONGETDEVICE pfnWdfDmaTransactionGetDevice;
161 
162  PFN_WDFDPCCREATE pfnWdfDpcCreate;
163  PFN_WDFDPCENQUEUE pfnWdfDpcEnqueue;
164  PFN_WDFDPCCANCEL pfnWdfDpcCancel;
165  PFN_WDFDPCGETPARENTOBJECT pfnWdfDpcGetParentObject;
166  PFN_WDFDPCWDMGETDPC pfnWdfDpcWdmGetDpc;
167  PFN_WDFDRIVERCREATE pfnWdfDriverCreate;
168  PFN_WDFDRIVERGETREGISTRYPATH pfnWdfDriverGetRegistryPath;
169  PFN_WDFDRIVERWDMGETDRIVEROBJECT pfnWdfDriverWdmGetDriverObject;
170  PFN_WDFDRIVEROPENPARAMETERSREGISTRYKEY pfnWdfDriverOpenParametersRegistryKey;
171  PFN_WDFWDMDRIVERGETWDFDRIVERHANDLE pfnWdfWdmDriverGetWdfDriverHandle;
172  PFN_WDFDRIVERREGISTERTRACEINFO pfnWdfDriverRegisterTraceInfo;
173  PFN_WDFDRIVERRETRIEVEVERSIONSTRING pfnWdfDriverRetrieveVersionString;
174  PFN_WDFDRIVERISVERSIONAVAILABLE pfnWdfDriverIsVersionAvailable;
175  PFN_WDFFDOINITWDMGETPHYSICALDEVICE pfnWdfFdoInitWdmGetPhysicalDevice;
176  PFN_WDFFDOINITOPENREGISTRYKEY pfnWdfFdoInitOpenRegistryKey;
177  PFN_WDFFDOINITQUERYPROPERTY pfnWdfFdoInitQueryProperty;
178  PFN_WDFFDOINITALLOCANDQUERYPROPERTY pfnWdfFdoInitAllocAndQueryProperty;
179  PFN_WDFFDOINITSETEVENTCALLBACKS pfnWdfFdoInitSetEventCallbacks;
180  PFN_WDFFDOINITSETFILTER pfnWdfFdoInitSetFilter;
181  PFN_WDFFDOINITSETDEFAULTCHILDLISTCONFIG pfnWdfFdoInitSetDefaultChildListConfig;
182  PFN_WDFFDOQUERYFORINTERFACE pfnWdfFdoQueryForInterface;
183  PFN_WDFFDOGETDEFAULTCHILDLIST pfnWdfFdoGetDefaultChildList;
184  PFN_WDFFDOADDSTATICCHILD pfnWdfFdoAddStaticChild;
185  PFN_WDFFDOLOCKSTATICCHILDLISTFORITERATION pfnWdfFdoLockStaticChildListForIteration;
186  PFN_WDFFDORETRIEVENEXTSTATICCHILD pfnWdfFdoRetrieveNextStaticChild;
187  PFN_WDFFDOUNLOCKSTATICCHILDLISTFROMITERATION pfnWdfFdoUnlockStaticChildListFromIteration;
188  PFN_WDFFILEOBJECTGETFILENAME pfnWdfFileObjectGetFileName;
189  PFN_WDFFILEOBJECTGETFLAGS pfnWdfFileObjectGetFlags;
190  PFN_WDFFILEOBJECTGETDEVICE pfnWdfFileObjectGetDevice;
191  PFN_WDFFILEOBJECTWDMGETFILEOBJECT pfnWdfFileObjectWdmGetFileObject;
192  PFN_WDFINTERRUPTCREATE pfnWdfInterruptCreate;
194  PFN_WDFINTERRUPTSYNCHRONIZE pfnWdfInterruptSynchronize;
195  PFN_WDFINTERRUPTACQUIRELOCK pfnWdfInterruptAcquireLock;
196  PFN_WDFINTERRUPTRELEASELOCK pfnWdfInterruptReleaseLock;
197  PFN_WDFINTERRUPTENABLE pfnWdfInterruptEnable;
198  PFN_WDFINTERRUPTDISABLE pfnWdfInterruptDisable;
200  PFN_WDFINTERRUPTGETINFO pfnWdfInterruptGetInfo;
201  PFN_WDFINTERRUPTSETPOLICY pfnWdfInterruptSetPolicy;
203  PFN_WDFIOQUEUECREATE pfnWdfIoQueueCreate;
204  PFN_WDFIOQUEUEGETSTATE pfnWdfIoQueueGetState;
205  PFN_WDFIOQUEUESTART pfnWdfIoQueueStart;
206  PFN_WDFIOQUEUESTOP pfnWdfIoQueueStop;
207  PFN_WDFIOQUEUESTOPSYNCHRONOUSLY pfnWdfIoQueueStopSynchronously;
208  PFN_WDFIOQUEUEGETDEVICE pfnWdfIoQueueGetDevice;
209  PFN_WDFIOQUEUERETRIEVENEXTREQUEST pfnWdfIoQueueRetrieveNextRequest;
210  PFN_WDFIOQUEUERETRIEVEREQUESTBYFILEOBJECT pfnWdfIoQueueRetrieveRequestByFileObject;
211  PFN_WDFIOQUEUEFINDREQUEST pfnWdfIoQueueFindRequest;
212  PFN_WDFIOQUEUERETRIEVEFOUNDREQUEST pfnWdfIoQueueRetrieveFoundRequest;
213  PFN_WDFIOQUEUEDRAINSYNCHRONOUSLY pfnWdfIoQueueDrainSynchronously;
214  PFN_WDFIOQUEUEDRAIN pfnWdfIoQueueDrain;
215  PFN_WDFIOQUEUEPURGESYNCHRONOUSLY pfnWdfIoQueuePurgeSynchronously;
216  PFN_WDFIOQUEUEPURGE pfnWdfIoQueuePurge;
217  PFN_WDFIOQUEUEREADYNOTIFY pfnWdfIoQueueReadyNotify;
218  PFN_WDFIOTARGETCREATE pfnWdfIoTargetCreate;
219  PFN_WDFIOTARGETOPEN pfnWdfIoTargetOpen;
220  PFN_WDFIOTARGETCLOSEFORQUERYREMOVE pfnWdfIoTargetCloseForQueryRemove;
221  PFN_WDFIOTARGETCLOSE pfnWdfIoTargetClose;
222  PFN_WDFIOTARGETSTART pfnWdfIoTargetStart;
223  PFN_WDFIOTARGETSTOP pfnWdfIoTargetStop;
224  PFN_WDFIOTARGETGETSTATE pfnWdfIoTargetGetState;
225  PFN_WDFIOTARGETGETDEVICE pfnWdfIoTargetGetDevice;
226  PFN_WDFIOTARGETQUERYTARGETPROPERTY pfnWdfIoTargetQueryTargetProperty;
227  PFN_WDFIOTARGETALLOCANDQUERYTARGETPROPERTY pfnWdfIoTargetAllocAndQueryTargetProperty;
228  PFN_WDFIOTARGETQUERYFORINTERFACE pfnWdfIoTargetQueryForInterface;
229  PFN_WDFIOTARGETWDMGETTARGETDEVICEOBJECT pfnWdfIoTargetWdmGetTargetDeviceObject;
230  PFN_WDFIOTARGETWDMGETTARGETPHYSICALDEVICE pfnWdfIoTargetWdmGetTargetPhysicalDevice;
231  PFN_WDFIOTARGETWDMGETTARGETFILEOBJECT pfnWdfIoTargetWdmGetTargetFileObject;
232  PFN_WDFIOTARGETWDMGETTARGETFILEHANDLE pfnWdfIoTargetWdmGetTargetFileHandle;
233  PFN_WDFIOTARGETSENDREADSYNCHRONOUSLY pfnWdfIoTargetSendReadSynchronously;
234  PFN_WDFIOTARGETFORMATREQUESTFORREAD pfnWdfIoTargetFormatRequestForRead;
235  PFN_WDFIOTARGETSENDWRITESYNCHRONOUSLY pfnWdfIoTargetSendWriteSynchronously;
236  PFN_WDFIOTARGETFORMATREQUESTFORWRITE pfnWdfIoTargetFormatRequestForWrite;
237  PFN_WDFIOTARGETSENDIOCTLSYNCHRONOUSLY pfnWdfIoTargetSendIoctlSynchronously;
238  PFN_WDFIOTARGETFORMATREQUESTFORIOCTL pfnWdfIoTargetFormatRequestForIoctl;
239  PFN_WDFIOTARGETSENDINTERNALIOCTLSYNCHRONOUSLY pfnWdfIoTargetSendInternalIoctlSynchronously;
240  PFN_WDFIOTARGETFORMATREQUESTFORINTERNALIOCTL pfnWdfIoTargetFormatRequestForInternalIoctl;
241  PFN_WDFIOTARGETSENDINTERNALIOCTLOTHERSSYNCHRONOUSLY pfnWdfIoTargetSendInternalIoctlOthersSynchronously;
242  PFN_WDFIOTARGETFORMATREQUESTFORINTERNALIOCTLOTHERS pfnWdfIoTargetFormatRequestForInternalIoctlOthers;
243  PFN_WDFMEMORYCREATE pfnWdfMemoryCreate;
244  PFN_WDFMEMORYCREATEPREALLOCATED pfnWdfMemoryCreatePreallocated;
245  PFN_WDFMEMORYGETBUFFER pfnWdfMemoryGetBuffer;
246  PFN_WDFMEMORYASSIGNBUFFER pfnWdfMemoryAssignBuffer;
247  PFN_WDFMEMORYCOPYTOBUFFER pfnWdfMemoryCopyToBuffer;
248  PFN_WDFMEMORYCOPYFROMBUFFER pfnWdfMemoryCopyFromBuffer;
249  PFN_WDFLOOKASIDELISTCREATE pfnWdfLookasideListCreate;
250  PFN_WDFMEMORYCREATEFROMLOOKASIDE pfnWdfMemoryCreateFromLookaside;
251  PFN_WDFDEVICEMINIPORTCREATE pfnWdfDeviceMiniportCreate;
258  PFN_WDFOBJECTCREATE pfnWdfObjectCreate;
259  PFN_WDFOBJECTDELETE pfnWdfObjectDelete;
260  PFN_WDFOBJECTQUERY pfnWdfObjectQuery;
261  PFN_WDFPDOINITALLOCATE pfnWdfPdoInitAllocate;
262  PFN_WDFPDOINITSETEVENTCALLBACKS pfnWdfPdoInitSetEventCallbacks;
263  PFN_WDFPDOINITASSIGNDEVICEID pfnWdfPdoInitAssignDeviceID;
264  PFN_WDFPDOINITASSIGNINSTANCEID pfnWdfPdoInitAssignInstanceID;
265  PFN_WDFPDOINITADDHARDWAREID pfnWdfPdoInitAddHardwareID;
266  PFN_WDFPDOINITADDCOMPATIBLEID pfnWdfPdoInitAddCompatibleID;
267  PFN_WDFPDOINITADDDEVICETEXT pfnWdfPdoInitAddDeviceText;
268  PFN_WDFPDOINITSETDEFAULTLOCALE pfnWdfPdoInitSetDefaultLocale;
269  PFN_WDFPDOINITASSIGNRAWDEVICE pfnWdfPdoInitAssignRawDevice;
270  PFN_WDFPDOMARKMISSING pfnWdfPdoMarkMissing;
271  PFN_WDFPDOREQUESTEJECT pfnWdfPdoRequestEject;
272  PFN_WDFPDOGETPARENT pfnWdfPdoGetParent;
273  PFN_WDFPDORETRIEVEIDENTIFICATIONDESCRIPTION pfnWdfPdoRetrieveIdentificationDescription;
274  PFN_WDFPDORETRIEVEADDRESSDESCRIPTION pfnWdfPdoRetrieveAddressDescription;
275  PFN_WDFPDOUPDATEADDRESSDESCRIPTION pfnWdfPdoUpdateAddressDescription;
276  PFN_WDFPDOADDEJECTIONRELATIONSPHYSICALDEVICE pfnWdfPdoAddEjectionRelationsPhysicalDevice;
277  PFN_WDFPDOREMOVEEJECTIONRELATIONSPHYSICALDEVICE pfnWdfPdoRemoveEjectionRelationsPhysicalDevice;
278  PFN_WDFPDOCLEAREJECTIONRELATIONSDEVICES pfnWdfPdoClearEjectionRelationsDevices;
279  PFN_WDFDEVICEADDQUERYINTERFACE pfnWdfDeviceAddQueryInterface;
280  PFN_WDFREGISTRYOPENKEY pfnWdfRegistryOpenKey;
281  PFN_WDFREGISTRYCREATEKEY pfnWdfRegistryCreateKey;
282  PFN_WDFREGISTRYCLOSE pfnWdfRegistryClose;
283  PFN_WDFREGISTRYWDMGETHANDLE pfnWdfRegistryWdmGetHandle;
284  PFN_WDFREGISTRYREMOVEKEY pfnWdfRegistryRemoveKey;
285  PFN_WDFREGISTRYREMOVEVALUE pfnWdfRegistryRemoveValue;
286  PFN_WDFREGISTRYQUERYVALUE pfnWdfRegistryQueryValue;
287  PFN_WDFREGISTRYQUERYMEMORY pfnWdfRegistryQueryMemory;
288  PFN_WDFREGISTRYQUERYMULTISTRING pfnWdfRegistryQueryMultiString;
289  PFN_WDFREGISTRYQUERYUNICODESTRING pfnWdfRegistryQueryUnicodeString;
290  PFN_WDFREGISTRYQUERYSTRING pfnWdfRegistryQueryString;
291  PFN_WDFREGISTRYQUERYULONG pfnWdfRegistryQueryULong;
292  PFN_WDFREGISTRYASSIGNVALUE pfnWdfRegistryAssignValue;
293  PFN_WDFREGISTRYASSIGNMEMORY pfnWdfRegistryAssignMemory;
294  PFN_WDFREGISTRYASSIGNMULTISTRING pfnWdfRegistryAssignMultiString;
295  PFN_WDFREGISTRYASSIGNUNICODESTRING pfnWdfRegistryAssignUnicodeString;
296  PFN_WDFREGISTRYASSIGNSTRING pfnWdfRegistryAssignString;
297  PFN_WDFREGISTRYASSIGNULONG pfnWdfRegistryAssignULong;
298  PFN_WDFREQUESTCREATE pfnWdfRequestCreate;
299  PFN_WDFREQUESTCREATEFROMIRP pfnWdfRequestCreateFromIrp;
300  PFN_WDFREQUESTREUSE pfnWdfRequestReuse;
301  PFN_WDFREQUESTCHANGETARGET pfnWdfRequestChangeTarget;
302  PFN_WDFREQUESTFORMATREQUESTUSINGCURRENTTYPE pfnWdfRequestFormatRequestUsingCurrentType;
303  PFN_WDFREQUESTWDMFORMATUSINGSTACKLOCATION pfnWdfRequestWdmFormatUsingStackLocation;
305  PFN_WDFREQUESTGETSTATUS pfnWdfRequestGetStatus;
306  PFN_WDFREQUESTMARKCANCELABLE pfnWdfRequestMarkCancelable;
307  PFN_WDFREQUESTUNMARKCANCELABLE pfnWdfRequestUnmarkCancelable;
308  PFN_WDFREQUESTISCANCELED pfnWdfRequestIsCanceled;
309  PFN_WDFREQUESTCANCELSENTREQUEST pfnWdfRequestCancelSentRequest;
310  PFN_WDFREQUESTISFROM32BITPROCESS pfnWdfRequestIsFrom32BitProcess;
311  PFN_WDFREQUESTSETCOMPLETIONROUTINE pfnWdfRequestSetCompletionRoutine;
312  PFN_WDFREQUESTGETCOMPLETIONPARAMS pfnWdfRequestGetCompletionParams;
313  PFN_WDFREQUESTALLOCATETIMER pfnWdfRequestAllocateTimer;
314  PFN_WDFREQUESTCOMPLETE pfnWdfRequestComplete;
315  PFN_WDFREQUESTCOMPLETEWITHPRIORITYBOOST pfnWdfRequestCompleteWithPriorityBoost;
316  PFN_WDFREQUESTCOMPLETEWITHINFORMATION pfnWdfRequestCompleteWithInformation;
317  PFN_WDFREQUESTGETPARAMETERS pfnWdfRequestGetParameters;
318  PFN_WDFREQUESTRETRIEVEINPUTMEMORY pfnWdfRequestRetrieveInputMemory;
319  PFN_WDFREQUESTRETRIEVEOUTPUTMEMORY pfnWdfRequestRetrieveOutputMemory;
320  PFN_WDFREQUESTRETRIEVEINPUTBUFFER pfnWdfRequestRetrieveInputBuffer;
321  PFN_WDFREQUESTRETRIEVEOUTPUTBUFFER pfnWdfRequestRetrieveOutputBuffer;
322  PFN_WDFREQUESTRETRIEVEINPUTWDMMDL pfnWdfRequestRetrieveInputWdmMdl;
323  PFN_WDFREQUESTRETRIEVEOUTPUTWDMMDL pfnWdfRequestRetrieveOutputWdmMdl;
324  PFN_WDFREQUESTRETRIEVEUNSAFEUSERINPUTBUFFER pfnWdfRequestRetrieveUnsafeUserInputBuffer;
325  PFN_WDFREQUESTRETRIEVEUNSAFEUSEROUTPUTBUFFER pfnWdfRequestRetrieveUnsafeUserOutputBuffer;
326  PFN_WDFREQUESTSETINFORMATION pfnWdfRequestSetInformation;
327  PFN_WDFREQUESTGETINFORMATION pfnWdfRequestGetInformation;
328  PFN_WDFREQUESTGETFILEOBJECT pfnWdfRequestGetFileObject;
329  PFN_WDFREQUESTPROBEANDLOCKUSERBUFFERFORREAD pfnWdfRequestProbeAndLockUserBufferForRead;
330  PFN_WDFREQUESTPROBEANDLOCKUSERBUFFERFORWRITE pfnWdfRequestProbeAndLockUserBufferForWrite;
331  PFN_WDFREQUESTGETREQUESTORMODE pfnWdfRequestGetRequestorMode;
332  PFN_WDFREQUESTFORWARDTOIOQUEUE pfnWdfRequestForwardToIoQueue;
333  PFN_WDFREQUESTGETIOQUEUE pfnWdfRequestGetIoQueue;
334  PFN_WDFREQUESTREQUEUE pfnWdfRequestRequeue;
335  PFN_WDFREQUESTSTOPACKNOWLEDGE pfnWdfRequestStopAcknowledge;
336  PFN_WDFREQUESTWDMGETIRP pfnWdfRequestWdmGetIrp;
337  PFN_WDFIORESOURCEREQUIREMENTSLISTSETSLOTNUMBER pfnWdfIoResourceRequirementsListSetSlotNumber;
338  PFN_WDFIORESOURCEREQUIREMENTSLISTSETINTERFACETYPE pfnWdfIoResourceRequirementsListSetInterfaceType;
339  PFN_WDFIORESOURCEREQUIREMENTSLISTAPPENDIORESLIST pfnWdfIoResourceRequirementsListAppendIoResList;
340  PFN_WDFIORESOURCEREQUIREMENTSLISTINSERTIORESLIST pfnWdfIoResourceRequirementsListInsertIoResList;
341  PFN_WDFIORESOURCEREQUIREMENTSLISTGETCOUNT pfnWdfIoResourceRequirementsListGetCount;
342  PFN_WDFIORESOURCEREQUIREMENTSLISTGETIORESLIST pfnWdfIoResourceRequirementsListGetIoResList;
343  PFN_WDFIORESOURCEREQUIREMENTSLISTREMOVE pfnWdfIoResourceRequirementsListRemove;
344  PFN_WDFIORESOURCEREQUIREMENTSLISTREMOVEBYIORESLIST pfnWdfIoResourceRequirementsListRemoveByIoResList;
345  PFN_WDFIORESOURCELISTCREATE pfnWdfIoResourceListCreate;
346  PFN_WDFIORESOURCELISTAPPENDDESCRIPTOR pfnWdfIoResourceListAppendDescriptor;
347  PFN_WDFIORESOURCELISTINSERTDESCRIPTOR pfnWdfIoResourceListInsertDescriptor;
348  PFN_WDFIORESOURCELISTUPDATEDESCRIPTOR pfnWdfIoResourceListUpdateDescriptor;
349  PFN_WDFIORESOURCELISTGETCOUNT pfnWdfIoResourceListGetCount;
350  PFN_WDFIORESOURCELISTGETDESCRIPTOR pfnWdfIoResourceListGetDescriptor;
351  PFN_WDFIORESOURCELISTREMOVE pfnWdfIoResourceListRemove;
352  PFN_WDFIORESOURCELISTREMOVEBYDESCRIPTOR pfnWdfIoResourceListRemoveByDescriptor;
353  PFN_WDFCMRESOURCELISTAPPENDDESCRIPTOR pfnWdfCmResourceListAppendDescriptor;
354  PFN_WDFCMRESOURCELISTINSERTDESCRIPTOR pfnWdfCmResourceListInsertDescriptor;
355  PFN_WDFCMRESOURCELISTGETCOUNT pfnWdfCmResourceListGetCount;
356  PFN_WDFCMRESOURCELISTGETDESCRIPTOR pfnWdfCmResourceListGetDescriptor;
357  PFN_WDFCMRESOURCELISTREMOVE pfnWdfCmResourceListRemove;
358  PFN_WDFCMRESOURCELISTREMOVEBYDESCRIPTOR pfnWdfCmResourceListRemoveByDescriptor;
359  PFN_WDFSTRINGCREATE pfnWdfStringCreate;
360  PFN_WDFSTRINGGETUNICODESTRING pfnWdfStringGetUnicodeString;
361  PFN_WDFOBJECTACQUIRELOCK pfnWdfObjectAcquireLock;
362  PFN_WDFOBJECTRELEASELOCK pfnWdfObjectReleaseLock;
363  PFN_WDFWAITLOCKCREATE pfnWdfWaitLockCreate;
365  PFN_WDFWAITLOCKRELEASE pfnWdfWaitLockRelease;
366  PFN_WDFSPINLOCKCREATE pfnWdfSpinLockCreate;
367  PFN_WDFSPINLOCKACQUIRE pfnWdfSpinLockAcquire;
368  PFN_WDFSPINLOCKRELEASE pfnWdfSpinLockRelease;
369  PFN_WDFTIMERCREATE pfnWdfTimerCreate;
370  PFN_WDFTIMERSTART pfnWdfTimerStart;
371  PFN_WDFTIMERSTOP pfnWdfTimerStop;
372  PFN_WDFTIMERGETPARENTOBJECT pfnWdfTimerGetParentObject;
373  // PFN_WDFUSBTARGETDEVICECREATE pfnWdfUsbTargetDeviceCreate;
374  // PFN_WDFUSBTARGETDEVICERETRIEVEINFORMATION pfnWdfUsbTargetDeviceRetrieveInformation;
375  // PFN_WDFUSBTARGETDEVICEGETDEVICEDESCRIPTOR pfnWdfUsbTargetDeviceGetDeviceDescriptor;
376  // PFN_WDFUSBTARGETDEVICERETRIEVECONFIGDESCRIPTOR pfnWdfUsbTargetDeviceRetrieveConfigDescriptor;
377  // PFN_WDFUSBTARGETDEVICEQUERYSTRING pfnWdfUsbTargetDeviceQueryString;
378  // PFN_WDFUSBTARGETDEVICEALLOCANDQUERYSTRING pfnWdfUsbTargetDeviceAllocAndQueryString;
379  // PFN_WDFUSBTARGETDEVICEFORMATREQUESTFORSTRING pfnWdfUsbTargetDeviceFormatRequestForString;
380  // PFN_WDFUSBTARGETDEVICEGETNUMINTERFACES pfnWdfUsbTargetDeviceGetNumInterfaces;
381  // PFN_WDFUSBTARGETDEVICESELECTCONFIG pfnWdfUsbTargetDeviceSelectConfig;
382  // PFN_WDFUSBTARGETDEVICEWDMGETCONFIGURATIONHANDLE pfnWdfUsbTargetDeviceWdmGetConfigurationHandle;
383  // PFN_WDFUSBTARGETDEVICERETRIEVECURRENTFRAMENUMBER pfnWdfUsbTargetDeviceRetrieveCurrentFrameNumber;
384  // PFN_WDFUSBTARGETDEVICESENDCONTROLTRANSFERSYNCHRONOUSLY pfnWdfUsbTargetDeviceSendControlTransferSynchronously;
385  // PFN_WDFUSBTARGETDEVICEFORMATREQUESTFORCONTROLTRANSFER pfnWdfUsbTargetDeviceFormatRequestForControlTransfer;
386  // PFN_WDFUSBTARGETDEVICEISCONNECTEDSYNCHRONOUS pfnWdfUsbTargetDeviceIsConnectedSynchronous;
387  // PFN_WDFUSBTARGETDEVICERESETPORTSYNCHRONOUSLY pfnWdfUsbTargetDeviceResetPortSynchronously;
388  // PFN_WDFUSBTARGETDEVICECYCLEPORTSYNCHRONOUSLY pfnWdfUsbTargetDeviceCyclePortSynchronously;
389  // PFN_WDFUSBTARGETDEVICEFORMATREQUESTFORCYCLEPORT pfnWdfUsbTargetDeviceFormatRequestForCyclePort;
390  // PFN_WDFUSBTARGETDEVICESENDURBSYNCHRONOUSLY pfnWdfUsbTargetDeviceSendUrbSynchronously;
391  // PFN_WDFUSBTARGETDEVICEFORMATREQUESTFORURB pfnWdfUsbTargetDeviceFormatRequestForUrb;
392  // PFN_WDFUSBTARGETPIPEGETINFORMATION pfnWdfUsbTargetPipeGetInformation;
393  // PFN_WDFUSBTARGETPIPEISINENDPOINT pfnWdfUsbTargetPipeIsInEndpoint;
394  // PFN_WDFUSBTARGETPIPEISOUTENDPOINT pfnWdfUsbTargetPipeIsOutEndpoint;
395  // PFN_WDFUSBTARGETPIPEGETTYPE pfnWdfUsbTargetPipeGetType;
396  // PFN_WDFUSBTARGETPIPESETNOMAXIMUMPACKETSIZECHECK pfnWdfUsbTargetPipeSetNoMaximumPacketSizeCheck;
397  // PFN_WDFUSBTARGETPIPEWRITESYNCHRONOUSLY pfnWdfUsbTargetPipeWriteSynchronously;
398  // PFN_WDFUSBTARGETPIPEFORMATREQUESTFORWRITE pfnWdfUsbTargetPipeFormatRequestForWrite;
399  // PFN_WDFUSBTARGETPIPEREADSYNCHRONOUSLY pfnWdfUsbTargetPipeReadSynchronously;
400  // PFN_WDFUSBTARGETPIPEFORMATREQUESTFORREAD pfnWdfUsbTargetPipeFormatRequestForRead;
401  // PFN_WDFUSBTARGETPIPECONFIGCONTINUOUSREADER pfnWdfUsbTargetPipeConfigContinuousReader;
402  // PFN_WDFUSBTARGETPIPEABORTSYNCHRONOUSLY pfnWdfUsbTargetPipeAbortSynchronously;
403  // PFN_WDFUSBTARGETPIPEFORMATREQUESTFORABORT pfnWdfUsbTargetPipeFormatRequestForAbort;
404  // PFN_WDFUSBTARGETPIPERESETSYNCHRONOUSLY pfnWdfUsbTargetPipeResetSynchronously;
405  // PFN_WDFUSBTARGETPIPEFORMATREQUESTFORRESET pfnWdfUsbTargetPipeFormatRequestForReset;
406  // PFN_WDFUSBTARGETPIPESENDURBSYNCHRONOUSLY pfnWdfUsbTargetPipeSendUrbSynchronously;
407  // PFN_WDFUSBTARGETPIPEFORMATREQUESTFORURB pfnWdfUsbTargetPipeFormatRequestForUrb;
408  // PFN_WDFUSBINTERFACEGETINTERFACENUMBER pfnWdfUsbInterfaceGetInterfaceNumber;
409  // PFN_WDFUSBINTERFACEGETNUMENDPOINTS pfnWdfUsbInterfaceGetNumEndpoints;
410  // PFN_WDFUSBINTERFACEGETDESCRIPTOR pfnWdfUsbInterfaceGetDescriptor;
411  // PFN_WDFUSBINTERFACESELECTSETTING pfnWdfUsbInterfaceSelectSetting;
412  // PFN_WDFUSBINTERFACEGETENDPOINTINFORMATION pfnWdfUsbInterfaceGetEndpointInformation;
413  // PFN_WDFUSBTARGETDEVICEGETINTERFACE pfnWdfUsbTargetDeviceGetInterface;
414  // PFN_WDFUSBINTERFACEGETCONFIGUREDSETTINGINDEX pfnWdfUsbInterfaceGetConfiguredSettingIndex;
415  // PFN_WDFUSBINTERFACEGETNUMCONFIGUREDPIPES pfnWdfUsbInterfaceGetNumConfiguredPipes;
416  // PFN_WDFUSBINTERFACEGETCONFIGUREDPIPE pfnWdfUsbInterfaceGetConfiguredPipe;
417  // PFN_WDFUSBTARGETPIPEWDMGETPIPEHANDLE pfnWdfUsbTargetPipeWdmGetPipeHandle;
418  // PFN_WDFVERIFIERDBGBREAKPOINT pfnWdfVerifierDbgBreakPoint;
419  // PFN_WDFVERIFIERKEBUGCHECK pfnWdfVerifierKeBugCheck;
420  // PFN_WDFWMIPROVIDERCREATE pfnWdfWmiProviderCreate;
421  // PFN_WDFWMIPROVIDERGETDEVICE pfnWdfWmiProviderGetDevice;
422  // PFN_WDFWMIPROVIDERISENABLED pfnWdfWmiProviderIsEnabled;
423  // PFN_WDFWMIPROVIDERGETTRACINGHANDLE pfnWdfWmiProviderGetTracingHandle;
424  // PFN_WDFWMIINSTANCECREATE pfnWdfWmiInstanceCreate;
425  // PFN_WDFWMIINSTANCEREGISTER pfnWdfWmiInstanceRegister;
426  // PFN_WDFWMIINSTANCEDEREGISTER pfnWdfWmiInstanceDeregister;
427  // PFN_WDFWMIINSTANCEGETDEVICE pfnWdfWmiInstanceGetDevice;
428  // PFN_WDFWMIINSTANCEGETPROVIDER pfnWdfWmiInstanceGetProvider;
429  // PFN_WDFWMIINSTANCEFIREEVENT pfnWdfWmiInstanceFireEvent;
487 
488  PFN_WDFWORKITEMCREATE pfnWdfWorkItemCreate;
489  PFN_WDFWORKITEMENQUEUE pfnWdfWorkItemEnqueue;
490  PFN_WDFWORKITEMGETPARENTOBJECT pfnWdfWorkItemGetParentObject;
491  PFN_WDFWORKITEMFLUSH pfnWdfWorkItemFlush;
492  // PFN_WDFCOMMONBUFFERCREATEWITHCONFIG pfnWdfCommonBufferCreateWithConfig;
493  // PFN_WDFDMAENABLERGETFRAGMENTLENGTH pfnWdfDmaEnablerGetFragmentLength;
494  // PFN_WDFDMAENABLERWDMGETDMAADAPTER pfnWdfDmaEnablerWdmGetDmaAdapter;
495  // PFN_WDFUSBINTERFACEGETNUMSETTINGS pfnWdfUsbInterfaceGetNumSettings;
500 
501  PFN_WDFDEVICEREMOVEDEPENDENTUSAGEDEVICEOBJECT pfnWdfDeviceRemoveDependentUsageDeviceObject;
502  PFN_WDFDEVICEGETSYSTEMPOWERACTION pfnWdfDeviceGetSystemPowerAction;
503  PFN_WDFINTERRUPTSETEXTENDEDPOLICY pfnWdfInterruptSetExtendedPolicy;
504  PFN_WDFIOQUEUEASSIGNFORWARDPROGRESSPOLICY pfnWdfIoQueueAssignForwardProgressPolicy;
505  PFN_WDFPDOINITASSIGNCONTAINERID pfnWdfPdoInitAssignContainerID;
506  PFN_WDFPDOINITALLOWFORWARDINGREQUESTTOPARENT pfnWdfPdoInitAllowForwardingRequestToParent;
507  PFN_WDFREQUESTMARKCANCELABLEEX pfnWdfRequestMarkCancelableEx;
508  PFN_WDFREQUESTISRESERVED pfnWdfRequestIsReserved;
509  PFN_WDFREQUESTFORWARDTOPARENTDEVICEIOQUEUE pfnWdfRequestForwardToParentDeviceIoQueue;
510  // PFN_WDFCXDEVICEINITALLOCATE pfnWdfCxDeviceInitAllocate;
511  // PFN_WDFCXDEVICEINITASSIGNWDMIRPPREPROCESSCALLBACK pfnWdfCxDeviceInitAssignWdmIrpPreprocessCallback;
512  // PFN_WDFCXDEVICEINITSETIOINCALLERCONTEXTCALLBACK pfnWdfCxDeviceInitSetIoInCallerContextCallback;
513  // PFN_WDFCXDEVICEINITSETREQUESTATTRIBUTES pfnWdfCxDeviceInitSetRequestAttributes;
514  // PFN_WDFCXDEVICEINITSETFILEOBJECTCONFIG pfnWdfCxDeviceInitSetFileObjectConfig;
520 
521  PFN_WDFDEVICEWDMDISPATCHIRP pfnWdfDeviceWdmDispatchIrp;
522  PFN_WDFDEVICEWDMDISPATCHIRPTOIOQUEUE pfnWdfDeviceWdmDispatchIrpToIoQueue;
523  PFN_WDFDEVICEINITSETREMOVELOCKOPTIONS pfnWdfDeviceInitSetRemoveLockOptions;
524  PFN_WDFDEVICECONFIGUREWDMIRPDISPATCHCALLBACK pfnWdfDeviceConfigureWdmIrpDispatchCallback;
525  // PFN_WDFDMAENABLERCONFIGURESYSTEMPROFILE pfnWdfDmaEnablerConfigureSystemProfile;
526  // PFN_WDFDMATRANSACTIONINITIALIZEUSINGOFFSET pfnWdfDmaTransactionInitializeUsingOffset;
527  // PFN_WDFDMATRANSACTIONGETTRANSFERINFO pfnWdfDmaTransactionGetTransferInfo;
528  // PFN_WDFDMATRANSACTIONSETCHANNELCONFIGURATIONCALLBACK pfnWdfDmaTransactionSetChannelConfigurationCallback;
529  // PFN_WDFDMATRANSACTIONSETTRANSFERCOMPLETECALLBACK pfnWdfDmaTransactionSetTransferCompleteCallback;
530  // PFN_WDFDMATRANSACTIONSETIMMEDIATEEXECUTION pfnWdfDmaTransactionSetImmediateExecution;
531  // PFN_WDFDMATRANSACTIONALLOCATERESOURCES pfnWdfDmaTransactionAllocateResources;
532  // PFN_WDFDMATRANSACTIONSETDEVICEADDRESSOFFSET pfnWdfDmaTransactionSetDeviceAddressOffset;
533  // PFN_WDFDMATRANSACTIONFREERESOURCES pfnWdfDmaTransactionFreeResources;
534  // PFN_WDFDMATRANSACTIONCANCEL pfnWdfDmaTransactionCancel;
535  // PFN_WDFDMATRANSACTIONWDMGETTRANSFERCONTEXT pfnWdfDmaTransactionWdmGetTransferContext;
547 
549  PFN_WDFINTERRUPTTRYTOACQUIRELOCK pfnWdfInterruptTryToAcquireLock;
550  PFN_WDFIOQUEUESTOPANDPURGE pfnWdfIoQueueStopAndPurge;
551  PFN_WDFIOQUEUESTOPANDPURGESYNCHRONOUSLY pfnWdfIoQueueStopAndPurgeSynchronously;
552  PFN_WDFIOTARGETPURGE pfnWdfIoTargetPurge;
553  // PFN_WDFUSBTARGETDEVICECREATEWITHPARAMETERS pfnWdfUsbTargetDeviceCreateWithParameters;
554  // PFN_WDFUSBTARGETDEVICEQUERYUSBCAPABILITY pfnWdfUsbTargetDeviceQueryUsbCapability;
555  // PFN_WDFUSBTARGETDEVICECREATEURB pfnWdfUsbTargetDeviceCreateUrb;
556  // PFN_WDFUSBTARGETDEVICECREATEISOCHURB pfnWdfUsbTargetDeviceCreateIsochUrb;
561 
562  PFN_WDFDEVICEWDMASSIGNPOWERFRAMEWORKSETTINGS pfnWdfDeviceWdmAssignPowerFrameworkSettings;
563  // PFN_WDFDMATRANSACTIONSTOPSYSTEMTRANSFER pfnWdfDmaTransactionStopSystemTransfer;
564  // PFN_WDFCXVERIFIERKEBUGCHECK pfnWdfCxVerifierKeBugCheck;
567 
568  PFN_WDFINTERRUPTREPORTACTIVE pfnWdfInterruptReportActive;
569  PFN_WDFINTERRUPTREPORTINACTIVE pfnWdfInterruptReportInactive;
570  PFN_WDFDEVICEINITSETRELEASEHARDWAREORDERONFAILURE pfnWdfDeviceInitSetReleaseHardwareOrderOnFailure;
571  // PFN_WDFGETTRIAGEINFO pfnWdfGetTriageInfo;
573 
574  PFN_WDFDEVICEINITSETIOTYPEEX pfnWdfDeviceInitSetIoTypeEx;
575  PFN_WDFDEVICEQUERYPROPERTYEX pfnWdfDeviceQueryPropertyEx;
576  PFN_WDFDEVICEALLOCANDQUERYPROPERTYEX pfnWdfDeviceAllocAndQueryPropertyEx;
577  PFN_WDFDEVICEASSIGNPROPERTY pfnWdfDeviceAssignProperty;
578  PFN_WDFFDOINITQUERYPROPERTYEX pfnWdfFdoInitQueryPropertyEx;
579  PFN_WDFFDOINITALLOCANDQUERYPROPERTYEX pfnWdfFdoInitAllocAndQueryPropertyEx;
580  PFN_WDFDEVICESTOPIDLEACTUAL pfnWdfDeviceStopIdleActual;
581  PFN_WDFDEVICERESUMEIDLEACTUAL pfnWdfDeviceResumeIdleActual;
585  PFN_WDFDEVICEOPENDEVICEMAPKEY pfnWdfDeviceOpenDevicemapKey;
586 
588 
589 
590 typedef struct _WDFVERSION {
591 
595 
597 
598 
601 WDFAPI
602 NTSTATUS
603 STDCALL
604 WDFEXPORT(WdfChildListCreate)(
605  _In_
607  _In_
608  WDFDEVICE Device,
609  _In_
611  _In_opt_
613  _Out_
614  WDFCHILDLIST* ChildList
615  );
616 
618 WDFAPI
619 WDFDEVICE
620 STDCALL
621 WDFEXPORT(WdfChildListGetDevice)(
622  _In_
624  _In_
625  WDFCHILDLIST ChildList
626  );
627 
630 WDFAPI
631 WDFDEVICE
632 STDCALL
633 WDFEXPORT(WdfChildListRetrievePdo)(
634  _In_
636  _In_
637  WDFCHILDLIST ChildList,
638  _Inout_
640  );
641 
644 WDFAPI
645 NTSTATUS
646 STDCALL
647 WDFEXPORT(WdfChildListRetrieveAddressDescription)(
648  _In_
650  _In_
651  WDFCHILDLIST ChildList,
652  _In_
654  _Inout_
656  );
657 
659 WDFAPI
660 VOID
661 STDCALL
662 WDFEXPORT(WdfChildListBeginScan)(
663  _In_
665  _In_
666  WDFCHILDLIST ChildList
667  );
668 
670 WDFAPI
671 VOID
672 STDCALL
673 WDFEXPORT(WdfChildListEndScan)(
674  _In_
676  _In_
677  WDFCHILDLIST ChildList
678  );
679 
681 WDFAPI
682 VOID
683 STDCALL
684 WDFEXPORT(WdfChildListBeginIteration)(
685  _In_
687  _In_
688  WDFCHILDLIST ChildList,
689  _In_
691  );
692 
695 WDFAPI
696 NTSTATUS
697 STDCALL
698 WDFEXPORT(WdfChildListRetrieveNextDevice)(
699  _In_
701  _In_
702  WDFCHILDLIST ChildList,
703  _In_
705  _Out_
706  WDFDEVICE* Device,
709  );
710 
712 WDFAPI
713 VOID
714 STDCALL
715 WDFEXPORT(WdfChildListEndIteration)(
716  _In_
718  _In_
719  WDFCHILDLIST ChildList,
720  _In_
722  );
723 
726 WDFAPI
727 NTSTATUS
728 STDCALL
729 WDFEXPORT(WdfChildListAddOrUpdateChildDescriptionAsPresent)(
730  _In_
732  _In_
733  WDFCHILDLIST ChildList,
734  _In_
736  _In_opt_
738  );
739 
742 WDFAPI
743 NTSTATUS
744 STDCALL
745 WDFEXPORT(WdfChildListUpdateChildDescriptionAsMissing)(
746  _In_
748  _In_
749  WDFCHILDLIST ChildList,
750  _In_
752  );
753 
755 WDFAPI
756 VOID
757 STDCALL
758 WDFEXPORT(WdfChildListUpdateAllChildDescriptionsAsPresent)(
759  _In_
761  _In_
762  WDFCHILDLIST ChildList
763  );
764 
766 WDFAPI
767 BOOLEAN
768 STDCALL
769 WDFEXPORT(WdfChildListRequestChildEject)(
770  _In_
772  _In_
773  WDFCHILDLIST ChildList,
774  _In_
776  );
777 
780 WDFAPI
781 NTSTATUS
782 STDCALL
783 WDFEXPORT(WdfCollectionCreate)(
784  _In_
786  _In_opt_
788  _Out_
789  WDFCOLLECTION* Collection
790  );
791 
793 WDFAPI
794 ULONG
795 STDCALL
796 WDFEXPORT(WdfCollectionGetCount)(
797  _In_
799  _In_
800  WDFCOLLECTION Collection
801  );
802 
805 WDFAPI
806 NTSTATUS
807 STDCALL
808 WDFEXPORT(WdfCollectionAdd)(
809  _In_
811  _In_
812  WDFCOLLECTION Collection,
813  _In_
815  );
816 
818 WDFAPI
819 VOID
820 STDCALL
821 WDFEXPORT(WdfCollectionRemove)(
822  _In_
824  _In_
825  WDFCOLLECTION Collection,
826  _In_
828  );
829 
831 WDFAPI
832 VOID
833 STDCALL
834 WDFEXPORT(WdfCollectionRemoveItem)(
835  _In_
837  _In_
838  WDFCOLLECTION Collection,
839  _In_
840  ULONG Index
841  );
842 
844 WDFAPI
845 WDFOBJECT
846 STDCALL
847 WDFEXPORT(WdfCollectionGetItem)(
848  _In_
850  _In_
851  WDFCOLLECTION Collection,
852  _In_
853  ULONG Index
854  );
855 
857 WDFAPI
858 WDFOBJECT
859 STDCALL
860 WDFEXPORT(WdfCollectionGetFirstItem)(
861  _In_
863  _In_
864  WDFCOLLECTION Collection
865  );
866 
868 WDFAPI
869 WDFOBJECT
870 STDCALL
871 WDFEXPORT(WdfCollectionGetLastItem)(
872  _In_
874  _In_
875  WDFCOLLECTION Collection
876  );
877 
880 WDFAPI
881 NTSTATUS
882 STDCALL
883 WDFEXPORT(WdfCommonBufferCreate)(
884  _In_
886  _In_
887  WDFDMAENABLER DmaEnabler,
888  _In_
889  _When_(Length == 0, __drv_reportError(Length cannot be zero))
890  size_t Length,
891  _In_opt_
893  _Out_
894  WDFCOMMONBUFFER* CommonBuffer
895  );
896 
899 WDFAPI
900 NTSTATUS
901 STDCALL
902 WDFEXPORT(WdfCommonBufferCreateWithConfig)(
903  _In_
905  _In_
906  WDFDMAENABLER DmaEnabler,
907  _In_
908  _When_(Length == 0, __drv_reportError(Length cannot be zero))
909  size_t Length,
910  _In_
912  _In_opt_
914  _Out_
915  WDFCOMMONBUFFER* CommonBuffer
916  );
917 
919 WDFAPI
920 PVOID
921 STDCALL
922 WDFEXPORT(WdfCommonBufferGetAlignedVirtualAddress)(
923  _In_
925  _In_
926  WDFCOMMONBUFFER CommonBuffer
927  );
928 
930 WDFAPI
932 STDCALL
933 WDFEXPORT(WdfCommonBufferGetAlignedLogicalAddress)(
934  _In_
936  _In_
937  WDFCOMMONBUFFER CommonBuffer
938  );
939 
941 WDFAPI
942 size_t
943 STDCALL
944 WDFEXPORT(WdfCommonBufferGetLength)(
945  _In_
947  _In_
948  WDFCOMMONBUFFER CommonBuffer
949  );
950 
953 WDFAPI
955 STDCALL
956 WDFEXPORT(WdfControlDeviceInitAllocate)(
957  _In_
959  _In_
960  WDFDRIVER Driver,
961  _In_
963  );
964 
966 WDFAPI
967 VOID
968 STDCALL
969 WDFEXPORT(WdfControlDeviceInitSetShutdownNotification)(
970  _In_
972  _In_
974  _In_
976  _In_
977  UCHAR Flags
978  );
979 
981 WDFAPI
982 VOID
983 STDCALL
984 WDFEXPORT(WdfControlFinishInitializing)(
985  _In_
987  _In_
988  WDFDEVICE Device
989  );
990 
993 WDFAPI
995 STDCALL
996 WDFEXPORT(WdfCxDeviceInitAllocate)(
997  _In_
999  _In_
1001  );
1002 
1005 WDFAPI
1006 NTSTATUS
1007 STDCALL
1008 WDFEXPORT(WdfCxDeviceInitAssignWdmIrpPreprocessCallback)(
1009  _In_
1011  _In_
1013  _In_
1015  _In_
1020  _In_
1022  );
1023 
1025 WDFAPI
1026 VOID
1027 STDCALL
1028 WDFEXPORT(WdfCxDeviceInitSetIoInCallerContextCallback)(
1029  _In_
1031  _In_
1033  _In_
1035  );
1036 
1038 WDFAPI
1039 VOID
1040 STDCALL
1041 WDFEXPORT(WdfCxDeviceInitSetRequestAttributes)(
1042  _In_
1044  _In_
1046  _In_
1048  );
1049 
1051 WDFAPI
1052 VOID
1053 STDCALL
1054 WDFEXPORT(WdfCxDeviceInitSetFileObjectConfig)(
1055  _In_
1057  _In_
1059  _In_
1061  _In_opt_
1063  );
1064 
1065 WDFAPI
1066 VOID
1067 STDCALL
1069  _In_
1071  _In_opt_
1072  WDFOBJECT Object,
1073  _In_
1074  ULONG BugCheckCode,
1075  _In_
1076  ULONG_PTR BugCheckParameter1,
1077  _In_
1078  ULONG_PTR BugCheckParameter2,
1079  _In_
1080  ULONG_PTR BugCheckParameter3,
1081  _In_
1082  ULONG_PTR BugCheckParameter4
1083  );
1084 
1086 WDFAPI
1087 VOID
1088 STDCALL
1089 WDFEXPORT(WdfDeviceGetDeviceState)(
1090  _In_
1092  _In_
1093  WDFDEVICE Device,
1094  _Out_
1096  );
1097 
1099 WDFAPI
1100 VOID
1101 STDCALL
1102 WDFEXPORT(WdfDeviceSetDeviceState)(
1103  _In_
1105  _In_
1106  WDFDEVICE Device,
1107  _In_
1109  );
1110 
1112 WDFAPI
1113 WDFDEVICE
1114 STDCALL
1115 WDFEXPORT(WdfWdmDeviceGetWdfDeviceHandle)(
1116  _In_
1118  _In_
1120  );
1121 
1123 WDFAPI
1125 STDCALL
1126 WDFEXPORT(WdfDeviceWdmGetDeviceObject)(
1127  _In_
1129  _In_
1130  WDFDEVICE Device
1131  );
1132 
1134 WDFAPI
1136 STDCALL
1137 WDFEXPORT(WdfDeviceWdmGetAttachedDevice)(
1138  _In_
1140  _In_
1141  WDFDEVICE Device
1142  );
1143 
1145 WDFAPI
1147 STDCALL
1148 WDFEXPORT(WdfDeviceWdmGetPhysicalDevice)(
1149  _In_
1151  _In_
1152  WDFDEVICE Device
1153  );
1154 
1157 WDFAPI
1158 NTSTATUS
1159 STDCALL
1160 WDFEXPORT(WdfDeviceWdmDispatchPreprocessedIrp)(
1161  _In_
1163  _In_
1164  WDFDEVICE Device,
1165  _In_
1166  PIRP Irp
1167  );
1168 
1171 WDFAPI
1172 NTSTATUS
1173 STDCALL
1174 WDFEXPORT(WdfDeviceWdmDispatchIrp)(
1175  _In_
1177  _In_
1178  WDFDEVICE Device,
1179  _In_
1180  PIRP Irp,
1181  _In_
1183  );
1184 
1187 WDFAPI
1188 NTSTATUS
1189 STDCALL
1190 WDFEXPORT(WdfDeviceWdmDispatchIrpToIoQueue)(
1191  _In_
1193  _In_
1194  WDFDEVICE Device,
1195  _In_
1196  PIRP Irp,
1197  _In_
1198  WDFQUEUE Queue,
1199  _In_
1200  ULONG Flags
1201  );
1202 
1205 WDFAPI
1206 NTSTATUS
1207 STDCALL
1208 WDFEXPORT(WdfDeviceAddDependentUsageDeviceObject)(
1209  _In_
1211  _In_
1212  WDFDEVICE Device,
1213  _In_
1215  );
1216 
1218 WDFAPI
1219 VOID
1220 STDCALL
1221 WDFEXPORT(WdfDeviceRemoveDependentUsageDeviceObject)(
1222  _In_
1224  _In_
1225  WDFDEVICE Device,
1226  _In_
1228  );
1229 
1232 WDFAPI
1233 NTSTATUS
1234 STDCALL
1235 WDFEXPORT(WdfDeviceAddRemovalRelationsPhysicalDevice)(
1236  _In_
1238  _In_
1239  WDFDEVICE Device,
1240  _In_
1242  );
1243 
1245 WDFAPI
1246 VOID
1247 STDCALL
1248 WDFEXPORT(WdfDeviceRemoveRemovalRelationsPhysicalDevice)(
1249  _In_
1251  _In_
1252  WDFDEVICE Device,
1253  _In_
1255  );
1256 
1258 WDFAPI
1259 VOID
1260 STDCALL
1261 WDFEXPORT(WdfDeviceClearRemovalRelationsDevices)(
1262  _In_
1264  _In_
1265  WDFDEVICE Device
1266  );
1267 
1269 WDFAPI
1270 WDFDRIVER
1271 STDCALL
1272 WDFEXPORT(WdfDeviceGetDriver)(
1273  _In_
1275  _In_
1276  WDFDEVICE Device
1277  );
1278 
1281 WDFAPI
1282 NTSTATUS
1283 STDCALL
1284 WDFEXPORT(WdfDeviceRetrieveDeviceName)(
1285  _In_
1287  _In_
1288  WDFDEVICE Device,
1289  _In_
1290  WDFSTRING String
1291  );
1292 
1295 WDFAPI
1296 NTSTATUS
1297 STDCALL
1298 WDFEXPORT(WdfDeviceAssignMofResourceName)(
1299  _In_
1301  _In_
1302  WDFDEVICE Device,
1303  _In_
1305  );
1306 
1308 WDFAPI
1309 WDFIOTARGET
1310 STDCALL
1311 WDFEXPORT(WdfDeviceGetIoTarget)(
1312  _In_
1314  _In_
1315  WDFDEVICE Device
1316  );
1317 
1319 WDFAPI
1321 STDCALL
1322 WDFEXPORT(WdfDeviceGetDevicePnpState)(
1323  _In_
1325  _In_
1326  WDFDEVICE Device
1327  );
1328 
1330 WDFAPI
1332 STDCALL
1333 WDFEXPORT(WdfDeviceGetDevicePowerState)(
1334  _In_
1336  _In_
1337  WDFDEVICE Device
1338  );
1339 
1341 WDFAPI
1343 STDCALL
1344 WDFEXPORT(WdfDeviceGetDevicePowerPolicyState)(
1345  _In_
1347  _In_
1348  WDFDEVICE Device
1349  );
1350 
1353 WDFAPI
1354 NTSTATUS
1355 STDCALL
1356 WDFEXPORT(WdfDeviceAssignS0IdleSettings)(
1357  _In_
1359  _In_
1360  WDFDEVICE Device,
1361  _In_
1363  );
1364 
1367 WDFAPI
1368 NTSTATUS
1369 STDCALL
1370 WDFEXPORT(WdfDeviceAssignSxWakeSettings)(
1371  _In_
1373  _In_
1374  WDFDEVICE Device,
1375  _In_
1377  );
1378 
1381 WDFAPI
1382 NTSTATUS
1383 STDCALL
1384 WDFEXPORT(WdfDeviceOpenRegistryKey)(
1385  _In_
1387  _In_
1388  WDFDEVICE Device,
1389  _In_
1391  _In_
1393  _In_opt_
1395  _Out_
1396  WDFKEY* Key
1397  );
1398 
1401 WDFAPI
1402 NTSTATUS
1403 STDCALL
1404 WDFEXPORT(WdfDeviceOpenDevicemapKey)(
1405  _In_
1407  _In_
1408  WDFDEVICE Device,
1409  _In_
1411  _In_
1413  _In_opt_
1415  _Out_
1416  WDFKEY* Key
1417  );
1418 
1420 WDFAPI
1421 VOID
1422 STDCALL
1423 WDFEXPORT(WdfDeviceSetSpecialFileSupport)(
1424  _In_
1426  _In_
1427  WDFDEVICE Device,
1428  _In_
1430  _In_
1432  );
1433 
1435 WDFAPI
1436 VOID
1437 STDCALL
1438 WDFEXPORT(WdfDeviceSetCharacteristics)(
1439  _In_
1441  _In_
1442  WDFDEVICE Device,
1443  _In_
1445  );
1446 
1448 WDFAPI
1449 ULONG
1450 STDCALL
1451 WDFEXPORT(WdfDeviceGetCharacteristics)(
1452  _In_
1454  _In_
1455  WDFDEVICE Device
1456  );
1457 
1459 WDFAPI
1460 ULONG
1461 STDCALL
1462 WDFEXPORT(WdfDeviceGetAlignmentRequirement)(
1463  _In_
1465  _In_
1466  WDFDEVICE Device
1467  );
1468 
1470 WDFAPI
1471 VOID
1472 STDCALL
1473 WDFEXPORT(WdfDeviceSetAlignmentRequirement)(
1474  _In_
1476  _In_
1477  WDFDEVICE Device,
1478  _In_
1480  );
1481 
1483 WDFAPI
1484 VOID
1485 STDCALL
1486 WDFEXPORT(WdfDeviceInitFree)(
1487  _In_
1489  _In_
1491  );
1492 
1494 WDFAPI
1495 VOID
1496 STDCALL
1497 WDFEXPORT(WdfDeviceInitSetPnpPowerEventCallbacks)(
1498  _In_
1500  _In_
1502  _In_
1504  );
1505 
1507 WDFAPI
1508 VOID
1509 STDCALL
1510 WDFEXPORT(WdfDeviceInitSetPowerPolicyEventCallbacks)(
1511  _In_
1513  _In_
1515  _In_
1517  );
1518 
1520 WDFAPI
1521 VOID
1522 STDCALL
1523 WDFEXPORT(WdfDeviceInitSetPowerPolicyOwnership)(
1524  _In_
1526  _In_
1528  _In_
1530  );
1531 
1534 WDFAPI
1535 NTSTATUS
1536 STDCALL
1537 WDFEXPORT(WdfDeviceInitRegisterPnpStateChangeCallback)(
1538  _In_
1540  _In_
1542  _In_
1544  _In_
1546  _In_
1548  );
1549 
1552 WDFAPI
1553 NTSTATUS
1554 STDCALL
1555 WDFEXPORT(WdfDeviceInitRegisterPowerStateChangeCallback)(
1556  _In_
1558  _In_
1560  _In_
1562  _In_
1564  _In_
1566  );
1567 
1570 WDFAPI
1571 NTSTATUS
1572 STDCALL
1573 WDFEXPORT(WdfDeviceInitRegisterPowerPolicyStateChangeCallback)(
1574  _In_
1576  _In_
1578  _In_
1580  _In_
1582  _In_
1584  );
1585 
1587 WDFAPI
1588 VOID
1589 STDCALL
1590 WDFEXPORT(WdfDeviceInitSetExclusive)(
1591  _In_
1593  _In_
1595  _In_
1597  );
1598 
1600 WDFAPI
1601 VOID
1602 STDCALL
1603 WDFEXPORT(WdfDeviceInitSetIoType)(
1604  _In_
1606  _In_
1608  _In_
1610  );
1611 
1613 WDFAPI
1614 VOID
1615 STDCALL
1616 WDFEXPORT(WdfDeviceInitSetPowerNotPageable)(
1617  _In_
1619  _In_
1621  );
1622 
1624 WDFAPI
1625 VOID
1626 STDCALL
1627 WDFEXPORT(WdfDeviceInitSetPowerPageable)(
1628  _In_
1630  _In_
1632  );
1633 
1635 WDFAPI
1636 VOID
1637 STDCALL
1638 WDFEXPORT(WdfDeviceInitSetPowerInrush)(
1639  _In_
1641  _In_
1643  );
1644 
1646 WDFAPI
1647 VOID
1648 STDCALL
1649 WDFEXPORT(WdfDeviceInitSetDeviceType)(
1650  _In_
1652  _In_
1654  _In_
1656  );
1657 
1660 WDFAPI
1661 NTSTATUS
1662 STDCALL
1663 WDFEXPORT(WdfDeviceInitAssignName)(
1664  _In_
1666  _In_
1668  _In_opt_
1670  );
1671 
1674 WDFAPI
1675 NTSTATUS
1676 STDCALL
1677 WDFEXPORT(WdfDeviceInitAssignSDDLString)(
1678  _In_
1680  _In_
1682  _In_opt_
1684  );
1685 
1687 WDFAPI
1688 VOID
1689 STDCALL
1690 WDFEXPORT(WdfDeviceInitSetDeviceClass)(
1691  _In_
1693  _In_
1695  _In_
1697  );
1698 
1700 WDFAPI
1701 VOID
1702 STDCALL
1703 WDFEXPORT(WdfDeviceInitSetCharacteristics)(
1704  _In_
1706  _In_
1708  _In_
1710  _In_
1712  );
1713 
1715 WDFAPI
1716 VOID
1717 STDCALL
1718 WDFEXPORT(WdfDeviceInitSetFileObjectConfig)(
1719  _In_
1721  _In_
1723  _In_
1725  _In_opt_
1727  );
1728 
1730 WDFAPI
1731 VOID
1732 STDCALL
1733 WDFEXPORT(WdfDeviceInitSetRequestAttributes)(
1734  _In_
1736  _In_
1738  _In_
1740  );
1741 
1744 WDFAPI
1745 NTSTATUS
1746 STDCALL
1747 WDFEXPORT(WdfDeviceInitAssignWdmIrpPreprocessCallback)(
1748  _In_
1750  _In_
1752  _In_
1754  _In_
1759  _In_
1761  );
1762 
1764 WDFAPI
1765 VOID
1766 STDCALL
1767 WDFEXPORT(WdfDeviceInitSetIoInCallerContextCallback)(
1768  _In_
1770  _In_
1772  _In_
1774  );
1775 
1777 WDFAPI
1778 VOID
1779 STDCALL
1780 WDFEXPORT(WdfDeviceInitSetRemoveLockOptions)(
1781  _In_
1783  _In_
1785  _In_
1787  );
1788 
1791 WDFAPI
1792 NTSTATUS
1793 STDCALL
1794 WDFEXPORT(WdfDeviceCreate)(
1795  _In_
1797  _Inout_
1799  _In_opt_
1801  _Out_
1802  WDFDEVICE* Device
1803  );
1804 
1806 WDFAPI
1807 VOID
1808 STDCALL
1809 WDFEXPORT(WdfDeviceSetStaticStopRemove)(
1810  _In_
1812  _In_
1813  WDFDEVICE Device,
1814  _In_
1816  );
1817 
1820 WDFAPI
1821 NTSTATUS
1822 STDCALL
1823 WDFEXPORT(WdfDeviceCreateDeviceInterface)(
1824  _In_
1826  _In_
1827  WDFDEVICE Device,
1828  _In_
1830  _In_opt_
1832  );
1833 
1835 WDFAPI
1836 VOID
1837 STDCALL
1838 WDFEXPORT(WdfDeviceSetDeviceInterfaceState)(
1839  _In_
1841  _In_
1842  WDFDEVICE Device,
1843  _In_
1845  _In_opt_
1847  _In_
1849  );
1850 
1853 WDFAPI
1854 NTSTATUS
1855 STDCALL
1856 WDFEXPORT(WdfDeviceRetrieveDeviceInterfaceString)(
1857  _In_
1859  _In_
1860  WDFDEVICE Device,
1861  _In_
1863  _In_opt_
1865  _In_
1866  WDFSTRING String
1867  );
1868 
1871 WDFAPI
1872 NTSTATUS
1873 STDCALL
1874 WDFEXPORT(WdfDeviceCreateSymbolicLink)(
1875  _In_
1877  _In_
1878  WDFDEVICE Device,
1879  _In_
1881  );
1882 
1885 WDFAPI
1886 NTSTATUS
1887 STDCALL
1888 WDFEXPORT(WdfDeviceQueryProperty)(
1889  _In_
1891  _In_
1892  WDFDEVICE Device,
1893  _In_
1895  _In_
1899  _Out_
1901  );
1902 
1905 WDFAPI
1906 NTSTATUS
1907 STDCALL
1908 WDFEXPORT(WdfDeviceAllocAndQueryProperty)(
1909  _In_
1911  _In_
1912  WDFDEVICE Device,
1913  _In_
1915  _In_
1918  _In_opt_
1920  _Out_
1921  WDFMEMORY* PropertyMemory
1922  );
1923 
1925 WDFAPI
1926 VOID
1927 STDCALL
1928 WDFEXPORT(WdfDeviceSetPnpCapabilities)(
1929  _In_
1931  _In_
1932  WDFDEVICE Device,
1933  _In_
1935  );
1936 
1938 WDFAPI
1939 VOID
1940 STDCALL
1941 WDFEXPORT(WdfDeviceSetPowerCapabilities)(
1942  _In_
1944  _In_
1945  WDFDEVICE Device,
1946  _In_
1948  );
1949 
1951 WDFAPI
1952 VOID
1953 STDCALL
1954 WDFEXPORT(WdfDeviceSetBusInformationForChildren)(
1955  _In_
1957  _In_
1958  WDFDEVICE Device,
1959  _In_
1961  );
1962 
1965 WDFAPI
1966 NTSTATUS
1967 STDCALL
1968 WDFEXPORT(WdfDeviceIndicateWakeStatus)(
1969  _In_
1971  _In_
1972  WDFDEVICE Device,
1973  _In_
1975  );
1976 
1978 WDFAPI
1979 VOID
1980 STDCALL
1981 WDFEXPORT(WdfDeviceSetFailed)(
1982  _In_
1984  _In_
1985  WDFDEVICE Device,
1986  _In_
1988  );
1989 
1993 WDFAPI
1994 NTSTATUS
1995 STDCALL
1996 WDFEXPORT(WdfDeviceStopIdleNoTrack)(
1997  _In_
1999  _In_
2000  WDFDEVICE Device,
2001  _In_
2003  );
2004 
2006 WDFAPI
2007 VOID
2008 STDCALL
2009 WDFEXPORT(WdfDeviceResumeIdleNoTrack)(
2010  _In_
2012  _In_
2013  WDFDEVICE Device
2014  );
2015 
2019 WDFAPI
2020 NTSTATUS
2021 STDCALL
2022 WDFEXPORT(WdfDeviceStopIdleActual)(
2023  _In_
2025  _In_
2026  WDFDEVICE Device,
2027  _In_
2029  _In_opt_
2030  PVOID Tag,
2031  _In_
2032  LONG Line,
2033  _In_z_
2034  PCHAR File
2035  );
2036 
2038 WDFAPI
2039 VOID
2040 STDCALL
2041 WDFEXPORT(WdfDeviceResumeIdleActual)(
2042  _In_
2044  _In_
2045  WDFDEVICE Device,
2046  _In_opt_
2047  PVOID Tag,
2048  _In_
2049  LONG Line,
2050  _In_z_
2051  PCHAR File
2052  );
2053 
2055 WDFAPI
2056 WDFFILEOBJECT
2057 STDCALL
2058 WDFEXPORT(WdfDeviceGetFileObject)(
2059  _In_
2061  _In_
2062  WDFDEVICE Device,
2063  _In_
2065  );
2066 
2069 WDFAPI
2070 NTSTATUS
2071 STDCALL
2072 WDFEXPORT(WdfDeviceEnqueueRequest)(
2073  _In_
2075  _In_
2076  WDFDEVICE Device,
2077  _In_
2078  WDFREQUEST Request
2079  );
2080 
2082 WDFAPI
2083 WDFQUEUE
2084 STDCALL
2085 WDFEXPORT(WdfDeviceGetDefaultQueue)(
2086  _In_
2088  _In_
2089  WDFDEVICE Device
2090  );
2091 
2094 WDFAPI
2095 NTSTATUS
2096 STDCALL
2097 WDFEXPORT(WdfDeviceConfigureRequestDispatching)(
2098  _In_
2100  _In_
2101  WDFDEVICE Device,
2102  _In_
2103  WDFQUEUE Queue,
2104  _In_
2107  );
2108 
2111 WDFAPI
2112 NTSTATUS
2113 STDCALL
2114 WDFEXPORT(WdfDeviceConfigureWdmIrpDispatchCallback)(
2115  _In_
2117  _In_
2118  WDFDEVICE Device,
2119  _In_opt_
2120  WDFDRIVER Driver,
2121  _In_
2123  _In_
2125  _In_opt_
2127  );
2128 
2130 WDFAPI
2132 STDCALL
2133 WDFEXPORT(WdfDeviceGetSystemPowerAction)(
2134  _In_
2136  _In_
2137  WDFDEVICE Device
2138  );
2139 
2142 WDFAPI
2143 NTSTATUS
2144 STDCALL
2145 WDFEXPORT(WdfDeviceWdmAssignPowerFrameworkSettings)(
2146  _In_
2148  _In_
2149  WDFDEVICE Device,
2150  _In_
2152  );
2153 
2155 WDFAPI
2156 VOID
2157 STDCALL
2158 WDFEXPORT(WdfDeviceInitSetReleaseHardwareOrderOnFailure)(
2159  _In_
2161  _In_
2163  _In_
2165  );
2166 
2168 WDFAPI
2169 VOID
2170 STDCALL
2171 WDFEXPORT(WdfDeviceInitSetIoTypeEx)(
2172  _In_
2174  _In_
2176  _In_
2178  );
2179 
2182 WDFAPI
2183 NTSTATUS
2184 STDCALL
2185 WDFEXPORT(WdfDeviceQueryPropertyEx)(
2186  _In_
2188  _In_
2189  WDFDEVICE Device,
2190  _In_
2192  _In_
2194  _Out_
2196  _Out_
2198  _Out_
2200  );
2201 
2204 WDFAPI
2205 NTSTATUS
2206 STDCALL
2207 WDFEXPORT(WdfDeviceAllocAndQueryPropertyEx)(
2208  _In_
2210  _In_
2211  WDFDEVICE Device,
2212  _In_
2214  _In_
2217  _In_opt_
2219  _Out_
2220  WDFMEMORY* PropertyMemory,
2221  _Out_
2223  );
2224 
2227 WDFAPI
2228 NTSTATUS
2229 STDCALL
2230 WDFEXPORT(WdfDeviceAssignProperty)(
2231  _In_
2233  _In_
2234  WDFDEVICE Device,
2235  _In_
2237  _In_
2238  DEVPROPTYPE Type,
2239  _In_
2240  ULONG Size,
2241  _In_opt_
2242  PVOID Data
2243  );
2244 
2246 WDFAPI
2247 WDFIOTARGET
2248 STDCALL
2249 WDFEXPORT(WdfDeviceGetSelfIoTarget)(
2250  _In_
2252  _In_
2253  WDFDEVICE Device
2254  );
2255 
2257 WDFAPI
2258 VOID
2259 STDCALL
2260 WDFEXPORT(WdfDeviceInitAllowSelfIoTarget)(
2261  _In_
2263  _In_
2265  );
2266 
2269 WDFAPI
2270 NTSTATUS
2271 STDCALL
2272 WDFEXPORT(WdfDmaEnablerCreate)(
2273  _In_
2275  _In_
2276  WDFDEVICE Device,
2277  _In_
2279  _In_opt_
2281  _Out_
2282  WDFDMAENABLER* DmaEnablerHandle
2283  );
2284 
2287 WDFAPI
2288 NTSTATUS
2289 STDCALL
2290 WDFEXPORT(WdfDmaEnablerConfigureSystemProfile)(
2291  _In_
2293  _In_
2294  WDFDMAENABLER DmaEnabler,
2295  _In_
2297  _In_
2299  );
2300 
2302 WDFAPI
2303 size_t
2304 STDCALL
2305 WDFEXPORT(WdfDmaEnablerGetMaximumLength)(
2306  _In_
2308  _In_
2309  WDFDMAENABLER DmaEnabler
2310  );
2311 
2313 WDFAPI
2314 size_t
2315 STDCALL
2316 WDFEXPORT(WdfDmaEnablerGetMaximumScatterGatherElements)(
2317  _In_
2319  _In_
2320  WDFDMAENABLER DmaEnabler
2321  );
2322 
2324 WDFAPI
2325 VOID
2326 STDCALL
2327 WDFEXPORT(WdfDmaEnablerSetMaximumScatterGatherElements)(
2328  _In_
2330  _In_
2331  WDFDMAENABLER DmaEnabler,
2332  _In_
2333  _When_(MaximumFragments == 0, __drv_reportError(MaximumFragments cannot be zero))
2334  size_t MaximumFragments
2335  );
2336 
2338 WDFAPI
2339 size_t
2340 STDCALL
2341 WDFEXPORT(WdfDmaEnablerGetFragmentLength)(
2342  _In_
2344  _In_
2345  WDFDMAENABLER DmaEnabler,
2346  _In_
2348  );
2349 
2351 WDFAPI
2353 STDCALL
2354 WDFEXPORT(WdfDmaEnablerWdmGetDmaAdapter)(
2355  _In_
2357  _In_
2358  WDFDMAENABLER DmaEnabler,
2359  _In_
2361  );
2362 
2365 WDFAPI
2366 NTSTATUS
2367 STDCALL
2368 WDFEXPORT(WdfDmaTransactionCreate)(
2369  _In_
2371  _In_
2372  WDFDMAENABLER DmaEnabler,
2373  _In_opt_
2375  _Out_
2376  WDFDMATRANSACTION* DmaTransaction
2377  );
2378 
2381 WDFAPI
2382 NTSTATUS
2383 STDCALL
2384 WDFEXPORT(WdfDmaTransactionInitialize)(
2385  _In_
2387  _In_
2388  WDFDMATRANSACTION DmaTransaction,
2389  _In_
2391  _In_
2393  _In_
2394  PMDL Mdl,
2395  _In_
2397  _In_
2398  _When_(Length == 0, __drv_reportError(Length cannot be zero))
2399  size_t Length
2400  );
2401 
2404 WDFAPI
2405 NTSTATUS
2406 STDCALL
2407 WDFEXPORT(WdfDmaTransactionInitializeUsingOffset)(
2408  _In_
2410  _In_
2411  WDFDMATRANSACTION DmaTransaction,
2412  _In_
2414  _In_
2416  _In_
2417  PMDL Mdl,
2418  _In_
2419  size_t Offset,
2420  _In_
2421  _When_(Length == 0, __drv_reportError(Length cannot be zero))
2422  size_t Length
2423  );
2424 
2427 WDFAPI
2428 NTSTATUS
2429 STDCALL
2430 WDFEXPORT(WdfDmaTransactionInitializeUsingRequest)(
2431  _In_
2433  _In_
2434  WDFDMATRANSACTION DmaTransaction,
2435  _In_
2436  WDFREQUEST Request,
2437  _In_
2439  _In_
2441  );
2442 
2445 WDFAPI
2446 NTSTATUS
2447 STDCALL
2448 WDFEXPORT(WdfDmaTransactionExecute)(
2449  _In_
2451  _In_
2452  WDFDMATRANSACTION DmaTransaction,
2453  _In_opt_
2455  );
2456 
2457 _Success_(TRUE)
2459 WDFAPI
2460 NTSTATUS
2461 STDCALL
2462 WDFEXPORT(WdfDmaTransactionRelease)(
2463  _In_
2465  _In_
2466  WDFDMATRANSACTION DmaTransaction
2467  );
2468 
2470 WDFAPI
2471 BOOLEAN
2472 STDCALL
2473 WDFEXPORT(WdfDmaTransactionDmaCompleted)(
2474  _In_
2476  _In_
2477  WDFDMATRANSACTION DmaTransaction,
2478  _Out_
2479  NTSTATUS* Status
2480  );
2481 
2483 WDFAPI
2484 BOOLEAN
2485 STDCALL
2486 WDFEXPORT(WdfDmaTransactionDmaCompletedWithLength)(
2487  _In_
2489  _In_
2490  WDFDMATRANSACTION DmaTransaction,
2491  _In_
2492  size_t TransferredLength,
2493  _Out_
2494  NTSTATUS* Status
2495  );
2496 
2498 WDFAPI
2499 BOOLEAN
2500 STDCALL
2501 WDFEXPORT(WdfDmaTransactionDmaCompletedFinal)(
2502  _In_
2504  _In_
2505  WDFDMATRANSACTION DmaTransaction,
2506  _In_
2507  size_t FinalTransferredLength,
2508  _Out_
2509  NTSTATUS* Status
2510  );
2511 
2513 WDFAPI
2514 size_t
2515 STDCALL
2516 WDFEXPORT(WdfDmaTransactionGetBytesTransferred)(
2517  _In_
2519  _In_
2520  WDFDMATRANSACTION DmaTransaction
2521  );
2522 
2524 WDFAPI
2525 VOID
2526 STDCALL
2527 WDFEXPORT(WdfDmaTransactionSetMaximumLength)(
2528  _In_
2530  _In_
2531  WDFDMATRANSACTION DmaTransaction,
2532  _In_
2533  size_t MaximumLength
2534  );
2535 
2537 WDFAPI
2538 WDFREQUEST
2539 STDCALL
2540 WDFEXPORT(WdfDmaTransactionGetRequest)(
2541  _In_
2543  _In_
2544  WDFDMATRANSACTION DmaTransaction
2545  );
2546 
2548 WDFAPI
2549 size_t
2550 STDCALL
2551 WDFEXPORT(WdfDmaTransactionGetCurrentDmaTransferLength)(
2552  _In_
2554  _In_
2555  WDFDMATRANSACTION DmaTransaction
2556  );
2557 
2559 WDFAPI
2560 WDFDEVICE
2561 STDCALL
2562 WDFEXPORT(WdfDmaTransactionGetDevice)(
2563  _In_
2565  _In_
2566  WDFDMATRANSACTION DmaTransaction
2567  );
2568 
2570 WDFAPI
2571 VOID
2572 STDCALL
2573 WDFEXPORT(WdfDmaTransactionGetTransferInfo)(
2574  _In_
2576  _In_
2577  WDFDMATRANSACTION DmaTransaction,
2578  _Out_opt_
2580  _Out_opt_
2582  );
2583 
2585 WDFAPI
2586 VOID
2587 STDCALL
2588 WDFEXPORT(WdfDmaTransactionSetChannelConfigurationCallback)(
2589  _In_
2591  _In_
2592  WDFDMATRANSACTION DmaTransaction,
2593  _In_opt_
2595  _In_opt_
2597  );
2598 
2600 WDFAPI
2601 VOID
2602 STDCALL
2603 WDFEXPORT(WdfDmaTransactionSetTransferCompleteCallback)(
2604  _In_
2606  _In_
2607  WDFDMATRANSACTION DmaTransaction,
2608  _In_opt_
2610  _In_opt_
2612  );
2613 
2615 WDFAPI
2616 VOID
2617 STDCALL
2618 WDFEXPORT(WdfDmaTransactionSetImmediateExecution)(
2619  _In_
2621  _In_
2622  WDFDMATRANSACTION DmaTransaction,
2623  _In_
2625  );
2626 
2628 WDFAPI
2629 NTSTATUS
2630 STDCALL
2631 WDFEXPORT(WdfDmaTransactionAllocateResources)(
2632  _In_
2634  _In_
2635  WDFDMATRANSACTION DmaTransaction,
2636  _In_
2638  _In_
2640  _In_
2642  _In_
2644  );
2645 
2647 WDFAPI
2648 VOID
2649 STDCALL
2650 WDFEXPORT(WdfDmaTransactionSetDeviceAddressOffset)(
2651  _In_
2653  _In_
2654  WDFDMATRANSACTION DmaTransaction,
2655  _In_
2656  ULONG Offset
2657  );
2658 
2660 WDFAPI
2661 VOID
2662 STDCALL
2663 WDFEXPORT(WdfDmaTransactionFreeResources)(
2664  _In_
2666  _In_
2667  WDFDMATRANSACTION DmaTransaction
2668  );
2669 
2671 WDFAPI
2672 BOOLEAN
2673 STDCALL
2674 WDFEXPORT(WdfDmaTransactionCancel)(
2675  _In_
2677  _In_
2678  WDFDMATRANSACTION DmaTransaction
2679  );
2680 
2682 WDFAPI
2683 PVOID
2684 STDCALL
2685 WDFEXPORT(WdfDmaTransactionWdmGetTransferContext)(
2686  _In_
2688  _In_
2689  WDFDMATRANSACTION DmaTransaction
2690  );
2691 
2693 WDFAPI
2694 VOID
2695 STDCALL
2696 WDFEXPORT(WdfDmaTransactionStopSystemTransfer)(
2697  _In_
2699  _In_
2700  WDFDMATRANSACTION DmaTransaction
2701  );
2702 
2705 WDFAPI
2706 NTSTATUS
2707 STDCALL
2708 WDFEXPORT(WdfDpcCreate)(
2709  _In_
2711  _In_
2713  _In_
2715  _Out_
2716  WDFDPC* Dpc
2717  );
2718 
2720 WDFAPI
2721 BOOLEAN
2722 STDCALL
2723 WDFEXPORT(WdfDpcEnqueue)(
2724  _In_
2726  _In_
2727  WDFDPC Dpc
2728  );
2729 
2732 WDFAPI
2733 BOOLEAN
2734 STDCALL
2735 WDFEXPORT(WdfDpcCancel)(
2736  _In_
2738  _In_
2739  WDFDPC Dpc,
2740  _In_
2741  BOOLEAN Wait
2742  );
2743 
2745 WDFAPI
2746 WDFOBJECT
2747 STDCALL
2748 WDFEXPORT(WdfDpcGetParentObject)(
2749  _In_
2751  _In_
2752  WDFDPC Dpc
2753  );
2754 
2756 WDFAPI
2757 PKDPC
2758 STDCALL
2759 WDFEXPORT(WdfDpcWdmGetDpc)(
2760  _In_
2762  _In_
2763  WDFDPC Dpc
2764  );
2765 
2768 WDFAPI
2769 NTSTATUS
2770 STDCALL
2771 WDFEXPORT(WdfDriverCreate)(
2772  _In_
2774  _In_
2776  _In_
2778  _In_opt_
2780  _In_
2782  _Out_opt_
2783  WDFDRIVER* Driver
2784  );
2785 
2787 WDFAPI
2788 PWSTR
2789 STDCALL
2790 WDFEXPORT(WdfDriverGetRegistryPath)(
2791  _In_
2793  _In_
2794  WDFDRIVER Driver
2795  );
2796 
2798 WDFAPI
2800 STDCALL
2801 WDFEXPORT(WdfDriverWdmGetDriverObject)(
2802  _In_
2804  _In_
2805  WDFDRIVER Driver
2806  );
2807 
2810 WDFAPI
2811 NTSTATUS
2812 STDCALL
2813 WDFEXPORT(WdfDriverOpenParametersRegistryKey)(
2814  _In_
2816  _In_
2817  WDFDRIVER Driver,
2818  _In_
2820  _In_opt_
2822  _Out_
2823  WDFKEY* Key
2824  );
2825 
2827 WDFAPI
2828 WDFDRIVER
2829 STDCALL
2830 WDFEXPORT(WdfWdmDriverGetWdfDriverHandle)(
2831  _In_
2833  _In_
2835  );
2836 
2839 WDFAPI
2840 NTSTATUS
2841 STDCALL
2842 WDFEXPORT(WdfDriverRegisterTraceInfo)(
2843  _In_
2845  _In_
2847  _In_
2849  _In_
2851  );
2852 
2855 WDFAPI
2856 NTSTATUS
2857 STDCALL
2858 WDFEXPORT(WdfDriverRetrieveVersionString)(
2859  _In_
2861  _In_
2862  WDFDRIVER Driver,
2863  _In_
2864  WDFSTRING String
2865  );
2866 
2869 WDFAPI
2870 BOOLEAN
2871 STDCALL
2872 WDFEXPORT(WdfDriverIsVersionAvailable)(
2873  _In_
2875  _In_
2876  WDFDRIVER Driver,
2877  _In_
2879  );
2880 
2882 WDFAPI
2884 STDCALL
2885 WDFEXPORT(WdfFdoInitWdmGetPhysicalDevice)(
2886  _In_
2888  _In_
2890  );
2891 
2894 WDFAPI
2895 NTSTATUS
2896 STDCALL
2897 WDFEXPORT(WdfFdoInitOpenRegistryKey)(
2898  _In_
2900  _In_
2902  _In_
2904  _In_
2906  _In_opt_
2908  _Out_
2909  WDFKEY* Key
2910  );
2911 
2914 WDFAPI
2915 NTSTATUS
2916 STDCALL
2917 WDFEXPORT(WdfFdoInitQueryProperty)(
2918  _In_
2920  _In_
2922  _In_
2924  _In_
2928  _Out_
2930  );
2931 
2934 WDFAPI
2935 NTSTATUS
2936 STDCALL
2937 WDFEXPORT(WdfFdoInitAllocAndQueryProperty)(
2938  _In_
2940  _In_
2942  _In_
2944  _In_
2947  _In_opt_
2949  _Out_
2950  WDFMEMORY* PropertyMemory
2951  );
2952 
2955 WDFAPI
2956 NTSTATUS
2957 STDCALL
2958 WDFEXPORT(WdfFdoInitQueryPropertyEx)(
2959  _In_
2961  _In_
2963  _In_
2965  _In_
2967  _Out_
2969  _Out_
2971  _Out_
2973  );
2974 
2977 WDFAPI
2978 NTSTATUS
2979 STDCALL
2980 WDFEXPORT(WdfFdoInitAllocAndQueryPropertyEx)(
2981  _In_
2983  _In_
2985  _In_
2987  _In_
2990  _In_opt_
2992  _Out_
2993  WDFMEMORY* PropertyMemory,
2994  _Out_
2996  );
2997 
2999 WDFAPI
3000 VOID
3001 STDCALL
3002 WDFEXPORT(WdfFdoInitSetEventCallbacks)(
3003  _In_
3005  _In_
3007  _In_
3009  );
3010 
3012 WDFAPI
3013 VOID
3014 STDCALL
3015 WDFEXPORT(WdfFdoInitSetFilter)(
3016  _In_
3018  _In_
3020  );
3021 
3023 WDFAPI
3024 VOID
3025 STDCALL
3026 WDFEXPORT(WdfFdoInitSetDefaultChildListConfig)(
3027  _In_
3029  _Inout_
3031  _In_
3033  _In_opt_
3035  );
3036 
3039 WDFAPI
3040 NTSTATUS
3041 STDCALL
3042 WDFEXPORT(WdfFdoQueryForInterface)(
3043  _In_
3045  _In_
3046  WDFDEVICE Fdo,
3047  _In_
3049  _Out_
3051  _In_
3052  USHORT Size,
3053  _In_
3054  USHORT Version,
3055  _In_opt_
3057  );
3058 
3060 WDFAPI
3061 WDFCHILDLIST
3062 STDCALL
3063 WDFEXPORT(WdfFdoGetDefaultChildList)(
3064  _In_
3066  _In_
3067  WDFDEVICE Fdo
3068  );
3069 
3072 WDFAPI
3073 NTSTATUS
3074 STDCALL
3075 WDFEXPORT(WdfFdoAddStaticChild)(
3076  _In_
3078  _In_
3079  WDFDEVICE Fdo,
3080  _In_
3081  WDFDEVICE Child
3082  );
3083 
3085 WDFAPI
3086 VOID
3087 STDCALL
3088 WDFEXPORT(WdfFdoLockStaticChildListForIteration)(
3089  _In_
3091  _In_
3092  WDFDEVICE Fdo
3093  );
3094 
3097 WDFAPI
3098 WDFDEVICE
3099 STDCALL
3100 WDFEXPORT(WdfFdoRetrieveNextStaticChild)(
3101  _In_
3103  _In_
3104  WDFDEVICE Fdo,
3105  _In_opt_
3106  WDFDEVICE PreviousChild,
3107  _In_
3108  ULONG Flags
3109  );
3110 
3112 WDFAPI
3113 VOID
3114 STDCALL
3115 WDFEXPORT(WdfFdoUnlockStaticChildListFromIteration)(
3116  _In_
3118  _In_
3119  WDFDEVICE Fdo
3120  );
3121 
3123 WDFAPI
3125 STDCALL
3126 WDFEXPORT(WdfFileObjectGetFileName)(
3127  _In_
3129  _In_
3130  WDFFILEOBJECT FileObject
3131  );
3132 
3134 WDFAPI
3135 ULONG
3136 STDCALL
3137 WDFEXPORT(WdfFileObjectGetFlags)(
3138  _In_
3140  _In_
3141  WDFFILEOBJECT FileObject
3142  );
3143 
3145 WDFAPI
3146 WDFDEVICE
3147 STDCALL
3148 WDFEXPORT(WdfFileObjectGetDevice)(
3149  _In_
3151  _In_
3152  WDFFILEOBJECT FileObject
3153  );
3154 
3156 WDFAPI
3158 STDCALL
3159 WDFEXPORT(WdfFileObjectWdmGetFileObject)(
3160  _In_
3162  _In_
3163  WDFFILEOBJECT FileObject
3164  );
3165 
3168 WDFAPI
3169 NTSTATUS
3170 STDCALL
3171 WDFEXPORT(WdfInterruptCreate)(
3172  _In_
3174  _In_
3175  WDFDEVICE Device,
3176  _In_
3178  _In_opt_
3180  _Out_
3181  WDFINTERRUPT* Interrupt
3182  );
3183 
3184 WDFAPI
3185 BOOLEAN
3186 STDCALL
3188  _In_
3190  _In_
3191  WDFINTERRUPT Interrupt
3192  );
3193 
3194 WDFAPI
3195 BOOLEAN
3196 STDCALL
3198  _In_
3200  _In_
3201  WDFINTERRUPT Interrupt
3202  );
3203 
3205 WDFAPI
3206 BOOLEAN
3207 STDCALL
3208 WDFEXPORT(WdfInterruptSynchronize)(
3209  _In_
3211  _In_
3212  WDFINTERRUPT Interrupt,
3213  _In_
3215  _In_
3217  );
3218 
3220 WDFAPI
3221 VOID
3222 STDCALL
3223 WDFEXPORT(WdfInterruptAcquireLock)(
3224  _In_
3226  _In_
3227  _Requires_lock_not_held_(_Curr_)
3228  _Acquires_lock_(_Curr_)
3229  WDFINTERRUPT Interrupt
3230  );
3231 
3233 WDFAPI
3234 VOID
3235 STDCALL
3236 WDFEXPORT(WdfInterruptReleaseLock)(
3237  _In_
3239  _In_
3240  _Requires_lock_held_(_Curr_)
3241  _Releases_lock_(_Curr_)
3242  WDFINTERRUPT Interrupt
3243  );
3244 
3246 WDFAPI
3247 VOID
3248 STDCALL
3249 WDFEXPORT(WdfInterruptEnable)(
3250  _In_
3252  _In_
3253  WDFINTERRUPT Interrupt
3254  );
3255 
3257 WDFAPI
3258 VOID
3259 STDCALL
3260 WDFEXPORT(WdfInterruptDisable)(
3261  _In_
3263  _In_
3264  WDFINTERRUPT Interrupt
3265  );
3266 
3268 WDFAPI
3270 STDCALL
3272  _In_
3274  _In_
3275  WDFINTERRUPT Interrupt
3276  );
3277 
3279 WDFAPI
3280 VOID
3281 STDCALL
3282 WDFEXPORT(WdfInterruptGetInfo)(
3283  _In_
3285  _In_
3286  WDFINTERRUPT Interrupt,
3287  _Out_
3289  );
3290 
3292 WDFAPI
3293 VOID
3294 STDCALL
3295 WDFEXPORT(WdfInterruptSetPolicy)(
3296  _In_
3298  _In_
3299  WDFINTERRUPT Interrupt,
3300  _In_
3302  _In_
3304  _In_
3306  );
3307 
3309 WDFAPI
3310 VOID
3311 STDCALL
3312 WDFEXPORT(WdfInterruptSetExtendedPolicy)(
3313  _In_
3315  _In_
3316  WDFINTERRUPT Interrupt,
3317  _In_
3319  );
3320 
3321 WDFAPI
3322 WDFDEVICE
3323 STDCALL
3325  _In_
3327  _In_
3328  WDFINTERRUPT Interrupt
3329  );
3330 
3332 _Post_satisfies_(return == 1 || return == 0)
3334 WDFAPI
3335 BOOLEAN
3336 STDCALL
3337 WDFEXPORT(WdfInterruptTryToAcquireLock)(
3338  _In_
3340  _In_
3341  _Requires_lock_not_held_(_Curr_)
3342  _When_(return!=0, _Acquires_lock_(_Curr_))
3343  WDFINTERRUPT Interrupt
3344  );
3345 
3347 WDFAPI
3348 VOID
3349 STDCALL
3350 WDFEXPORT(WdfInterruptReportActive)(
3351  _In_
3353  _In_
3354  WDFINTERRUPT Interrupt
3355  );
3356 
3358 WDFAPI
3359 VOID
3360 STDCALL
3361 WDFEXPORT(WdfInterruptReportInactive)(
3362  _In_
3364  _In_
3365  WDFINTERRUPT Interrupt
3366  );
3367 
3370 WDFAPI
3371 NTSTATUS
3372 STDCALL
3373 WDFEXPORT(WdfIoQueueCreate)(
3374  _In_
3376  _In_
3377  WDFDEVICE Device,
3378  _In_
3380  _In_opt_
3382  _Out_opt_
3383  WDFQUEUE* Queue
3384  );
3385 
3387 WDFAPI
3389 STDCALL
3390 WDFEXPORT(WdfIoQueueGetState)(
3391  _In_
3393  _In_
3394  WDFQUEUE Queue,
3395  _Out_opt_
3397  _Out_opt_
3399  );
3400 
3402 WDFAPI
3403 VOID
3404 STDCALL
3405 WDFEXPORT(WdfIoQueueStart)(
3406  _In_
3408  _In_
3409  WDFQUEUE Queue
3410  );
3411 
3413 WDFAPI
3414 VOID
3415 STDCALL
3416 WDFEXPORT(WdfIoQueueStop)(
3417  _In_
3419  _In_
3420  WDFQUEUE Queue,
3421  _When_(Context != 0, _In_)
3422  _When_(Context == 0, _In_opt_)
3424  _When_(StopComplete != 0, _In_)
3427  );
3428 
3430 WDFAPI
3431 VOID
3432 STDCALL
3433 WDFEXPORT(WdfIoQueueStopSynchronously)(
3434  _In_
3436  _In_
3437  WDFQUEUE Queue
3438  );
3439 
3441 WDFAPI
3442 WDFDEVICE
3443 STDCALL
3444 WDFEXPORT(WdfIoQueueGetDevice)(
3445  _In_
3447  _In_
3448  WDFQUEUE Queue
3449  );
3450 
3453 WDFAPI
3454 NTSTATUS
3455 STDCALL
3456 WDFEXPORT(WdfIoQueueRetrieveNextRequest)(
3457  _In_
3459  _In_
3460  WDFQUEUE Queue,
3461  _Out_
3462  WDFREQUEST* OutRequest
3463  );
3464 
3467 WDFAPI
3468 NTSTATUS
3469 STDCALL
3470 WDFEXPORT(WdfIoQueueRetrieveRequestByFileObject)(
3471  _In_
3473  _In_
3474  WDFQUEUE Queue,
3475  _In_
3476  WDFFILEOBJECT FileObject,
3477  _Out_
3478  WDFREQUEST* OutRequest
3479  );
3480 
3483 WDFAPI
3484 NTSTATUS
3485 STDCALL
3486 WDFEXPORT(WdfIoQueueFindRequest)(
3487  _In_
3489  _In_
3490  WDFQUEUE Queue,
3491  _In_opt_
3492  WDFREQUEST FoundRequest,
3493  _In_opt_
3494  WDFFILEOBJECT FileObject,
3495  _Inout_opt_
3497  _Out_
3498  WDFREQUEST* OutRequest
3499  );
3500 
3503 WDFAPI
3504 NTSTATUS
3505 STDCALL
3506 WDFEXPORT(WdfIoQueueRetrieveFoundRequest)(
3507  _In_
3509  _In_
3510  WDFQUEUE Queue,
3511  _In_
3512  WDFREQUEST FoundRequest,
3513  _Out_
3514  WDFREQUEST* OutRequest
3515  );
3516 
3518 WDFAPI
3519 VOID
3520 STDCALL
3521 WDFEXPORT(WdfIoQueueDrainSynchronously)(
3522  _In_
3524  _In_
3525  WDFQUEUE Queue
3526  );
3527 
3529 WDFAPI
3530 VOID
3531 STDCALL
3532 WDFEXPORT(WdfIoQueueDrain)(
3533  _In_
3535  _In_
3536  WDFQUEUE Queue,
3537  _When_(Context != 0, _In_)
3538  _When_(Context == 0, _In_opt_)
3540  _When_(DrainComplete != 0, _In_)
3543  );
3544 
3546 WDFAPI
3547 VOID
3548 STDCALL
3549 WDFEXPORT(WdfIoQueuePurgeSynchronously)(
3550  _In_
3552  _In_
3553  WDFQUEUE Queue
3554  );
3555 
3557 WDFAPI
3558 VOID
3559 STDCALL
3560 WDFEXPORT(WdfIoQueuePurge)(
3561  _In_
3563  _In_
3564  WDFQUEUE Queue,
3565  _When_(Context != 0, _In_)
3566  _When_(Context == 0, _In_opt_)
3568  _When_(PurgeComplete != 0, _In_)
3571  );
3572 
3575 WDFAPI
3576 NTSTATUS
3577 STDCALL
3578 WDFEXPORT(WdfIoQueueReadyNotify)(
3579  _In_
3581  _In_
3582  WDFQUEUE Queue,
3583  _In_opt_
3585  _In_opt_
3587  );
3588 
3591 WDFAPI
3592 NTSTATUS
3593 STDCALL
3594 WDFEXPORT(WdfIoQueueAssignForwardProgressPolicy)(
3595  _In_
3597  _In_
3598  WDFQUEUE Queue,
3599  _In_
3601  );
3602 
3604 WDFAPI
3605 VOID
3606 STDCALL
3607 WDFEXPORT(WdfIoQueueStopAndPurge)(
3608  _In_
3610  _In_
3611  WDFQUEUE Queue,
3612  _When_(Context != 0, _In_)
3613  _When_(Context == 0, _In_opt_)
3618  );
3619 
3621 WDFAPI
3622 VOID
3623 STDCALL
3624 WDFEXPORT(WdfIoQueueStopAndPurgeSynchronously)(
3625  _In_
3627  _In_
3628  WDFQUEUE Queue
3629  );
3630 
3633 WDFAPI
3634 NTSTATUS
3635 STDCALL
3636 WDFEXPORT(WdfIoTargetCreate)(
3637  _In_
3639  _In_
3640  WDFDEVICE Device,
3641  _In_opt_
3643  _Out_
3644  WDFIOTARGET* IoTarget
3645  );
3646 
3649 WDFAPI
3650 NTSTATUS
3651 STDCALL
3652 WDFEXPORT(WdfIoTargetOpen)(
3653  _In_
3655  _In_
3656  WDFIOTARGET IoTarget,
3657  _In_
3659  );
3660 
3662 WDFAPI
3663 VOID
3664 STDCALL
3665 WDFEXPORT(WdfIoTargetCloseForQueryRemove)(
3666  _In_
3668  _In_
3669  WDFIOTARGET IoTarget
3670  );
3671 
3673 WDFAPI
3674 VOID
3675 STDCALL
3676 WDFEXPORT(WdfIoTargetClose)(
3677  _In_
3679  _In_
3680  WDFIOTARGET IoTarget
3681  );
3682 
3685 WDFAPI
3686 NTSTATUS
3687 STDCALL
3688 WDFEXPORT(WdfIoTargetStart)(
3689  _In_
3691  _In_
3692  WDFIOTARGET IoTarget
3693  );
3694 
3697 WDFAPI
3698 VOID
3699 STDCALL
3700 WDFEXPORT(WdfIoTargetStop)(
3701  _In_
3703  _In_
3704  WDFIOTARGET IoTarget,
3705  _In_
3708  );
3709 
3712 WDFAPI
3713 VOID
3714 STDCALL
3715 WDFEXPORT(WdfIoTargetPurge)(
3716  _In_
3718  _In_
3719  WDFIOTARGET IoTarget,
3720  _In_
3723  );
3724 
3726 WDFAPI
3728 STDCALL
3729 WDFEXPORT(WdfIoTargetGetState)(
3730  _In_
3732  _In_
3733  WDFIOTARGET IoTarget
3734  );
3735 
3737 WDFAPI
3738 WDFDEVICE
3739 STDCALL
3740 WDFEXPORT(WdfIoTargetGetDevice)(
3741  _In_
3743  _In_
3744  WDFIOTARGET IoTarget
3745  );
3746 
3749 WDFAPI
3750 NTSTATUS
3751 STDCALL
3752 WDFEXPORT(WdfIoTargetQueryTargetProperty)(
3753  _In_
3755  _In_
3756  WDFIOTARGET IoTarget,
3757  _In_
3759  _In_
3766  );
3767 
3770 WDFAPI
3771 NTSTATUS
3772 STDCALL
3773 WDFEXPORT(WdfIoTargetAllocAndQueryTargetProperty)(
3774  _In_
3776  _In_
3777  WDFIOTARGET IoTarget,
3778  _In_
3780  _In_
3783  _In_opt_
3785  _Out_
3786  WDFMEMORY* PropertyMemory
3787  );
3788 
3791 WDFAPI
3792 NTSTATUS
3793 STDCALL
3794 WDFEXPORT(WdfIoTargetQueryForInterface)(
3795  _In_
3797  _In_
3798  WDFIOTARGET IoTarget,
3799  _In_
3801  _Out_
3803  _In_
3804  USHORT Size,
3805  _In_
3806  USHORT Version,
3807  _In_opt_
3809  );
3810 
3812 WDFAPI
3814 STDCALL
3815 WDFEXPORT(WdfIoTargetWdmGetTargetDeviceObject)(
3816  _In_
3818  _In_
3819  WDFIOTARGET IoTarget
3820  );
3821 
3823 WDFAPI
3825 STDCALL
3826 WDFEXPORT(WdfIoTargetWdmGetTargetPhysicalDevice)(
3827  _In_
3829  _In_
3830  WDFIOTARGET IoTarget
3831  );
3832 
3834 WDFAPI
3836 STDCALL
3837 WDFEXPORT(WdfIoTargetWdmGetTargetFileObject)(
3838  _In_
3840  _In_
3841  WDFIOTARGET IoTarget
3842  );
3843 
3845 WDFAPI
3846 HANDLE
3847 STDCALL
3848 WDFEXPORT(WdfIoTargetWdmGetTargetFileHandle)(
3849  _In_
3851  _In_
3852  WDFIOTARGET IoTarget
3853  );
3854 
3857 WDFAPI
3858 NTSTATUS
3859 STDCALL
3860 WDFEXPORT(WdfIoTargetSendReadSynchronously)(
3861  _In_
3863  _In_
3864  WDFIOTARGET IoTarget,
3865  _In_opt_
3866  WDFREQUEST Request,
3867  _In_opt_
3869  _In_opt_
3871  _In_opt_
3873  _Out_opt_
3875  );
3876 
3879 WDFAPI
3880 NTSTATUS
3881 STDCALL
3882 WDFEXPORT(WdfIoTargetFormatRequestForRead)(
3883  _In_
3885  _In_
3886  WDFIOTARGET IoTarget,
3887  _In_
3888  WDFREQUEST Request,
3889  _In_opt_
3890  WDFMEMORY OutputBuffer,
3891  _In_opt_
3893  _In_opt_
3895  );
3896 
3899 WDFAPI
3900 NTSTATUS
3901 STDCALL
3902 WDFEXPORT(WdfIoTargetSendWriteSynchronously)(
3903  _In_
3905  _In_
3906  WDFIOTARGET IoTarget,
3907  _In_opt_
3908  WDFREQUEST Request,
3909  _In_opt_
3911  _In_opt_
3913  _In_opt_
3915  _Out_opt_
3917  );
3918 
3921 WDFAPI
3922 NTSTATUS
3923 STDCALL
3924 WDFEXPORT(WdfIoTargetFormatRequestForWrite)(
3925  _In_
3927  _In_
3928  WDFIOTARGET IoTarget,
3929  _In_
3930  WDFREQUEST Request,
3931  _In_opt_
3932  WDFMEMORY InputBuffer,
3933  _In_opt_
3935  _In_opt_
3937  );
3938 
3941 WDFAPI
3942 NTSTATUS
3943 STDCALL
3944 WDFEXPORT(WdfIoTargetSendIoctlSynchronously)(
3945  _In_
3947  _In_
3948  WDFIOTARGET IoTarget,
3949  _In_opt_
3950  WDFREQUEST Request,
3951  _In_
3952  ULONG IoctlCode,
3953  _In_opt_
3955  _In_opt_
3957  _In_opt_
3959  _Out_opt_
3961  );
3962 
3965 WDFAPI
3966 NTSTATUS
3967 STDCALL
3968 WDFEXPORT(WdfIoTargetFormatRequestForIoctl)(
3969  _In_
3971  _In_
3972  WDFIOTARGET IoTarget,
3973  _In_
3974  WDFREQUEST Request,
3975  _In_
3976  ULONG IoctlCode,
3977  _In_opt_
3978  WDFMEMORY InputBuffer,
3979  _In_opt_
3981  _In_opt_
3982  WDFMEMORY OutputBuffer,
3983  _In_opt_
3985  );
3986 
3989 WDFAPI
3990 NTSTATUS
3991 STDCALL
3992 WDFEXPORT(WdfIoTargetSendInternalIoctlSynchronously)(
3993  _In_
3995  _In_
3996  WDFIOTARGET IoTarget,
3997  _In_opt_
3998  WDFREQUEST Request,
3999  _In_
4000  ULONG IoctlCode,
4001  _In_opt_
4003  _In_opt_
4005  _In_opt_
4007  _Out_opt_
4009  );
4010 
4013 WDFAPI
4014 NTSTATUS
4015 STDCALL
4016 WDFEXPORT(WdfIoTargetFormatRequestForInternalIoctl)(
4017  _In_
4019  _In_
4020  WDFIOTARGET IoTarget,
4021  _In_
4022  WDFREQUEST Request,
4023  _In_
4024  ULONG IoctlCode,
4025  _In_opt_
4026  WDFMEMORY InputBuffer,
4027  _In_opt_
4029  _In_opt_
4030  WDFMEMORY OutputBuffer,
4031  _In_opt_
4033  );
4034 
4037 WDFAPI
4038 NTSTATUS
4039 STDCALL
4040 WDFEXPORT(WdfIoTargetSendInternalIoctlOthersSynchronously)(
4041  _In_
4043  _In_
4044  WDFIOTARGET IoTarget,
4045  _In_opt_
4046  WDFREQUEST Request,
4047  _In_
4048  ULONG IoctlCode,
4049  _In_opt_
4051  _In_opt_
4053  _In_opt_
4055  _In_opt_
4057  _Out_opt_
4059  );
4060 
4063 WDFAPI
4064 NTSTATUS
4065 STDCALL
4066 WDFEXPORT(WdfIoTargetFormatRequestForInternalIoctlOthers)(
4067  _In_
4069  _In_
4070  WDFIOTARGET IoTarget,
4071  _In_
4072  WDFREQUEST Request,
4073  _In_
4074  ULONG IoctlCode,
4075  _In_opt_
4076  WDFMEMORY OtherArg1,
4077  _In_opt_
4079  _In_opt_
4080  WDFMEMORY OtherArg2,
4081  _In_opt_
4083  _In_opt_
4084  WDFMEMORY OtherArg4,
4085  _In_opt_
4087  );
4088 
4090 WDFAPI
4091 NTSTATUS
4092 STDCALL
4093 WDFEXPORT(WdfIoTargetSelfAssignDefaultIoQueue)(
4094  _In_
4096  _In_
4097  WDFIOTARGET IoTarget,
4098  _In_
4099  WDFQUEUE Queue
4100  );
4101 
4105 WDFAPI
4106 NTSTATUS
4107 STDCALL
4108 WDFEXPORT(WdfMemoryCreate)(
4109  _In_
4111  _In_opt_
4113  _In_
4116  _In_opt_
4117  ULONG PoolTag,
4118  _In_
4120  size_t BufferSize,
4121  _Out_
4122  WDFMEMORY* Memory,
4124  PVOID* Buffer
4125  );
4126 
4129 WDFAPI
4130 NTSTATUS
4131 STDCALL
4132 WDFEXPORT(WdfMemoryCreatePreallocated)(
4133  _In_
4135  _In_opt_
4138  PVOID Buffer,
4139  _In_
4141  size_t BufferSize,
4142  _Out_
4143  WDFMEMORY* Memory
4144  );
4145 
4147 WDFAPI
4148 PVOID
4149 STDCALL
4150 WDFEXPORT(WdfMemoryGetBuffer)(
4151  _In_
4153  _In_
4154  WDFMEMORY Memory,
4155  _Out_opt_
4156  size_t* BufferSize
4157  );
4158 
4161 WDFAPI
4162 NTSTATUS
4163 STDCALL
4164 WDFEXPORT(WdfMemoryAssignBuffer)(
4165  _In_
4167  _In_
4168  WDFMEMORY Memory,
4170  PVOID Buffer,
4171  _In_
4173  size_t BufferSize
4174  );
4175 
4178 WDFAPI
4179 NTSTATUS
4180 STDCALL
4181 WDFEXPORT(WdfMemoryCopyToBuffer)(
4182  _In_
4184  _In_
4185  WDFMEMORY SourceMemory,
4186  _In_
4187  size_t SourceOffset,
4188  _Out_writes_bytes_( NumBytesToCopyTo )
4189  PVOID Buffer,
4190  _In_
4191  _When_(NumBytesToCopyTo == 0, __drv_reportError(NumBytesToCopyTo cannot be zero))
4192  size_t NumBytesToCopyTo
4193  );
4194 
4197 WDFAPI
4198 NTSTATUS
4199 STDCALL
4200 WDFEXPORT(WdfMemoryCopyFromBuffer)(
4201  _In_
4203  _In_
4205  _In_
4206  size_t DestinationOffset,
4207  _In_
4208  PVOID Buffer,
4209  _In_
4210  _When_(NumBytesToCopyFrom == 0, __drv_reportError(NumBytesToCopyFrom cannot be zero))
4211  size_t NumBytesToCopyFrom
4212  );
4213 
4217 WDFAPI
4218 NTSTATUS
4219 STDCALL
4220 WDFEXPORT(WdfLookasideListCreate)(
4221  _In_
4223  _In_opt_
4225  _In_
4227  size_t BufferSize,
4228  _In_
4231  _In_opt_
4233  _In_opt_
4234  ULONG PoolTag,
4235  _Out_
4236  WDFLOOKASIDE* Lookaside
4237  );
4238 
4241 WDFAPI
4242 NTSTATUS
4243 STDCALL
4244 WDFEXPORT(WdfMemoryCreateFromLookaside)(
4245  _In_
4247  _In_
4248  WDFLOOKASIDE Lookaside,
4249  _Out_
4250  WDFMEMORY* Memory
4251  );
4252 
4255 WDFAPI
4256 NTSTATUS
4257 STDCALL
4258 WDFEXPORT(WdfDeviceMiniportCreate)(
4259  _In_
4261  _In_
4262  WDFDRIVER Driver,
4263  _In_opt_
4265  _In_
4267  _In_opt_
4269  _In_opt_
4271  _Out_
4272  WDFDEVICE* Device
4273  );
4274 
4275 WDFAPI
4276 VOID
4277 STDCALL
4279  _In_
4281  _In_
4282  WDFDRIVER Driver
4283  );
4284 
4285 WDFAPI
4286 PVOID
4287 FASTCALL
4289  _In_
4291  _In_
4292  WDFOBJECT Handle,
4293  _In_
4295  );
4296 
4297 WDFAPI
4298 NTSTATUS
4299 STDCALL
4301  _In_
4303  _In_
4304  WDFOBJECT Handle,
4305  _In_
4306  PWDF_OBJECT_ATTRIBUTES ContextAttributes,
4307  _Outptr_opt_
4308  PVOID* Context
4309  );
4310 
4311 WDFAPI
4312 WDFOBJECT
4313 FASTCALL
4315  _In_
4317  _In_
4319  );
4320 
4321 WDFAPI
4322 VOID
4323 STDCALL
4325  _In_
4327  _In_
4328  WDFOBJECT Handle,
4329  _In_opt_
4330  PVOID Tag,
4331  _In_
4332  LONG Line,
4333  _In_z_
4334  PCHAR File
4335  );
4336 
4337 WDFAPI
4338 VOID
4339 STDCALL
4341  _In_
4343  _In_
4344  WDFOBJECT Handle,
4345  _In_opt_
4346  PVOID Tag,
4347  _In_
4348  LONG Line,
4349  _In_z_
4350  PCHAR File
4351  );
4352 
4355 WDFAPI
4356 NTSTATUS
4357 STDCALL
4358 WDFEXPORT(WdfObjectCreate)(
4359  _In_
4361  _In_opt_
4363  _Out_
4364  WDFOBJECT* Object
4365  );
4366 
4368 WDFAPI
4369 VOID
4370 STDCALL
4371 WDFEXPORT(WdfObjectDelete)(
4372  _In_
4374  _In_
4376  );
4377 
4380 WDFAPI
4381 NTSTATUS
4382 STDCALL
4383 WDFEXPORT(WdfObjectQuery)(
4384  _In_
4386  _In_
4388  _In_
4389  CONST GUID* Guid,
4390  _In_
4393  PVOID QueryBuffer
4394  );
4395 
4398 WDFAPI
4400 STDCALL
4401 WDFEXPORT(WdfPdoInitAllocate)(
4402  _In_
4404  _In_
4405  WDFDEVICE ParentDevice
4406  );
4407 
4409 WDFAPI
4410 VOID
4411 STDCALL
4412 WDFEXPORT(WdfPdoInitSetEventCallbacks)(
4413  _In_
4415  _In_
4417  _In_
4419  );
4420 
4423 WDFAPI
4424 NTSTATUS
4425 STDCALL
4426 WDFEXPORT(WdfPdoInitAssignDeviceID)(
4427  _In_
4429  _In_
4431  _In_
4433  );
4434 
4437 WDFAPI
4438 NTSTATUS
4439 STDCALL
4440 WDFEXPORT(WdfPdoInitAssignInstanceID)(
4441  _In_
4443  _In_
4445  _In_
4447  );
4448 
4451 WDFAPI
4452 NTSTATUS
4453 STDCALL
4454 WDFEXPORT(WdfPdoInitAddHardwareID)(
4455  _In_
4457  _In_
4459  _In_
4461  );
4462 
4465 WDFAPI
4466 NTSTATUS
4467 STDCALL
4468 WDFEXPORT(WdfPdoInitAddCompatibleID)(
4469  _In_
4471  _In_
4473  _In_
4475  );
4476 
4479 WDFAPI
4480 NTSTATUS
4481 STDCALL
4482 WDFEXPORT(WdfPdoInitAssignContainerID)(
4483  _In_
4485  _In_
4487  _In_
4489  );
4490 
4493 WDFAPI
4494 NTSTATUS
4495 STDCALL
4496 WDFEXPORT(WdfPdoInitAddDeviceText)(
4497  _In_
4499  _In_
4501  _In_
4503  _In_
4505  _In_
4506  LCID LocaleId
4507  );
4508 
4510 WDFAPI
4511 VOID
4512 STDCALL
4513 WDFEXPORT(WdfPdoInitSetDefaultLocale)(
4514  _In_
4516  _In_
4518  _In_
4519  LCID LocaleId
4520  );
4521 
4524 WDFAPI
4525 NTSTATUS
4526 STDCALL
4527 WDFEXPORT(WdfPdoInitAssignRawDevice)(
4528  _In_
4530  _In_
4532  _In_
4534  );
4535 
4537 WDFAPI
4538 VOID
4539 STDCALL
4540 WDFEXPORT(WdfPdoInitAllowForwardingRequestToParent)(
4541  _In_
4543  _In_
4545  );
4546 
4549 WDFAPI
4550 NTSTATUS
4551 STDCALL
4552 WDFEXPORT(WdfPdoMarkMissing)(
4553  _In_
4555  _In_
4556  WDFDEVICE Device
4557  );
4558 
4560 WDFAPI
4561 VOID
4562 STDCALL
4563 WDFEXPORT(WdfPdoRequestEject)(
4564  _In_
4566  _In_
4567  WDFDEVICE Device
4568  );
4569 
4571 WDFAPI
4572 WDFDEVICE
4573 STDCALL
4574 WDFEXPORT(WdfPdoGetParent)(
4575  _In_
4577  _In_
4578  WDFDEVICE Device
4579  );
4580 
4583 WDFAPI
4584 NTSTATUS
4585