pub fn initialize_report_stream<InputDeviceProcessReportsFn>(
device_proxy: Client<InputDevice, Transport>,
device_descriptor: InputDeviceDescriptor,
event_sender: UnboundedSender<Vec<InputEvent>>,
inspect_status: InputDeviceStatus,
metrics_logger: MetricsLogger,
feature_flags: InputPipelineFeatureFlags,
process_reports: InputDeviceProcessReportsFn,
) -> TaskHandle<()> ⓘwhere
InputDeviceProcessReportsFn: 'static + Send + for<'de> FnMut(&[InputReport<'_>], Option<PreviousDeviceState>, &InputDeviceDescriptor, &mut UnboundedSender<Vec<InputEvent>>, &InputDeviceStatus, &MetricsLogger, &InputPipelineFeatureFlags) -> (Option<PreviousDeviceState>, Option<UnboundedReceiver<InputEvent>>),