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/util/json_util/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 MCNAPI void $dtor();
78 // NOLINTEND
79
80public:
81 // virtual function thunks
82 // NOLINTBEGIN
83 MCNAPI ::std::string const& $getName() const;
84
85 MCNAPI void $initializeComponent(::EntityContext& entity) const;
86
87 MCNAPI void $initializeComponent(::BlockComponentStorage& blockComponentStorage) const;
88
90
91 MCNAPI void $initializeComponentFromCode(::BlockComponentStorage& blockComponentStorage) const;
92
93 MCNAPI void $buildSchema(
95 componentSchema,
96 ::BlockComponentFactory const& factory
97 ) const;
98
99 MCNAPI bool $isNetworkComponent() const;
100
101 MCNAPI ::std::unique_ptr<::CompoundTag> $buildNetworkTag(::cereal::ReflectionCtx const& ctx) const;
102
104
105 MCNAPI void $handleVersionBasedInitialization(::SemVersion const& originalJsonVersion);
106 // NOLINTEND
107
108public:
109 // vftables
110 // NOLINTBEGIN
111 MCNAPI 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
MCAPI ::std::unique_ptr<::CompoundTag > $buildNetworkTag(::cereal::ReflectionCtx const &ctx) const
MCAPI void $initializeFromNetwork(::CompoundTag const &tag, ::cereal::ReflectionCtx const &ctx)
MCAPI void $handleVersionBasedInitialization(::SemVersion const &originalJsonVersion)
MCAPI void $initializeComponent(::BlockComponentStorage &blockComponentStorage) const
MCAPI void $initializeComponent(::EntityContext &entity) const
MCAPI void $initializeComponentFromCode(::BlockComponentStorage &blockComponentStorage) const
MCAPI bool $isNetworkComponent() const
MCAPI void $buildSchema(::std::shared_ptr<::JsonUtil::JsonSchemaObjectNode<::JsonUtil::EmptyClass, ::BlockComponentGroupDescription > > &componentSchema, ::BlockComponentFactory const &factory) const
MCAPI void $initializeComponentFromCode(::EntityContext &entity) const
static MCAPI void ** $vftable()
MCAPI::std::string const & $getName() const
Definition BlockComponentGroupDescription.h:12
Definition ReflectionCtx.h:11
Definition ctx.h:5
Definition Alias.h:14