🛰️航天仿真算法库 SpaceAST 0.0.1
载入中...
搜索中...
未找到
CompressorImplShellCOM.hpp
浏览该文件的文档.
1
21
22#pragma once
23
24#include "AstUtil/CompressorInterface.hpp"
25#include "AstUtil/StringView.hpp"
26
27// 仅 Windows 平台
28#if defined(_WIN32) && !defined(SWIG)
29
30
31#include <string>
32
33AST_NAMESPACE_BEGIN
34
42class AST_UTIL_API CompressorImplShellCOM : public CompressorInterface
43{
44public:
45 static CompressorImplShellCOM& Instance();
46
47 CompressorImplShellCOM() = default;
48 virtual ~CompressorImplShellCOM() = default;
49
50 virtual errc_t compress(StringView source, StringView target, StringView curdir = {}) const override;
51 virtual bool canCompress(StringView source, StringView target) const override;
52
53private:
55 static errc_t createEmptyZip(const std::wstring& path);
56};
57
58AST_NAMESPACE_END
59
60#endif // _WIN32