LeviLamina
Loading...
Searching...
No Matches
ActorFilterGroup.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/shared_types/legacy/FilterSubject.h"
7#include "mc/world/filters/FilterGroup.h"
8#include "mc/world/filters/FilterOperator.h"
9#include "mc/world/filters/FilterTest.h"
10
11// auto generated forward declare list
12// clang-format off
13class Actor;
14class FilterInput;
16namespace Json { class Value; }
17// clang-format on
18
19class ActorFilterGroup : public ::FilterGroup {
20public:
21 // ActorFilterGroup inner types declare
22 // clang-format off
23 struct LegacyMapping;
24 // clang-format on
25
26 // ActorFilterGroup inner types define
27 enum class Processing : int {
28 Default = 0,
29 ReadValue = 1,
30 ReadString = 2,
31 Environment = 3,
32 Item = 4,
33 Armor = 5,
34 Equipment = 6,
35 };
36
37 struct LegacyMapping {
38 public:
39 // member variables
40 // NOLINTBEGIN
41 ::ll::TypedStorage<4, 4, ::FilterGroup::CollectionType> mType;
42 ::ll::TypedStorage<8, 8, ::FilterTest::Definition const&> mFilterDef;
43 ::ll::TypedStorage<2, 2, ::SharedTypes::Legacy::FilterSubject> mSubject;
44 ::ll::TypedStorage<2, 2, ::FilterOperator> mOperator;
45 ::ll::TypedStorage<4, 4, ::ActorFilterGroup::Processing> mProcess;
46 // NOLINTEND
47
48 public:
49 // prevent constructor by default
50 LegacyMapping& operator=(LegacyMapping const&);
51 LegacyMapping(LegacyMapping const&);
52 LegacyMapping();
53 };
54
55public:
56 // virtual functions
57 // NOLINTBEGIN
58 virtual bool parse(::Json::Value const& jsonVal) /*override*/;
59
60 virtual ::std::shared_ptr<::FilterGroup> _createSubgroup(::FilterGroup::CollectionType type) const /*override*/;
61
62 virtual ~ActorFilterGroup() /*override*/;
63 // NOLINTEND
64
65public:
66 // member functions
67 // NOLINTBEGIN
68 MCAPI bool _addLegacyFilter(
69 ::std::string const& name,
71 ::FilterInput const& filterInput
72 );
73
74 MCAPI bool _handleUnknownMember(::std::string const& name, ::Json::Value const& jsonVal);
75
76 MCAPI bool
77 _parseMemberCollectionJSONCpp(::FilterGroup::CollectionType collectionType, ::Json::Value const& jsonVal);
78
79 MCAPI bool _parseMemberJSONCpp(::std::string const& name, ::Json::Value const& jsonVal);
80
81 MCAPI bool _parseObjectJSONCpp(::std::string const& name, ::Json::Value const& jsonVal);
82
83 MCAPI bool _processLegacyArray(
84 ::std::string const& name,
85 ::Json::Value const& jsonVal,
87 );
88
89 MCAPI bool _processLegacyMember(
90 ::std::string const& name,
91 ::Json::Value const& jsonVal,
93 );
94
95 MCAPI bool evaluateActor(::Actor const& e, ::VariantParameterListConst const& params) const;
96 // NOLINTEND
97
98public:
99 // static functions
100 // NOLINTBEGIN
101 MCAPI static void initialize();
102 // NOLINTEND
103
104public:
105 // destructor thunk
106 // NOLINTBEGIN
107 MCFOLD void $dtor();
108 // NOLINTEND
109
110public:
111 // virtual function thunks
112 // NOLINTBEGIN
113 MCAPI bool $parse(::Json::Value const& jsonVal);
114
115 MCAPI ::std::shared_ptr<::FilterGroup> $_createSubgroup(::FilterGroup::CollectionType type) const;
116
117
118 // NOLINTEND
119
120public:
121 // vftables
122 // NOLINTBEGIN
123 MCAPI static void** $vftable();
124 // NOLINTEND
125};
Definition ActorFilterGroup.h:19
Definition Actor.h:105
static MCAPI void ** $vftable()
Definition FilterInput.h:5
Definition Item.h:69
Definition Value.h:16
Definition ActorFilterGroup.h:37
Definition VariantParameterListConst.h:13