Программирование на Верхнем Уровне СУ
Библиотеки алгоритмов СУ
Описание диалогового меню - таблица "U70_MENUS"
Устройство таблицы
|
|
Размер:
|
|
|
Количество плоскостей:
|
расширяется по мере необходимости
|
|
|
Количество строк:
|
18
|
|
|
Количество атрибутов:
|
10
|
|
Особенность:
|
|
|
Каждая плоскость содержит список одного меню.
|
|
|
Каждая строка содержит описание одного пункта меню.
|
|
|
Номер установки ускорительного комплекса
есть номер строки в первой плоскости таблицы.
|
|
Типы пунктов диалогового меню
|
#define MENU_TYPE_NO
|
0x0000
|
// |
обычный
|
#define MENU_TYPE_DANGER
|
0x0001
|
// |
опасный
|
#define MENU_TYPE_CONNECT
|
0x0002
|
// |
связанный
|
#define MENU_TYPE_COLD_ADR
|
0x0008
|
// |
специальный: адреса
архивов физических параметров для
технологической подсистемы
|
#define MENU_TYPE_SYSTEM
|
0x0010
|
// |
головной рункт для технологической подсистемы
|
#define MENU_TYPE_ARCHIEVE
|
0x0020
|
// |
работа с архивом физических параметров
|
#define MENU_TYPE_COPY_TO_EC
|
0x0040
|
// |
команда "execute"
|
#define MENU_TYPE_COPY_REGIME
|
0x0080
|
// |
копирование параметров между режимами
|
#define MENU_TYPE_NUM_REGIME
|
0x0f00
|
// |
полубайт содержит номер режима
|
#define MENU_TYPE_SHIFT_REGIME
|
8
|
// |
величина сдвига для получения номера режима
|
|
Элементы строки таблицы - один пункт диалогового меню
|
struct menus_tup
{
unsigned char right; // номер приоритета доступа
// к следующему элементу меню
char what_next; // вид следующего элемента меню:
// 1 - пункт меню, 2 - описание задачи
short int reference; // ссылка на следующий элемент меню
char legend[TBL_LEN_MENU_LEGEND]; // название пункта меню
// на английском языке
short int graph; // резерв
short int rus; // номер строки в словаре названий
// пунктов меню на русском языке
short int danger; // номер строки в таблице "U70_DANGEROUS"
unsigned short int type; // тип пункта меню
short int user2; // резерв
short int user3; // резерв
};
|
Местоположение пункта в диалоговом меню
|
struct menus_tup_path
{
short int nplane; // номер плоскости в таблице "U70_MENUS"
short int ntuple; // номер строки в таблице "U70_MENUS"
struct menus_tup tup_m; // описание пункта меню в таблице "U70_MENUS"
};
|
Автор ©
Клименков Е.В.,
Воеводин В.П.
|