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
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 // NOLINTEND
62
63public:
64 // member functions
65 // NOLINTBEGIN
66 MCAPI bool _addLegacyFilter(
67 ::std::string const& name,
69 ::FilterInput const& filterInput
70 );
71
72 MCAPI bool _handleUnknownMember(::std::string const& name, ::Json::Value const& jsonVal);
73
74 MCAPI bool
75 _parseMemberCollectionJSONCpp(::FilterGroup::CollectionType collectionType, ::Json::Value const& jsonVal);
76
77 MCAPI bool _parseMemberJSONCpp(::std::string const& name, ::Json::Value const& jsonVal);
78
79 MCAPI bool _parseObjectJSONCpp(::std::string const& name, ::Json::Value const& jsonVal);
80
81 MCAPI bool _processLegacyArray(
82 ::std::string const& name,
83 ::Json::Value const& jsonVal,
85 );
86
87 MCAPI bool _processLegacyMember(
88 ::std::string const& name,
89 ::Json::Value const& jsonVal,
91 );
92
93 MCAPI bool evaluateActor(::Actor const& e, ::VariantParameterListConst const& params) const;
94 // NOLINTEND
95
96public:
97 // static functions
98 // NOLINTBEGIN
99 MCAPI static void initialize();
100 // NOLINTEND
101
102public:
103 // virtual function thunks
104 // NOLINTBEGIN
105 MCAPI bool $parse(::Json::Value const& jsonVal);
106
107 MCAPI ::std::shared_ptr<::FilterGroup> $_createSubgroup(::FilterGroup::CollectionType type) const;
108
109
110 // NOLINTEND
111
112public:
113 // vftables
114 // NOLINTBEGIN
115 MCAPI static void** $vftable();
116 // NOLINTEND
117};
Definition ActorFilterGroup.h:19
Definition Actor.h:123
Definition FilterGroup.h:20
Definition FilterInput.h:5
Definition Item.h:71
Definition Value.h:16
Definition ActorFilterGroup.h:37
Definition VariantParameterListConst.h:13