PIBIO_ENGINE_QUERY_CALIBRATION_DATA_FN回调函数 (winbio_adapter.h)

由 Windows 生物识别框架调用,以从引擎适配器获取一组捕获后校准数据。

语法

PIBIO_ENGINE_QUERY_CALIBRATION_DATA_FN PibioEngineQueryCalibrationDataFn;

HRESULT PibioEngineQueryCalibrationDataFn(
  [in, out] PWINBIO_PIPELINE Pipeline,
  [out]     PBOOLEAN DiscardAndRepeatCapture,
  [out]     PUCHAR CalibrationBuffer,
  [out]     PSIZE_T CalibrationBufferSize,
  [in]      SIZE_T MaxBufferSize
)
{...}

参数

[in, out] Pipeline

指向与执行操作的生物识别单元关联的 WINBIO_PIPELINE 结构的指针。

[out] DiscardAndRepeatCapture

必须由 EngineAdapterQueryCalibrationData 方法设置的布尔值的地址。 此值指示校准完成后生物识别服务应对当前样本执行的操作。

  • TRUE 表示捕获的生物识别样本不可用。 生物识别服务将放弃样本并收集新样本。
  • FALSE 表示示例可用,应指示引擎对其执行进一步操作。

[out] CalibrationBuffer

方法应写入其校准数据的空缓冲区的地址。 保存此缓冲区的内存属于生物识别服务,一旦 EngineAdapterQueryCalibrationData 方法返回,引擎适配器不得保留指向此缓冲区的任何指针。

[out] CalibrationBufferSize

变量的地址, 其中 EngineAdapterQueryCalibrationData 方法将存储其写入 CalibrationBuffer 的校准数据) 的大小 (字节数。 此值不能超过 MaxBufferSize

如果 EngineAdapterQueryCalibrationData 将此值设置为零,则会丢弃 CalibrationBuffer 的内容,而不将它们发送到传感器适配器。 这不是错误条件;它只是指示引擎适配器不需要根据当前捕获数据更新传感器的校准。

[in] MaxBufferSize

一个 值,指示 CalibrationBuffer 中的引擎适配器) 可用的最大空间 (字节数。

返回值

如果函数成功,则返回 S_OK。 如果函数失败,它必须返回以下 HRESULT 值之一来指示错误。

返回代码 说明
E_some_error
任何错误代码都将导致生物识别服务停止动态校准循环并中止捕获操作。

注解

EngineAdapterQueryCalibrationData 方法可以通过分别设置 DiscardAndRepeatCaptureCalibrationBufferSize 来独立控制生物识别服务的重复捕获行为和校准行为。

所需行为 DiscardAndRepeatCapture CalibrationBufferSize
校准后重复捕获。 TRUE 非零值
重复捕获而不校准。 TRUE 零个
校准后继续处理样本。 FALSE 非零值
继续处理样本,无需校准。 FALSE 零个

要求

要求
最低受支持的客户端 Windows 10 [仅限桌面应用]
最低受支持的服务器 Windows Server 2016 [仅限桌面应用]
目标平台 Windows
标头 winbio_adapter.h (包括 Winbio_adapter.h)