Share via


PIBIO_ENGINE_IDENTIFY_ALL_FN Rückruffunktion (winbio_adapter.h)

Wird vom Windows Biometric Framework aufgerufen, um die Identitäten aller Personen zu bestimmen, die sich derzeit im Kamerarahmen befinden.

Syntax

PIBIO_ENGINE_IDENTIFY_ALL_FN PibioEngineIdentifyAllFn;

HRESULT PibioEngineIdentifyAllFn(
  [in, out] PWINBIO_PIPELINE Pipeline,
  [out]     PSIZE_T PresenceCount,
  [out]     PWINBIO_PRESENCE *PresenceArray
)
{...}

Parameter

[in, out] Pipeline

Zeiger auf die WINBIO_PIPELINE Struktur, die der biometrischen Einheit zugeordnet ist, die den Vorgang ausführt.

[out] PresenceCount

Adresse einer Variablen, die die Anzahl der von der Funktion erkannten Anwesenheitszahlen empfängt.

[out] PresenceArray

Adresse einer Variablen, die einen Zeiger auf ein Array von WINBIO_PRESENCE Elementen empfängt.

Rückgabewert

Wenn die Funktion erfolgreich ist, wird S_OK zurückgegeben. Wenn die Funktion fehlschlägt, muss sie einen der folgenden HRESULT-Werte zurückgeben, um den Fehler anzugeben.

Rückgabecode Beschreibung
E_some_error
Jeder Fehlercode bewirkt, dass der biometrische Dienst den Fehler protokolliert und den Kamerarahmen ignoriert.

Hinweise

Der biometrische Dienst ruft diese Methode auf, nachdem er einen neuen Datenrahmen an den Engine-Adapter gesendet hat.

Nach der Verarbeitung des Datenrahmens sollte diese Funktion für jede im Datenrahmen erkannte Anwesenheit ein WINBIO_PRESENCE Element zurückgeben.

Für den Fall, dass die EngineAdapterIdentifyAll-Funktion keine Gesichter im Frame finden kann, gibt sie ein HRESULT von S_OK zurück und legt die Rückgabeparameter PresenceCount und PresenceArray auf Null bzw. NULL fest. Anders ausgedrückt: Ein Frame, der keine menschlichen Anwesenheiten enthält, ist keine Fehlerbedingung.

EngineAdapterIdentifyAll sollte nur dann ein anderes HRESULT als S_OK zurückgeben, wenn der Biografie-Dienst den Frame nicht zum Aktualisieren des Anwesenheitsmonitorzustands verwenden soll. Dies sollte selten vorkommen. Der Engine-Adapter ist für die Zuweisung des Arrays von WINBIO_PRESENCE Elementen verantwortlich, die im PresenceArray-Parameter zurückgegeben werden. Sie muss diesen Arbeitsspeicher aus dem Prozessheap mithilfe der HeapAlloc-Funktion zuordnen. Nachdem das Array erstellt wurde, wird es zur Eigenschaft des Windows Biometric Framework. Da das Framework die Zuordnung dieses Arbeitsspeichers nach der Verwendung aufgibt, darf Ihr Engine-Adapter nicht versuchen, die Zuordnung des Arrays aufzugeben oder einen Zeiger darauf zu speichern. Wenn Sie diese Regel nicht befolgen, führt dies zu Heapbeschädigungen und möglichen Abstürzen des biometrischen Diensts.

Die Werte der einzelnen WINBIO_PRESENCE Elemente in PresenceArray bestimmen die Ereignisse, die für Clientanwendungen generiert werden. Weitere Informationen finden Sie in der Erläuterung der WINBIO_PRESENCE-Struktur .

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 10 [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2016 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile winbio_adapter.h (Winbio_adapter.h einschließen)