LeviLamina
Loading...
Searching...
No Matches
GridArea.h
1
#pragma once
2
3
#include "mc/_HeaderOutputPredefine.h"
4
#include "mc/deps/core/threading/SharedLockbox.h"
5
#include "mc/deps/core/utility/buffer_span.h"
6
#include "mc/util/Bounds.h"
7
#include "mc/world/Pos.h"
8
9
10
template
<
typename
T0>
11
class
GridArea
{
12
public
:
13
struct
GridAreaChunkData
{
14
Bounds
mBounds;
15
std::vector<T0> mChunks;
16
std::vector<T0> mNewChunks;
17
};
18
19
std::function<void(
buffer_span_mut<T0>
)> mDestroyCallback;
20
std::function<void(
buffer_span<Pos>
,
buffer_span_mut<T0>
,
int
)> mGenerateCallback;
21
std::function<void(gsl::span<T0>)> mAddCallback;
22
Bedrock::Threading::SharedLockbox<GridArea<T0>::GridAreaChunkData
, std::shared_mutex> mChunkDataBox;
23
bool
mCircle;
24
short
mMinHeight;
25
short
mMaxHeight;
26
};
Bedrock::Threading::SharedLockbox
Definition
SharedLockbox.h:9
GridArea
Definition
GridArea.h:11
buffer_span_mut
Definition
_HeaderOutputPredefine.h:348
buffer_span
Definition
buffer_span.h:6
Bounds
Definition
Bounds.h:8
GridArea::GridAreaChunkData
Definition
GridArea.h:13
src
mc
util
GridArea.h
Generated on
for LeviLamina by
1.16.1