LeviLamina
Loading...
Searching...
No Matches
PackInstance.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/resources/PackReport.h"
7#include "mc/resources/PackStats.h"
8
9// auto generated forward declare list
10// clang-format off
11class PackSettings;
12class ResourcePack;
13namespace Core { class Path; }
14// clang-format on
15
16class PackInstance {
17public:
18 // PackInstance inner types define
19 using Callback = ::std::function<void(::Core::Path const&)>;
20
21public:
22 // member variables
23 // NOLINTBEGIN
24 ::ll::TypedStorage<8, 248, ::PackReport> mPackReport;
25 ::ll::TypedStorage<8, 8, ::PackSettings*> mPackSettings;
26 ::ll::TypedStorage<8, 16, ::gsl::not_null<::std::shared_ptr<::ResourcePack>>> mPack;
27 ::ll::TypedStorage<4, 16, ::PackStats> mStats;
28 ::ll::TypedStorage<4, 4, int> mSubpackIndex;
29 ::ll::TypedStorage<1, 1, uchar> mRevision;
30 // NOLINTEND
31
32public:
33 // prevent constructor by default
34 PackInstance(PackInstance const&);
35 PackInstance();
36
37public:
38 // member functions
39 // NOLINTBEGIN
40 MCAPI PackInstance(
41 ::gsl::not_null<::std::shared_ptr<::ResourcePack>> pack,
42 int subpackIndex,
43 bool isDependent,
44 ::PackSettings* packSettings
45 );
46
47 MCAPI PackInstance(
48 ::gsl::not_null<::std::shared_ptr<::ResourcePack>> pack,
49 ::std::string const& subpackName,
50 bool isDependent,
51 ::PackSettings* packSettings
52 );
53
54 MCAPI_C void
55 forEachIn(::Core::Path const& path, ::std::function<void(::Core::Path const&)> callback, bool recurseAnyways) const;
56
57 MCAPI bool getResource(::Core::Path const& resourceName, ::std::string& resourceStream) const;
58
59 MCAPI_C bool hasResource(::Core::Path const& resourceName) const;
60
61 MCAPI ::PackInstance& operator=(::PackInstance const&);
62
63 MCAPI ~PackInstance();
64 // NOLINTEND
65
66public:
67 // constructor thunks
68 // NOLINTBEGIN
69 MCAPI void* $ctor(
70 ::gsl::not_null<::std::shared_ptr<::ResourcePack>> pack,
71 int subpackIndex,
72 bool isDependent,
73 ::PackSettings* packSettings
74 );
75
76 MCAPI void* $ctor(
77 ::gsl::not_null<::std::shared_ptr<::ResourcePack>> pack,
78 ::std::string const& subpackName,
79 bool isDependent,
80 ::PackSettings* packSettings
81 );
82 // NOLINTEND
83
84public:
85 // destructor thunk
86 // NOLINTBEGIN
87 MCAPI void $dtor();
88 // NOLINTEND
89};
Definition Path.h:10
Definition PackSettings.h:19
Definition ResourcePack.h:21