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&);
34
35public:
36 // virtual functions
37 // NOLINTBEGIN
38 // vIndex: 3
39 virtual ::std::shared_ptr<::LevelChunk> getExistingChunk(::ChunkPos const& pos) /*override*/;
40
41 // vIndex: 4
42 virtual ::std::shared_ptr<::LevelChunk> getRandomChunk(::Random& random) /*override*/;
43
44 // vIndex: 20
45 virtual void acquireDiscarded(::std::unique_ptr<::LevelChunk, ::LevelChunkFinalDeleter> ptr) /*override*/;
46
47 // vIndex: 7
48 virtual ::std::shared_ptr<::LevelChunk>
49 createNewChunk(::ChunkPos const& cp, ::ChunkSource::LoadMode lm, bool readOnly) /*override*/;
50
51 // vIndex: 24
52 virtual bool isWithinWorldLimit(::ChunkPos const& cp) const /*override*/;
53
54 // vIndex: 31
55 virtual void setLevelChunk(::std::shared_ptr<::LevelChunk> lc) /*override*/;
56
57 // vIndex: 0
58 virtual ~ChunkViewSource() /*override*/;
59 // NOLINTEND
60
61public:
62 // member functions
63 // NOLINTBEGIN
64 MCAPI ChunkViewSource(::ChunkViewSource const& otherChunkViewSource);
65
66 MCAPI ChunkViewSource(
67 ::ChunkSource& mainSource,
68 ::LevelChunkGridAreaElement<::std::weak_ptr<::LevelChunk>>& gridArea,
69 ::Bounds const& bounds
70 );
71
72 MCAPI void clearEntryAtChunkPos(::ChunkPos const& chunkPos);
73
74 MCAPI void move(
75 ::Bounds const& bounds,
76 bool isCircle,
77 ::ChunkSourceViewGenerateMode chunkViewGenerateMode,
78 ::std::function<void(::buffer_span_mut<::std::shared_ptr<::LevelChunk>>, ::buffer_span<uint>)> add,
79 float const* serverBuildRatio
80 );
81
82 MCAPI void move(
83 ::BlockPos const& blockMin,
84 ::BlockPos const& blockMax,
85 bool isCircle,
86 ::ChunkSourceViewGenerateMode chunkViewGenerateMode,
87 ::std::function<void(::buffer_span_mut<::std::shared_ptr<::LevelChunk>>, ::buffer_span<uint>)> add,
88 float const* serverBuildRatio
89 );
90
91 MCAPI void move(
92 ::BlockPos const& center,
93 int radius,
94 bool isCircle,
95 ::ChunkSourceViewGenerateMode chunkViewGenerateMode,
96 ::std::function<void(::buffer_span_mut<::std::shared_ptr<::LevelChunk>>, ::buffer_span<uint>)> add,
97 float const* serverBuildRatio
98 );
99 // NOLINTEND
100
101public:
102 // constructor thunks
103 // NOLINTBEGIN
104 MCAPI void* $ctor(::ChunkViewSource const& otherChunkViewSource);
105
106 MCAPI void* $ctor(
107 ::ChunkSource& mainSource,
108 ::LevelChunkGridAreaElement<::std::weak_ptr<::LevelChunk>>& gridArea,
109 ::Bounds const& bounds
110 );
111 // NOLINTEND
112
113public:
114 // destructor thunk
115 // NOLINTBEGIN
116 MCAPI void $dtor();
117 // NOLINTEND
118
119public:
120 // virtual function thunks
121 // NOLINTBEGIN
122 MCAPI ::std::shared_ptr<::LevelChunk> $getExistingChunk(::ChunkPos const& pos);
123
124 MCAPI ::std::shared_ptr<::LevelChunk> $getRandomChunk(::Random& random);
125
126 MCAPI void $acquireDiscarded(::std::unique_ptr<::LevelChunk, ::LevelChunkFinalDeleter> ptr);
127
128 MCFOLD ::std::shared_ptr<::LevelChunk>
129 $createNewChunk(::ChunkPos const& cp, ::ChunkSource::LoadMode lm, bool readOnly);
130
131 MCAPI bool $isWithinWorldLimit(::ChunkPos const& cp) const;
132
133 MCAPI void $setLevelChunk(::std::shared_ptr<::LevelChunk> lc);
134 // NOLINTEND
135
136public:
137 // vftables
138 // NOLINTBEGIN
139 MCAPI static void** $vftable();
140 // NOLINTEND
141};
Definition BlockPos.h:18
Definition ChunkPos.h:11
Definition ChunkSource.h:34
Definition ChunkViewSource.h:22
Definition LevelChunkGridAreaElement.h:6
Definition LevelChunk.h:73
Definition Random.h:16
Definition _HeaderOutputPredefine.h:179
Definition buffer_span.h:6
Definition Bounds.h:10
Definition LevelChunkFinalDeleter.h:5