Skip to content
LeviMC
English
AutoLightDark
LeviLamina
Loading...
Searching...
No Matches
EditorVolumeHighlightRenderer.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/gui/controls/renderers/MinecraftUICustomRenderer.h"
7#include "mc/deps/application/AppPlatformListener.h"
8#include "mc/deps/core/math/Vec3.h"
9#include "mc/deps/game_refs/WeakRef.h"
10#include "mc/deps/minecraft_renderer/renderer/TexturePtr.h"
11#include "mc/world/level/BlockChangedEventTarget.h"
12#include "mc/world/level/BlockSourceListener.h"
13#include "mc/world/level/Tick.h"
14
15// auto generated forward declare list
16// clang-format off
17class AABB;
18class Actor;
20class Block;
21class BlockPos;
22class BlockSource;
24class IClientInstance;
27class Tessellator;
28class UIControl;
31namespace ClientBlockPipeline { class TessellatorContext; }
32// clang-format on
33
37public:
38 // member variables
39 // NOLINTBEGIN
40 ::ll::TypedStorage<1, 1, bool> mListenerInitialized;
41 ::ll::TypedStorage<8, 8, ::EditorVolumeHighlightRendererInstanceData*> mInstanceContext;
42 ::ll::TypedStorage<8, 8, ::Tick> mRenderTick;
43 ::ll::TypedStorage<4, 12, ::Vec3> mSortingCameraPos;
44 ::ll::TypedStorage<1, 1, bool> mResort;
45 ::ll::TypedStorage<8, 32, ::mce::TexturePtr> mSelectedBlocksOverlayTex;
46 // NOLINTEND
47
48public:
49 // virtual functions
50 // NOLINTBEGIN
51 virtual ~EditorVolumeHighlightRenderer() /*override*/ = default;
52
53 virtual ::std::shared_ptr<::UICustomRenderer> clone() const /*override*/;
54
55 virtual void
56 render(::MinecraftUIRenderContext& renderContext, ::IClientInstance& client, ::UIControl&, int) /*override*/;
57
58 virtual void onSourceDestroyed(::BlockSource& source) /*override*/;
59
60 virtual void onBlockChanged(
61 ::BlockSource& source,
62 ::BlockPos const& pos,
63 uint layer,
64 ::Block const& block,
65 ::Block const& oldBlock,
66 int updateFlags,
67 ::ActorBlockSyncMessage const* syncMsg,
68 ::BlockChangedEventTarget eventTarget,
69 ::Actor* blockChangeSource
70 ) /*override*/;
71 // NOLINTEND
72
73public:
74 // member functions
75 // NOLINTBEGIN
77
78 MCNAPI ::std::vector<::BlockPos> _generateChunkStartPositions(::AABB const& area) const;
79
81 ::ClientBlockPipeline::TessellatorContext& pipelineContext,
82 ::BlockSource& region,
83 ::Tessellator& tessellator,
84 ::WeakRef<::RenderChunkCoordinator> coordinator,
85 ::AABB const& area
86 );
87
88 MCNAPI bool _renderBlocks(
89 ::BaseActorRenderContext& renderContext,
90 ::BlockSource& region,
91 ::AABB const& area,
92 ::Vec3 const& offset
93 );
94 // NOLINTEND
95
96public:
97 // static functions
98 // NOLINTBEGIN
99 MCNAPI static bool _renderBlockEntities(
100 ::BaseActorRenderContext& renderContext,
101 ::BlockSource& region,
102 ::AABB const& area,
103 ::Vec3 const& offset,
104 bool renderAlphaLayer
105 );
106 // NOLINTEND
107
108public:
109 // constructor thunks
110 // NOLINTBEGIN
111 MCNAPI void* $ctor();
112 // NOLINTEND
113
114public:
115 // virtual function thunks
116 // NOLINTBEGIN
117 MCNAPI ::std::shared_ptr<::UICustomRenderer> $clone() const;
118
119 MCNAPI void $render(::MinecraftUIRenderContext& renderContext, ::IClientInstance& client, ::UIControl&, int);
120
121 MCNAPI void $onSourceDestroyed(::BlockSource& source);
122
123 MCNAPI void $onBlockChanged(
124 ::BlockSource& source,
125 ::BlockPos const& pos,
126 uint layer,
127 ::Block const& block,
128 ::Block const& oldBlock,
129 int updateFlags,
130 ::ActorBlockSyncMessage const* syncMsg,
131 ::BlockChangedEventTarget eventTarget,
132 ::Actor* blockChangeSource
133 );
134 // NOLINTEND
135
136public:
137 // vftables
138 // NOLINTBEGIN
139 MCNAPI static void** $vftableForAppPlatformListener();
140
141 MCNAPI static void** $vftableForBlockSourceListener();
142
144 // NOLINTEND
145};
Definition AABB.h:18
Definition Actor.h:116
Definition AppPlatformListener.h:16
Definition BaseActorRenderContext.h:5
Definition BlockPos.h:14
Definition BlockSourceListener.h:18
Definition BlockSource.h:72
Definition Block.h:42
Definition TessellatorContext.h:7
Definition EditorVolumeHighlightRendererInstanceData.h:5
Definition EditorVolumeHighlightRenderer.h:5
MCAPI void _initializeChunkBuilder(::ClientBlockPipeline::TessellatorContext &pipelineContext, ::BlockSource &region, ::Tessellator &tessellator, ::WeakRef<::RenderChunkCoordinator > coordinator, ::AABB const &area)
MCAPI ::std::shared_ptr<::UICustomRenderer > $clone() const
MCAPI void $onBlockChanged(::BlockSource &source, ::BlockPos const &pos, uint layer, ::Block const &block, ::Block const &oldBlock, int updateFlags, ::ActorBlockSyncMessage const *syncMsg, ::BlockChangedEventTarget eventTarget, ::Actor *blockChangeSource)
static MCAPI void ** $vftableForAppPlatformListener()
MCAPI ::std::vector<::BlockPos > _generateChunkStartPositions(::AABB const &area) const
MCAPI void $render(::MinecraftUIRenderContext &renderContext, ::IClientInstance &client, ::UIControl &, int)
static MCAPI void ** $vftableForBlockSourceListener()
MCAPI void $onSourceDestroyed(::BlockSource &source)
static MCAPI bool _renderBlockEntities(::BaseActorRenderContext &renderContext, ::BlockSource &region, ::AABB const &area, ::Vec3 const &offset, bool renderAlphaLayer)
MCAPI bool _renderBlocks(::BaseActorRenderContext &renderContext, ::BlockSource &region, ::AABB const &area, ::Vec3 const &offset)
static MCAPI void ** $vftableForMinecraftUICustomRenderer()
Definition IClientInstance.h:5
Definition MinecraftUICustomRenderer.h:5
Definition MinecraftUIRenderContext.h:5
Definition RenderChunkCoordinator.h:5
Definition Tessellator.h:5
Definition UIControl.h:5
Definition UICustomRenderer.h:5
Definition Vec3.h:10
Definition WeakRef.h:8
STL namespace.
Definition ActorBlockSyncMessage.h:8