|
5.7.1. Запрос на интерпретацию
Единственный запрос первой группы выполняет основную функцию компонента интерпретатор ответа – интерпретирует массив сигналов.
5.7.1.1. Интерпретировать массив сигналов (Interpretate)
Описание запроса:
Pascal:
Function Interpretate( IntName : PString; Signals : PRealArray;
Var Reliability, Answers : PRealArray ) : Logic;
C:
Logic Interpretate(PString IntName, PRealArray Signals, PRealArray* Reliability, PRealArray* Answers)
Описание аргумента:
IntName – указатель на строку символов, содержащую имя интерпретатора ответа.
Signals – массив интерпретируемых сигналов.
Answers – массив ответов.
Reliability – массив коэффициентов уверенности в ответе.
Назначение – интерпретирует массив сигналов Signals, используя интерпретатор ответа, указанный в параметре IntName.
Описание исполнения.
1. Если Error <> 0, то выполнение запроса прекращается.
2. Если в качестве аргумента IntName дан пустой указатель, или указатель на пустую строку, то исполняющим запрос объектом является первый интерпретатор ответа в списке интерпретаторов компонента интерпретатор.
3. Если список интерпретаторов компонента интерпретатор пуст или имя интерпретатора ответа, переданное в аргументе IntName в этом списке не найдено, то возникает ошибка 501 – неверное имя интерпретатора ответа, управление передается обработчику ошибок, а обработка запроса прекращается.
4. Производится интерпретация ответа интерпретатором ответа, имя которого было указано в аргументе IntName.
5. Если во время выполнения запроса возникает ошибка, то генерируется внутренняя ошибка 504 – ошибка интерпретации. Управление передается обработчику ошибок. Выполнение запроса прекращается. В противном случае выполнение запроса успешно завершается.
5.7.2. Остальные запросы
Ниже приведен список запросов, исполнение которых описано в разделе «Запросы общие для всех компонентов»:
aiSetCurrent – Сделать интерпретатор ответа текущим
aiAdd – Добавление нового интерпретатора ответа
aiDelete – Удаление интерпретатора ответа
aiWrite – Запись интерпретатора ответа
aiGetStructNames – Вернуть имена частных интерпретаторов
aiGetType – Вернуть тип частного интерпретатора
aiGetData – Получить параметры частного интерпретатора
aiGetName – Получить имена параметров частного интерпретатора
aiSetData – Установить параметры частного интерпретатора
aiEdit – Редактировать интерпретатор ответа
OnError – Установить обработчик ошибок
GetError – Дать номер ошибки
FreeMemory – Освободить память
В запросе aiGetType в переменной TypeId возвращается значение одной из предопределенных констант, перечисленных в табл. 1.
При исполнении запроса aiSetData генерируется запрос SetEstIntParameters к компоненте оценка. Аргументы генерируемого запроса совпадают с аргументами исполняемого запроса
5.7.3. Ошибки компонента интерпретатор ответа
В табл. 2 приведен полный список ошибок, которые могут возникать при выполнении запросов компонентом интерпретатор ответа, и действия стандартного обработчика ошибок.
Таблица 2.
Ошибки компонента интерпретатор ответа и действия стандартного
обработчика ошибок.
№
Название ошибки
Стандартная обработка
501
Неверное имя интерпретатора ответа
Занесение номера в Error
502
Ошибка считывания интерпретатора ответа
Занесение номера в Error
503
Ошибка сохранения интерпретатора ответа
Занесение номера в Error
504
Ошибка интерпретации
Занесение номера в Error
5.8. Запосы к компоненту оценка
Запросы к компоненте оценка можно разбить на пять групп:
1. Оценивание.
2. Изменение параметров.
3. Работа со структурой.
4. Инициация редактора и конструктора оценки.
5. Обработка ошибок.
Поскольку нейрокомпьютер может работать одновременно с несколькими сетями, то и компонент оценка должен иметь возможность одновременной работы с несколькими оценками. Поэтому большинство запросов к оценке содержат явное указание имени оценки. Ниже приведено описание всех запросов к компоненту оценка. Каждый запрос является логической функцией, возвращающей значение истина, если запрос выполнен успешно, и ложь – при ошибочном завершении исполнения запроса.
В запросах второй и третьей группы при обращении к частным оценкам используется следующий синтаксис:
<Полное имя частной оценки> ::=
<Имя оценки>.<Псевдоним частной оценки> [[<Номер экземпляра>]]
При вызове ряда запросов используются предопределенные константы. Их значения приведены в табл. 1.
5.8.1. Запрос на оценивание
Единственный запрос первой группы выполняет основную функцию компонента оценка – вычисляет оценку и, если требуется, массив производных оценки по оцениваемым сигналам.
5.8.1.1. Оценить массив сигналов (Estimate)
Описание запроса:
Pascal:
Function Estimate( EstName : PString; Signals, Back, Answers, Reliability: PRealArray; Direv : Logic; Var Estim : Real ) : Logic;
C:
Logic Estimate(PString EstName, PRealArray Signals, PRealArray* Back, PRealArray Answers, PRealArray Reliability, Logic Direv, Real* Estim)
Описание аргумента:
EstName – указатель на строку символов, содержащую имя оценки.
Signals – указатель на массив оцениваемых сигналов.
Back – указатель на массив производных оценки по оцениваемым сигналам.
Answers – указатель на массив правильных ответов.
Reliability – указатель на массив правильных ответов.
Direv – признак необходимости вычисления производных (False – не вычислять).
Estim – вычисленная оценка.
Назначение – вычисляет оценку массива сигналов Signals, используя оценку, указанную в параметре EstName.
Описание исполнения.
1. Если Error <> 0, то выполнение запроса прекращается.
2. Если в качестве аргумента EstName дан пустой указатель, или указатель на пустую строку, то исполняющим запрос объектом является первая оценка в списке оценок компонента оценка.
3. Если список оценок компонента оценка пуст или имя оценки, переданное в аргументе EstName, в этом списке не найдено, то возникает ошибка 401 – неверное имя оценки, управление передается обработчику ошибок, а обработка запроса прекращается.
4. Производится вычисление оценки оценкой, имя которой было указано в аргументе EstName.
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76
При использовании материалов активная ссылка на источник обязательна.