Headers diff for winbio.dll between 6.1.7600.16385-Windows_7.0 and 6.3.9600.17415-Windows_8.1 versions



 winbio.h (6.1.7600.16385-Windows_7.0)   winbio.h (6.3.9600.17415-Windows_8.1) 
skipping to change at line 23 skipping to change at line 23
Environment: Environment:
User mode only. User mode only.
Revision History: Revision History:
--*/ --*/
#ifndef _WINBIO_H_9B9AD1F6_97B1_4647_923D_583FD7428C4C_ #ifndef _WINBIO_H_9B9AD1F6_97B1_4647_923D_583FD7428C4C_
#define _WINBIO_H_9B9AD1F6_97B1_4647_923D_583FD7428C4C_ #define _WINBIO_H_9B9AD1F6_97B1_4647_923D_583FD7428C4C_
#include <winapifamily.h>
#pragma region Desktop Family
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
#if (NTDDI_VERSION >= NTDDI_WIN7) #if (NTDDI_VERSION >= NTDDI_WIN7)
// //
// Dependencies... // Dependencies...
// //
#include "winbio_types.h" #include "winbio_types.h"
#include "winbio_err.h" #include "winbio_err.h"
#ifdef __cplusplus #ifdef __cplusplus
extern "C"{ extern "C"{
#endif #endif
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
// //
// Client-side definitions that support asynchronous operations...
//
///////////////////////////////////////////////////////////////////////////////
//
// Asynchronous mechanism by which client
// is notified of API completion...
//
typedef enum _WINBIO_ASYNC_NOTIFICATION_METHOD
{
WINBIO_ASYNC_NOTIFY_NONE = 0, // Operation is synchronous
WINBIO_ASYNC_NOTIFY_CALLBACK, // Caller receives a new-style callback
WINBIO_ASYNC_NOTIFY_MESSAGE, // Caller receives a window message
WINBIO_ASYNC_NOTIFY_MAXIMUM_VALUE
} WINBIO_ASYNC_NOTIFICATION_METHOD, *PWINBIO_ASYNC_NOTIFICATION_METHOD;
//
// Structure containing async results, returned to caller
// as callback parameter or as LPARM of a window message...
//
// A NOTE ON THE CONTENTS OF THIS STRUCTURE:
//
// Although the purpose of this structure is to return
// 'OUT' values generated by WinBio API calls, many of
// the operation-specific structs in the 'Parameters'
// union also contain copies of the 'IN' values passed
// to the WinBio API call. (For example, the 'ControlUnit'
// struct has fields for the control code and the component
// from the original call.) The reason for including this
// information is so that the client application will be
// able to figure out which specific operation has just
// completed. (For example, there could be multiple in-
// flight ControlUnit calls queued up on a single session
// handle at the same time.) While duplicating these 'IN'
// values isn't strictly necessary, providing this kind
// of context simplifies the design of applications that
// use asynchronous WinBio API calls.
//
typedef struct _WINBIO_ASYNC_RESULT {
WINBIO_SESSION_HANDLE SessionHandle;
WINBIO_OPERATION_TYPE Operation;
ULONGLONG SequenceNumber;
LONGLONG TimeStamp;
HRESULT ApiStatus;
WINBIO_UNIT_ID UnitId;
PVOID UserData;
union {
//
// Session-based operations...
//
struct {
BOOLEAN Match;
WINBIO_REJECT_DETAIL RejectDetail;
} Verify;
struct {
WINBIO_IDENTITY Identity;
WINBIO_BIOMETRIC_SUBTYPE SubFactor;
WINBIO_REJECT_DETAIL RejectDetail;
}Identify;
struct {
WINBIO_BIOMETRIC_SUBTYPE SubFactor;
} EnrollBegin;
struct {
WINBIO_REJECT_DETAIL RejectDetail;
} EnrollCapture;
struct {
WINBIO_IDENTITY Identity;
BOOLEAN IsNewTemplate;
} EnrollCommit;
struct {
WINBIO_IDENTITY Identity;
SIZE_T SubFactorCount;
WINBIO_BIOMETRIC_SUBTYPE *SubFactorArray;
} EnumEnrollments;
struct {
PWINBIO_BIR Sample;
SIZE_T SampleSize;
WINBIO_REJECT_DETAIL RejectDetail;
} CaptureSample;
struct {
WINBIO_IDENTITY Identity;
WINBIO_BIOMETRIC_SUBTYPE SubFactor;
} DeleteTemplate;
struct {
WINBIO_PROPERTY_TYPE PropertyType;
WINBIO_PROPERTY_ID PropertyId;
WINBIO_IDENTITY Identity;
WINBIO_BIOMETRIC_SUBTYPE SubFactor;
SIZE_T PropertyBufferSize;
PVOID PropertyBuffer;
} GetProperty;
struct {
ULONG None;
} SetProperty;
struct {
WINBIO_EVENT Event;
} GetEvent;
struct {
WINBIO_COMPONENT Component;
ULONG ControlCode;
ULONG OperationStatus;
PUCHAR SendBuffer;
SIZE_T SendBufferSize;
PUCHAR ReceiveBuffer;
SIZE_T ReceiveBufferSize;
SIZE_T ReceiveDataSize;
} ControlUnit;
//
// Framework operations...
//
struct {
SIZE_T BspCount;
WINBIO_BSP_SCHEMA *BspSchemaArray;
} EnumServiceProviders;
struct {
SIZE_T UnitCount;
WINBIO_UNIT_SCHEMA *UnitSchemaArray;
} EnumBiometricUnits;
struct {
SIZE_T StorageCount;
WINBIO_STORAGE_SCHEMA *StorageSchemaArray;
} EnumDatabases;
#if (NTDDI_VERSION >= NTDDI_WIN9)
struct {
BOOLEAN Match;
WINBIO_REJECT_DETAIL RejectDetail;
WINBIO_PROTECTION_TICKET Ticket;
} VerifyAndReleaseTicket;
struct {
WINBIO_IDENTITY Identity;
WINBIO_BIOMETRIC_SUBTYPE SubFactor;
WINBIO_REJECT_DETAIL RejectDetail;
WINBIO_PROTECTION_TICKET Ticket;
} IdentifyAndReleaseTicket;
#endif // (NTDDI_VERSION >= NTDDI_WIN9)
} Parameters;
} WINBIO_ASYNC_RESULT, *PWINBIO_ASYNC_RESULT;
//
// New-style callback routines...
//
typedef
VOID
(CALLBACK *PWINBIO_ASYNC_COMPLETION_CALLBACK)(
_In_ PWINBIO_ASYNC_RESULT AsyncResult
);
///////////////////////////////////////////////////////////////////////////////
//
// Capability discovery // Capability discovery
// //
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
HRESULT WINAPI HRESULT WINAPI
WinBioEnumServiceProviders( WinBioEnumServiceProviders(
__in WINBIO_BIOMETRIC_TYPE Factor, _In_ WINBIO_BIOMETRIC_TYPE Factor,
__deref_out_ecount(*BspCount) WINBIO_BSP_SCHEMA **BspSchemaArray, _Outptr_result_buffer_(*BspCount) WINBIO_BSP_SCHEMA **BspSchemaArray,
__out SIZE_T *BspCount _Out_ SIZE_T *BspCount
); );
HRESULT WINAPI HRESULT WINAPI
WinBioEnumBiometricUnits( WinBioEnumBiometricUnits(
__in WINBIO_BIOMETRIC_TYPE Factor, _In_ WINBIO_BIOMETRIC_TYPE Factor,
__deref_out_ecount(*UnitCount) WINBIO_UNIT_SCHEMA **UnitSchemaArray, _Outptr_result_buffer_(*UnitCount) WINBIO_UNIT_SCHEMA **UnitSchemaArray,
__out SIZE_T *UnitCount _Out_ SIZE_T *UnitCount
); );
HRESULT WINAPI HRESULT WINAPI
WinBioEnumDatabases( WinBioEnumDatabases(
__in WINBIO_BIOMETRIC_TYPE Factor, _In_ WINBIO_BIOMETRIC_TYPE Factor,
__deref_out_ecount(*StorageCount) WINBIO_STORAGE_SCHEMA **StorageSchemaArray _Outptr_result_buffer_(*StorageCount) WINBIO_STORAGE_SCHEMA **StorageSchemaA
, rray,
__out SIZE_T *StorageCount _Out_ SIZE_T *StorageCount
);
///////////////////////////////////////////////////////////////////////////////
//
// Asynchronous capability discovery
//
///////////////////////////////////////////////////////////////////////////////
HRESULT WINAPI
WinBioAsyncOpenFramework(
_In_ WINBIO_ASYNC_NOTIFICATION_METHOD NotificationMethod,
_In_opt_ HWND TargetWindow,
_In_opt_ UINT MessageCode,
_In_opt_ PWINBIO_ASYNC_COMPLETION_CALLBACK CallbackRoutine,
_In_opt_ PVOID UserData,
_In_ BOOL AsynchronousOpen,
_Out_opt_ WINBIO_FRAMEWORK_HANDLE *FrameworkHandle
);
HRESULT WINAPI
WinBioCloseFramework(
_In_ WINBIO_FRAMEWORK_HANDLE FrameworkHandle
);
HRESULT WINAPI
WinBioAsyncEnumServiceProviders(
_In_ WINBIO_FRAMEWORK_HANDLE FrameworkHandle,
_In_ WINBIO_BIOMETRIC_TYPE Factor
);
HRESULT WINAPI
WinBioAsyncEnumBiometricUnits(
_In_ WINBIO_FRAMEWORK_HANDLE FrameworkHandle,
_In_ WINBIO_BIOMETRIC_TYPE Factor
);
HRESULT WINAPI
WinBioAsyncEnumDatabases(
_In_ WINBIO_FRAMEWORK_HANDLE FrameworkHandle,
_In_ WINBIO_BIOMETRIC_TYPE Factor
);
HRESULT WINAPI
WinBioAsyncMonitorFrameworkChanges(
_In_ WINBIO_FRAMEWORK_HANDLE FrameworkHandle,
_In_ WINBIO_FRAMEWORK_CHANGE_TYPE ChangeTypes
); );
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
// //
// Session management // Session management
// //
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
HRESULT WINAPI HRESULT WINAPI
WinBioOpenSession( WinBioOpenSession(
__in WINBIO_BIOMETRIC_TYPE Factor, _In_ WINBIO_BIOMETRIC_TYPE Factor,
__in WINBIO_POOL_TYPE PoolType, _In_ WINBIO_POOL_TYPE PoolType,
__in WINBIO_SESSION_FLAGS Flags, _In_ WINBIO_SESSION_FLAGS Flags,
__in_ecount_opt(UnitCount) WINBIO_UNIT_ID *UnitArray, _In_reads_opt_(UnitCount) WINBIO_UNIT_ID *UnitArray,
__in_opt SIZE_T UnitCount, _In_opt_ SIZE_T UnitCount,
__in_opt GUID *DatabaseId, _In_opt_ GUID *DatabaseId,
__out WINBIO_SESSION_HANDLE *SessionHandle _Out_ WINBIO_SESSION_HANDLE *SessionHandle
);
//
// Asynchronous sessions...
//
HRESULT WINAPI
WinBioAsyncOpenSession(
_In_ WINBIO_BIOMETRIC_TYPE Factor,
_In_ WINBIO_POOL_TYPE PoolType,
_In_ WINBIO_SESSION_FLAGS Flags,
_In_reads_opt_(UnitCount) WINBIO_UNIT_ID *UnitArray,
_In_opt_ SIZE_T UnitCount,
_In_opt_ GUID *DatabaseId,
_In_ WINBIO_ASYNC_NOTIFICATION_METHOD NotificationMethod,
_In_opt_ HWND TargetWindow,
_In_opt_ UINT MessageCode,
_In_opt_ PWINBIO_ASYNC_COMPLETION_CALLBACK CallbackRoutine,
_In_opt_ PVOID UserData,
_In_ BOOL AsynchronousOpen,
_Out_opt_ WINBIO_SESSION_HANDLE *SessionHandle
); );
HRESULT WINAPI HRESULT WINAPI
WinBioCloseSession( WinBioCloseSession(
__in WINBIO_SESSION_HANDLE SessionHandle _In_ WINBIO_SESSION_HANDLE SessionHandle
); );
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
// //
// High-level biometric operations // High-level biometric operations
// //
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
HRESULT WINAPI HRESULT WINAPI
WinBioVerify( WinBioVerify(
__in WINBIO_SESSION_HANDLE SessionHandle, _In_ WINBIO_SESSION_HANDLE SessionHandle,
__in WINBIO_IDENTITY *Identity, _In_ WINBIO_IDENTITY *Identity,
__in WINBIO_BIOMETRIC_SUBTYPE SubFactor, _In_ WINBIO_BIOMETRIC_SUBTYPE SubFactor,
__out WINBIO_UNIT_ID *UnitId, _Out_opt_ WINBIO_UNIT_ID *UnitId,
__out BOOLEAN *Match, _Out_opt_ BOOLEAN *Match,
__out WINBIO_REJECT_DETAIL *RejectDetail _Out_opt_ WINBIO_REJECT_DETAIL *RejectDetail
); );
typedef typedef
VOID VOID
(CALLBACK *PWINBIO_VERIFY_CALLBACK)( (CALLBACK *PWINBIO_VERIFY_CALLBACK)(
__in_opt PVOID VerifyCallbackContext, _In_opt_ PVOID VerifyCallbackContext,
__in HRESULT OperationStatus, _In_ HRESULT OperationStatus,
__in WINBIO_UNIT_ID UnitId, _In_ WINBIO_UNIT_ID UnitId,
__in BOOLEAN Match, _In_ BOOLEAN Match,
__in WINBIO_REJECT_DETAIL RejectDetail _In_ WINBIO_REJECT_DETAIL RejectDetail
); );
HRESULT WINAPI HRESULT WINAPI
WinBioVerifyWithCallback( WinBioVerifyWithCallback(
__in WINBIO_SESSION_HANDLE SessionHandle, _In_ WINBIO_SESSION_HANDLE SessionHandle,
__in WINBIO_IDENTITY *Identity, _In_ WINBIO_IDENTITY *Identity,
__in WINBIO_BIOMETRIC_SUBTYPE SubFactor, _In_ WINBIO_BIOMETRIC_SUBTYPE SubFactor,
__in PWINBIO_VERIFY_CALLBACK VerifyCallback, _In_ PWINBIO_VERIFY_CALLBACK VerifyCallback,
__in_opt PVOID VerifyCallbackContext _In_opt_ PVOID VerifyCallbackContext
); );
HRESULT WINAPI HRESULT WINAPI
WinBioIdentify( WinBioIdentify(
__in WINBIO_SESSION_HANDLE SessionHandle, _In_ WINBIO_SESSION_HANDLE SessionHandle,
__out WINBIO_UNIT_ID *UnitId, _Out_opt_ WINBIO_UNIT_ID *UnitId,
__out WINBIO_IDENTITY *Identity, _Out_opt_ WINBIO_IDENTITY *Identity,
__out WINBIO_BIOMETRIC_SUBTYPE *SubFactor, _Out_opt_ WINBIO_BIOMETRIC_SUBTYPE *SubFactor,
__out WINBIO_REJECT_DETAIL *RejectDetail _Out_opt_ WINBIO_REJECT_DETAIL *RejectDetail
); );
typedef typedef
VOID VOID
(CALLBACK *PWINBIO_IDENTIFY_CALLBACK)( (CALLBACK *PWINBIO_IDENTIFY_CALLBACK)(
__in_opt PVOID IdentifyCallbackContext, _In_opt_ PVOID IdentifyCallbackContext,
__in HRESULT OperationStatus, _In_ HRESULT OperationStatus,
__in WINBIO_UNIT_ID UnitId, _In_ WINBIO_UNIT_ID UnitId,
__in WINBIO_IDENTITY *Identity, _In_ WINBIO_IDENTITY *Identity,
__in WINBIO_BIOMETRIC_SUBTYPE SubFactor, _In_ WINBIO_BIOMETRIC_SUBTYPE SubFactor,
__in WINBIO_REJECT_DETAIL RejectDetail _In_ WINBIO_REJECT_DETAIL RejectDetail
); );
HRESULT WINAPI HRESULT WINAPI
WinBioIdentifyWithCallback( WinBioIdentifyWithCallback(
__in WINBIO_SESSION_HANDLE SessionHandle, _In_ WINBIO_SESSION_HANDLE SessionHandle,
__in PWINBIO_IDENTIFY_CALLBACK IdentifyCallback, _In_ PWINBIO_IDENTIFY_CALLBACK IdentifyCallback,
__in_opt PVOID IdentifyCallbackContext _In_opt_ PVOID IdentifyCallbackContext
); );
HRESULT WINAPI HRESULT WINAPI
WinBioWait( WinBioWait(
__in WINBIO_SESSION_HANDLE SessionHandle _In_ WINBIO_SESSION_HANDLE SessionHandle
); );
HRESULT WINAPI HRESULT WINAPI
WinBioCancel( WinBioCancel(
__in WINBIO_SESSION_HANDLE SessionHandle _In_ WINBIO_SESSION_HANDLE SessionHandle
); );
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
// //
// Sensor-location operations // Sensor-location operations
// //
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
HRESULT WINAPI HRESULT WINAPI
WinBioLocateSensor( WinBioLocateSensor(
__in WINBIO_SESSION_HANDLE SessionHandle, _In_ WINBIO_SESSION_HANDLE SessionHandle,
__out WINBIO_UNIT_ID *UnitId _Out_opt_ WINBIO_UNIT_ID *UnitId
); );
typedef typedef
VOID VOID
(CALLBACK *PWINBIO_LOCATE_SENSOR_CALLBACK)( (CALLBACK *PWINBIO_LOCATE_SENSOR_CALLBACK)(
__in_opt PVOID LocateCallbackContext, _In_opt_ PVOID LocateCallbackContext,
__in HRESULT OperationStatus, _In_ HRESULT OperationStatus,
__in WINBIO_UNIT_ID UnitId _In_ WINBIO_UNIT_ID UnitId
); );
HRESULT WINAPI HRESULT WINAPI
WinBioLocateSensorWithCallback( WinBioLocateSensorWithCallback(
__in WINBIO_SESSION_HANDLE SessionHandle, _In_ WINBIO_SESSION_HANDLE SessionHandle,
__in PWINBIO_LOCATE_SENSOR_CALLBACK LocateCallback, _In_ PWINBIO_LOCATE_SENSOR_CALLBACK LocateCallback,
__in_opt PVOID LocateCallbackContext _In_opt_ PVOID LocateCallbackContext
); );
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
// //
// Enrollment operations // Enrollment operations
// //
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
HRESULT WINAPI HRESULT WINAPI
WinBioEnrollBegin( WinBioEnrollBegin(
__in WINBIO_SESSION_HANDLE SessionHandle, _In_ WINBIO_SESSION_HANDLE SessionHandle,
__in WINBIO_BIOMETRIC_SUBTYPE SubFactor, _In_ WINBIO_BIOMETRIC_SUBTYPE SubFactor,
__in WINBIO_UNIT_ID UnitId _In_ WINBIO_UNIT_ID UnitId
); );
HRESULT WINAPI HRESULT WINAPI
WinBioEnrollCapture( WinBioEnrollCapture(
__in WINBIO_SESSION_HANDLE SessionHandle, _In_ WINBIO_SESSION_HANDLE SessionHandle,
__out WINBIO_REJECT_DETAIL *RejectDetail _Out_opt_ WINBIO_REJECT_DETAIL *RejectDetail
); );
typedef typedef
VOID VOID
(CALLBACK *PWINBIO_ENROLL_CAPTURE_CALLBACK)( (CALLBACK *PWINBIO_ENROLL_CAPTURE_CALLBACK)(
__in_opt PVOID EnrollCallbackContext, _In_opt_ PVOID EnrollCallbackContext,
__in HRESULT OperationStatus, _In_ HRESULT OperationStatus,
__in WINBIO_REJECT_DETAIL RejectDetail _In_ WINBIO_REJECT_DETAIL RejectDetail
); );
HRESULT WINAPI HRESULT WINAPI
WinBioEnrollCaptureWithCallback( WinBioEnrollCaptureWithCallback(
__in WINBIO_SESSION_HANDLE SessionHandle, _In_ WINBIO_SESSION_HANDLE SessionHandle,
__in PWINBIO_ENROLL_CAPTURE_CALLBACK EnrollCallback, _In_ PWINBIO_ENROLL_CAPTURE_CALLBACK EnrollCallback,
__in_opt PVOID EnrollCallbackContext _In_opt_ PVOID EnrollCallbackContext
); );
HRESULT WINAPI HRESULT WINAPI
WinBioEnrollCommit( WinBioEnrollCommit(
__in WINBIO_SESSION_HANDLE SessionHandle, _In_ WINBIO_SESSION_HANDLE SessionHandle,
__out WINBIO_IDENTITY *Identity, _Out_opt_ WINBIO_IDENTITY *Identity,
__out BOOLEAN *IsNewTemplate _Out_opt_ BOOLEAN *IsNewTemplate
); );
HRESULT WINAPI HRESULT WINAPI
WinBioEnrollDiscard( WinBioEnrollDiscard(
__in WINBIO_SESSION_HANDLE SessionHandle _In_ WINBIO_SESSION_HANDLE SessionHandle
); );
HRESULT WINAPI HRESULT WINAPI
WinBioEnumEnrollments( WinBioEnumEnrollments(
__in WINBIO_SESSION_HANDLE SessionHandle, _In_ WINBIO_SESSION_HANDLE SessionHandle,
__in WINBIO_UNIT_ID UnitId, _In_ WINBIO_UNIT_ID UnitId,
__in WINBIO_IDENTITY *Identity, _In_ WINBIO_IDENTITY *Identity,
__deref_out_ecount(*SubFactorCount) WINBIO_BIOMETRIC_SUBTYPE **SubFactorArra _Outptr_result_buffer_maybenull_(*SubFactorCount) WINBIO_BIOMETRIC_SUBTYPE *
y, *SubFactorArray,
__out SIZE_T *SubFactorCount _Out_opt_ SIZE_T *SubFactorCount
); );
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
// //
// Event monitors // Event monitors
// //
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
typedef typedef
VOID VOID
(CALLBACK *PWINBIO_EVENT_CALLBACK)( (CALLBACK *PWINBIO_EVENT_CALLBACK)(
__in_opt PVOID EventCallbackContext, _In_opt_ PVOID EventCallbackContext,
__in HRESULT OperationStatus, _In_ HRESULT OperationStatus,
__in PWINBIO_EVENT Event _In_ PWINBIO_EVENT Event
); );
HRESULT WINAPI HRESULT WINAPI
WinBioRegisterEventMonitor( WinBioRegisterEventMonitor(
__in WINBIO_SESSION_HANDLE SessionHandle, _In_ WINBIO_SESSION_HANDLE SessionHandle,
__in WINBIO_EVENT_TYPE EventMask, _In_ WINBIO_EVENT_TYPE EventMask,
__in PWINBIO_EVENT_CALLBACK EventCallback, _In_ PWINBIO_EVENT_CALLBACK EventCallback,
__in_opt PVOID EventCallbackContext _In_opt_ PVOID EventCallbackContext
); );
HRESULT WINAPI HRESULT WINAPI
WinBioUnregisterEventMonitor( WinBioUnregisterEventMonitor(
__in WINBIO_SESSION_HANDLE SessionHandle _In_ WINBIO_SESSION_HANDLE SessionHandle
); );
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
// //
// Raw biometric operations // Raw biometric operations
// //
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
HRESULT WINAPI HRESULT WINAPI
WinBioCaptureSample( WinBioCaptureSample(
__in WINBIO_SESSION_HANDLE SessionHandle, _In_ WINBIO_SESSION_HANDLE SessionHandle,
__in WINBIO_BIR_PURPOSE Purpose, _In_ WINBIO_BIR_PURPOSE Purpose,
__in WINBIO_BIR_DATA_FLAGS Flags, _In_ WINBIO_BIR_DATA_FLAGS Flags,
__out WINBIO_UNIT_ID *UnitId, _Out_opt_ WINBIO_UNIT_ID *UnitId,
__deref_out_bcount(*SampleSize) PWINBIO_BIR *Sample, _Outptr_result_bytebuffer_maybenull_(*SampleSize) PWINBIO_BIR *Sample,
__out SIZE_T *SampleSize, _Out_opt_ SIZE_T *SampleSize,
__out WINBIO_REJECT_DETAIL *RejectDetail _Out_opt_ WINBIO_REJECT_DETAIL *RejectDetail
); );
typedef typedef
VOID VOID
(CALLBACK *PWINBIO_CAPTURE_CALLBACK)( (CALLBACK *PWINBIO_CAPTURE_CALLBACK)(
__in_opt PVOID CaptureCallbackContext, _In_opt_ PVOID CaptureCallbackContext,
__in HRESULT OperationStatus, _In_ HRESULT OperationStatus,
__in WINBIO_UNIT_ID UnitId, _In_ WINBIO_UNIT_ID UnitId,
__in_bcount(SampleSize) PWINBIO_BIR Sample, _In_reads_bytes_(SampleSize) PWINBIO_BIR Sample,
__in SIZE_T SampleSize, _In_ SIZE_T SampleSize,
__in WINBIO_REJECT_DETAIL RejectDetail _In_ WINBIO_REJECT_DETAIL RejectDetail
); );
HRESULT WINAPI HRESULT WINAPI
WinBioCaptureSampleWithCallback( WinBioCaptureSampleWithCallback(
__in WINBIO_SESSION_HANDLE SessionHandle, _In_ WINBIO_SESSION_HANDLE SessionHandle,
__in WINBIO_BIR_PURPOSE Purpose, _In_ WINBIO_BIR_PURPOSE Purpose,
__in WINBIO_BIR_DATA_FLAGS Flags, _In_ WINBIO_BIR_DATA_FLAGS Flags,
__in PWINBIO_CAPTURE_CALLBACK CaptureCallback, _In_ PWINBIO_CAPTURE_CALLBACK CaptureCallback,
__in_opt PVOID CaptureCallbackContext _In_opt_ PVOID CaptureCallbackContext
); );
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
// //
// Storage management // Storage management
// //
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
HRESULT WINAPI HRESULT WINAPI
WinBioDeleteTemplate( WinBioDeleteTemplate(
__in WINBIO_SESSION_HANDLE SessionHandle, _In_ WINBIO_SESSION_HANDLE SessionHandle,
__in WINBIO_UNIT_ID UnitId, _In_ WINBIO_UNIT_ID UnitId,
__in WINBIO_IDENTITY *Identity, _In_ WINBIO_IDENTITY *Identity,
__in WINBIO_BIOMETRIC_SUBTYPE SubFactor _In_ WINBIO_BIOMETRIC_SUBTYPE SubFactor
); );
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
// //
// Extension interface // Extension interface
// //
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
HRESULT WINAPI HRESULT WINAPI
WinBioLockUnit( WinBioLockUnit(
__in WINBIO_SESSION_HANDLE SessionHandle, _In_ WINBIO_SESSION_HANDLE SessionHandle,
__in WINBIO_UNIT_ID UnitId _In_ WINBIO_UNIT_ID UnitId
); );
HRESULT WINAPI HRESULT WINAPI
WinBioUnlockUnit( WinBioUnlockUnit(
__in WINBIO_SESSION_HANDLE SessionHandle, _In_ WINBIO_SESSION_HANDLE SessionHandle,
__in WINBIO_UNIT_ID UnitId _In_ WINBIO_UNIT_ID UnitId
); );
HRESULT WINAPI HRESULT WINAPI
WinBioControlUnit( WinBioControlUnit(
__in WINBIO_SESSION_HANDLE SessionHandle, _In_ WINBIO_SESSION_HANDLE SessionHandle,
__in WINBIO_UNIT_ID UnitId, _In_ WINBIO_UNIT_ID UnitId,
__in WINBIO_COMPONENT Component, _In_ WINBIO_COMPONENT Component,
__in ULONG ControlCode, _In_ ULONG ControlCode,
__in PUCHAR SendBuffer, _In_reads_bytes_(SendBufferSize) PUCHAR SendBuffer,
__in SIZE_T SendBufferSize, _In_ SIZE_T SendBufferSize,
__in PUCHAR ReceiveBuffer, _Out_writes_bytes_to_(ReceiveBufferSize,*ReceiveDataSize) PUCHAR ReceiveBuff
__in SIZE_T ReceiveBufferSize, er,
__out SIZE_T *ReceiveDataSize, _In_ SIZE_T ReceiveBufferSize,
__out ULONG *OperationStatus _Out_range_(<=,ReceiveBufferSize) SIZE_T *ReceiveDataSize,
_Out_opt_ ULONG *OperationStatus
); );
HRESULT WINAPI HRESULT WINAPI
WinBioControlUnitPrivileged( WinBioControlUnitPrivileged(
__in WINBIO_SESSION_HANDLE SessionHandle, _In_ WINBIO_SESSION_HANDLE SessionHandle,
__in WINBIO_UNIT_ID UnitId, _In_ WINBIO_UNIT_ID UnitId,
__in WINBIO_COMPONENT Component, _In_ WINBIO_COMPONENT Component,
__in ULONG ControlCode, _In_ ULONG ControlCode,
__in PUCHAR SendBuffer, _In_reads_bytes_(SendBufferSize) PUCHAR SendBuffer,
__in SIZE_T SendBufferSize, _In_ SIZE_T SendBufferSize,
__in PUCHAR ReceiveBuffer, _Out_writes_bytes_to_(ReceiveBufferSize,*ReceiveDataSize) PUCHAR ReceiveBuff
__in SIZE_T ReceiveBufferSize, er,
__out SIZE_T *ReceiveDataSize, _In_ SIZE_T ReceiveBufferSize,
__out ULONG *OperationStatus _Out_range_(<=,ReceiveBufferSize) SIZE_T *ReceiveDataSize,
_Out_opt_ ULONG *OperationStatus
); );
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
// //
// Get/set property operations // Get/set property operations
// //
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
HRESULT WINAPI HRESULT WINAPI
WinBioGetProperty( WinBioGetProperty(
__in WINBIO_SESSION_HANDLE SessionHandle, _In_ WINBIO_SESSION_HANDLE SessionHandle,
__in WINBIO_PROPERTY_TYPE PropertyType, _In_ WINBIO_PROPERTY_TYPE PropertyType,
__in WINBIO_PROPERTY_ID PropertyId, _In_ WINBIO_PROPERTY_ID PropertyId,
__in_opt WINBIO_UNIT_ID UnitId, _In_opt_ WINBIO_UNIT_ID UnitId,
__in_opt WINBIO_IDENTITY *Identity, _In_opt_ WINBIO_IDENTITY *Identity,
__in_opt WINBIO_BIOMETRIC_SUBTYPE SubFactor, _In_opt_ WINBIO_BIOMETRIC_SUBTYPE SubFactor,
__deref_out_bcount(*PropertyBufferSize) PVOID *PropertyBuffer, _Outptr_result_bytebuffer_maybenull_(*PropertyBufferSize) PVOID *PropertyBuf
__out SIZE_T *PropertyBufferSize fer,
_Out_opt_ SIZE_T *PropertyBufferSize
); );
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
// //
// Resource management // Resource management
// //
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
HRESULT WINAPI HRESULT WINAPI
WinBioFree( WinBioFree(
__in PVOID Address _In_ PVOID Address
); );
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
// //
// Credential management // Credential management
// //
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
HRESULT WINAPI HRESULT WINAPI
WinBioSetCredential( WinBioSetCredential(
__in WINBIO_CREDENTIAL_TYPE Type, _In_ WINBIO_CREDENTIAL_TYPE Type,
__in_bcount(CredentialSize) PUCHAR Credential, _In_reads_bytes_(CredentialSize) PUCHAR Credential,
__in SIZE_T CredentialSize, _In_ SIZE_T CredentialSize,
__in WINBIO_CREDENTIAL_FORMAT Format _In_ WINBIO_CREDENTIAL_FORMAT Format
); );
HRESULT WINAPI HRESULT WINAPI
WinBioRemoveCredential( WinBioRemoveCredential(
__in WINBIO_IDENTITY Identity, _In_ WINBIO_IDENTITY Identity,
__in WINBIO_CREDENTIAL_TYPE Type _In_ WINBIO_CREDENTIAL_TYPE Type
); );
HRESULT WINAPI HRESULT WINAPI
WinBioRemoveAllCredentials( WinBioRemoveAllCredentials(
void void
); );
HRESULT WINAPI HRESULT WINAPI
WinBioRemoveAllDomainCredentials( WinBioRemoveAllDomainCredentials(
void void
); );
HRESULT WINAPI HRESULT WINAPI
WinBioGetCredentialState( WinBioGetCredentialState(
__in WINBIO_IDENTITY Identity, _In_ WINBIO_IDENTITY Identity,
__in WINBIO_CREDENTIAL_TYPE Type, _In_ WINBIO_CREDENTIAL_TYPE Type,
__out WINBIO_CREDENTIAL_STATE *CredentialState _Out_ WINBIO_CREDENTIAL_STATE *CredentialState
); );
HRESULT WINAPI HRESULT WINAPI
WinBioLogonIdentifiedUser( WinBioLogonIdentifiedUser(
__in WINBIO_SESSION_HANDLE SessionHandle _In_ WINBIO_SESSION_HANDLE SessionHandle
); );
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
// //
// Settings // Settings
// //
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
VOID WINAPI VOID WINAPI
WinBioGetEnabledSetting( WinBioGetEnabledSetting(
__out BOOLEAN* Value, _Out_ BOOLEAN* Value,
__out PWINBIO_SETTING_SOURCE_TYPE Source _Out_ PWINBIO_SETTING_SOURCE_TYPE Source
); );
VOID WINAPI VOID WINAPI
WinBioGetLogonSetting( WinBioGetLogonSetting(
__out BOOLEAN* Value, _Out_ BOOLEAN* Value,
__out PWINBIO_SETTING_SOURCE_TYPE Source _Out_ PWINBIO_SETTING_SOURCE_TYPE Source
); );
VOID WINAPI VOID WINAPI
WinBioGetDomainLogonSetting( WinBioGetDomainLogonSetting(
__out BOOLEAN* Value, _Out_ BOOLEAN* Value,
__out PWINBIO_SETTING_SOURCE_TYPE Source _Out_ PWINBIO_SETTING_SOURCE_TYPE Source
); );
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
// //
// Focus tracking management // Focus tracking management
// //
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
HRESULT WINAPI HRESULT WINAPI
WinBioAcquireFocus( WinBioAcquireFocus(
skipping to change at line 467 skipping to change at line 705
WinBioReleaseFocus( WinBioReleaseFocus(
void void
); );
#ifdef __cplusplus #ifdef __cplusplus
} // extern "C" } // extern "C"
#endif #endif
#endif // (NTDDI_VERSION >= NTDDI_WIN7) #endif // (NTDDI_VERSION >= NTDDI_WIN7)
#endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) */
#pragma endregion
#endif // _WINBIO_H_9B9AD1F6_97B1_4647_923D_583FD7428C4C_ #endif // _WINBIO_H_9B9AD1F6_97B1_4647_923D_583FD7428C4C_
 End of changes. 46 change blocks. 
158 lines changed or deleted 402 lines changed or added

This html diff was produced by rfcdiff 1.41.