ГОСТ Р 56947—2016
В случаях когда уровень ИИЭР 1451.0 осуществляет многочисленные запросы «readRsp()», пред
полагающие большие полезные нагрузки, значение параметра «1еп» представляет собой длину каждой
передачи, а не общую длину. Метод управления кэшированной длиной с помощью «readSize()» пред
ставлен в 11.3.9.
Параметры
Параметр «commld» задает канал связи.
Параметр «timeout» задает максимальное время, в течение которого отправитель запроса осу
ществляет блокировку, до момента, когда должна быть возвращена ошибка времени ожидания (тайм
аута). Значения «secs == 0». «nsecs == -1» задают «непрерывное (бесконечное) ожидание».
Параметр «msgld» должен иметь такое же значение, которое было предоставлено в запросе
«writeMsg( )». запустившем данную транзакцию. Для информации о способе оповещения инициирую
щей стороны о готовом ответе см. обратный запрос «notifyRsp()».
Параметр «maxLen» показывает максимальное число байтов, передаваемых через уровень ИИЭР
1451.Х.
Параметр «(out) «payload» представляет собой байтовый массив, который предоставляется уров
нем ИИЭР 1451.0 для уровня ИИЭР 1451.X. Уровень ИИЭР 1451.X передает доступные данные в такой
массив. Следует отметить, что длина возвращенного байтового массива может быть меньше параме
тра «maxLen».
Параметр «[out] «last» показывает, должны ли быть выполнены дополнительные запросы
«readRsp( )» уровнем ИИЭР 1451.0. Значение «False» («Ложь») для данного параметра означает, что
уровень ИИЭР 1451.Х содержит еще несколько байтов для связи с уровнем ИИЭР 1451.0 и что уровень
ИИЭР 1451.0 должен сделать дополнительные запросы «readRsp()». Значение «True» («Истина») для
данного параметра означает, что вся полезная нагрузка была полностью передана от уровня ИИЭР
1451.Х к уровню ИИЭР 1451.0.
Возвращаемый результат: код ошибки.
11.3.6 Метод «IEEE1451DotO::ModuleCommunication::NetComm::writoMsg»
IDL:
A rg s::U ln tl6 writeM sgl
in A rgs: :U Intl6coirmld,
in A r g s :: TimeDurationtim eout,
in A rgs: :O ctetA rraypayload,
in A rgs: :_Booleanl a s t ,
in A rg s::U In tl6m sgld).
Данный метод вызывается уровнем ИИЭР 1451.0 для начала или продолжения операции связи.
Данный метод всегда вызывается уровнем ИИЭР 1451.0 на инициирующем узле для начала операции
связи. В случае двустороннего направления связи информация о том. как принимающий узел осущест
вляет ответ, представлена в описании метода «writeRsp()».
Параметры
Параметр «commld» задает канал связи.
Параметр «timeout» задает максимальное время, в течение которого отправитель запроса осу
ществляет блокировку, до момента, когда должна быть возвращена ошибка времени ожидания (тайм
аута). Значения «secs == 0». «nsecs == -1» задают «непрерывное (бесконечное) ожидание».
Параметр «payload» представляет собой байтовый массив для связи.
Параметр «last» показывает, будут ли осуществлены дополнительные запросы для вызова метода
«writeMsg()» уровнем ИИЭР 1451.0 для обеспечения дополнительных фрагментов полезной нагрузки.
Значение «False» («Ложь») для данного параметра означает, что уровень ИИЭР 1451.0 содержит еще
несколько байтов для отправки и сделает еще несколько дополнительных запросов для вызова метода
«writeMsg()». Значение «True» («Истина») для данного параметра означает, что вся полезная нагрузка
была передана от уровня ИИЭР 1451.0 к уровню ИИЭР 1451 .X.
Параметр «msgld» задает «message Ю» («идентификатор сообщения») для данной транзакции.
В случае двусторонних транзакций уровень ИИЭР 1451.X должен передать обратно такое же значение
параметра «msgld» инициирующей вызов стороне в запросе «NetReceive::notifyRsp( )». Значение
«0» показывает, что запрос является односторонним.
Возвращаемый результат: код ошибки.
11.3.7 Метод «IEEE1451DotO::ModuleCommunication::NetComm::writeRsp»
IDL:
A rg s::U In tl6 w riteR spt
in A rg s::U In tl6commld.
174