LeviLamina
Loading...
Searching...
No Matches
LegacyChunkStorage.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/file/PathBuffer.h"
7#include "mc/world/level/chunk/ChunkSource.h"
8#include "mc/world/level/storage/StorageVersion.h"
9
10// auto generated forward declare list
11// clang-format off
12class Biome;
13class ChunkPos;
14class LevelChunk;
15class LevelStorage;
17class RegionFile;
19namespace Bedrock::Threading { class Mutex; }
20// clang-format on
21
23public:
24 // member variables
25 // NOLINTBEGIN
26 ::ll::TypedStorage<1, 1, bool> mDone;
27 ::ll::TypedStorage<8, 40, ::PerlinSimplexNoise const> mGrassNoise;
28 ::ll::TypedStorage<8, 32, ::Core::PathBuffer<::std::string> const> mLevelPath;
29 ::ll::TypedStorage<8, 32, ::Core::PathBuffer<::std::string> const> mImportedChunksPath;
30 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::RegionFile>> mRegionFile;
31 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::RegionFile>> mEntitiesFile;
32 ::ll::TypedStorage<4, 4, ::StorageVersion> mLoadedStorageVersion;
33 ::ll::TypedStorage<8, 8, ::Biome&> mDefaultBiome;
34 ::ll::TypedStorage<8, 64, ::std::unordered_map<::ChunkPos, ::std::string>> mChunkEntities;
35 ::ll::TypedStorage<8, 64, ::std::unordered_map<::ChunkPos, ::std::string>> mChunkBlockEntities;
36 ::ll::TypedStorage<8, 80, ::Bedrock::Threading::Mutex> mRegionFileMutex;
37 ::ll::TypedStorage<8, 80, ::Bedrock::Threading::Mutex> mChunkMapMutex;
38 // NOLINTEND
39
40public:
41 // virtual functions
42 // NOLINTBEGIN
43 // vIndex: 0
44 virtual ~LegacyChunkStorage() /*override*/;
45
46 // vIndex: 11
47 virtual void loadChunk(::LevelChunk& lc, bool forceImmediateReplacementDataLoad) /*override*/;
48
49 // vIndex: 14
50 virtual bool saveLiveChunk(::LevelChunk& lc) /*override*/;
51
52 // vIndex: 20
53 virtual void acquireDiscarded(::std::unique_ptr<::LevelChunk, ::LevelChunkFinalDeleter> ptr) /*override*/;
54 // NOLINTEND
55
56public:
57 // member functions
58 // NOLINTBEGIN
60 ::std::unique_ptr<::ChunkSource> parent,
61 ::LevelStorage& levelStorage,
62 ::StorageVersion v,
63 ::Biome& defaultBiome
64 );
65
66 MCAPI bool _isImported(::ChunkPos const& pos);
67
68 MCAPI bool _loadChunk(::LevelChunk& lc);
69
70 MCAPI void _loadEntities();
71
72 MCAPI void _markChunkAsImported(::ChunkPos const& pos);
73
74 MCAPI bool _openRegionFile();
75 // NOLINTEND
76
77public:
78 // constructor thunks
79 // NOLINTBEGIN
80 MCAPI void* $ctor(
81 ::std::unique_ptr<::ChunkSource> parent,
82 ::LevelStorage& levelStorage,
83 ::StorageVersion v,
84 ::Biome& defaultBiome
85 );
86 // NOLINTEND
87
88public:
89 // destructor thunk
90 // NOLINTBEGIN
91 MCAPI void $dtor();
92 // NOLINTEND
93
94public:
95 // virtual function thunks
96 // NOLINTBEGIN
97 MCAPI void $loadChunk(::LevelChunk& lc, bool forceImmediateReplacementDataLoad);
98
99 MCAPI bool $saveLiveChunk(::LevelChunk& lc);
100
101 MCAPI void $acquireDiscarded(::std::unique_ptr<::LevelChunk, ::LevelChunkFinalDeleter> ptr);
102 // NOLINTEND
103
104public:
105 // vftables
106 // NOLINTBEGIN
107 MCAPI static void** $vftable();
108 // NOLINTEND
109};
Definition Biome.h:27
Definition ChunkPos.h:11
Definition ChunkSource.h:34
Definition LegacyChunkStorage.h:22
Definition LevelChunk.h:73
Definition LevelStorage.h:24
Definition PerlinSimplexNoise.h:13
Definition RegionFile.h:11
Definition LevelChunkFinalDeleter.h:5