ursdevice.h header

This header is used by usbref. For more information, see:

ursdevice.h contains the following programming interfaces:


Title Description
URS_CONFIG_INIT Initializes a URS_CONFIG structure.
UrsDeviceInitialize Initializes a framework device object to support operations related to a USB dual-role controller and registers the relevant event callback functions with the USB dual-role controller class extension.
UrsDeviceInitInitialize Initializes device initialization operations when the Plug and Play (PnP) manager reports the existence of a device.
UrsIoResourceListAppendDescriptor Appends the specified resource descriptor to the specified I/O resource list object that maintains resource descriptors for the host or function role.
UrsReportHardwareEvent Notifies the USB dual-role class extension about a new hardware event.
UrsSetHardwareEventSupport Indicates the client driver's support for reporting new hardware events.
UrsSetPoHandle Registers and deletes the client driver's registration with the power management framework (PoFx).

Callback functions

Title Description
EVT_URS_DEVICE_FILTER_RESOURCE_REQUIREMENTS The USB dual-role class extension invokes this callback to allow the client driver to insert the resources from the resource-requirements-list object to resource lists that will be used during the life time of each role.
EVT_URS_SET_ROLE The URS class extension invokes this event callback when it requires the client driver to change the role of the controller.


Title Description
_URS_CONFIG Contains pointers to event callback functions implemented by the URS client driver for a USB dual-role controller. Initialize this structure by calling URS_CONFIG_INIT.