PILog documentation
This commit is contained in:
@@ -30,44 +30,10 @@
|
|||||||
//! \~english \section PILog_sec0 Synopsis
|
//! \~english \section PILog_sec0 Synopsis
|
||||||
//! \~russian \section PILog_sec0 Краткий обзор
|
//! \~russian \section PILog_sec0 Краткий обзор
|
||||||
//! \~english
|
//! \~english
|
||||||
//! This class provide handy parsing of command-line arguments. First you should add
|
//! This class provides log with optional file and console output.
|
||||||
//! arguments to %PICLI with function \a addArgument(). Then you can check if there
|
|
||||||
//! is some argument in application command-line with function \a hasArgument(),
|
|
||||||
//! or obtain argument value by \a argumentValue().
|
|
||||||
//!
|
//!
|
||||||
//! \~russian
|
//! \~russian
|
||||||
//! Этот класс предоставляет удобный механизм для разбора аргументов командной строки.
|
//! Этот класс предоставляет лог с опциональным выводом в файл и консоль.
|
||||||
//! Сперва необходимо добавить аргументы в %PICLI с помощью методов \a addArgument().
|
|
||||||
//! Далее можно проверять аргументы на наличие в командной строке методом \a hasArgument(),
|
|
||||||
//! а также получать их значения при помощи \a argumentValue().
|
|
||||||
//!
|
|
||||||
//! \~english \section PICLI_sec1 Example
|
|
||||||
//! \~russian \section PICLI_sec1 Пример
|
|
||||||
//! \~\code
|
|
||||||
//! int main(int argc, char ** argv) {
|
|
||||||
//! PICLI cli(argc, argv);
|
|
||||||
//! cli.addArgument("console");
|
|
||||||
//! cli.addArgument("debug");
|
|
||||||
//! cli.addArgument("Value", "v", "value", true);
|
|
||||||
//! if (cli.hasArgument("console"))
|
|
||||||
//! piCout << "console active";
|
|
||||||
//! if (cli.hasArgument("debug"))
|
|
||||||
//! piCout << "debug active";
|
|
||||||
//! piCout << "Value =" << cli.argumentValue("Value");
|
|
||||||
//! return 0;
|
|
||||||
//! }
|
|
||||||
//! \endcode
|
|
||||||
//!
|
|
||||||
//! \~english These executions are similar:
|
|
||||||
//! \~russian Эти вызовы будут идентичны:
|
|
||||||
//!
|
|
||||||
//! \~\code
|
|
||||||
//! a.out -cd -v 10
|
|
||||||
//! a.out --value 10 -dc
|
|
||||||
//! a.out -c -v 10 -d
|
|
||||||
//! a.out --console -d -v 10
|
|
||||||
//! a.out --debug -c --value 10
|
|
||||||
//! \endcode
|
|
||||||
//!
|
//!
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -41,82 +41,107 @@ public:
|
|||||||
PILog();
|
PILog();
|
||||||
~PILog();
|
~PILog();
|
||||||
|
|
||||||
|
//! \~english Message category
|
||||||
|
//! \~russian Категория сообщения
|
||||||
enum class Level {
|
enum class Level {
|
||||||
Error,
|
Error /** \~english Error \~russian Ошибка */,
|
||||||
Warning,
|
Warning /** \~english Warning \~russian Предупреждение */,
|
||||||
Info,
|
Info /** \~english Information \~russian Информация */,
|
||||||
Debug,
|
Debug /** \~english Debug \~russian Отладка */,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
//! \~english Output channel
|
||||||
|
//! \~russian Канал вывода
|
||||||
enum Output {
|
enum Output {
|
||||||
File = 0x1,
|
File /** \~english File \~russian Файл */ = 0x1,
|
||||||
Console = 0x2,
|
Console /** \~english Console \~russian Консоль */ = 0x2,
|
||||||
All = 0xFF,
|
All /** \~english All \~russian Все */ = 0xFF,
|
||||||
};
|
};
|
||||||
|
|
||||||
//! \~english Set output target \"o\" to \"on\".
|
//! \~english Set output channel \"o\" to \"on\".
|
||||||
|
//! \~russian Установить канал вывода \"o\" в \"on\".
|
||||||
void setOutput(Output o, bool on = true) { output.setFlag(o, on); }
|
void setOutput(Output o, bool on = true) { output.setFlag(o, on); }
|
||||||
|
|
||||||
//! \~english Returns prefix for filename.
|
//! \~english Returns prefix for filename.
|
||||||
|
//! \~russian Возвращает префикс имени файла.
|
||||||
PIString logName() const { return log_name; }
|
PIString logName() const { return log_name; }
|
||||||
|
|
||||||
//! \~english Set prefix for filename. Should be set \b before \a setDir()!
|
//! \~english Set prefix for filename. Should be set \b before \a setDir()!
|
||||||
|
//! \~russian Устанавливает префикс имени файла. Должен быть установлен \b до вызова \a setDir()!
|
||||||
void setLogName(const PIString & n) { log_name = n; }
|
void setLogName(const PIString & n) { log_name = n; }
|
||||||
|
|
||||||
//! \~english Returns if color for console output enabled.
|
//! \~english Returns if color for console output enabled.
|
||||||
|
//! \~russian Возвращает использовать ли цвет для вывода в консоль.
|
||||||
bool colorConsole() const { return color_console; }
|
bool colorConsole() const { return color_console; }
|
||||||
|
|
||||||
//! \~english Set color for console output enabled. True by default.
|
//! \~english Set color for console output enabled. True by default.
|
||||||
|
//! \~russian Устанавливает использовать ли цвет для вывода в консоль. Включено по умолчанию.
|
||||||
void setColorConsole(bool yes) { color_console = yes; }
|
void setColorConsole(bool yes) { color_console = yes; }
|
||||||
|
|
||||||
|
|
||||||
//! \~english Returns directory for log files.
|
//! \~english Returns directory for log files.
|
||||||
|
//! \~russian Возвращает директорию для файлов.
|
||||||
PIString dir() const { return log_dir; }
|
PIString dir() const { return log_dir; }
|
||||||
|
|
||||||
//! \~english Set directory for log files. Should be set \b after \a setApplicationName()!
|
//! \~english Set directory for log files. Should be set \b after \a setApplicationName()!
|
||||||
|
//! \~russian Устанавливает директорию для файлов. Должна быть установлена \b после вызова \a setApplicationName()!
|
||||||
void setDir(const PIString & d);
|
void setDir(const PIString & d);
|
||||||
|
|
||||||
|
|
||||||
//! \~english Returns lifetime for file.
|
//! \~english Returns lifetime for file.
|
||||||
|
//! \~russian Возвращает время жизни файла.
|
||||||
PISystemTime fileSplitTime() const { return split_time; }
|
PISystemTime fileSplitTime() const { return split_time; }
|
||||||
|
|
||||||
//! \~english Set lifetime for file. Each "st" interval new file will be created.
|
//! \~english Set lifetime for file. Each "st" interval new file will be created.
|
||||||
|
//! \~russian Устанавливает время жизни файла. Каждый интервал "st" будет создан новый файл.
|
||||||
void setFileSplitTime(PISystemTime st) { split_time = st; }
|
void setFileSplitTime(PISystemTime st) { split_time = st; }
|
||||||
|
|
||||||
|
|
||||||
//! \~english Returns timestamp format for line.
|
//! \~english Returns timestamp format for line.
|
||||||
|
//! \~russian Возвращает формат метки времени для строки.
|
||||||
PIString timestampFormat() const { return timestamp_format; }
|
PIString timestampFormat() const { return timestamp_format; }
|
||||||
|
|
||||||
//! \~english Set timestamp format for line. Default is "yyyy-MM-dd hh:mm:ss.zzz".
|
//! \~english Set timestamp format for line. Default is "yyyy-MM-dd hh:mm:ss.zzz".
|
||||||
|
//! \~russian Устанавливает формат метки времени для строки. По умолчанию "yyyy-MM-dd hh:mm:ss.zzz".
|
||||||
void setTimestampFormat(const PIString & f) { timestamp_format = f; }
|
void setTimestampFormat(const PIString & f) { timestamp_format = f; }
|
||||||
|
|
||||||
|
|
||||||
//! \~english Returns line format.
|
//! \~english Returns line format.
|
||||||
|
//! \~russian Возвращает формат строки.
|
||||||
PIString lineFormat() const { return line_format; }
|
PIString lineFormat() const { return line_format; }
|
||||||
|
|
||||||
//! \~english Set line format. "t" is timestamp, "c" is category and "m" is message. Default is "t - c: m".
|
//! \~english Set line format. "t" is timestamp, "c" is category and "m" is message. Default is "t - c: m".
|
||||||
|
//! \~russian Устанавливает формат строки. "t" - метка времени, "c" - категория и "m" - сообщение. По умолчанию "t - c: m".
|
||||||
void setLineFormat(const PIString & f);
|
void setLineFormat(const PIString & f);
|
||||||
|
|
||||||
|
|
||||||
//! \~english Returns maximum level.
|
//! \~english Returns maximum level.
|
||||||
|
//! \~russian Возвращает максимальную категорию.
|
||||||
Level level() const { return max_level; }
|
Level level() const { return max_level; }
|
||||||
|
|
||||||
//! \~english Set maximum level. All levels greater than \"l\" will be ignored. Default if \a Level::Debug.
|
//! \~english Set maximum level. All levels greater than \"l\" will be ignored. Default is \a Level::Debug.
|
||||||
|
//! \~russian Устанавливает максимальную категорию. Все сообщения с большей категорией, чем \"l\", будут игнорироваться. По умолчанию \a
|
||||||
|
//! Level::Debug.
|
||||||
void setLevel(Level l);
|
void setLevel(Level l);
|
||||||
|
|
||||||
//! \~english Returns PICout for Level::Error level.
|
//! \~english Returns \a PICout for \a Level::Error level.
|
||||||
|
//! \~russian Возвращает \a PICout для категории \a Level::Error.
|
||||||
PICout error(PIObject * context = nullptr);
|
PICout error(PIObject * context = nullptr);
|
||||||
|
|
||||||
//! \~english Returns PICout for Level::Warning level.
|
//! \~english Returns \a PICout for \a Level::Warning level.
|
||||||
|
//! \~russian Возвращает \a PICout для категории \a Level::Warning.
|
||||||
PICout warning(PIObject * context = nullptr);
|
PICout warning(PIObject * context = nullptr);
|
||||||
|
|
||||||
//! \~english Returns PICout for Level::Info level.
|
//! \~english Returns \a PICout for \a Level::Info level.
|
||||||
|
//! \~russian Возвращает \a PICout для категории \a Level::Info.
|
||||||
PICout info(PIObject * context = nullptr);
|
PICout info(PIObject * context = nullptr);
|
||||||
|
|
||||||
//! \~english Returns PICout for Level::Debug level.
|
//! \~english Returns \a PICout for \a Level::Debug level.
|
||||||
|
//! \~russian Возвращает \a PICout для категории \a Level::Debug.
|
||||||
PICout debug(PIObject * context = nullptr);
|
PICout debug(PIObject * context = nullptr);
|
||||||
|
|
||||||
//! \~english Write all queued lines and stop. Also called in destructor.
|
//! \~english Write all queued lines and stop. Also called in destructor.
|
||||||
|
//! \~russian Записывает все строки из очереди и останавливается. Также вызывается в деструкторе.
|
||||||
void stop();
|
void stop();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|||||||
Reference in New Issue
Block a user