Режим работы ввода

ЗАПРОС (REQUEST) –обращение к специальной функции в режиме ЗАПРОС вызывает попытку прочесть значение логического ввода с указанного логического устройства. ЯГС ожидает ввода до тех пор, пока оператор либо не введет данные, либо не выдаст сигнал отмены ввода, который зависит от устройства логического ввода и от реализации.

ОПРОС (SAMPLE) – обращение к специальной функции в режиме ОПРОС предписывает ЯГС возвратить текущее значение логического ввода с указанного логического устройства, не дожидаясь действий со стороны оператора. Устройство должно находиться в режиме ОПРОС.

СОБЫТИЕ (EVENT) – ЯГС поддерживает одну входную очередь событий, состоящую из упорядоченных в порядке поступления записей о событиях. Запись о событии содержит идентификатор логического устройства и значение логического ввода, полученное от этого устройства. Записи о событиях от устройств, работающих в режиме СОБЫТИЕ, генерируется асинхронно, исключительно в зависимости от действий оператора. Прикладная программа может получить из очереди запись о наиболее раннем событии и проанализировать ее содержание. Возможно удаление из очереди всех записей о событиях, касающихся определенного логического устройства ввода.

В режиме ЗАПРОС чтение данных с графической станции весьма похоже на чтение текстовой информации с терминала с помощью обычного оператора READ языка Фортран. В любой момент прикладной программой может быть запрошен ввод только с одного устройства. Это ведет к диалогу, полностью управляемому прикладной программой, т.е. находясь в этом режиме, оператор не может, например, в произвольной момент свободно ввести позицию или выбрать альтернативу. Оператор может прервать ввод с помощью оговоренного при реализации действия отмены. Например, таким действием может стать нажатие соответствующей клавиши на станции. В этом случае прикладная программа будет уведомлена, что произошло прерывание и ввод данных невозможен.

В режимах ОПРОС и СОБЫТИЕ оператор может управлять любым из нескольких устройств по собственному усмотрению. Все логические устройства ввода, находящиеся в этих режимах, доступны ему. Отличие заключается в том, что в режиме ОПРОС текущие значения опрашиваемых устройств известны прикладной программе независимо от того, изменял оператор данные или нет (или даже просто прикасался к устройству), в то время как в режиме СОБЫТИЕ требуются определенные действия с его стороны, чтобы поместить значения в очередь событий.

Рассмотрим изменение значений устройства ввода позиции с помощью джойстика в режиме ОПРОС. Данные, получаемые в результате опроса внутри цикла, используются для формирования новой матрицы преобразования и преобразования ее с помощью группы сегментов. Когда цикл исполняется достаточно быстро, у оператора создается впечатление, что изменение сегментов непосредственно связано с движением джойстика. Если при этом установить режим работы обычной и функциональной клавиатуры СОБЫТИЕ, то с помощью данных устройств он сможет оповестить программу о своем намерении завершить или продолжить ее выполнение. С этой целью прикладная программа в конце каждой итерации должна проверять очередь событий.

 

 








Дата добавления: 2015-10-09; просмотров: 514;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.003 сек.