123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- #ifndef LOTRO_DAT_LIBRARY_DATSTATUS_H
- #define LOTRO_DAT_LIBRARY_DATSTATUS_H
- #include <string>
- namespace LOTRO_DAT {
- class DatFile;
- /*!
- * \brief Модуль статуса dat-файла
- * \author Gi1dor
- * \date 06.07.2018
- *
- * Класс для хранения информации о выполняемых процессах в dat-файле. Позволяет отслеживать прогресс выполнения
- * во время операций создания резервных копий, применения патчей или извлечения файлов
- *
- * \warning Объекты этого класса не должны создаваться отдельно! Созданием и управлением ими занимается класс DatFile
- */
- class DatStatus {
- public:
- DatStatus() = delete;
- DatStatus(const DatStatus &other) = delete;
- DatStatus &operator=(const DatStatus &other) = delete;
- ~DatStatus() = default;
- explicit DatStatus(DatFile *datFilePtr);
- void UpdatePercentage(unsigned percent);
- unsigned GetPercentage();
- void UpdateStatusText(const std::string &message);
- void RemoveStatusText();
- std::string GetStatusText();
- void UpdateAdditionalMessage(const std::string &message);
- void RemoveAdditionalMessage();
- std::string GetAdditionalMessage();
- bool CheckIfNotPatched();
- void ClearAll();
- private:
- DatFile *dat;
- unsigned percentage;
- std::string status_text;
- std::string additional_message;
- };
- }
- #endif //LOTRO_DAT_LIBRARY_DATSTATUS_H
|