Saver

Это программа для логирования сообщений

Сборка

Запустите в корне make

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

  ./app <log_file> <base_importance>

Существует 3 уровня важности:

  • Low
  • Middle
  • High

Далее программа будет поочерёдно просить ввести сообщение и его важность. Если ничего не вводить или ввести не коректно в поле важности то будет присовено значение base_importance. Если важность сообщения ниже base_importance, то оно записывается в журнал не будет.

src/Saver

Модуль библиотеки. ISaver - header-only интерфейс библиотеки. Он нужен как API для работы с библиотекой. Saver - наследник ISaver, реализующий сохранение сообщений. SaverBuilder.cpp - здесь реализована внешняя функция создающая только один Saver, при этом передаёт право владения им, это значит вызывающий дожен следить за удалением Saver перед освоюождением библиотеки.

app

Модуль приложения main.cpp - точка входа в программу. Создаёт и запускает компоненты приложения. SaveThread - наследник ISaveThread. Реализует отдельный поток для сохранения сообщений. Сообщения перед сохранением помещаются в очередь. ISaveThread - интерфейс SaveThread.

UserInput - Класс реализующий UI. Принимает сообщение и его важность от пользователя и передаёт в ISaveThread (Сыллку на SaveThread). Также он занимет главный поток выполнения программы, поэтому неявно управляет временем жизни программы.

S
Description
No description provided
Readme 39 KiB
2026-08-14 07:29:39 +00:00
Languages
C++ 94.4%
Makefile 5.6%