ОПРОСИТЬ ВЫБОР
СТОТ, СТАК, СГОТ Уровень тс. SAMPLE CHOICE.
Параметры:
Вх идентификатор станции И;Вх номер устройства выбора (1 . . . п) Ц;
Вых состояние (ЕСТЬ, НЕТ ВЫБОРА) П;
Вых номер альтернативы (1 . . . п) Ц.
Действие:
Если измерение устройства выбора определяет отсутствие выбора, то в параметре состояние возвращается значение НЕТ ВЫБОРА. Иначе возвращается значение ЕСТЬ вместе с номером выбранной альтернативы, являющимся значением логического ввода — текущим измерением устройства выбора.
Описание функции в соответствии с пп. 2.8.1; 2.8.3; 2.8.4.
Ошибки:
7 ЯГС не находится в одном из состояний СТОТ, СТАК или СГОТ;
20 Неверно задан идентификатор станции;
25 Указанная станция не открыта;
38 Указанная станция не является станцией ввода или ввода- вывода;
140 Указанное устройство ввода отсутствует на станции;
142 Устройство ввода не находится в режиме ОПРОС.
3.7.4.5. ОПРОСИТЬ УКАЗАНИЕ
СТОТ, СТАК, СГОТ Уровень 1 с.
SAMPLE PICK.
Параметры:
Вх идентификатор станции И;
Вх номер устройства указания (1 . . . п) Ц;
Вых состояние (ЕСТЬ, НЕТ УКАЗАНИЯ) П;
Вых имя сегмента И;
Вых идентификатор указания И.
Действие:
Если измерение устройства указания определяет отсутствие указания, то в параметре состояние выдается значение НЕТ УКАЗАНИЯ. Иначе возвращается значение ЕСТЬ, а в параметрах имя сегмента и идентификатор указания возвращается значение логического ввода — текущее измерение устройства указания.
Описание функции в соответствии с пп. 2.8.1; 2.8.3; 2.8.4.
Ошибки:
7 ЯГС не находится в одном из состояний СТОТ, СТАК или СГОТ;
20 Неверно задан идентификатор станции;
25 Указанная станция не открыта;
37 Указанная станция не является станцией ввода-вывода;
140 Указанное устройство ввода отсутствует на станции;
142 Устройство ввода не находится в режиме опроса;
142 Устройство ввода не находится в режиме ОПРОС.
3.7.4.6. ОПРОСИТЬ ВВОД СТРОКИ
СТОТ, СТАК, СГОТ Уровень тс.
SAMPLE STRING.
Параметры:
Вх идентификатор станции И;
Вх номер устройства ввода строки (1 . . . и) Ц;
Вых строка литер С.
Действие:
В параметре строка литер возвращается значение логического ввода — текущее измерение устройства ввода строки.
Пір и м е ч а ни е. Длина возвращаемой строки меньше или равна размеру буфера, который указан в записи данных устройства ввода строки в таблице состояния станции (для данного устройства).
Описание функции в соответствии с пи. 2.8.1; 2.8.3; 2.8.4.
Ошибки:
7 Я’ГС не находится в одном из состояний СТОТ, СТАК или С ГОТ;
20 Неверно задан идентификатор станции;
25 Указанная станция не открыта;
38 Указанная станция не является станцией ввода или ввода- вывода;
140 Указанное устройство ввода отсутствует на станции;
142 Устройство ввода не находится в режиме ОПРОС.
Функции ввода в режиме СОБЫТИЕ
ОЖИДАТЬ СОБЫТИЕ
СТОТ, СТАК, СГОТ Уровень тс.
AWAIT EVENT.
Параметры:
Вх время ожидания (секунды) Д;
Вых идентификатор станции И;
Вых класс устройства ввода
(НЕТ, ВВОД ПОЗИЦИИ, ВВОД ПОСЛЕДОВАТЕЛЬНОСТИ ПОЗИЦИИ, ВВОД ЧИСЛА, ВЫБОР, УКАЗАНИЕ, ВВОД СТРОКИ) П;
Вых номер устройства ввода (1 . . . п) Ц.
Действие:
Если очередь событий пуста, то ЯГС переходит в состояние ожидания до тех пор, пока либо не произойдет событие — ввод данных, и сообщение об этом событии не поступит в очередь, либо не истечет время ожидания.
Если время ожидания истекло, а очередь пуста, то в параметре ■класс устройства ввода возвращается значение НЕТ. Если в очереди имеются записи, то самый старый отчет о событии перемещается из очереди событий в поле «отчет о текущем событии» таблицы состояния ЯГС. В параметрах возвращаются идентификатор станции, класс и номер устройства ввода, а соответствующие значения входных данных становятся доступными для получения с помощью функции ПОЛУЧИТЬ <класс устройства ввода>.
П р им еч ан и я:
Операция выполняется и в случае наличия ошибки 147.
Если время ожидания равно нулю, то осуществляется немедленная проверка очереди, и если очередь пуста, возвращается значение НЕТ.
Некоторые операционные системы не обеспечивают надежной службы времени. В этом случае при времени ожидания, отличном от нуля, ЯГС может не выйти из состояния ожидания до тех пор, пока не произойдет событие ввода данных.
Описание функции в соответствии с пп. 2.8.1; 2.8.3; 2.8.5.
Ошибки:
7 ЯГС не находится в состоянии СТОТ, СТАК или СГОТ;
147 Очередь событий переполнена;
151 Не верно задано время ожидания.
3.7.5.2. УДАЛИТЬ СОБЫТИЯ ОТ УСТРОЙСТВА
СТОТ, СТАК, СГОТ Уровень тс.
FLUSH DEVICE EVENTS.
Параметры:
Вх идентификатор станции И;
Вх класс устройства ввода
(ВВОД ПОЗИЦИИ. ВВОД ПОСЛЕДОВАТЕЛЬНО
СТИ ПОЗИЦИЙ, ВВОД ЧИСЛА, ВЫБОР, УКАЗА
НИЕ, ВВОД СТРОКИ) П;
Вх номер устройства ввода (1 . . . п) Ц.
Действие:
Все отчеты о событиях для указанного устройства ввода удаляются из очереди событий.
Примечание. Операция выполняется и в случае наличия ошибки 147.
Описание функции в соответствии с п. 2.8.5.
Ошибки:
7 ЯГС не находится в одном из состояний СТОТ, СТАК или СГОТ;
20 Неверно задан идентификатор станции;
25 Указанная станция не открыта;
38 Указанная станция не является станцией ввода или ввода- вывода;
140 Указанное устройство ввода отсутствует на станции;
147 Очередь событий переполнена.
3.7.5.3. ПОЛУЧИТЬ ПОЗИЦИЮ
СТОТ, СТАК, СГОТ Уровень тс.
GET LOCATOR.
Параметры:
Вых номер преобразования нормирования (0 ... и) Ц;
Вых позиция МК Т.
Действие:
В' параметрах номер преобразования и позиция возвращается значение логического ввода из отчета о текущем событии. Пози-
ция возвращается в мировых координатах, номер преобразования нормирования соответствует преобразованию, которое использовалось для перевода позиции в мировые координаты. Позиция лежит внутри окна соответствующего этому преобразованию нормирования.
Описание функции в соответствии с пп. ’2.6.4; 2.8.4; 2.8.5.
Ошибки:
7 ЯГС не находится в одном из состояний СТОТ, СТАК или СГОТ;
150 Значение ввода данного класса отсутствует в отчете о текущем событии.
3.7.5.4. ПОЛУЧИТЬ ПОСЛЕДОВАТЕЛЬНОСТЬ ПОЗИЦИЙ
СТОТ, СТАК, СГОТ Уровень тс.
GET STROKE.
Параметры:
Вых номер преобразования нормирования (0 . . . п) Ц;
Вых число позиций (0 . . . п) Ц;
Вых последовательность позиций МК пХТ.
Действие:
В параметрах номер преобразования нормирования, число позиций и последовательность позиций возвращается значение логического ввода из отчета о текущем событии. Позиции возвращаются в мировых координатах, номер преобразования нормирования соответствует преобразованию, которое использовалось для перевода позиций в мировые координаты. Все точки последовательности лежат внутри окна, соответствующего этому преобразованию нормирования. Число позиций не превышает «размера буфера входных данных», указанного в записи данных устройства ввода последовательности позиций в таблице состояния станции (для данного устройства).
Примечание. Если количество введенных позиций превышает «размер буфера -входных данных», то дополнительные точки теряются. Оператору сообщается об этом.
Описание функции в соответствии с пп. 2.8.4; 2.8.5.
Ошибки:
7 ЯГС не находится в одном из состояний СТОТ, СТАК или СГОТ;
150 Значение ввода данного класса отсутствует в отчете о текущем событии.
ПОЛУЧИТЬ ЧИСЛО
СТОТ, СТАК, СГОТ Уровень тс.
GET VALUATOR.
Параметры:
Вых значение числа Д
Действие:
В параметре значение числа возвращается значение логического ввода из отчета о текущем событии. Это число находится в диапазоне, определенном в записи данных устройства ввода числа в таблице состояния станции (для данного устройства).
Описание функции в соответствии с пп. 2.8.4; 2.8.5.
Ошибки:
7 Я'ГС не находится в одном из состояний СТОТ, СТАК или СГОТ;
, 150 Значение ввода данного класса отсутствует в отчете о текущем событии.
ПОЛУЧИТЬ ВЫБОР
СТОТ, СТАК, СГОТ Уровень тс.
GET CHOICE.
Параметры:
Вых состояние (ЕСТЬ, НЕТ ВЫБОРА) П;
Вых номер альтернативы (1 . . . п) Ц.
Действие:
Из отчета о текущем событии выдается значение логического ввода, состоящее из состояния и номера выбранной альтернативы.
Описание функции в соответствии с пп. 2.8.4; 2.8.5.
Ошибки:
7 Я’ГС не находится в одном из состояний СТОТ, СТАК или СГОТ;
150 Значение ввода данного класса отсутствует в отчете о текущем событии.
ПОЛУЧИТЬ УКАЗАНИЕ
СТОТ, СТАК, СГОТ Уровень 1с.
GET PICK.
Параметры:
Вых состояние (ЕСТЬ, НЕТ УКАЗАНИЯ) П;
Вых имя сегмента И;
Вых идентификатор указания И.
Действие:
Из отчета о текущем событии выдается значение логического ввода, состоящее из состояния, имени сегмента и идентификатора указания.
Описание функции в соответствии с пп. 2.8.4; 2.8.5.
Ошибки:
7 ЯГС не находится в одном из состояний СТОТ, СТАК или СГОТ;
150 Значение ввода данного класса отсутствует в отчете о текущем событии.
ПОЛУЧИТЬ СТРОКУ
СТОТ, СТАК, СГОТ Уровень тс.
GET STRING.
Параметры:
Вых строка литер С.
Действие:
В параметре строка литер возвращается значение логического ввода из отчета о текущем событии.
Примечание. Длина возвращаемой стропой меньше или равна размеру буфера данного устройства, который указан в записи данных устройства ввода строки в таблице состояния станции.
Описание функции в соответствии с пп. 2.8.4; 2.8.5.
Ошибки:
7 ЯГС не находится в одном из состояний СТОТ, СТАК или СГОТ;
150 Значение ввода данного класса отсутствует в отчете о текущем событии.
Функции метафайла
.8.1. ЗАПИСАТЬ В МЕТАФАЙЛ
СТАК, СГОТ Уровень 0а.
WRITE ITEM ТО GKSM.
Параметры:
Вх идентификатор станции И;
Вх тип записи Ц;
Вх длина записи данных (0 . . . п) Ц;
Вх запись данных О.
Действие:
Запись, содержащая неграфические данные, заносится в метафайл.
Примечание. Графические данные посылаются в метафайл автоматически, когда станция вывода метафайла активна.
Описание функции в соответствии с п. 4.9.
Ошибки:
ЯГС не находится в состоянии СТАК или СГОТ;
Неверно задан идентификатор станции;
Указанная станция не активна;
Указанная станция не является станцией вывода метафайла ЯГС;
Тип записи не разрешен для записи пользователя;
Неправильная длина записи.
.2. ПОЛУЧИТЬ ТИП ЗАПИСИ ИЗ МЕТАФАЙЛА
СТОТ, СТАК, СГОТ Уровень 0а.
GET ITEM TYPE FROM GKSM.
Параметры:
B!x идентификатор станции И;
Вых тип записи Ц;
Вых длина записи данных (0 . . . п) Ц.
Действие:
ЯГС проверяет тип и длину текущей записи в метафайле и возвращает их в соответствующих параметрах прикладной программе.
Описание функции в соответствии с п. 4.9.
Ошибки:
ЯГС не находится в одном из состояний СТОТ, СТАК или СГОТ;
Неверно задан идентификатор станции;
Указанная станция не открыта;
Указанная станция не является станцией ввода метафайла ЯГС;
В метафайле ввода ЯГС не осталось больше записей;
Неправильная запись в метафайле.
.3. ПРОЧИТАТЬ ЗАПИСЬ МЕТАФАЙЛА
СТОТ, СТАК, СГОТ Уровень 0а.
READ ITEM FROM GKSM.
Параметры:
Вх идентификатор станции И;
максимальная длина записи (0 . . . п) Ц;
Вых запись данных О.
Действие:
ЯГС возвращает прикладной программе текущую запись метафайла и затем переходит к следующей записи. Если длина записи больше максимальной длины, то часть записи теряется.
Примечание. Если максимальная длина записи равна нулю, запись пропускается без считывания.
Описание функции в соответствии с п. 4.9.
Ошибки:
ЯГС не находится в одном из состояний СТОТ, СТАК или СГОТ;
Неверно задан идентификатор станции;
Указанная станция не открыта;
Указанная станция не является станцией ввода метафайла Я'ГС;
В метафайле ввода ЯГС не осталось больше записей;
Неправильная запись в метафайле;
Содержимое записи данных не соответствует указанному типу записи;
Неверно задана максимальная длина записи данных.
.4. ИНТЕРПРЕТИРОВАТЬ ЗАПИСЬ
ГЯОТ, СТОТ, СТАК, СГОТ Уровень 0а.
INTERPRET ITEM.
Параметры:
Вх тип записи Ц;
Вх длина записи (0 . . . п) Ц;
Вх запись данных О.
Действие:
Запись интерпретируется. Это вызывает соответствующие изменения в переменных состояния ЯГС и генерацию соответствующих примитивов вывода согласно спецификациям метафайла.
Примечание. Кроме ошибок, перечисленных ниже, как результат интерпретации записи могут возникнуть и другие ошйбки ЯГС.
Описание функции в соответствии с п. 4.9.
Ошибки: '
7 ЯГС не находится в одном из состояний СТОТ, СТАК иля СГОТ;
161 Неправильная длина записи;
Неправильная запись в метафайле;
Неправильный тип записи метафайла ЯГС;
Содержимое записи данных не соответствует указанному типу записи;
Запись пользователя не может быть интерпретирована;
Указанная функция не поддерживается на этом уровне; ЯГС.
3.9. Справочные функции
Общие сведения
Справочные функции выдают значения из различных таблиц состояния. Типы данных значений и установленные по умолчанию значения полей таблиц состояния кратко описаны в разд. 2. Об ошибках, обнаруженных справочными функциями, сообщается через параметр «индикатор ошибок» в соответствии с п. 2.11.2. Процедура обработки ошибок не вызывается.