LeviLamina
Loading...
Searching...
No Matches
LevelChunkGarbageCollector.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated forward declare list
6// clang-format off
7class Dimension;
8class LevelChunk;
10// clang-format on
11
12class LevelChunkGarbageCollector {
13public:
14 // member variables
15 // NOLINTBEGIN
16 ::ll::TypedStorage<8, 8, ::Dimension&> mDimension;
17 ::ll::TypedStorage<8, 80, ::std::mutex> mMutex;
18 ::ll::TypedStorage<8, 24, ::std::vector<::std::unique_ptr<::LevelChunk, ::LevelChunkFinalDeleter>>>
19 mLevelChunksToDiscard;
20 ::ll::TypedStorage<8, 8, ::std::atomic<uint64>> mPendingDeletes;
21 // NOLINTEND
22
23public:
24 // prevent constructor by default
25 LevelChunkGarbageCollector& operator=(LevelChunkGarbageCollector const&);
26 LevelChunkGarbageCollector(LevelChunkGarbageCollector const&);
27 LevelChunkGarbageCollector();
28
29public:
30 // member functions
31 // NOLINTBEGIN
32 MCAPI void acquireDiscardedChunk(::std::unique_ptr<::LevelChunk> discarded);
33
34 MCAPI void flush();
35 // NOLINTEND
36};
Definition Dimension.h:86
Definition LevelChunk.h:77
Definition LevelChunkFinalDeleter.h:5