Next: , Previous: , Up: Graphics setup   [Contents][Index]


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

Обычно вы должны сбросить признак ошибки с помощью SetWarn(0); перед построением и проверить GetWarnCode() или Message() на наличие ошибок после построения. Только последнее предупреждение сохраняется. Замечу, что все предупреждения/ошибки в MathGL не являются критичными – в худшем из вариантов соответствующий график просто не будет построен. По умолчанию, все предупреждения выводятся в stderr. Этот вывод можно выключить вызовом mgl_suppress_warn(true);.

Метод класса mglGraph: void SetWarn (int code, const char *info="")
Функция С: void mgl_set_warn (HMGL gr, int code, const char *info)

Задает код предупреждения. Обычно вызывается только для очистки предупреждений (SetWarn(0);) или внутри библиотеки. Текст info будет добавлен к предупреждениям как есть при code<0.

Метод класса mglGraph: const char *Message ()
Функция С: const char *mgl_get_mess (HMGL gr)
Fortran процедура: mgl_get_mess (long gr, char *out, int len)

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

Метод класса mglGraph: int GetWarn ()
Функция С: int mgl_get_warn (HMGL gr)

Возвращает код сообщения о причине отсутствия графика. Возможные значения:

mglWarnNone=0

Предупреждений нет

mglWarnDim

Неправильные или несовместимые размеры данных

mglWarnLow

Размеры данных слишком малы

mglWarnNeg

Минимальное значение отрицательно

mglWarnFile

Файл не найден или указаны неправильные размерности

mglWarnMem

Не достаточно памяти

mglWarnZero

Значение данных равно нулю

mglWarnLeg

Нет записей в легенде

mglWarnSlc

Индекс среза вне данных

mglWarnCnt

Число линий уровня меньше или равно нулю

mglWarnOpen

Не могу открыть файл

mglWarnLId

Light: ID вне допустимых значений

mglWarnSize

Setsize: размер(ы) равны нулю или отрицательны

mglWarnFmt

Формат не поддерживается

mglWarnTern

Диапазоны осей несовместимые

mglWarnNull

Указатель равен NULL

mglWarnSpc

Не хватает места для графика

mglScrArg

Неправильные аргументы команды скрипта MGL

mglScrCmd

Неправильная команда в скрипте MGL

mglScrLong

Слишком длинная строка в скрипте MGL

mglScrStr

Одиночная ’ в скрипте MGL

mglScrTemp

Изменяется временная переменная в MGL скрипте

Метод класса mglGraph: void SuppressWarn (bool state) static
Функция С: void mgl_suppress_warn (int state)

Выключает вывод предупреждений в stderr если state не ноль.

Метод класса mglGraph: void SetGlobalWarn (const char *info) static
Функция С: void mgl_set_global_warn (const char *info)

Задает предупреждение info, не привязанное к конкретному объекту рисования.

Метод класса mglGraph: const char * GlobalWarn () static
Функция С: const char * mgl_get_global_warn ()

Возвращает предупреждения, не привязанные к конкретному объекту рисования.

Метод класса mglGraph: void ClearGlobalWarn () static
Функция С: void mgl_clear_global_warn ()

Удаляет общие предупреждения.


Next: , Previous: , Up: Graphics setup   [Contents][Index]