LeviLamina
Loading...
Searching...
No Matches
MainChunkSource.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/level/chunk/ChunkSource.h"
7
8// auto generated forward declare list
9// clang-format off
10class ChunkPos;
11class LevelChunk;
12class Random;
14// clang-format on
15
16class MainChunkSource : public ::ChunkSource {
17public:
18 // member variables
19 // NOLINTBEGIN
20 ::ll::TypedStorage<8, 64, ::std::unordered_map<::ChunkPos, ::std::weak_ptr<::LevelChunk>>> mChunkMap;
21 // NOLINTEND
22
23public:
24 // virtual functions
25 // NOLINTBEGIN
26 virtual ~MainChunkSource() /*override*/ = default;
27
28 virtual ::std::shared_ptr<::LevelChunk> getExistingChunk(::ChunkPos const& cp) /*override*/;
29
30 virtual bool isChunkKnown(::ChunkPos const& chunkPos) /*override*/;
31
32 virtual ::std::shared_ptr<::LevelChunk> getRandomChunk(::Random& random) /*override*/;
33
34 virtual ::std::shared_ptr<::LevelChunk>
35 createNewChunk(::ChunkPos const& cp, ::ChunkSource::LoadMode lm, bool readOnly) /*override*/;
36
37 virtual void acquireDiscarded(::std::unique_ptr<::LevelChunk, ::LevelChunkFinalDeleter> ptr) /*override*/;
38
39 virtual ::std::unordered_map<::ChunkPos, ::std::weak_ptr<::LevelChunk>> const& getStorage() const /*override*/;
40
41 virtual void clearDeletedEntities() /*override*/;
42
43 virtual ::std::unordered_map<::ChunkPos, ::std::weak_ptr<::LevelChunk>> const* getChunkMap() /*override*/;
44
45 virtual bool canCreateViews() const /*override*/;
46
47 virtual void setLevelChunk(::std::shared_ptr<::LevelChunk> lc) /*override*/;
48 // NOLINTEND
49
50public:
51 // member functions
52 // NOLINTBEGIN
53
54 // NOLINTEND
55
56public:
57 // constructor thunks
58 // NOLINTBEGIN
59 MCAPI_C void* $ctor(::std::unique_ptr<::ChunkSource> storage);
60 // NOLINTEND
61
62public:
63 // virtual function thunks
64 // NOLINTBEGIN
65 MCFOLD ::std::shared_ptr<::LevelChunk> $getExistingChunk(::ChunkPos const& cp);
66
67 MCAPI bool $isChunkKnown(::ChunkPos const& chunkPos);
68
69 MCAPI ::std::shared_ptr<::LevelChunk> $getRandomChunk(::Random& random);
70
71 MCAPI ::std::shared_ptr<::LevelChunk>
72 $createNewChunk(::ChunkPos const& cp, ::ChunkSource::LoadMode lm, bool readOnly);
73
74 MCFOLD void $acquireDiscarded(::std::unique_ptr<::LevelChunk, ::LevelChunkFinalDeleter> ptr);
75
76 MCFOLD ::std::unordered_map<::ChunkPos, ::std::weak_ptr<::LevelChunk>> const& $getStorage() const;
77
78 MCAPI void $clearDeletedEntities();
79
80 MCFOLD ::std::unordered_map<::ChunkPos, ::std::weak_ptr<::LevelChunk>> const* $getChunkMap();
81
82 MCFOLD bool $canCreateViews() const;
83
84 MCAPI void $setLevelChunk(::std::shared_ptr<::LevelChunk> lc);
85
86
87 // NOLINTEND
88
89public:
90 // vftables
91 // NOLINTBEGIN
92 MCNAPI static void** $vftable();
93 // NOLINTEND
94};
Definition ChunkPos.h:11
Definition LevelChunk.h:79
Definition MainChunkSource.h:16
static MCAPI void ** $vftable()
Definition Random.h:10
Definition LevelChunkFinalDeleter.h:5