GpgFrontend Project A Free, Powerful, Easy-to-Use, Compact, Cross-Platform, and Installation-Free OpenPGP(pgp) Crypto Tool.

ArchiveFileOperator.h
1
29 #ifndef GPGFRONTEND_ARCHIVEFILEOPERATOR_H
30 #define GPGFRONTEND_ARCHIVEFILEOPERATOR_H
31
32 #include "core/GpgFrontendCore.h"
33 #include "core/function/FileOperator.h"
34
35 namespace GpgFrontend {
36
37 struct ArchiveStruct {
38 struct archive *archive;
39 struct archive_entry *entry;
40 int fd;
41 bool is_open;
42 std::string name;
43 };
44
45 class GPGFRONTEND_CORE_EXPORT ArchiveFileOperator {
46 public:
47 static void ListArchive(const std::filesystem::path &archive_path);
48
49 static void CreateArchive(const std::filesystem::path &base_path,
50 const std::filesystem::path &archive_path,
51 int compress,
52 const std::vector<std::filesystem::path> &files);
53
54 static void ExtractArchive(const std::filesystem::path &archive_path,
55 const std::filesystem::path &base_path);
56 };
57 } // namespace GpgFrontend
58
59 #endif // GPGFRONTEND_ARCHIVEFILEOPERATOR_H
GpgFrontend::ArchiveFileOperator
Definition: ArchiveFileOperator.h:45
GpgFrontend
Definition: CoreCommonUtil.cpp:31
GpgFrontend::ArchiveStruct
Definition: ArchiveFileOperator.h:37