IOCTL_GNSS_MODIFY_FIXSESSION IOCTL (gnssdriver.h)
GNSS 适配器使用 IOCTL_GNSS_MODIFY_FIXSESSION 控制代码来修改活动修复会话的修复会话参数。 仅当 GNSS 驱动程序不支持同一修复类型的多个修复会话时(例如,当驱动程序的 SupportMultipleFixSession 功能为 FALSE 时),才需要这样做。
主要代码
输入缓冲区
指向 GNSS_FIXSESSION_PARAM 结构的指针。
输入缓冲区长度
将 设置为 sizeof (GNSS_FIXSESSION_PARAM) 。
输出缓冲区
设置为 NULL。
输出缓冲区长度
设置为 0。
状态块
Irp->如果请求成功,IoStatus.Status 设置为 STATUS_SUCCESS。 否则, 状态 为相应的错误条件作为 NTSTATUS 代码。
注解
驱动程序设置 NTSTATUS 值以指示以下结果之一。
- 已成功修改修复会话。
- 修复会话当前已停止或未处于活动状态。
- 无法修改修复会话参数。
GNSS 适配器说明
GNSS 适配器使用此 IOCTL 更改活动修复会话的修复会话参数,以适应来自 LBS 应用程序的新修复请求。如果调用失败,GNSS 适配器不会将新的修复请求多路复用到现有活动会话中。 相反,它将继续期望活动修复会话保持不变。
如果调用成功,GNSS 适配器将要求后续修复数据遵循新指定的会话参数。
GNSS 驱动程序说明
如果不存在多会话支持,GNSS 驱动程序必须支持此 IOCTL,并动态更改活动会话的修复会话参数。GNSS 驱动程序接受修复会话参数、对其进行验证并将其发送到 GNSS 引擎后,它应立即使用成功返回代码完成 I/O 请求。
成功完成后,GNSS 驱动程序应根据新的修复会话参数返回所有修复数据。 但是,已在提供给 GNSS 适配器的过程中的修复数据应仍然可用,不应丢弃。
要求
要求 | 值 |
---|---|
Header | gnssdriver.h |
另请参阅
WdfIoTargetSendInternalIoctlOthersSynchronously