다음을 통해 공유


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가 이 값을 0으로 설정하면 보정 버퍼의 내용은 센서 어댑터로 보내지 않고 삭제됩니다. 이는 오류 조건이 아닙니다. 엔진 어댑터가 현재 캡처 데이터를 기반으로 센서의 보정을 업데이트할 필요가 없다는 것을 나타냅니다.

[in] MaxBufferSize

CalibrationBuffer에서 엔진 어댑터에 사용할 수 있는 최대 공간(바이트)을 나타내는 값입니다.

반환 값

함수가 성공하면 S_OK를 반환합니다. 함수가 실패하면 다음 HRESULT 값 중 하나를 반환하여 오류를 나타내야 합니다.

반환 코드 설명
E_some_error
오류 코드로 인해 생체 인식 서비스가 동적 보정 루프를 중단하고 캡처 작업을 중단합니다.

설명

EngineAdapterQueryCalibrationData 메서드는 각각 DiscardAndRepeatCaptureCalibrationBufferSize를 설정하여 생체 인식 서비스의 반복 캡처 동작 및 보정 동작을 독립적으로 제어할 수 있습니다.

원하는 동작 DiscardAndRepeatCapture CalibrationBufferSize
보정 후 캡처를 반복합니다. TRUE 0이 아님
보정 없이 캡처를 반복합니다. TRUE 0
보정 후 샘플을 계속 처리합니다. FALSE 0이 아님
보정 없이 샘플을 계속 처리합니다. FALSE 0

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 10 [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2016 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 winbio_adapter.h(Winbio_adapter.h 포함)