PIBIO_ENGINE_QUERY_SAMPLE_HINT_FN コールバック関数 (winbio_adapter.h)

登録テンプレートを構築するためにエンジン アダプターに必要な正しいサンプルの数を取得するために、Windows 生体認証フレームワークによって呼び出されます。

構文

PIBIO_ENGINE_QUERY_SAMPLE_HINT_FN PibioEngineQuerySampleHintFn;

HRESULT PibioEngineQuerySampleHintFn(
  [in, out] PWINBIO_PIPELINE Pipeline,
  [out]     PSIZE_T SampleHint
)
{...}

パラメーター

[in, out] Pipeline

操作を実行する生体認証ユニットに関連付けられている WINBIO_PIPELINE 構造体へのポインター。

[out] SampleHint

必要なサンプルの数を受け取る変数へのポインター。

戻り値

関数が成功した場合は、S_OK を返します。 関数が失敗した場合は、エラーを示すために次のいずれかの HRESULT 値を返す必要があります。

リターン コード 説明
E_POINTER
必須ポインター パラメーターは NULL です
WINBIO_E_UNSUPPORTED_PROPERTY
エンジン アダプターでは、このプロパティはサポートされていません。

注釈

異なる状況でエンジン アダプターで異なる数のサンプルが必要な場合は、最大数を返す必要があります。 たとえば、指紋エンジンで、親指よりも人差し指に対してより多くのスワイプが必要な場合は、人差し指に必要な数を返します。

SampleHint パラメーターによって返される値は、必要な正しいサンプルの数を指定します。 キャプチャが正しくないため、登録時に必要なサンプルの実際の数が、指定された数を超える可能性があります。

次の擬似コードは、この関数の 1 つの可能な実装を示しています。 この例はコンパイルされません。 目的に合わせて調整する必要があります。

//////////////////////////////////////////////////////////////////////////////////////////
//
// EngineAdapterQuerySampleHint
//
// Purpose: 
//      Retrieves the number of correct samples required by the engine adapter 
//      to construct an enrollment template.
//
// Parameters:
//      Pipeline    - Pointer to a WINBIO_PIPELINE structure associated 
//                    with the biometric unit performing the operation. 
//      SampleHint  - Pointer to a variable that receives the number of 
//                    required samples.
//
static HRESULT
WINAPI
EngineAdapterQuerySampleHint(
    __inout PWINBIO_PIPELINE Pipeline,
    __out PSIZE_T SampleHint
    )
{
    // Verify that pointer arguments are not NULL.
    if (!ARGUMENT_PRESENT(Pipeline) ||
        !ARGUMENT_PRESENT(SampleHint))
    {
        hr = E_POINTER;
        goto cleanup;
    }

    // The sample hint specified here is a constant but can also be a 
    // function of the hardware model or the device settings depending
    // on your adapter.
    // If your adapter does not support this feature, return
    // WINBIO_E_UNSUPPORTED_PROPERTY.
    *SampleHint = SAMPLES_REQUIRED_FOR_ENROLLMENT;

cleanup:

    return hr;
}

要件

要件
サポートされている最小のクライアント Windows 7 [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2008 R2 [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー winbio_adapter.h (Winbio_adapter.h を含む)

こちらもご覧ください

EngineAdapterAcceptSampleData

プラグイン関数