/
waterstone
/
file_processor
Обзор
Документация
Войти
/
waterstone
/
file_processor
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
src/xor_file_processor.h
45 строк
1 KB
Peter Sakhno
Initial commit
19 янв 2026, 11:08
19 янв 2026, 11:08
1ffa16c
Код
Авторство
О чём код?
#ifndef XOR_FILE_PROCESSOR_H #define XOR_FILE_PROCESSOR_H #include <tuple> #include <string> namespace XorFileProcessor { enum class ErrorCode { OkNoError, Cancelled, MissingInputFile, InputIsNotFile, CantOpenInputFile, CantDeleteInputFile, CantOpenOutputFile, NotFullyProcessed, FileSystemError, SystemError, GeneralError, CantStartProcess }; class IRunControl { public: virtual bool IsCanceled() const = 0; virtual void SetProgress(size_t processed, size_t total) = 0; virtual void SetErrorCode(ErrorCode code) = 0; virtual void SetErrorText(std::string&& message) = 0; }; struct Context { uint64_t id{}; uint64_t xor_key{}; std::wstring input_file_path; std::wstring output_file_path; bool delete_input_on_success{}; }; using Result = std::tuple<bool, XorFileProcessor::ErrorCode, std::string>; bool ProcessFile(const Context& context, IRunControl& ctrl); }; #endif // !XOR_FILE_PROCESSOR_H