Skip to content
LeviMC
English
AutoLightDark
LeviLamina
Loading...
Searching...
No Matches
StructureTemplatePool.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/level/levelgen/structure/Projection.h"
7
8// auto generated forward declare list
9// clang-format off
10class Random;
14// clang-format on
15
16class StructureTemplatePool {
17public:
18 // member variables
19 // NOLINTBEGIN
20 ::ll::TypedStorage<8, 32, ::std::string> mName;
21 ::ll::TypedStorage<8, 24, ::std::vector<::StructurePoolElement const*>> mTemplates;
22 ::ll::TypedStorage<8, 32, ::std::string> mFallback;
23 // NOLINTEND
24
25public:
26 // prevent constructor by default
27 StructureTemplatePool();
28
29public:
30 // member functions
31 // NOLINTBEGIN
33 ::std::string name,
34 ::std::string fallback,
35 ::std::vector<::std::pair<::StructurePoolElement const*, int>> const& templates
36 );
37
38 MCNAPI ::std::vector<uint64> getShuffledTemplateIndexes(::Random& random) const;
39
41 // NOLINTEND
42
43public:
44 // static functions
45 // NOLINTBEGIN
46 MCNAPI static ::std::unique_ptr<::StructureTemplatePool> create(
48 ::std::string_view name,
49 ::std::string_view fallback,
50 ::std::initializer_list<::WeightedStructureTemplateRegistration> pieces,
51 ::Projection projection
52 );
53 // NOLINTEND
54
55public:
56 // constructor thunks
57 // NOLINTBEGIN
58 MCNAPI void* $ctor(
59 ::std::string name,
60 ::std::string fallback,
61 ::std::vector<::std::pair<::StructurePoolElement const*, int>> const& templates
62 );
63 // NOLINTEND
64
65public:
66 // destructor thunk
67 // NOLINTBEGIN
68 MCNAPI void $dtor();
69 // NOLINTEND
70};
Definition Random.h:10
Definition StructurePoolElement.h:39
MCAPI ::std::vector< uint64 > getShuffledTemplateIndexes(::Random &random) const
MCAPI void * $ctor(::std::string name, ::std::string fallback, ::std::vector<::std::pair<::StructurePoolElement const *, int > > const &templates)
static MCAPI ::std::unique_ptr<::StructureTemplatePool > create(::StructureTemplateRegistrationContext context, ::std::string_view name, ::std::string_view fallback, ::std::initializer_list<::WeightedStructureTemplateRegistration > pieces, ::Projection projection)
MCAPI StructureTemplatePool(::std::string name, ::std::string fallback, ::std::vector<::std::pair<::StructurePoolElement const *, int > > const &templates)
MCAPI ~StructureTemplatePool()
Definition StructureTemplateRegistrationContext.h:17
Definition WeightedStructureTemplateRegistration.h:14
Definition context.h:5