UniSet 2.32.1
Описание использования функций отладки

Класс для вывода отладочных сообщений называется DebugStream. Сообщения могут выводится на экран и в файл, отбираться по определённым критериям и до определённого уровня.

Использование

Для использования нужно создать свой объект класса DebugStream или использовать глобальный объект UniSetTypes::unideb. Для переключения вывода отладки в файл, используйте функцию logFile(char const *f);

Описание всех имеющихся функций находится в файле DebugStream.h на английском языке.

Функция unideb[...] по умолчанию выводит в строку дату и время. Функция unideb(...) просто выводит строку (в конец предыдущему потоку).

\par Пример использования:
\code
    #include "Debug.h"
    #include "Configuration.h"
    using namespace UniSetTypes;
    ...

    unideb << "Этот текст будет выведен на экран в любом случае";
    unideb.addLevel(Debug::CRIT); // показывать CRIT

    unideb[Debug::CRIT] << "Этот текст будет выведен при разрешении выводить сообщения уровня CRIT";
    unideb.delLevel(Debug::CRIT); // больше не показывать CRIT

    // Отладочное сообщение будет выводиться при установленном уровне INFO или CRIT"
    unideb[Debug::type(Debug::INFO | Debug::CRIT)] << "Отладочное сообщение";

    // Вывод многострочного сообщения
    unideb[Debug::INFO] << " вывод с датой и временем ";
    unideb(Debug::INFO) << " продолжение вывода без даты и времени " << endl;

\endcode

Если вы хотите использовать отладочный вывод из критичного к времени кода, используйте следующую конструкцию:

\code
    if (unideb.debugging(Debug::INFO)) {
        unideb << "...debug output..." << endl;
    }
\endcode

Конфигурирование логов

Конфигурирование логов можно производить, при помощи файла конфигурации или через командную строку.

Например UniSetTypes::unideb настраивается в конфигурационном файле следующим образом:

<UniSetDebug name="unideb" levels="crit,warn" file=""/>

При запуске программ используйте ключ "--help" для получения подробной информации о настройке логов из командной строки