PCAM_CONFIGURE_ROUTINE_EX callback function (usbcamdi.h)
A camera minidriver's CamConfigureEx callback function configures the isochronous streaming interface.
Syntax
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
)
{...}
Parameters
BusDeviceObject
Pointer to the camera minidriver's device object created by the USB hub.
DeviceContext
Pointer to the camera minidriver's device context.
Interface
Pointer 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.
ConfigurationDescriptor
Pointer to the USB_CONFIGURATION_DESCRIPTOR for this device.
PipeConfigListSize
Specifies the number of elements in the PipeConfig array.
PipeConfig
Pointer to a USBCAMD_Pipe_Config_Descriptor array describing the association between pipes and streams.
DeviceDescriptor
Pointer to the USB_DEVICE_DESCRIPTOR for this device.
Return value
CamConfigureEx returns STATUS_SUCCESS or an appropriate error code.
Remarks
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.
Requirements
Requirement | Value |
---|---|
Target Platform | Desktop |
Header | usbcamdi.h (include Usbcamdi.h) |