LeviLamina
Loading...
Searching...
No Matches
BlockComponentDescription.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/utility/json_utils/JsonSchemaObjectNode.h"
7
8// auto generated forward declare list
9// clang-format off
12class CompoundTag;
13class EntityContext;
14class SemVersion;
16namespace JsonUtil { class EmptyClass; }
17namespace cereal { struct ReflectionCtx; }
18// clang-format on
19
21public:
22 // member variables
23 // NOLINTBEGIN
25 // NOLINTEND
26
27public:
28 // prevent constructor by default
32
33public:
34 // virtual functions
35 // NOLINTBEGIN
36 // vIndex: 0
38
39 // vIndex: 1
40 virtual ::std::string const& getName() const;
41
42 // vIndex: 3
43 virtual void initializeComponent(::EntityContext& entity) const;
44
45 // vIndex: 2
46 virtual void initializeComponent(::BlockComponentStorage& blockComponentStorage) const;
47
48 // vIndex: 5
49 virtual void initializeComponentFromCode(::EntityContext& entity) const;
50
51 // vIndex: 4
52 virtual void initializeComponentFromCode(::BlockComponentStorage& blockComponentStorage) const;
53
54 // vIndex: 6
55 virtual void buildSchema(
57 componentSchema,
58 ::BlockComponentFactory const& factory
59 ) const;
60
61 // vIndex: 7
62 virtual bool isNetworkComponent() const;
63
64 // vIndex: 8
65 virtual ::std::unique_ptr<::CompoundTag> buildNetworkTag(::cereal::ReflectionCtx const& ctx) const;
66
67 // vIndex: 9
68 virtual void initializeFromNetwork(::CompoundTag const& tag, ::cereal::ReflectionCtx const& ctx);
69
70 // vIndex: 10
71 virtual void handleVersionBasedInitialization(::SemVersion const& originalJsonVersion);
72 // NOLINTEND
73
74public:
75 // destructor thunk
76 // NOLINTBEGIN
77 MCFOLD void $dtor();
78 // NOLINTEND
79
80public:
81 // virtual function thunks
82 // NOLINTBEGIN
83 MCFOLD ::std::string const& $getName() const;
84
85 MCFOLD void $initializeComponent(::EntityContext& entity) const;
86
87 MCFOLD void $initializeComponent(::BlockComponentStorage& blockComponentStorage) const;
88
89 MCFOLD void $initializeComponentFromCode(::EntityContext& entity) const;
90
91 MCFOLD void $initializeComponentFromCode(::BlockComponentStorage& blockComponentStorage) const;
92
93 MCFOLD void $buildSchema(
95 componentSchema,
96 ::BlockComponentFactory const& factory
97 ) const;
98
99 MCFOLD bool $isNetworkComponent() const;
100
101 MCFOLD ::std::unique_ptr<::CompoundTag> $buildNetworkTag(::cereal::ReflectionCtx const& ctx) const;
102
103 MCFOLD void $initializeFromNetwork(::CompoundTag const& tag, ::cereal::ReflectionCtx const& ctx);
104
105 MCFOLD void $handleVersionBasedInitialization(::SemVersion const& originalJsonVersion);
106 // NOLINTEND
107
108public:
109 // vftables
110 // NOLINTBEGIN
111 MCAPI static void** $vftable();
112 // NOLINTEND
113};
Definition BlockComponentFactory.h:19
Definition BlockComponentStorage.h:8
Definition CompoundTag.h:13
Definition EntityContext.h:16
Definition JsonSchemaObjectNode.h:8
Definition SemVersion.h:15
Definition BlockComponentDescription.h:20
Definition BlockComponentGroupDescription.h:11
Definition ReflectionCtx.h:11
Definition ctx.h:5
Definition Alias.h:14