A representation for the specified pattern index has not been predefined on this workstation.
Заполнение по шаблону не поддерживается на данной станции.
Interior style PATTERN is not supported on this workstation.
Неверно заданы размерности массива индексов цвета.
Dimensions of colour array are invalid.
Индекс цвета меньше нуля.
Colour index is less then zero.
Неверно задан индекс цвета. ‘
Colour index is invalid.
Представление для указанного индекса цвета не было определено на данной станции.
A representation for the specified colour index has not been defined on this workstation.
Представление для указанного индекса цвета не предопределено на данной станции.
A representation for the specified colour index has not been predefined on this workstation.
Интенсивность цвета лежит вне диапазона от нуля до единицы.
Colour is outside range [0,1].
Неверно задан идентификатор указания.
Pick identifier is invalid.
Ошибки примитивов вывода
Неверно задано число точек.
Number of points is invalid.
Неверный код литеры.
Invalid code in string.
Неверно задан идентификатор ОПВ.
Generalized drawing primitive identifier is invalid.
Неверно задано содержимое записи данных ОПВ.
Content of generalized drawing primitive data record is invalid.
Ни одна активная станция не может сгенерировать указанный ОПВ.
At least one active workstation is not able to generate the specified generalized drawing primitive.
1-05 Ни одна активная станция не в состоянии сгенерировать указанный ОПВ при текущих преобразованиях и прямоугольнике отсечения.
At least one active workstation is not able to generate the specified generalized drawing primitive under the current transformations and clipping rectangle.
Ошибки сегментов
Неверно задано имя сегмента.
Specified segment name is invalid.
Указанное имя сегмента уже используется.
Specified segment name is already in use.
Указанный сегмент не существует.
Specified segment does not exist.
Указанный сегмент не существует на указанной станции.
Specified segment does not exist on specified workstation.
Указанный сегмент не существует в общей памяти сегментов.
Specified segment does not exist on Workstation Independent Segment Storage.
Указанный сегмент открыт.
Specified segment is open.
Приоритет сегмента вне диапазона от нуля до единицы.
Segment priority is outside the range [0,1].
Ошибки ввода
Указанное устройство ввода отсутствует на станции.
Specified input device is not present on workstation.
Устройство ввода не находится в режиме ЗАПРОС.
Input device is not in REQUEST mode.
Устройство ввода не находится в режиме ОПРОС.
Input device is not in SAMPLE mode.
Режим ОПРОС и режим СОБЫТИЕ не доступен на данном уровне ЯГС. EUENT and SAMPLE input mode are not available at this level of GKS.
Запрошенный тип подсказки и эха не поддерживается на данной станции. Specified prompt and echo type is not supported on this workstation.
Область эха находится за пределами пространства изображения.
Echo area is outside display space.
Неверно задано содержимое записи данных.
Contents of input data record are invalid.
Очередь событий переполнена.
Input queue has overflowed.
Очередь событий не переполнялась после открытия ЯГС или после последнего обращения к функции УЗНАТЬ НАЛИЧИЕ ПЕРЕПОЛНЕНИЯ ОЧЕРЕДИ СОБЫТИИ.
Input queue has not overflowed since GKS was opened or the last invocation of INQUIRE INPUT QUEUE OVERFLOW.
Очередь событий переполнялась, но соответствующая станция была закрыта.
Input queue has overflowed, but assosiated workstation has been closed.
Значение ввода данного класса отсутствует в отчете о текущем событии.
No input value of correct class is in the current event report.
Неверно задано время ожидания.
Timeout is invalid.
Неверно задано начальное вначение.
Initial value is invalid.
Число точек в начальной последовательности позиции больше размера буфера.
Number of points in the initial stroke is greater than the buffer size.
Длина начальной строки больше размера буфера.
Length of the initial string is greater than the buffer size.
Ошибки метафайла
Тип записи не разрешен для записи пользователя.
Item type is not allowed for user items.
Неправильная длина записи.
Item length is invalid.
В метафайле ввода ЯГС не осталось больше записей.
No item is left in GKS Metafile input.
Неправильная запись в метафайле.
Metafile item is invalid.
Неправильный тип записи метафайла ЯГС.
Item type is not a valid GKS item.
Содержимое записи данных не соответствует указанному типу записи.
Content of item data record is invalid for the specified item type.
Неверно задана максимальная длина записи данных.
Maximum item data record length is invalid.
Запись пользователя не может быть интерпретирована.
User item cannot be interpreted.
Указанная функция не поддерживается на этом уровне ЯГС.
Specified function is not supported in this level of GKS.
Ошибки расширения
Указанная функция расширения не обеспечена.
Specified escape function is not supported.
Идентификатор указанной функции расширения задан неверно. Specified escape function identification is invalid.
Неверно задано содержимое записи данных функции расширения. Contents of escape data record are invalid.
Прочие ошибки
200 Неверно задан указанный файл ошибок. Specified error file is invalid.
Системно зависимые ошибки
Переполнение памяти ЯГС.
Storage overflow has occurred in GKS.
Переполнение памяти хранения сегментов.
Storage overflow has occurred in segment storage.
Ошибка ввода/вывода в процессе чтения.
Input/Output error has occurred while reading.
Ошибка ввода/вывода в процессе записи.
Input/Output error has occurred while writing.
Ошибка ввода/вывода в процессе передачи данных на станцию.
Input/Output error has occurred while sending data to a workstation.
Ошибка ввода/вывода в процессе приема данных со станции.
Input/Output error has occurred while receiving data from a workstation.
Ошибка ввода/вывода в процессе работы с библиотекой.
Input/Output error has occurred during program library management.
Ошибка ввода/вывода в процессе чтения таблицы описания ЯГС.
Input/Output error has occurred while reading workstation description table.
Арифметическая ошибка.
Arithmetic error has occurred.
Зарезервированные ошибки
Неиспользованные номера ошибок меньше 2000, а также ошибки с номерами больше 4000 зарезервированы для дальнейшей стандартизации.
Unused error numbers less than 2000 are reserved for future standartization.
Ошибки с номерами от 2000 до 3999 предназначены для привязки к языкам программирования.
Error numbers 2000—3999 are reserved for language bindings.
Номера от 4000' и более отводятся для регистрации ошибок.
Error numbers greater than or equal to 4000 are reserved for registration.ПРИЛОЖЕНИЕ 5 Справочное
ИНТЕРФЕЙСЫ
Введение
Для реализации ЯГС на различных языках высокого уровня при его описании применяются абстрактные термины.
Для использования ЯГС в некоторой прикладной программе, написанной на определенном языке, необходимы следующие преобразования:
абстрактные функции и типы данных ЯГС следует выразить в терминах конструкций языка высокого уровня;
необходимо обеспечить набор специфичных средств этого языка, используя средства определенной ЭВМ и операционной системы.
Связь с языками программирования
Описание функций и типов данных ЯГС на языке высокого уровня содержится в документе «Связь ЯГС с языками программирования», в котором определяется, каким образом функции ЯГС доступны программам, написанным на определенном языке.
Этот документ является продолжением настоящего стандарта.
При разработке таких документов необходимо соблюдать следующие правила:
Все функции ЯГС, отличные от справочных функций, должны представлять собой для прикладной программы отдельные программные модули. Это правило запрещает создавать такие интерфейсы, которые преобразуют единственную функцию ЯГС в последовательность функций языка, вызываемых прикладной программой, за исключением справочных функций, которые, например, в некоторых интерфейсах могут требовать вызова функции для каждого элемента таблицы.
При описании связи ЯГС с языком следует определить для каждого имени абстрактной функции ЯГС только один идентификатор, допустимый в этом языке. Имена функций ЯГС являются средством для описания семантики языка; их следует заменить на реальные идентификаторы, которые подчиняются правилам и ограничениям языка высокого уровня. Предпочтительней преобразовывать каждую абстрактную функцию ЯГС в функцию языка-
При описании связи ЯГС с языком следует определить для каждого типа данных ЯГС соответствующий тип данных, допустимый в этом языке; дополнительные типы данных могут быть заданы в терминах типов данных ЯГС. Типы данных, используемые в этом стандарте, являются только средством для описания семантики языка; их следует заменить на реальные типы данных, которые подчиняются правилам и ограничениям языка высокого уровня.
При описании связи ЯГС с языком следует определить для каждой абстрактной функции ЯГС способ вызова соответствующей функции языка и средства, с помощью которых каждый абстрактный параметр ввода передается в эти функции языка и каждый абстрактный параметр вывода поступает из этих функций языка. Если позволяет язык высокого уровня, абстрактные функции преобразуются в функции языка или процедуры. Параметры передаются через список параметров. Записи в таком списке могут быть или записями типов данных, которые соответствуют типам данных ЯГС, или ссылками на такие записи, или совокупностями этих типов.
При описании связи ЯГС с языком следует определить набор идентификаторов, допустимых в этом языке, которые могут быть использованы в реализации для внутренних связей. При реализации обычно не накладывается ограничений на использование внешних идентификаторов,, которые определяются в соответствии с правилами 1—4. Поэтому в прикладных программах следует избегать использования идентификаторов из набора, определяемого правилом 5. Этот набор может состоять, например, из идентификаторов, начинающихся с литеры G.
Реализация ЯГС
Реализацией ЯГС является модуль или библиотека модулей, написанных для определенного языка программирования и подчиняющихся правилам связи ЯГС с языком. Реализация ЯГС представляет собой все функции определенного уровня ЯГС и не содержит других функций более высоких уровней ЯГС. Реализация эффективно использует средства, имеющиеся в основной ЭВМ и операционной системе. При реализации ЯГС необходимо соблюдать следующие правила:
Описание реализации ЯГС должно включать список всех идентификаторов процедур, функций, совокупностей глобальных данных и файлов, которые доступны для прикладной программы, или должны быть описаны в языке операционной системы. Так как этот набор идентификаторов является, в общем, супервизором имен, определенных при связи с языком, то программы, переносимые с одной реализации на другую реализацию с одинаковым связанным языком, могут использовать совпадающие имена. Документация должна отражать потенциальные расхождения.
Реализация ЯГС не должна ограничивать использование в прикладных программах каких-либо средств ввода-вывода, предоставляемых языками высокого уровня или операционной системой. Тем не менее, реализации должны препятствовать прикладным программам, обходить ЯГС и получать графические ресурсы непосредственно. Предполагается, что реализация нужна такая, чтобы исключить управление графическими ресурсами без ведома ЯГС, хотя как можно меньше ограничений должно быть принято по использованию других ресурсов.
В описании реализации ЯГС следует определить для каждой характеристики, зависящей от реализации и станций, значение этой характеристики в данной реализации. Некоторые детальные характеристики настоящего стандарта специально не заданы, чтобы предоставить специалистам достаточную свободу для адаптации к определенным ЭВМ и определенным операционным системам. Эти характеристики указываются в тексте словами «зависит от реализации». Другие, не заданные характеристики, позволяют адаптироваться к графическим устройствам. Они указаны в тексте словами «зависит от станции». Список всех таких характеристик дан в приложении 6. Значение такой характеристики следует описывать в документации так, чтобы можно было предсказать поведение прикладной программы.
В описании каждой реализации станции следует задавать соответствие между физическими устройствами ввода, действиями оператора и логическими устройствами ввода для этой станции (если они есть). Соответствие между физическими устройствами ввода, действиями оператора и логическими устройствами ввода является постоянным и не может управляться прикладной программой. Это соответствие должно быть описано в документации. Также желательно, чтобы разработчик станции предоставлял средства изменения этих соответствий, например, во время определения конфигурации ЯГС.
ПРИЛОЖЕНИЕ 6 Справочное
ДОПУСТИМЫЕ РАЗЛИЧИЯ В РЕАЛИЗАЦИЯХ ЯГС
Введение
Ряд характеристик настоящего стандарта специально не задан, чтобы предоставить свободу для адаптации реализаций к различным средствам окружения и к различному оборудованию. Различия, появляющиеся в результате описания ЯГС в терминах различных языков программирования, приведены в приложении '1;