Summary of Framework Objects
The following table lists all of the framework objects and provides some basic information about each object. The mode column indicates whether the object can be used in KMDF and UMDF drivers, or KMDF only.
For a list of callbacks and methods and which frameworks are applicable, see Summary of WDF Callbacks and Methods.
Name | Handle | Purpose | Default parent | Can driver override default parent? | Mode | Reference |
---|---|---|---|---|---|---|
Child-list object | WDFCHILDLIST | Represents a list of child devices that are connected to a parent device. | Device object | No | KM | WDF Child-List Object Reference |
Collection object | WDFCOLLECTION | Represents an object collection. | Driver object | Yes | KM/UM | WDF Collection Object Reference |
Common buffer object | WDFCOMMONBUFFER | Represents a common buffer. | DMA enabler object | No | KM | WDF Common Buffer Object Reference |
Device object | WDFDEVICE | Represents a device. | Driver object | No | KM/UM | WDF Device Object Reference |
DMA enabler object | WDFDMAENABLER | Enables a driver to use the framework's DMA capabilities. | Device object | Yes | KM | WDF DMA Object Reference |
DMA transaction object | WDFDMATRANSACTION | Represents a DMA transaction. | DMA enabler object | No | KM | WDF DMA Object Reference |
DPC object | WDFDPC | Represents a deferred procedure call. | None | Yes | KM | WDF DPC Object Reference |
Driver object | WDFDRIVER | Represents a driver. | None | No | KM/UM | WDF Driver Object Reference |
File object | WDFFILEOBJECT | Represents a file. | Device object | No | KM/UM | WDF File Object Reference |
General object | WDFOBJECT | Represents a general object. | Driver object | Yes | KM/UM | WDF General Object Reference |
Interrupt object | WDFINTERRUPT | Represents a hardware interrupt resource. | Device object | Yes | KM/UM | WDF Interrupt Object Reference |
I/O target object | WDFIOTARGET | Represents a driver to which another driver sends I/O requests. | Device object | Yes | KM/UM | WDF I/O Target Object Reference |
Lookaside-list object | WDFLOOKASIDE | Represents a lookaside list. | Driver object | Yes | KM | WDF Memory Object Reference |
Memory object | WDFMEMORY | Represents a memory buffer. | Driver object | Yes | KM/UM | WDF Memory Object Reference |
Queue object | WDFQUEUE | Represents an I/O queue that receives I/O requests. | Device object | Yes | KM/UM | WDF Queue Object Reference |
Registry key object | WDFKEY | Represents a registry key. | Driver object | Yes | KM/UM | WDF Registry Key Object Reference |
Request object | WDFREQUEST | Represents an I/O request. | None, if created by framework. Driver object, if created by driver. | Yes, if created by driver. | KM/UM | WDF Request Object Reference |
Resource list object | WDFCMRESLIST | Represents a resource list. | Driver object | No | KM/UM | WDF Resource Object Reference |
Resource range list object | WDFIORESLIST | Represents a logical configuration. | Resource requirements list object | No | KM | WDF Resource Object Reference |
Resource requirements list object | WDFIORESREQLIST | Represents a resource requirements list. | Driver object | No | KM | WDF Resource Object Reference |
Spin-lock object | WDFSPINLOCK | Represents a spin lock. | Driver object | Yes | KM/UM | WDF Synchronization Methods |
String object | WDFSTRING | Represents a Unicode string. | Driver object | Yes | KM/UM | WDF String Object Reference |
Timer object | WDFTIMER | Represents a timer. | None | Yes | KM/UM | WDF Timer Object Reference |
USB device object | WDFUSBDEVICE | Represents a device connected to a USB. | Device object | No | KM/UM | WDF USB Reference |
USB interface object | WDFUSBINTERFACE | Represents a USB device interface. | USB device object | No | KM/UM | WDF USB Reference |
USB pipe object | WDFUSBPIPE | Represents a USB device pipe. | USB interface object | No | KM/UM | WDF USB Reference |
Wait-lock object | WDFWAITLOCK | Represents a wait lock. | Driver object | Yes | KM/UM | WDF Synchronization Methods |
WMI instance object | WDFWMIINSTANCE | Represents an instance of a WMI data block. | WMI provider object | No | KM | WDF WMI Reference |
WMI provider object | WDFWMIPROVIDER | Represents a WMI data block. | Device object | No | KM | WDF WMI Reference |
Work-item object | WDFWORKITEM | Represents a work item. | None | Yes | KM/UM | WDF Work-Item Object Reference |