LeviLamina
Loading...
Searching...
No Matches
InternalComponentRegistry.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/string/HashedString.h"
7
8// auto generated forward declare list
9// clang-format off
10class Actor;
11class CompoundTag;
12class DataLoadHelper;
13// clang-format on
14
16public:
17 // InternalComponentRegistry inner types declare
18 // clang-format off
19 struct ComponentInfo;
20 // clang-format on
21
22 // InternalComponentRegistry inner types define
23 struct ComponentInfo {
24 public:
25 // member variables
26 // NOLINTBEGIN
27 ::ll::TypedStorage<8, 64, ::std::function<void(::CompoundTag const&, ::CompoundTag&)>>
28 mLegacyDataConversionFunc;
29 ::ll::TypedStorage<8, 64, ::std::function<void(::Actor&, ::CompoundTag const&)>> mCreateAndLoadComponentFunc;
30 ::ll::TypedStorage<8, 64, ::std::function<void(::Actor const&, ::CompoundTag&)>> mSaveComponentFunc;
31 // NOLINTEND
32
33 public:
34 // prevent constructor by default
35 ComponentInfo& operator=(ComponentInfo const&);
36 ComponentInfo(ComponentInfo const&);
37 ComponentInfo();
38
39 public:
40 // member functions
41 // NOLINTBEGIN
42 MCAPI ::InternalComponentRegistry::ComponentInfo& operator=(::InternalComponentRegistry::ComponentInfo&&);
43
44 MCAPI ~ComponentInfo();
45 // NOLINTEND
46
47 public:
48 // destructor thunk
49 // NOLINTBEGIN
50 MCFOLD void $dtor();
51 // NOLINTEND
52 };
53
54public:
55 // member variables
56 // NOLINTBEGIN
57 ::ll::TypedStorage<8, 64, ::std::unordered_map<::HashedString, ::InternalComponentRegistry::ComponentInfo>>
58 mRegistry;
59 // NOLINTEND
60
61public:
62 // virtual functions
63 // NOLINTBEGIN
65
66 virtual void registerComponents();
67 // NOLINTEND
68
69public:
70 // member functions
71 // NOLINTBEGIN
72 MCAPI void _initializeComponents(::Actor& owner, ::CompoundTag const& tag, ::DataLoadHelper& dataLoadHelper) const;
73
74 MCAPI void addComponentSaveData(::Actor const& owner, ::CompoundTag& tag);
75
76 MCAPI void initializeComponents(::Actor& owner, ::CompoundTag const& tag, ::DataLoadHelper& dataLoadHelper) const;
77 // NOLINTEND
78
79public:
80 // static functions
81 // NOLINTBEGIN
82 MCAPI static ::CompoundTag& _getOrCreateComponentScope(::CompoundTag& tag, ::std::string const& componentName);
83 // NOLINTEND
84
85public:
86 // static variables
87 // NOLINTBEGIN
88 MCAPI static ::std::string const& INTERNAL_COMPONENTS();
89 // NOLINTEND
90
91public:
92 // destructor thunk
93 // NOLINTBEGIN
94 MCAPI void $dtor();
95 // NOLINTEND
96
97public:
98 // virtual function thunks
99 // NOLINTBEGIN
100 MCAPI void $registerComponents();
101
102
103 // NOLINTEND
104
105public:
106 // vftables
107 // NOLINTBEGIN
108 MCAPI static void** $vftable();
109 // NOLINTEND
110};
Definition Actor.h:125
Definition CompoundTag.h:23
Definition DataLoadHelper.h:20
Definition InternalComponentRegistry.h:15
Definition InternalComponentRegistry.h:23