ГОСТ Р ИСО/МЭК19784-1—2007
8.1.4.1 Описание
Данная функция предоставляет информацию о всех ПБУ. установленных в реестре компонентов.
Функция выполняетдействия в следующем порядке:
a) выделяет блок памяти, достаточный для хранения массива элементов типа BioAPI_BSP_SCHEMA
с числом элементов, равным числу установленных ПБУ:
b
)заполняет массив схемами установленных ПБУ.
c) возвращает адрес массива в параметре BSPSchemaArray и число элементов массива в параметре
NumberOfElements.
Данная функция может быть вызвана только в том случае, если был сделан, по крайней мере, один
вызов функции BloA P IJnlt, для которого еще не был сделан соответствующий вызов функции
BioAPl_Torminato.
Данная функция обрабатывается в инфраструктуре БиоАПИ и не передается ни одному ПБУ.
Блок памяти, содержащий массив, должен быть освобожден приложением путем вызова функции
BioAPI_Froe (8.7.2). если приложение вдальнейшем не будет его использовать. Те элементы массива, на
которые указывает блок памяти путем параметра Path, также должны быть освобождены приложением с
помощью вызова функции BioAPI_Free, если приложение больше не будет использовать элементы мас
сива.
8.1.4.2 Параметры
BspSchemaArray (выходной) — указатель на адрес массива элементов типа BioAPI_BSP_SCHEMA
(распределенного инфраструктурой), содержащего информацию о схеме ПБУ.
NumElomentsRetumed (выходной) — указатель на число элементов массива (равно числу схем ПБУ
в реестре компонентов).
8.1.4.3 Возвращаемое значение
Значение BioAPI_RETURN указывает на успешное выполнение функции или определяет тип ошибки.
Значение BioAPI_OK указывает на отсутствие ошибки. Все остальные значения описывают тип ошибки.
8.1.4.4 Ошибки
Данные об обработке ошибок БиоАПИ приведены в разделе 11.
8.1.5 Функция BioAPI_BSPLoad
BioAPI_RETURN BioAPI BioAPLBSPLoad
(const BioAPl_UUID ’BSPUuid,
BioAPI_EventHandterAppNotifyCallback.
void* AppNotifyCaltbackCtx);
8.1.5.1 Описание
Данная функция инициализирует ПБУ с помощью функции BioSPI_BSPLoad (см. 9.3.1.1). Инициали
зация включает в себя регистрацию обработчика события приложения для указанного ПБУ и разрешение
всех событий. Приложение может предоставить функциюобработчика событий, чтобы получать уведомле
ния о событиях. Несколько приложений могут независимо и одновременно загружать один и тот же ПБУ. и
каждое приложение может установить свой собственный обработчик событий. Все приложения должны
получать уведомление о событии. Если приложение загружает несколько ПБУ. то могут использоваться
одни и те же или разные обработчики события.
Приложение можетустановитьстолькообработчиков событий, сколько необходимодля данного ПБУ.
путем многократного вызова функции BioAPI_BSPLoad для данного ПБУ. Обработчиксобытий идентифи
цируется по его адресу и содержанию.
Если вПБУ возникает событие, то ПБУ может послать уведомление о событии инфраструктуре путем
вызова обработчика событий инфраструктуры.
Когда инфраструктура получает уведомление о событии от ПБУ. она должна послать уведомление
каждому обработчику событий, установленному каждым приложением, для которого данное уведомление о
событии возможнодля данного ПБУ. Поэтому отдельный обратный вызов уведомления о событии, сде
ланный из ПБУ к инфраструктуре, может привести к появлению нулевого значения или к обратным вызовам
инфраструктуры к приложениям.
Когда инфраструктура получает уведомление о событии от ПБУ. она должна вызвать все обработчики
событий, установленные каждым приложением для данного ПБУ. Если приложение установило несколько
обработчиков событий, онидолжны быть вызваны по одному влюбом порядке, выбранном инфраструкту
рой (такой вызов предпочтительнее одновременного вызова).
33