LeviLamina
Loading...
Searching...
No Matches
HybridResourceHandler.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/gui/oreui/interface/IResourceHandler.h"
7#include "mc/client/gui/oreui/interface/ResourceHandlerStatus.h"
8#include "mc/deps/core/file/PathBuffer.h"
9#include "mc/deps/core/utility/NonOwnerPointer.h"
10
11// auto generated forward declare list
12// clang-format off
13class IFileAccess;
15namespace Core { class FileSystem; }
16namespace Core { class Path; }
17namespace Gameface { class ISyncStreamReader; }
18namespace Gameface { class ResourceResponse; }
19namespace Gameface { class ResourceStreamResponse; }
20namespace Gameface { class TemporaryTextureHolder; }
21namespace Gameface { struct ResourceRequest; }
22namespace OreUI { struct HybridResourceLocation; }
23// clang-format on
24
25namespace OreUI {
26
27class HybridResourceHandler : public ::Gameface::IResourceHandler {
28public:
29 // member variables
30 // NOLINTBEGIN
31 ::ll::TypedStorage<8, 8, ::ResourcePackManager const&> mPackManager;
32 ::ll::TypedStorage<8, 24, ::Bedrock::NonOwnerPointer<::IFileAccess>> mFileAccess;
33 ::ll::TypedStorage<8, 24, ::Bedrock::NonOwnerPointer<::Core::FileSystem>> mFileSystem;
34 ::ll::TypedStorage<8, 32, ::Core::PathBuffer<::std::string>> mDataPath;
35 ::ll::TypedStorage<8, 64, ::std::function<::Gameface::ISyncStreamReader*(::IFileAccess&, ::Core::Path)>>
36 mSyncStreamReaderFactory;
37 ::ll::TypedStorage<8, 8, ::Gameface::TemporaryTextureHolder&> mTemporaryTextureHolder;
38 // NOLINTEND
39
40public:
41 // prevent constructor by default
42 HybridResourceHandler& operator=(HybridResourceHandler const&);
43 HybridResourceHandler(HybridResourceHandler const&);
44 HybridResourceHandler();
45
46public:
47 // virtual functions
48 // NOLINTBEGIN
49 virtual ~HybridResourceHandler() /*override*/;
50
51 virtual ::Gameface::ResourceHandlerStatus
52 onResourceRequest(::Gameface::ResourceRequest const& request, ::Gameface::ResourceResponse& response) /*override*/;
53
54 virtual ::Gameface::ResourceHandlerStatus onResourceStreamRequest(
55 ::Gameface::ResourceRequest const& request,
56 ::Gameface::ResourceStreamResponse& response
57 ) /*override*/;
58
59 virtual void update() /*override*/;
60 // NOLINTEND
61
62public:
63 // member functions
64 // NOLINTBEGIN
65 MCAPI HybridResourceHandler(
66 ::ResourcePackManager const& packManager,
67 ::Bedrock::NotNullNonOwnerPtr<::Core::FileSystem> const& fileSystem,
68 ::Bedrock::NotNullNonOwnerPtr<::IFileAccess> const& fileAccess,
69 ::Core::Path const& dataPath,
70 ::std::function<::Gameface::ISyncStreamReader*(::IFileAccess&, ::Core::Path)> const& syncStreamReaderFactory,
71 ::Gameface::TemporaryTextureHolder& temporaryTextureHolder
72 );
73
74 MCAPI ::std::optional<::OreUI::HybridResourceLocation>
75 _getAssetResourceLocationFromResourcePackManager(::Gameface::ResourceRequest const& request) const;
76 // NOLINTEND
77
78public:
79 // constructor thunks
80 // NOLINTBEGIN
81 MCAPI void* $ctor(
82 ::ResourcePackManager const& packManager,
83 ::Bedrock::NotNullNonOwnerPtr<::Core::FileSystem> const& fileSystem,
84 ::Bedrock::NotNullNonOwnerPtr<::IFileAccess> const& fileAccess,
85 ::Core::Path const& dataPath,
86 ::std::function<::Gameface::ISyncStreamReader*(::IFileAccess&, ::Core::Path)> const& syncStreamReaderFactory,
87 ::Gameface::TemporaryTextureHolder& temporaryTextureHolder
88 );
89 // NOLINTEND
90
91public:
92 // destructor thunk
93 // NOLINTBEGIN
94 MCAPI void $dtor();
95 // NOLINTEND
96
97public:
98 // virtual function thunks
99 // NOLINTBEGIN
100 MCAPI ::Gameface::ResourceHandlerStatus
101 $onResourceRequest(::Gameface::ResourceRequest const& request, ::Gameface::ResourceResponse& response);
102
103 MCAPI ::Gameface::ResourceHandlerStatus
104 $onResourceStreamRequest(::Gameface::ResourceRequest const& request, ::Gameface::ResourceStreamResponse& response);
105
106 MCFOLD void $update();
107 // NOLINTEND
108
109public:
110 // vftables
111 // NOLINTBEGIN
112 MCNAPI static void** $vftable();
113 // NOLINTEND
114};
115
116} // namespace OreUI
Definition FileSystem.h:28
Definition Path.h:12
Definition ISyncStreamReader.h:7
Definition ResourceResponse.h:7
Definition ResourceStreamResponse.h:7
Definition TemporaryTextureHolder.h:7
Definition IFileAccess.h:15
Definition HybridResourceHandler.h:7
static MCAPI void ** $vftable()
Definition ResourcePackManager.h:35
Definition ResourceRequest.h:7
Definition HybridResourceLocation.h:7