LeviLamina
Loading...
Searching...
No Matches
ActorDefinitionDiffList.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/entity/factory/DefinitionInstanceGroup.h"
7
8// auto generated forward declare list
9// clang-format off
12struct DiffListPair;
13// clang-format on
14
15class ActorDefinitionDiffList {
16public:
17 // member variables
18 // NOLINTBEGIN
19 ::ll::TypedStorage<8, 8, ::ActorDefinitionGroup&> mDefinitions;
20 ::ll::TypedStorage<8, 24, ::std::vector<::DiffListPair>> mDefinitionStack;
21 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::ActorDefinitionDescriptor>> mChangedDescription;
22 ::ll::TypedStorage<1, 1, bool> mChanged;
23 ::ll::TypedStorage<8, 72, ::DefinitionInstanceGroup> mAddedDefinitionGroup;
24 ::ll::TypedStorage<8, 72, ::DefinitionInstanceGroup> mRemovedDefinitionGroup;
25 ::ll::TypedStorage<8, 64, ::std::unordered_map<uint64, ::std::variant<int, float, bool, uint64>>>
26 mPendingPropertyChanges;
27 ::ll::TypedStorage<1, 1, bool> mLockedChanges;
28 ::ll::TypedStorage<8, 24, ::std::vector<::std::pair<bool, ::std::string>>> mPendingChanges;
29 ::ll::TypedStorage<8, 64, ::std::unordered_map<uint64, ::std::variant<int, float, bool, uint64>>>
30 mDeferredPropertyChanges;
31 // NOLINTEND
32
33public:
34 // prevent constructor by default
35 ActorDefinitionDiffList& operator=(ActorDefinitionDiffList const&);
36 ActorDefinitionDiffList(ActorDefinitionDiffList const&);
37 ActorDefinitionDiffList();
38
39public:
40 // member functions
41 // NOLINTBEGIN
42 MCAPI explicit ActorDefinitionDiffList(::ActorDefinitionGroup& definitions);
43
44 MCAPI ::std::unique_ptr<::ActorDefinitionDescriptor> _getDescriptionFrom(uint64 start, uint64 end);
45
46 MCAPI void _updateStack();
47
48 MCAPI void addDefinition(::std::string const& def);
49
50 MCAPI void addPendingPropertyChange(uint64 overallPropertyIndex, ::std::variant<int, float, bool, uint64> value);
51
52 MCAPI void clearChangedDescription();
53
54 MCAPI ::std::string definitionListToString(::std::string const& delimiter) const;
55
56 MCFOLD ::ActorDefinitionDescriptor& getChangedDescription();
57
58 MCFOLD ::std::vector<::DiffListPair> const& getDefinitionStack() const;
59
60 MCAPI bool hasDefinition(::std::string const& def) const;
61
62 MCAPI void removeDefinition(::std::string const& def);
63
64 MCAPI void setDefinitionStack(::std::vector<::DiffListPair>& stack);
65
66 MCAPI void unlockChanges();
67
68 MCAPI ~ActorDefinitionDiffList();
69 // NOLINTEND
70
71public:
72 // constructor thunks
73 // NOLINTBEGIN
74 MCAPI void* $ctor(::ActorDefinitionGroup& definitions);
75 // NOLINTEND
76
77public:
78 // destructor thunk
79 // NOLINTBEGIN
80 MCAPI void $dtor();
81 // NOLINTEND
82};
Definition ActorDefinitionDescriptor.h:74
Definition ActorDefinitionGroup.h:37
Definition DiffListPair.h:10