LeviLamina
Loading...
Searching...
No Matches
UICustomRenderer.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/gui/controls/UIMaterialType.h"
7#include "mc/client/gui/screens/UIBatchType.h"
8
9// auto generated forward declare list
10// clang-format off
11class IClientInstance;
13class UIControl;
15class UIRenderContext;
16class UIScene;
17struct ScreenEvent;
18struct UIItemRenderInfo;
19// clang-format on
20
21class UICustomRenderer {
22public:
23 // member variables
24 // NOLINTBEGIN
25 ::ll::TypedStorage<4, 4, float> mPropagatedAlpha;
26 // NOLINTEND
27
28public:
29 // virtual functions
30 // NOLINTBEGIN
31 virtual ~UICustomRenderer();
32
33 virtual void preRenderSetup(::UIRenderContext& renderContext);
34
35 virtual ::std::shared_ptr<::UICustomRenderer> clone() const = 0;
36
37 virtual bool update(::IClientInstance& client, ::UIControl& owner, ::UIScene const& scene);
38
39 virtual void frameUpdate(::UIFrameUpdateContext& frameUpdateContext, ::UIControl& owner) = 0;
40
41 virtual void render(::UIRenderContext& renderContext, ::IClientInstance& client, ::UIControl& owner, int pass) = 0;
42
43 virtual ::UIBatchType getBatchType() const;
44
45 virtual int getCustomId() const;
46
47 virtual int getNumRenderPasses() const;
48
49 virtual ::ResourceLocation getResourceLocation(int textureSlot, int pass) const;
50
51 virtual ::UIMaterialType getUIMaterialType(int pass) const;
52
53 virtual bool getRequiresPreRenderSetup(int pass) const;
54
55 virtual void onVisibilityChanged(bool visible);
56
57 virtual void collectScreenEvents(::std::queue<::ScreenEvent, ::std::deque<::ScreenEvent>>& screenEvents);
58
59 virtual ::UIItemRenderInfo getItemRenderInfo() const;
60 // NOLINTEND
61
62public:
63 // member functions
64 // NOLINTBEGIN
65 MCAPI UICustomRenderer();
66
67 MCAPI void setPropagatedAlpha(float a);
68 // NOLINTEND
69
70public:
71 // static functions
72 // NOLINTBEGIN
73 MCAPI static float getZOffset(int zOrder);
74 // NOLINTEND
75
76public:
77 // constructor thunks
78 // NOLINTBEGIN
79 MCAPI void* $ctor();
80 // NOLINTEND
81
82public:
83 // destructor thunk
84 // NOLINTBEGIN
85 MCFOLD void $dtor();
86 // NOLINTEND
87
88public:
89 // virtual function thunks
90 // NOLINTBEGIN
91 MCFOLD void $preRenderSetup(::UIRenderContext& renderContext);
92
93 MCFOLD bool $update(::IClientInstance& client, ::UIControl& owner, ::UIScene const& scene);
94
95 MCFOLD ::UIBatchType $getBatchType() const;
96
97 MCFOLD int $getCustomId() const;
98
99 MCFOLD int $getNumRenderPasses() const;
100
101 MCAPI ::ResourceLocation $getResourceLocation(int textureSlot, int pass) const;
102
103 MCFOLD ::UIMaterialType $getUIMaterialType(int pass) const;
104
105 MCFOLD bool $getRequiresPreRenderSetup(int pass) const;
106
107 MCFOLD void $onVisibilityChanged(bool visible);
108
109 MCFOLD void $collectScreenEvents(::std::queue<::ScreenEvent, ::std::deque<::ScreenEvent>>& screenEvents);
110
111 MCAPI ::UIItemRenderInfo $getItemRenderInfo() const;
112 // NOLINTEND
113
114public:
115 // vftables
116 // NOLINTBEGIN
117 MCNAPI static void** $vftable();
118 // NOLINTEND
119};
Definition IClientInstance.h:5
Definition ResourceLocation.h:15
Definition UIControl.h:5
Definition UICustomRenderer.h:5
static MCAPI void ** $vftable()
Definition UIFrameUpdateContext.h:5
Definition UIRenderContext.h:5
Definition UIScene.h:5
Definition ScreenEvent.h:5
Definition UIItemRenderInfo.h:5