ГОСТ Р ИСО/МЭК 29141—2012
Приложение В
(справочное)
Пример последовательности вызова БиоАПИ
о id Ем mple() {
static BioAPI_VERSION BioAPIVersion = 0x21:
static BioAPI_UUID bspUuid =
/• некоторый УУИД. идентифицирующий отдельный ПБУ V
static BioAPI_UUID controlCodeConfigureSensorUnitFromANSINISTTemp!ate=
/* некоторый УУИД. определенный в стандарте 7
BioAPI_UNIT_LIST_ELEMENT unitList[1];
BioAPl_RETURN returnValue;
BioAPl_HANDLE bspHandle;
BioAPI_UNIT_ID sensorUnitID:
BioAPI_DATA inputData. outputData;
BioAPI_BIR_BIOMETRIC_DATA_FORMAT bdbFormat;
BioAPI_BIR_HANDLE capturedBIRLeftSlap:
BioAPI_BIR_SUBTYPE subtype;
BioAPI_BIR Ыг,
returnValue = BioAPI Jmt(BioAPIVersran);
returnValue = Bk>API_BSPLoad(&bspUuid. EvenlHandler. NULL);
sensorUnitID =
/’ некоторое целое число, идентифицирующее датчик, способный к одновременному получению изо
бражений отпечатков десяти пальцев Ч
unitList[0].UnitCategory = BioAPI_CATEGORY_SENSOR:
unitList(0].Unitld = sensorUnitID;
returnValue = BioAPI_BSPAttach(&bspUuid. BioAPIVersion. &unitList. 1, &bspHandle);
inputData.Data = ...; Г адрес буфера, содержащего входной файл АНИС/НИСТ V
inputData.Length =длина данных в буфере Ч
returnValue = BioAPI_ControlUnit(bspHandle.
sensorUnitID.
ScontrolCodeConfigureSensorUnitFromANSINlSTTemplate.
SinputData.
SoutputData);
if(outputData.Data != NULL){
/* обработка данных, возвращенных ControlUnit V
BioAPI_Free(outputData.Data);
outputData.Data = NULL;
outputData.Length = 0:}
bdbFormat.FormatOwner = ...; Г владелец формата ББД файла АНИС/НИСТ 7
bdbFormat.FofmatType = ...; Г тип формата ББД файла АНИС/НИСТ V
subtype = BioAPI_BIR_SUBTYPE_LEFTJNDEXFINGER_BIT |
BtoAPI_BIR_SUBTYPE_LEFT_MIDDLEFINGER_BIT|
BioAPI_BIR_SUBTYPE_LEFT_RINGFINGER_BIT|
BioAPI_BIR_SUBTYPE_LEFT_LnTLEFINGER_BIT:
returnValue = BioAPI_Capture{bspHandle.
BioAPI_PURPOSE_ENROLL.
subtype.
&bdbFormat.
ScapturedBIRLeftSlap.
-1, NULL);
24