LeviLamina
Loading...
Searching...
No Matches
DirectoryPackSource.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/NonOwnerPointer.h"
10#include "mc/platform/brstd/function_ref.h"
11#include "mc/resources/PackSource.h"
12
13// auto generated forward declare list
14// clang-format off
15class IPackIOProvider;
19namespace Core { class Path; }
20namespace PackCommand { class IPackCommandPipeline; }
21namespace PackDeletionTelemetry { struct EventData; }
22// clang-format on
23
24class DirectoryPackSource : public ::PackSource {
25public:
26 // member variables
27 // NOLINTBEGIN
28 ::ll::TypedStorage<8, 32, ::Core::PathBuffer<::std::string>> mPath;
29 ::ll::TypedStorage<1, 1, ::PackType const> mPackType;
30 ::ll::TypedStorage<1, 1, ::PackOrigin const> mPackOrigin;
31 ::ll::TypedStorage<1, 1, bool> mDiscovered;
32 ::ll::TypedStorage<1, 1, bool const> mIsRediscoverable;
33 ::ll::TypedStorage<1, 1, bool const> mIsDevDirectory;
34 ::ll::TypedStorage<8, 24, ::Bedrock::NonOwnerPointer<::PackCommand::IPackCommandPipeline>> mCommands;
35 // NOLINTEND
36
37public:
38 // prevent constructor by default
39 DirectoryPackSource();
40
41public:
42 // virtual functions
43 // NOLINTBEGIN
44 virtual ~DirectoryPackSource() /*override*/ = default;
45
46 virtual ::PackOrigin getPackOrigin() const /*override*/;
47
48 virtual ::PackType getPackType() const /*override*/;
49
50 virtual ::PackSourceLoadResult _loadImpl(::PackSourceLoadOptions&& options) /*override*/;
51 // NOLINTEND
52
53public:
54 // member functions
55 // NOLINTBEGIN
56 MCAPI explicit DirectoryPackSource(::DirectoryPackSourceOptions options);
57
58 MCAPI void deleteAllPacksAndReset();
59 // NOLINTEND
60
61public:
62 // static functions
63 // NOLINTBEGIN
64 MCAPI static void checkAndRemoveIncompletePacks(::Core::Path const& path);
65
66 MCAPI static void checkAndRemoveIncompletePacks(
67 ::Core::Path const& path,
68 ::IPackIOProvider const& io,
69 bool saveEncryptedWorldTemplatePacksAsZips
70 );
71
72 MCAPI static void purgeOptimizedPremiumPacksIfRequested(
73 bool purgeRequested,
74 ::Core::Path const& path,
75 ::IPackIOProvider const* io,
76 ::brstd::function_ref<void(::PackDeletionTelemetry::EventData const&)> reportPackDeleted
77 );
78 // NOLINTEND
79
80public:
81 // constructor thunks
82 // NOLINTBEGIN
83 MCAPI void* $ctor(::DirectoryPackSourceOptions options);
84 // NOLINTEND
85
86public:
87 // virtual function thunks
88 // NOLINTBEGIN
89 MCFOLD ::PackOrigin $getPackOrigin() const;
90
91 MCFOLD ::PackType $getPackType() const;
92
93 MCAPI ::PackSourceLoadResult $_loadImpl(::PackSourceLoadOptions&& options);
94
95
96 // NOLINTEND
97
98public:
99 // vftables
100 // NOLINTBEGIN
101 MCNAPI static void** $vftable();
102 // NOLINTEND
103};
Definition Path.h:11
static MCAPI void ** $vftable()
Definition IPackIOProvider.h:17
Definition IPackCommandPipeline.h:19
Definition function_ref.h:60
Definition DirectoryPackSourceOptions.h:5
Definition EventData.h:7
Definition PackSourceLoadOptions.h:5
Definition PackSourceLoadResult.h:5