LeviLamina
Loading...
Searching...
No Matches
IPackSourceFactory.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/resource/PackOrigin.h"
7#include "mc/deps/core/resource/PackType.h"
8#include "mc/deps/core/utility/EnableNonOwnerReferences.h"
9#include "mc/deps/core/utility/NonOwnerPointer.h"
10
11// auto generated forward declare list
12// clang-format off
17class Pack;
18class PackSource;
23struct PackIdVersion;
24namespace Core { class Path; }
25namespace Realms { class RealmsServicePackSource; }
26namespace mce { class UUID; }
27// clang-format on
28
30public:
31 // virtual functions
32 // NOLINTBEGIN
33 virtual ~IPackSourceFactory() /*override*/;
34
35#ifdef LL_PLAT_C
36 virtual ::TreatmentPackSource& createTreatmentPackSource(::Core::Path const&, ::PackType) = 0;
37
38 virtual ::TreatmentPackSource* getTreatmentPackSource(::Core::Path const&, ::PackType) const = 0;
39
40 virtual void removeFromTreatmentPackSource(::Core::Path const&) = 0;
41
42#endif
43 virtual ::WorldTemplatePackSource& createWorldTemplatePackSource(
44 ::Bedrock::NotNullNonOwnerPtr<::IWorldTemplateManager const> const&,
45 ::mce::UUID const&,
46 ::PackType,
47 ::PackOrigin
48 ) = 0;
49
50 virtual ::WorldTemplatePackSource& createWorldTemplatePackSource(
51 ::std::unique_ptr<::WorldTemplateCollectionView>,
52 ::mce::UUID const&,
53 ::PackType,
54 ::PackOrigin
55 ) = 0;
56
57 virtual ::WorldTemplatePackSource* getWorldTemplatePackSource(::mce::UUID const&, ::PackType) const = 0;
58
59 virtual ::DirectoryPackSource& createDirectoryPackSource(::Core::Path const&, ::PackType, ::PackOrigin, bool) = 0;
60
61 virtual ::DirectoryPackSource* getDirectoryPackSource(::Core::Path const&, ::PackType) const = 0;
62
63 virtual ::InPackagePackSource& createInPackagePackSource(::PackType) = 0;
64
65 virtual ::InPackagePackSource* getInPackagePackSource(::PackType) = 0;
66
67 virtual ::WorldHistoryPackSource& createWorldHistoryPackSource(::Core::Path const&, ::PackType) = 0;
68
69 virtual ::WorldHistoryPackSource* getWorldHistoryPackSource(::Core::Path const&, ::PackType) const = 0;
70
71 virtual ::std::unique_ptr<::CompositePackSource> createCompositePackSource(::std::vector<::PackSource*>) = 0;
72
73 virtual ::DirectoryPackSource* getDirectoryPackSourceContaining(::PackIdVersion const&) const = 0;
74
75 virtual void removeFromDirectoryPackSource(::Core::Path const&) = 0;
76
77 virtual ::std::unique_ptr<::Realms::RealmsServicePackSource>
78 createRealmsServicePackSource(int64, ::PackType, ::std::vector<::gsl::not_null<::std::shared_ptr<::Pack>>>&&) = 0;
79 // NOLINTEND
80
81public:
82 // destructor thunk
83 // NOLINTBEGIN
84 MCNAPI void $dtor();
85 // NOLINTEND
86
87public:
88 // virtual function thunks
89 // NOLINTBEGIN
90
91 // NOLINTEND
92};
Definition EnableNonOwnerReferences.h:7
Definition CompositePackSource.h:16
Definition Path.h:10
Definition DirectoryPackSource.h:20
Definition IPackSourceFactory.h:29
MCAPI void $dtor()
Definition IWorldTemplateManager.h:17
Definition InPackagePackSource.h:16
Definition PackSource.h:28
Definition Pack.h:27
Definition RealmsServicePackSource.h:18
Definition TreatmentPackSource.h:16
Definition WorldHistoryPackSource.h:20
Definition WorldTemplateCollectionView.h:13
Definition WorldTemplatePackSource.h:20
Definition UUID.h:7
Definition PackIdVersion.h:10