LeviLamina
Loading...
Searching...
No Matches
RTree.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/level/biome/climate_utils/Parameter.h"
7
8// auto generated forward declare list
9// clang-format off
10class Biome;
11struct BiomeNoiseTarget;
12namespace ClimateUtils { struct TargetSpace; }
13// clang-format on
14
15class RTree {
16public:
17 // RTree inner types declare
18 // clang-format off
19 class Node;
20 struct Hint;
21 // clang-format on
22
23 // RTree inner types define
24 class Node {
25 public:
26 // member variables
27 // NOLINTBEGIN
28 ::ll::TypedStorage<8, 112, ::std::array<::ClimateUtils::Parameter, 7>> mParameterSpace;
29 ::ll::TypedStorage<8, 24, ::std::vector<::RTree::Node>> mChildren;
30 ::ll::TypedStorage<8, 16, ::std::optional<::Biome const*>> mBiome;
31 ::ll::TypedStorage<8, 8, int64> mTotalMagnitude;
32 // NOLINTEND
33
34 public:
35 // member functions
36 // NOLINTBEGIN
37 MCAPI void
38 search(::ClimateUtils::TargetSpace const& target, ::std::pair<::RTree::Node const*, int64>& closestLeaf) const;
39 // NOLINTEND
40
41 public:
42 // static functions
43 // NOLINTBEGIN
44 MCAPI static ::std::optional<::RTree::Node> branch(::std::vector<::RTree::Node>&& children);
45
46 MCAPI static void sort(::std::vector<::RTree::Node>& children, int dimension, bool absolute);
47 // NOLINTEND
48 };
49
50 struct Hint {
51 public:
52 // member variables
53 // NOLINTBEGIN
54 ::ll::TypedStorage<8, 8, ::RTree::Node const*> node;
55 // NOLINTEND
56 };
57
58public:
59 // member variables
60 // NOLINTBEGIN
61 ::ll::TypedStorage<8, 160, ::RTree::Node const> mRoot;
62 // NOLINTEND
63
64public:
65 // static functions
66 // NOLINTBEGIN
67 MCAPI static ::std::optional<::RTree::Node> build(::std::vector<::RTree::Node>&& children);
68
69 MCAPI static ::std::optional<::RTree> create(::std::vector<::BiomeNoiseTarget> const& biomes);
70 // NOLINTEND
71};
Definition Biome.h:23
Definition RTree.h:24
Definition RTree.h:15
Definition BiomeNoiseTarget.h:13
Definition TargetSpace.h:7
Definition RTree.h:50