Чтение онлайн

ЖАНРЫ

Учебное пособие по курсу «Нейроинформатика»

Миркес Е. М.

Шрифт:

Назначение — читает контрастера с диска или из памяти.

Описание исполнения.

1. Если в качестве аргумента CompName дана строка, первые четыре символа которой составляют слово File, то остальная часть строки содержит имя компонента и после пробела имя файла, содержащего компонент. В противном случае считается, что аргумент CompName содержит указатель на область памяти, содержащую описание компонента в формате для записи на диск. Если описание не вмещается в одну область памяти, то допускается включение в текст описания компонента ключевого слова Continue, за которым следует четыре байта, содержащие адрес следующей области памяти.

2. Если в данный

момент загружен другой контрастер, то выполняется запрос cnDelete. Контрастер считывается из файла или из памяти.

3. Если считывание завершается по ошибке, то возникает ошибка 702 — ошибка считывания контрастера, управление передается обработчику ошибок, а обработка запроса прекращается.

Удаление контрастера (cnDelete)

Описание запроса:

Pascal:

Function cnDelete: Logic;

C:

Logic cnDelete

Аргументов нет.

Назначение — удаляет загруженного в память контрастера.

Описание исполнения.

1. Если список в момент получения запроса контрастер не загружен, то возникает ошибка 701 — неверное имя контрастера, управление передается обработчику ошибок, а обработка запроса прекращается.

Запись контрастера (cnWrite)

Описание запроса:

Pascal:

Function cnWrite(Var FileName: PString): Logic;

C:

Logic cnWrite(PString* FileName)

Описание аргументов:

CompName — указатель на строку символов, содержащую имя контрастера.

FileName — имя файла или адрес памяти, куда надо записать контрастера.

Назначение — сохраняет контрастера в файле или в памяти.

Описание исполнения.

1. Если в момент получения запроса контрастер не загружен, то возникает ошибка 701 — неверное имя контрастера, управление передается обработчику ошибок, а обработка запроса прекращается.

2. Если в качестве аргумента FileName дана строка, первые четыре символа которой составляют слово File, то остальная часть строки содержит имя файла, для записи компонента. В противном случае FileName должен содержать пустой указатель. В этом случае запрос вернет в нем указатель на область памяти, куда будет помещено описание компонента в формате для записи на диск. Если описание не вмещается в одну область памяти, то в текст будет включено ключевое слово Continue, за которым следует четыре байта, содержащие адрес следующей области памяти.

3. Если во время сохранения компонента возникнет ошибка, то возникает ошибка 703 — ошибка сохранения контрастера, управление передается обработчику ошибок, а обработка запроса прекращается.

Инициация редактора контрастера

К этой группе запросов относится запрос, который инициирует работу не рассматриваемого в данной работе компонента — редактора контрастера.

Редактировать контрастера (cnEdit)

Описание запроса:

Pascal:

Procedure cnEdit(CompName: PString);

C:

void cnEdit(PString CompName)

Описание аргумента:

CompName — указатель на строку символов — имя файла или адрес памяти, содержащие описание контрастера.

Если в качестве аргумента CompName дана строка, первые четыре символа которой составляют слово File, то остальная часть строки содержит имя контрастера и после пробела имя файла, содержащего описание контрастера.

В противном случае считается, что аргумент CompName содержит указатель на область памяти, содержащую описание контрастера в формате для записи на диск. Если описание не вмещается в одну область памяти, то допускается включение в текст описания ключевого слова Continue, за которым следует четыре байта, содержащие адрес следующей области памяти.

Если в качестве аргумента CompName передан пустой указатель или указатель на пустую строку, то редактор создает нового контрастера.

Работа с параметрами контрастера

В данном разделе описаны запросы, позволяющие изменять параметры контрастера.

Получить параметры (cnGetData)

Описание запроса:

Pascal:

Function cnGetData(Var Param: PRealArray): Logic;

C:

Logic cnGetData(PRealArray* Param)

Описание аргумента:

Param — адрес массива параметров.

Назначение — возвращает вектор параметров контрастера.

Описание исполнения.

1. Если Error <> 0, то выполнение запроса прекращается.

2. Если в момент получения запроса контрастер не загружен, то возникает ошибка 701 — неверное имя компонента, управление передается обработчику ошибок, а обработка запроса прекращается.

3. В массив, адрес которого передан в аргументе Param, заносятся значения параметров. Параметры заносятся в массив в порядке описания в разделе описания статических переменных.

Получить имена параметров (cnGetName)

Описание запроса:

Pascal:

Function cnGetName(Var Param: PRealArray): Logic;

C:

Logic cnGetName(PRealArray* Param)

Описание аргумента:

Param — адрес массива указателей на названия параметров.

Назначение — возвращает вектор указателей на названия параметров.

Описание исполнения.

1. Если Error <> 0, то выполнение запроса прекращается.

2. Если в момент получения запроса контрастер не загружен, то возникает ошибка 701 — неверное имя компонента, управление передается обработчику ошибок, а обработка запроса прекращается.

3. В массив, адрес которого передан в аргументе Param, заносятся адреса символьных строк, содержащих названия параметров.

Установить параметры (cnSetData)

Описание запроса:

Pascal:

Function cnSetData(Param: PRealArray): Logic;

C:

Logic cnSetData(PRealArray Param)

Описание аргументов:

Param — адрес массива параметров.

Назначение — заменяет значения параметров контрастера на значения, переданные, в аргументе Param.

Описание исполнения.

1. Если Error <> 0, то выполнение запроса прекращается.

2. Если в момент получения запроса контрастер не загружен, то возникает ошибка 701 — неверное имя компонента, управление передается обработчику ошибок, а обработка запроса прекращается.

3. Параметры, значения которых хранятся в массиве, адрес которого передан в аргументе Param, передаются контрастеру.

Обработка ошибок

В табл. 40 приведен полный список ошибок, которые могут возникать при выполнении запросов компонентом контрастер, и действия стандартного обработчика ошибок.

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