LeviLamina
Loading...
Searching...
No Matches
TickingAreaView.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/utility/AutomaticID.h"
7#include "mc/world/level/ticking/ITickingAreaView.h"
8
9// auto generated forward declare list
10// clang-format off
11class BlockSource;
12class ChunkPos;
13class ChunkSource;
14class ChunkViewSource;
15class Dimension;
16class Level;
17class LevelChunk;
18class Random;
19struct Bounds;
20struct Tick;
21namespace LevelChunkTicking { struct Registry; }
22// clang-format on
23
24class TickingAreaView : public ::ITickingAreaView {
25public:
26 // member variables
27 // NOLINTBEGIN
28 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::ChunkViewSource>> mTickingArea;
29 ::ll::TypedStorage<4, 4, uint> mPolicyHandle;
30 ::ll::TypedStorage<1, 1, bool> mInfluenceDirty;
31 ::ll::TypedStorage<1, 1, bool> mDoneLoading;
32 // NOLINTEND
33
34public:
35 // prevent constructor by default
36 TickingAreaView();
37
38public:
39 // virtual functions
40 // NOLINTBEGIN
41 virtual ~TickingAreaView() /*override*/;
42
43 virtual void init(::Bounds const& bounds, bool isCircle) /*override*/;
44
45 virtual void tick(::Tick const& currentTick, ::BlockSource& region, bool preload, bool randomize) /*override*/;
46
47 virtual void tickSeasons(::BlockSource& region, ::Random& random) /*override*/;
48
49 virtual ::DimensionType getDimensionId() const /*override*/;
50
51 virtual ::Bounds const& getBounds() const /*override*/;
52
53 virtual bool isCircle() const /*override*/;
54
55 virtual bool isDoneLoading() const /*override*/;
56
57 virtual bool checkInitialLoadDone(::Tick currentLevelTick) /*override*/;
58
59 virtual bool checkLoadedChunkNeighborsDone(::BlockSource const& region, bool useDoneLoading) const /*override*/;
60
61 virtual void move(::Bounds const& bounds) /*override*/;
62
63 virtual ::std::unique_ptr<::ChunkViewSource> createChildSource() /*override*/;
64
65 virtual ::std::shared_ptr<::LevelChunk> getAvailableChunk(::ChunkPos const& cp) /*override*/;
66 // NOLINTEND
67
68public:
69 // member functions
70 // NOLINTBEGIN
71 MCAPI explicit TickingAreaView(::ChunkSource& parent);
72
73 MCAPI bool _tickChunk(
74 ::Tick const& currentTick,
75 ::BlockSource& region,
76 ::Level& level,
77 ::ChunkPos const& cp,
79 );
80 // NOLINTEND
81
82public:
83 // constructor thunks
84 // NOLINTBEGIN
85 MCAPI void* $ctor(::ChunkSource& parent);
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 $init(::Bounds const& bounds, bool isCircle);
98
99 MCAPI void $tick(::Tick const& currentTick, ::BlockSource& region, bool preload, bool randomize);
100
101 MCAPI void $tickSeasons(::BlockSource& region, ::Random& random);
102
103 MCAPI ::DimensionType $getDimensionId() const;
104
105 MCAPI ::Bounds const& $getBounds() const;
106
107 MCAPI bool $isCircle() const;
108
109 MCAPI bool $isDoneLoading() const;
110
111 MCAPI bool $checkInitialLoadDone(::Tick currentLevelTick);
112
113 MCAPI bool $checkLoadedChunkNeighborsDone(::BlockSource const& region, bool useDoneLoading) const;
114
115 MCAPI void $move(::Bounds const& bounds);
116
117 MCAPI ::std::unique_ptr<::ChunkViewSource> $createChildSource();
118
119 MCAPI ::std::shared_ptr<::LevelChunk> $getAvailableChunk(::ChunkPos const& cp);
120
121
122 // NOLINTEND
123
124public:
125 // vftables
126 // NOLINTBEGIN
127 MCNAPI static void** $vftable();
128 // NOLINTEND
129};
Definition BlockSource.h:68
Definition ChunkPos.h:11
Definition ChunkSource.h:37
Definition ChunkViewSource.h:22
Definition Dimension.h:85
Definition ITickingAreaView.h:20
Definition LevelChunk.h:79
Definition Level.h:249
Definition Random.h:10
static MCAPI void ** $vftable()
Definition Bounds.h:8
Definition Registry.h:10
Definition Tick.h:5