LeviLamina
Loading...
Searching...
No Matches
UnzipFile.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/file/UnzipFileLibrary.h"
7#include "mc/deps/core/utility/NonOwnerPointer.h"
8#include "mc/util/UnzipResult.h"
9
10// auto generated forward declare list
11// clang-format off
12class IFileAccess;
13namespace Core { class PathView; }
14// clang-format on
15
16namespace Core {
17
18class UnzipFile {
19public:
20 // virtual functions
21 // NOLINTBEGIN
22 virtual ~UnzipFile() = default;
23
24 virtual ::Core::ZipUtils::UnzipResult locateFile(char const* fileName, int caseSensitivity) = 0;
25
26 virtual ::Core::ZipUtils::UnzipResult goToFirstFile() = 0;
27
28 virtual ::Core::ZipUtils::UnzipResult goToNextFile() = 0;
29
30 virtual ::std::string getCurrentFileName() const = 0;
31
32 virtual ::Core::ZipUtils::UnzipResult openCurrentFileForReading() = 0;
33
34 virtual ::Core::ZipUtils::UnzipResult closeCurrentFile() = 0;
35
36 virtual void readCurrentFileContentsIntoMemory(::std::string& str) = 0;
37
38 virtual void readCurrentFileContents(uint64 bufferSize, ::std::function<void(int, void const*)> onReadCallback) = 0;
39
40 virtual uint64 getTotalFilesInZip() = 0;
41
42 virtual uint64 getCurrentFileUncompressedSize() = 0;
43
44 virtual bool _isGood() const = 0;
45 // NOLINTEND
46
47public:
48 // static functions
49 // NOLINTBEGIN
50 MCNAPI static ::std::unique_ptr<::Core::UnzipFile> create(
51 ::Bedrock::NotNullNonOwnerPtr<::IFileAccess> fileAccess,
52 ::Core::PathView zipPath,
53 ::Core::UnzipFileLibrary library
54 );
55 // NOLINTEND
56
57public:
58 // virtual function thunks
59 // NOLINTBEGIN
60
61 // NOLINTEND
62};
63
64} // namespace Core
Definition PathView.h:19
Definition UnzipFile.h:18
static MCAPI ::std::unique_ptr<::Core::UnzipFile > create(::Bedrock::NotNullNonOwnerPtr<::IFileAccess > fileAccess, ::Core::PathView zipPath, ::Core::UnzipFileLibrary library)
Definition IFileAccess.h:15