LeviLamina
Loading...
Searching...
No Matches
ChunkViewSource.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/utility/buffer_span.h"
7#include "mc/util/GridArea.h"
8#include "mc/world/level/chunk/ChunkSource.h"
9#include "mc/world/level/chunk/ChunkSourceViewGenerateMode.h"
10#include "mc/world/level/chunk/LevelChunkGridAreaElement.h"
11
12// auto generated forward declare list
13// clang-format off
14class BlockPos;
15class ChunkPos;
16class LevelChunk;
17class Random;
18struct Bounds;
20// clang-format on
21
23public:
24 // member variables
25 // NOLINTBEGIN
26 ::ll::TypedStorage<4, 4, ::ChunkSource::LoadMode> mParentLoadMode;
27 ::ll::TypedStorage<8, 376, ::GridArea<::std::shared_ptr<::LevelChunk>>> mArea;
28 ::ll::TypedStorage<8, 8, ::ChunkSource&> mMainSource;
29 // NOLINTEND
30
31public:
32 // prevent constructor by default
33 ChunkViewSource& operator=(ChunkViewSource const&);
35
36public:
37 // virtual functions
38 // NOLINTBEGIN
39 // vIndex: 3
40 virtual ::std::shared_ptr<::LevelChunk> getExistingChunk(::ChunkPos const& pos) /*override*/;
41
42 // vIndex: 4
43 virtual ::std::shared_ptr<::LevelChunk> getRandomChunk(::Random& random) /*override*/;
44
45 // vIndex: 20
46 virtual void acquireDiscarded(::std::unique_ptr<::LevelChunk, ::LevelChunkFinalDeleter> ptr) /*override*/;
47
48 // vIndex: 7
49 virtual ::std::shared_ptr<::LevelChunk>
50 createNewChunk(::ChunkPos const& cp, ::ChunkSource::LoadMode lm, bool readOnly) /*override*/;
51
52 // vIndex: 24
53 virtual bool isWithinWorldLimit(::ChunkPos const& cp) const /*override*/;
54
55 // vIndex: 31
56 virtual void setLevelChunk(::std::shared_ptr<::LevelChunk> lc) /*override*/;
57
58 // vIndex: 0
59 virtual ~ChunkViewSource() /*override*/;
60 // NOLINTEND
61
62public:
63 // member functions
64 // NOLINTBEGIN
65 MCAPI ChunkViewSource(::ChunkViewSource const& otherChunkViewSource);
66
67 MCAPI ChunkViewSource(::ChunkSource& mainSource, ::ChunkSource::LoadMode parentLoadMode);
68
69 MCAPI ChunkViewSource(
70 ::ChunkSource& mainSource,
71 ::LevelChunkGridAreaElement<::std::weak_ptr<::LevelChunk>>& gridArea,
72 ::Bounds const& bounds
73 );
74
75 MCAPI void clearEntryAtChunkPos(::ChunkPos const& chunkPos);
76
77 MCAPI void move(
78 ::Bounds const& bounds,
79 bool isCircle,
80 ::ChunkSourceViewGenerateMode chunkViewGenerateMode,
81 ::std::function<void(::buffer_span_mut<::std::shared_ptr<::LevelChunk>>, ::buffer_span<uint>)> add,
82 float const* serverBuildRatio
83 );
84
85 MCAPI void move(
86 ::BlockPos const& blockMin,
87 ::BlockPos const& blockMax,
88 bool isCircle,
89 ::ChunkSourceViewGenerateMode chunkViewGenerateMode,
90 ::std::function<void(::buffer_span_mut<::std::shared_ptr<::LevelChunk>>, ::buffer_span<uint>)> add,
91 float const* serverBuildRatio
92 );
93
94 MCAPI void move(
95 ::BlockPos const& center,
96 int radius,
97 bool isCircle,
98 ::ChunkSourceViewGenerateMode chunkViewGenerateMode,
99 ::std::function<void(::buffer_span_mut<::std::shared_ptr<::LevelChunk>>, ::buffer_span<uint>)> add,
100 float const* serverBuildRatio
101 );
102 // NOLINTEND
103
104public:
105 // constructor thunks
106 // NOLINTBEGIN
107 MCAPI void* $ctor(::ChunkViewSource const& otherChunkViewSource);
108
109 MCAPI void* $ctor(::ChunkSource& mainSource, ::ChunkSource::LoadMode parentLoadMode);
110
111 MCAPI void* $ctor(
112 ::ChunkSource& mainSource,
113 ::LevelChunkGridAreaElement<::std::weak_ptr<::LevelChunk>>& gridArea,
114 ::Bounds const& bounds
115 );
116 // NOLINTEND
117
118public:
119 // destructor thunk
120 // NOLINTBEGIN
121 MCAPI void $dtor();
122 // NOLINTEND
123
124public:
125 // virtual function thunks
126 // NOLINTBEGIN
127 MCAPI ::std::shared_ptr<::LevelChunk> $getExistingChunk(::ChunkPos const& pos);
128
129 MCAPI ::std::shared_ptr<::LevelChunk> $getRandomChunk(::Random& random);
130
131 MCAPI void $acquireDiscarded(::std::unique_ptr<::LevelChunk, ::LevelChunkFinalDeleter> ptr);
132
133 MCFOLD ::std::shared_ptr<::LevelChunk>
134 $createNewChunk(::ChunkPos const& cp, ::ChunkSource::LoadMode lm, bool readOnly);
135
136 MCAPI bool $isWithinWorldLimit(::ChunkPos const& cp) const;
137
138 MCAPI void $setLevelChunk(::std::shared_ptr<::LevelChunk> lc);
139 // NOLINTEND
140
141public:
142 // vftables
143 // NOLINTBEGIN
144 MCNAPI static void** $vftable();
145 // NOLINTEND
146};
Definition BlockPos.h:18
Definition ChunkPos.h:11
Definition ChunkSource.h:34
Definition ChunkViewSource.h:22
static MCAPI void ** $vftable()
Definition LevelChunkGridAreaElement.h:6
Definition LevelChunk.h:74
Definition Random.h:11
Definition _HeaderOutputPredefine.h:189
Definition buffer_span.h:6
Definition Bounds.h:8
Definition LevelChunkFinalDeleter.h:5