8.1.13 Функция BioAPI_Control (БиоАПИ 2.1)
Данный пункт применяется только при использовании БиоАПИ версии 2.1.
BioAPI_RETURN BioAPI BioAPI_Control | |
(BioAPI_HANDLE BSPHandle, | |
BioAPI_UNIT_ID UnitID, | |
const BioAPI_UUID *ControlCode, | |
const BioAPI_DATA *InputData, | |
BioAPI_DATA *OutputData); |
8.1.13.1 Описание
Данная функция посылает управляющие данные от приложения модулю БиоАПИ и получает обратно данные состояния или рабочие данные. Содержание параметра ControlCode посылаемых (входных) данных и получаемых (выходных) данных должно быть определено в спецификации на интерфейс для данного модуля БиоАПИ (или связанного ИПФ в том случае, если он присутствует).
Данная функция выделяет область памяти, достаточную для размещения выходных данных, которые должны быть возвращены приложению, заполняет блок данными и записывает в поля Length и Data структуры OutputData размер и адрес блока памяти (соответственно).
Область памяти, возвращенная при вызове функции БиоАПИ, должна быть освобождена приложением путем вызова функции BioAPI_Free (8.7.2).
8.1.13.2 Параметры
BSPHandle (входной) - дескриптор присоединенного ПБУ.
Unitld (входной) - ИД модуля БиоАПИ.
ControlCode (входной) - код функции в вызываемом модуле БиоАПИ.
InputData (входной) - адрес и длина буфера данных, которые должны быть посланы модулю БиоАПИ в соответствии с полученным ControlCode.
OutputData (выходной) - указатель на структуру BioAPI_DATA. На выходе она должна содержать адрес и длину буфера данных, содержащего данные, полученные от модуля БиоАПИ после обработки функции, указанной в ControlCode. Если функция не выделила область памяти, то адрес должен быть установлен на пустой указатель, а длина буфера задана равной нулю.
8.1.13.3 Возвращаемое значение
Значение BioAPI_RETURN указывает на успешное выполнение функции или определяет тип ошибки. Значение BioAPI_ОK указывает на отсутствие ошибки. Все остальные значения описывают тип ошибки.
8.1.13.4 Ошибки
BioAPIERR_BIOAPI_UNIT_NOT_INSERTED
BioAPIERR_INVALID_UNIT_ID
BioAPIERR_UNIT_IN_USE
BioAPIERR_INVALID_BSP_HANDLE
Данные об обработке ошибок БиоАПИ приведены в разделе 11.