Skip to content
LeviMC
English
AutoLightDark
LeviLamina
Loading...
Searching...
No Matches
SynchedActorData.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated forward declare list
6// clang-format off
7class Actor;
8class CompoundTag;
9class DataItem;
10class EntityContext;
11class Vec3;
12// clang-format on
13
14class SynchedActorData {
15public:
16 // SynchedActorData inner types declare
17 // clang-format off
18 struct CopyableDataList;
19 // clang-format on
20
21 // SynchedActorData inner types define
22 struct CopyableDataList {
23 public:
24 // member variables
25 // NOLINTBEGIN
26 ::ll::TypedStorage<8, 24, ::std::vector<::std::unique_ptr<::DataItem>>> mData;
27 // NOLINTEND
28
29 public:
30 // prevent constructor by default
31 CopyableDataList(CopyableDataList const&);
32 CopyableDataList();
33
34 public:
35 // member functions
36 // NOLINTBEGIN
37 MCNAPI ::SynchedActorData::CopyableDataList& operator=(::SynchedActorData::CopyableDataList const& other);
38
40 // NOLINTEND
41
42 public:
43 // destructor thunk
44 // NOLINTBEGIN
45 MCNAPI void $dtor();
46 // NOLINTEND
47 };
48
49 using DataList = ::std::vector<::std::unique_ptr<::DataItem>>;
50
51 using ID = ushort;
52
53 using TypeFloat = float;
54
55 using TypeInt = int;
56
57 using TypeInt64 = int64;
58
59 using TypeInt8 = schar;
60
61 using TypeShort = short;
62
63 using TypeString = ::std::string;
64
65 using TypeVec3 = ::Vec3;
66
67public:
68 template <class T>
69 MCAPI void set(ushort id, T const& value);
70
71public:
72 // member variables
73 // NOLINTBEGIN
74 ::ll::TypedStorage<8, 24, ::std::vector<::std::unique_ptr<::DataItem>>> mItemsArray;
75 ::ll::TypedStorage<8, 24, ::std::bitset<142>> mDirtyFlags;
76 ::ll::TypedStorage<8, 24, ::std::bitset<142>> mHasComponentData;
77 // NOLINTEND
78
79public:
80 // prevent constructor by default
81 SynchedActorData& operator=(SynchedActorData const&);
82 SynchedActorData(SynchedActorData const&);
83 SynchedActorData();
84
85public:
86 // member functions
87 // NOLINTBEGIN
88 MCNAPI ::SynchedActorData _clone() const;
89
90#ifdef LL_PLAT_C
91 MCNAPI bool assignValue(::DataItem const& newItem);
92
93 MCNAPI void assignValues(
94 ::std::vector<::std::unique_ptr<::DataItem>> const& items,
95 ::Actor& actor,
96 ::std::optional<uint64> targetFrame
97 );
98#endif
99
100 MCNAPI ::CompoundTag const& getCompoundTag(ushort id) const;
101
102 MCNAPI ::SynchedActorData& operator=(::SynchedActorData&& rhs);
103
104 MCAPI ::std::vector<::std::unique_ptr<::DataItem>> packAll(::EntityContext const& entity) const;
105
106 MCNAPI ::std::vector<::std::unique_ptr<::DataItem>> packDirty(::EntityContext& entity);
107
108#ifdef LL_PLAT_C
109 MCNAPI void queueAssignment(
110 ::std::vector<::std::unique_ptr<::DataItem>> const& items,
111 ::Actor& actor,
112 ::std::optional<uint64> targetFrame
113 );
114#endif
115
117 // NOLINTEND
118
119public:
120 // static functions
121 // NOLINTBEGIN
122 MCNAPI static ::std::vector<::std::unique_ptr<::DataItem>>
123 cloneDataList(::std::vector<::std::unique_ptr<::DataItem>> const& list);
124 // NOLINTEND
125
126public:
127 // static variables
128 // NOLINTBEGIN
129 MCNAPI static ::std::string const& DIFF_ITEM_NULL();
130 // NOLINTEND
131
132public:
133 // destructor thunk
134 // NOLINTBEGIN
135 MCNAPI void $dtor();
136 // NOLINTEND
137};
Definition Actor.h:116
Definition CompoundTag.h:18
Definition DataItem.h:14
Definition EntityContext.h:15
static MCAPI ::std::string const & DIFF_ITEM_NULL()
static MCAPI ::std::vector<::std::unique_ptr<::DataItem > > cloneDataList(::std::vector<::std::unique_ptr<::DataItem > > const &list)
MCAPI ~SynchedActorData()
MCAPI::CompoundTag const & getCompoundTag(ushort id) const
MCAPI::SynchedActorData _clone() const
MCAPI::SynchedActorData & operator=(::SynchedActorData &&rhs)
MCAPI void $dtor()
MCAPI ::std::vector<::std::unique_ptr<::DataItem > > packDirty(::EntityContext &entity)
Definition Vec3.h:10
Definition SynchedActorData.h:22
MCAPI::SynchedActorData::CopyableDataList & operator=(::SynchedActorData::CopyableDataList const &other)