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/deps/core/file/PathBuffer.h"
8#include "mc/deps/core/utility/NonOwnerPointer.h"
9
10// auto generated forward declare list
11// clang-format off
12class IFileAccess;
14namespace Core { class FileSystem; }
15namespace Core { class Path; }
16namespace OreUI { class ResourceResponse; }
17namespace OreUI { class ResourceStreamResponse; }
18namespace OreUI { class TemporaryTextureHolder; }
19namespace OreUI { struct HybridResourceLocation; }
20namespace OreUI { struct ResourceRequest; }
21namespace cohtml { class ISyncStreamReader; }
22// clang-format on
23
24namespace OreUI {
25
26class HybridResourceHandler : public ::OreUI::IResourceHandler {
27public:
28 // member variables
29 // NOLINTBEGIN
30 ::ll::TypedStorage<8, 8, ::ResourcePackManager const&> mPackManager;
31 ::ll::TypedStorage<8, 24, ::Bedrock::NonOwnerPointer<::IFileAccess>> mFileAccess;
32 ::ll::TypedStorage<8, 24, ::Bedrock::NonOwnerPointer<::Core::FileSystem>> mFileSystem;
33 ::ll::TypedStorage<8, 32, ::Core::PathBuffer<::std::string>> mDataPath;
34 ::ll::TypedStorage<8, 64, ::std::function<::cohtml::ISyncStreamReader*(::IFileAccess&, ::Core::Path)>>
35 mSyncStreamReaderFactory;
36 ::ll::TypedStorage<8, 8, ::OreUI::TemporaryTextureHolder&> mTemporaryTextureHolder;
37 // NOLINTEND
38
39public:
40 // prevent constructor by default
41 HybridResourceHandler& operator=(HybridResourceHandler const&);
42 HybridResourceHandler(HybridResourceHandler const&);
43 HybridResourceHandler();
44
45public:
46 // virtual functions
47 // NOLINTBEGIN
48 virtual ~HybridResourceHandler() /*override*/;
49
50 virtual ::OreUI::IResourceHandler::Status
51 onResourceRequest(::OreUI::ResourceRequest const& request, ::OreUI::ResourceResponse& response) /*override*/;
52
53 virtual ::OreUI::IResourceHandler::Status onResourceStreamRequest(
54 ::OreUI::ResourceRequest const& request,
55 ::OreUI::ResourceStreamResponse& response
56 ) /*override*/;
57
58 virtual void update() /*override*/;
59 // NOLINTEND
60
61public:
62 // member functions
63 // NOLINTBEGIN
64 MCAPI ::std::optional<::OreUI::HybridResourceLocation>
65 _getAssetResourceLocationFromResourcePackManager(::OreUI::ResourceRequest const& request) const;
66 // NOLINTEND
67
68public:
69 // static variables
70 // NOLINTBEGIN
71 MCAPI static ::std::add_lvalue_reference_t<char const[]> PROTOCOL();
72 // NOLINTEND
73
74public:
75 // destructor thunk
76 // NOLINTBEGIN
77 MCAPI void $dtor();
78 // NOLINTEND
79
80public:
81 // virtual function thunks
82 // NOLINTBEGIN
83 MCAPI ::OreUI::IResourceHandler::Status
84 $onResourceRequest(::OreUI::ResourceRequest const& request, ::OreUI::ResourceResponse& response);
85
86 MCAPI ::OreUI::IResourceHandler::Status
87 $onResourceStreamRequest(::OreUI::ResourceRequest const& request, ::OreUI::ResourceStreamResponse& response);
88
89 MCFOLD void $update();
90 // NOLINTEND
91
92public:
93 // vftables
94 // NOLINTBEGIN
95 MCNAPI static void** $vftable();
96 // NOLINTEND
97};
98
99} // namespace OreUI
Definition FileSystem.h:28
Definition Path.h:17
Definition IFileAccess.h:15
Definition HybridResourceHandler.h:7
static MCAPI void ** $vftable()
Definition ResourceResponse.h:7
Definition ResourceStreamResponse.h:7
Definition TemporaryTextureHolder.h:7
Definition ResourcePackManager.h:30
Definition ISyncStreamReader.h:7
Definition HybridResourceLocation.h:7
Definition ResourceRequest.h:7