LeviLamina
Loading...
Searching...
No Matches
Pack.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/file/PathBuffer.h"
7#include "mc/deps/core/resource/PackOrigin.h"
8#include "mc/deps/core/resource/PackType.h"
9#include "mc/deps/core/utility/EnableNonOwnerReferences.h"
10#include "mc/deps/core/utility/NonOwnerPointer.h"
11
12// auto generated forward declare list
13// clang-format off
17class PackManifest;
18class PackMetadata;
19class PackReport;
23namespace Core { class Path; }
24// clang-format on
25
27public:
28 // member variables
29 // NOLINTBEGIN
30 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::PackManifest>> mManifest;
31 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::PackAccessStrategy>> mAccessStrategy;
32 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::SubpackInfoCollection>> mSubpackInfoStack;
33 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::PackMetadata>> mMetadata;
34 ::ll::TypedStorage<8, 16, ::std::map<void*, ::std::function<void(::Pack&)>>> mPackUpdatedCallbacks;
35 ::ll::TypedStorage<8, 16, ::std::map<void*, ::std::function<void(::Pack&)>>> mPackDeletedCallbacks;
36 // NOLINTEND
37
38public:
39 // virtual functions
40 // NOLINTBEGIN
41 // vIndex: 0
42 virtual ~Pack() /*override*/;
43 // NOLINTEND
44
45public:
46 // member functions
47 // NOLINTBEGIN
48 MCAPI Pack(
49 ::std::unique_ptr<::PackManifest> manifest,
50 ::std::unique_ptr<::PackAccessStrategy> accessStrategy,
51 ::std::unique_ptr<::SubpackInfoCollection> subpacks,
52 ::std::unique_ptr<::PackMetadata> metadata
53 );
54
55 MCAPI void _loadLocalizationFiles();
56
57 MCAPI void move(::Pack&& pack);
58
59 MCAPI void notifyUpdated();
60 // NOLINTEND
61
62public:
63 // static functions
64 // NOLINTBEGIN
65 MCAPI static ::std::unique_ptr<::Pack> createPack(
66 ::ResourceLocation const& fileLocation,
67 ::PackType type,
68 ::PackOrigin origin,
69 ::IPackManifestFactory& manifestFactory,
71 ::PackSourceReport* report,
72 ::Core::Path const& zipSubDir
73 );
74
75 MCAPI static ::std::unique_ptr<::PackMetadata> createPackMetadata(
76 ::PackType type,
77 ::PackManifest& manifest,
78 ::PackAccessStrategy const& accessStrategy,
79 ::PackReport& report
80 );
81 // NOLINTEND
82
83public:
84 // static variables
85 // NOLINTBEGIN
86 MCAPI static ::Core::PathBuffer<::std::string> const& EDUCATION_METADATA_FILE();
87 // NOLINTEND
88
89public:
90 // constructor thunks
91 // NOLINTBEGIN
92 MCAPI void* $ctor(
93 ::std::unique_ptr<::PackManifest> manifest,
94 ::std::unique_ptr<::PackAccessStrategy> accessStrategy,
95 ::std::unique_ptr<::SubpackInfoCollection> subpacks,
96 ::std::unique_ptr<::PackMetadata> metadata
97 );
98 // NOLINTEND
99
100public:
101 // destructor thunk
102 // NOLINTBEGIN
103 MCAPI void $dtor();
104 // NOLINTEND
105
106public:
107 // vftables
108 // NOLINTBEGIN
109 MCAPI static void** $vftable();
110 // NOLINTEND
111};
Definition EnableNonOwnerReferences.h:7
Definition NonOwnerPointer.h:9
Definition Path.h:15
Definition IContentKeyProvider.h:13
Definition IPackManifestFactory.h:14
Definition PackAccessStrategy.h:20
Definition PackManifest.h:19
Definition PackMetadata.h:5
Definition PackReport.h:17
Definition PackSourceReport.h:5
Definition Pack.h:26
Definition Path.h:16
Definition ResourceLocation.h:15
Definition SubpackInfoCollection.h:5