Учебное пособие по курсу «Нейроинформатика»
Шрифт:
Стандарт второго уровня компонента интерпретатор ответа
Запросы к компоненту
1. Интерпретация.
2. Изменение параметров.
3. Работа со структурой.
4. Инициация редактора и конструктора интерпретатора ответа.
5. Обработка ошибок.
Поскольку нейрокомпьютер может работать одновременно с несколькими сетями, то и компонент интерпретатор ответа должен иметь возможность одновременной работы с несколькими интерпретаторами. Поэтому большинство запросов к интерпретатору содержат явное указание имени интерпретатора ответа. Ниже приведено описание всех запросов к компоненту интерпретатор ответа. Каждый запрос является логической функцией, возвращающей значение истина, если запрос выполнен успешно, и ложь — при ошибочном завершении исполнения запроса.
В запросах второй и третьей группы при обращении к частным интерпретаторам используется следующий синтаксис:
При вызове ряда запросов используются предопределенные константы. Их значения приведены в табл. 30.
Таблица 30. Значения предопределенных констант компонентов интерпретатор ответа и оценка
Название | Величина | Значение |
---|---|---|
Empty | 0 | Интерпретирует один сигнал как действительное число. |
Binary | 1 | Кодирование номером канала. Знаковый интерпретатор |
Major | 2 | Кодирование номером канала. Максимальный интерпретатор. |
BynaryCoded | 3 | Двоичный интерпретатор. |
UserType | –1 | Интерпретатор, определенный пользователем. |
Запрос на интерпретацию
Единственный запрос первой группы выполняет основную функцию компонента интерпретатор ответа — интерпретирует массив сигналов.
Описание запроса:
Pascal:
C:
Описание аргумента:
IntName — указатель на строку символов, содержащую имя интерпретатора ответа.
Signals — массив интерпретируемых сигналов.
Answers — массив ответов.
Reliability — массив коэффициентов уверенности
Назначение — интерпретирует массив сигналов Signals, используя интерпретатор ответа, указанный в параметре IntName.
Описание исполнения.
1. Если Error <> 0, то выполнение запроса прекращается.
2. Если в качестве аргумента IntName дан пустой указатель, или указатель на пустую строку, то исполняющим запрос объектом является первый интерпретатор ответа в списке интерпретаторов компонента интерпретатор.
3. Если список интерпретаторов компонента интерпретатор пуст или имя интерпретатора ответа, переданное в аргументе IntName в этом списке не найдено, то возникает ошибка 501 — неверное имя интерпретатора ответа, управление передается обработчику ошибок, а обработка запроса прекращается.
4. Производится интерпретация ответа интерпретатором ответа, имя которого было указано в аргументе IntName.
5. Если во время выполнения запроса возникает ошибка, то генерируется внутренняя ошибка 504 — ошибка интерпретации. Управление передается обработчику ошибок. Выполнение запроса прекращается. В противном случае выполнение запроса успешно завершается.
Остальные запросы
Ниже приведен список запросов, исполнение которых описано в разделе «Общий стандарт»:
aiSetCurrent — Сделать интерпретатор ответа текущим
aiAdd — Добавление нового интерпретатора ответа
aiDelete — Удаление интерпретатора ответа
aiWrite — Запись интерпретатора ответа
aiGetStructNames — Вернуть имена частных интерпретаторов
aiGetType — Вернуть тип частного интерпретатора
aiGetData — Получить параметры частного интерпретатора
aiGetName — Получить имена параметров частного интерпретатора
aiSetData — Установить параметры частного интерпретатора
aiEdit — Редактировать интерпретатор ответа
OnError — Установить обработчик ошибок
GetError — Дать номер ошибки
FreeMemory — Освободить память
В запросе aiGetType в переменной TypeId возвращается значение одной из предопределенных констант, перечисленных в табл. 30.
При исполнении запроса aiSetData генерируется запрос SetEstIntParameters к компоненте оценка. Аргументы генерируемого запроса совпадают с аргументами исполняемого запроса
Ошибки компонента интерпретатор ответа
В табл. 31 приведен полный список ошибок, которые могут возникать при выполнении запросов компонентом интерпретатор ответа, и действия стандартного обработчика ошибок.
Таблица 31. Ошибки компонента интерпретатор ответа и действия стандартного обработчика ошибок.
№ | Название ошибки | Стандартная обработка |
---|---|---|
501 | Неверное имя интерпретатора ответа | Занесение номера в Error |
502 | Ошибка считывания интерпретатора ответа | Занесение номера в Error |
503 | Ошибка сохранения интерпретатора ответа | Занесение номера в Error |
504 | Ошибка интерпретации | Занесение номера в Error |