// usbcamdi.h
PCAM_CONFIGURE_ROUTINE_EX PcamConfigureRoutineEx;
NTSTATUS PcamConfigureRoutineEx(
PDEVICE_OBJECT BusDeviceObject,
PVOID DeviceContext,
PUSBD_INTERFACE_INFORMATION Interface,
PUSB_CONFIGURATION_DESCRIPTOR ConfigurationDescriptor,
ULONG PipeConfigListSize,
PUSBCAMD_Pipe_Config_Descriptor PipeConfig,
PUSB_DEVICE_DESCRIPTOR DeviceDescriptor
)
{...}
View the official Windows Driver Kit DDI referenceNo description available.
A camera minidriver's CamConfigureEx callback function configures the isochronous streaming interface.
BusDeviceObjectPointer to the camera minidriver's device object created by the USB hub.
DeviceContextPointer to the camera minidriver's device context.
InterfacePointer to the USBD_INTERFACE_INFORMATION structure initialized with the proper values for a SELECT_INTERFACE URB request. This interface structure corresponds to a single isochronous interface on the device.
ConfigurationDescriptorPointer to the USB_CONFIGURATION_DESCRIPTOR for this device.
PipeConfigListSizeSpecifies the number of elements in the PipeConfig array.
PipeConfigPointer to a USBCAMD_Pipe_Config_Descriptor array describing the association between pipes and streams.
DeviceDescriptorPointer to the USB_DEVICE_DESCRIPTOR for this device.
CamConfigureEx returns STATUS_SUCCESS or an appropriate error code.
Camera minidrivers use CamConfigureEx to inform USBCAMD about the relationship between discovered pipes and streams.
USBCAMD calls the CamConfigureEx callback function to configure the isochronous streaming interface. After this function returns, USBCAMD can be notified of which interface and which alternate setting within the USB video streaming interface to use for the idle state.
USBCAMD requires that the camera must have a single USB configuration description, and all alternate settings within the USB video streaming interface must have the same number and type of pipes.
The original USBCAMD does not call CamConfigureEx.
This function is required.
USBCAMD_Pipe_Config_Descriptor