ГОСТ Р 56947—2016
Применение данного метода должно допускать альтернативные источники запросов «unlock()» о сня
тии запрета доступа. Это является действительным только в случае, если запрос «1оск()»о запретедоступа
был сделан единственный раз. Примером может служить неблокирующая операция. Запускающая цепочка
вызывает запросы «ореп()»(«открыть»). «1оск{)»(«закрытьдоступ») и «non-btocking read()»(«неблокирую
щее чтение*»). После завершения считывания запускается обратный вызов «AppCallback::measurementUpd
ate()». После этого данная цепочка может осуществить запрос «unlock()»(«снять запрет доступа»).
Запрос «close( )» («закрыть») приведет к вызову запроса «unk>ck( )» («снять запрет доступа»)
необходимое число раз. При этом будет возвращен предупреждающий код ошибки, сообщающий о по
пытке осуществления закрытия ресурса, для которого действует запрет доступа.
Параметры
Параметр «transCommld» обозначает требуемую сессию связи преобразователя.
Возвращаемый результат: код ошибки.
10.3.3 Метод «IEEE1451DotO::TransducerServices::TransducerManager::reportLocks»
IDL:
A rg s::U In tl6 unlock(out A rgs: : Ulntl6A rray transCommlds).
Данный метод выдает отчет о всех значениях «transCommlds» для устройств, доступ к которым
запрещен.
Параметры
Выходной параметр («[out] «transCommld») возвращает массив идентификаторов (ID) устройств,
доступ к которым запрещен.
Возвращаемый результат: код ошибки.
10.3.4 Метод «IEEE1451DotO::TransducerServices::TransducerManager::breakLock»
IDL:
A rg s::U In tl6 breakLock( in A rg s::U In tl6 transCommld).
Данный метод снимает запрет доступа. В случае если идет процесс неблокирующего считывания
или записи или поток измерений обратный вызов будет содержать соответствующий код ошибки. Спи
сок кодов ошибки см. в таблице 78.
Параметры
Параметр «transCommld» задает сессию связи преобразователя для снятия запрета доступа.
Возвращаемый результат: код ошибки.
10.3.5 Метод «IEEE1451DotO::TransducerServices::TransducerManager::sendCommand»
IDL:
A rg s::U ln tl6 sendCommand{
ir. A rgs: :U In tl6transCommld,
in A r g s :: TimeDurationtim eout,
in A rg s ::U In t8
in A rgs: :(JInt8
in A rgs: :Argum entArray
cmdClassId,
cm dPunctionld,
inA rgs,
out A rg s ::Argum entArrayo u tA rg s ).
Данный метод осуществляет операцию блокировки. Формат входящих и исходящих аргументов
зависит от вида команды. Отправитель запроса должен убедиться в том. что для каждого входящего
аргумента используются корректные типы данных.
Поскольку данная команда является специальной, приложение должно использовать командную
ЭТДП, и данный массив аргументов должен содержать байтовый массив, содержащий команду.
Параметры
Параметр «transCommld» задает сессию связи преобразователя.
Параметр «timeout» представляет собой максимальное время ожидания до формирования ошиб
ки времени ожидания (тайм-аута). Значения «secs == 0». «nsecs == -1» задают «непрерывное (беско
нечное) ожидание».
Параметр «cmdClassId» задает требуемый код класса команды. Подробная информация пред
ставлена в таблице 15.
Параметр «cmdFunctionld» задает требуемый функциональный код команды. Подробная инфор
мация представлена в разделе 7.
Параметр «inArgs» представляет собой входные аргументы в форме массива аргументов.
Параметр [out] «outArgs» представляет собой возвращаемые исходящие аргументы.
Возвращаемый результат: код ошибки.
10.3.6 Метод «IEEE1451DotO::TransducerServices::TransducerManager::sendCommandRaw»
IDL: A rg s ::U in tl6 sendCommandRawI
in A rg s ::U In tl6transCommld,
1 5 6