37 struct HeightmapData {
41 ::ll::TypedStorage<1, 1, ::SubChunkPacketPayload::HeightMapDataType> mHeightMapType;
42 ::ll::TypedStorage<1, 257, ::std::optional<::std::array<::std::array<schar, 16>, 16>>> mSubchunkHeightMap;
43 ::ll::TypedStorage<1, 1, ::SubChunkPacketPayload::HeightMapDataType> mRenderHeightMapType;
44 ::ll::TypedStorage<1, 257, ::std::optional<::std::array<::std::array<schar, 16>, 16>>> mSubchunkRenderHeightMap;
49 mHeightMapType = HeightMapDataType::NoData;
50 mRenderHeightMapType = HeightMapDataType::NoData;
58 ::ll::TypedStorage<1, 1, schar> mX;
59 ::ll::TypedStorage<1, 1, schar> mY;
60 ::ll::TypedStorage<1, 1, schar> mZ;
64 struct SubChunkPacketData {
68 ::ll::TypedStorage<1, 3, ::SubChunkPacketPayload::SubChunkPosOffset> mSubChunkPosOffset;
69 ::ll::TypedStorage<1, 1, ::SubChunkPacketPayload::SubChunkRequestResult> mResult;
70 ::ll::TypedStorage<8, 40, ::std::optional<::std::string>> mSerializedSubChunk;
71 ::ll::TypedStorage<1, 516, ::SubChunkPacketPayload::HeightmapData> mHeightMapData;
72 ::ll::TypedStorage<8, 16, ::std::optional<uint64>> mBlobId;
76 SubChunkPacketData(
SubChunkPosOffset const& pos, SubChunkRequestResult requestResult) {
77 mSubChunkPosOffset = pos;
78 mResult = requestResult;
79 mSerializedSubChunk = {};
80 mHeightMapData->mHeightMapType = HeightMapDataType::NoData;
81 mHeightMapData->mRenderHeightMapType = HeightMapDataType::NoData;
85 SubChunkPacketData& operator=(SubChunkPacketData
const& rhs) {
86 mSubChunkPosOffset = rhs.mSubChunkPosOffset;
87 mSerializedSubChunk = rhs.mSerializedSubChunk;
88 mResult = rhs.mResult;
89 mHeightMapData->mHeightMapType = rhs.mHeightMapData->mHeightMapType;
90 mHeightMapData->mRenderHeightMapType = rhs.mHeightMapData->mRenderHeightMapType;
91 mBlobId = rhs.mBlobId;
95 SubChunkPacketData() {
96 mSubChunkPosOffset = {
101 mResult = SubChunkRequestResult::Undefined;
102 mSerializedSubChunk = {};
103 mHeightMapData->mHeightMapType = HeightMapDataType::NoData;
104 mHeightMapData->mRenderHeightMapType = HeightMapDataType::NoData;
114 MCAPI ~SubChunkPacketData();
134 ::ll::TypedStorage<8, 24, ::std::vector<::SubChunkPacketPayload::SubChunkPacketData>> mSubChunkData;