LeviLamina
Loading...
Searching...
No Matches
FilterGroup.h
1
#pragma once
2
3
#include "mc/_HeaderOutputPredefine.h"
4
5
// auto generated inclusion list
6
#include "mc/world/filters/FilterTest.h"
7
8
// auto generated forward declare list
9
// clang-format off
10
class
FilterInput
;
11
class
FilterTest
;
12
struct
FilterContext
;
13
struct
FilterInputs
;
14
struct
FilterParamDefinition
;
15
namespace
Json {
class
Value; }
16
namespace
SharedTypes::v1_21_20 {
struct
FilterGroupData; }
17
namespace
SharedTypes::v1_21_20 {
struct
FilterTestData; }
18
// clang-format on
19
20
class
FilterGroup
{
21
public
:
22
// FilterGroup inner types define
23
enum class
CollectionType :
int
{
24
And = 0,
25
Or = 1,
26
Not = 2,
27
};
28
29
public
:
30
// member variables
31
// NOLINTBEGIN
32
::ll::UntypedStorage<4, 4>
mUnkdd1627;
33
::ll::UntypedStorage<8, 24>
mUnkc039d0;
34
::ll::UntypedStorage<8, 24>
mUnk378121;
35
// NOLINTEND
36
37
public
:
38
// prevent constructor by default
39
FilterGroup
& operator=(
FilterGroup
const
&);
40
FilterGroup
();
41
42
public
:
43
// virtual functions
44
// NOLINTBEGIN
45
// vIndex: 0
46
virtual
~FilterGroup
() =
default
;
47
48
// vIndex: 1
49
virtual
bool
parse(
::Json::Value
const
& jsonVal);
50
51
// vIndex: 2
52
virtual ::std::shared_ptr<::FilterGroup> _createSubgroup(::FilterGroup::CollectionType)
const
= 0;
53
54
// vIndex: 3
55
virtual
bool
_setupContext(
::FilterTest
const
& test,
::FilterContext
&
context
)
const
;
56
// NOLINTEND
57
58
public
:
59
// member functions
60
// NOLINTBEGIN
61
MCAPI
FilterGroup
(
::FilterGroup
const
&);
62
63
MCAPI
bool
_parseFilterInputs(
64
::SharedTypes::v1_21_20::FilterTestData
const
& filterTestData,
65
::FilterTest::Definition
const
& filterDef,
66
::FilterInputs
& inputs
67
);
68
69
MCAPI
bool
_parseFilterParam(
70
::std::string
const
& filter,
71
::std::string
const
& member,
72
::std::optional<::std::variant<bool, int, float, ::std::string>> param,
73
::FilterParamDefinition
const
& paramDef,
74
::FilterInput
& input
75
);
76
77
MCAPI
bool
_parseMemberCollection(
78
::FilterGroup::CollectionType collectionType,
79
::SharedTypes::v1_21_20::FilterGroupData
const
& filterGroupData
80
);
81
82
MCAPI
bool
_parseObject(
::SharedTypes::v1_21_20::FilterGroupData
const
& filterGroupData);
83
84
MCAPI
bool
_parseTest(
::SharedTypes::v1_21_20::FilterTestData
const
& filterTestData);
85
86
MCAPI
bool
addFilterTest(
::FilterTest::Definition
const
& filterDef,
::FilterInputs
const
& inputs);
87
88
MCAPI
bool
evaluate(::std::array<::FilterContext, 10>& contextSet)
const
;
89
90
MCAPI
void
serialize
(
::Json::Value
& jsonVal)
const
;
91
// NOLINTEND
92
93
public
:
94
// constructor thunks
95
// NOLINTBEGIN
96
MCAPI
void
* $ctor(
::FilterGroup
const
&);
97
// NOLINTEND
98
99
public
:
100
// destructor thunk
101
// NOLINTBEGIN
102
103
// NOLINTEND
104
105
public
:
106
// virtual function thunks
107
// NOLINTBEGIN
108
MCAPI
bool
$parse(
::Json::Value
const
& jsonVal);
109
110
MCAPI
bool
$_setupContext(
::FilterTest
const
& test,
::FilterContext
&
context
)
const
;
111
// NOLINTEND
112
113
public
:
114
// vftables
115
// NOLINTBEGIN
116
MCAPI
static
void
** $vftable();
117
// NOLINTEND
118
};
FilterGroup
Definition
FilterGroup.h:20
FilterInput
Definition
FilterInput.h:5
FilterTest
Definition
FilterTest.h:13
Json::Value
Definition
Value.h:16
FilterContext
Definition
FilterContext.h:5
FilterInputs
Definition
FilterInputs.h:14
FilterParamDefinition
Definition
FilterParamDefinition.h:16
FilterTest::Definition
Definition
FilterTest.h:21
SharedTypes::v1_21_20::FilterGroupData
Definition
FilterGroupData.h:12
SharedTypes::v1_21_20::FilterTestData
Definition
FilterTestData.h:12
context
Definition
context.h:5
ll::UntypedStorage
Definition
Alias.h:14
serialize
Definition
serialize.h:11
src
mc
world
filters
FilterGroup.h
Generated on Sat Apr 26 2025 05:56:10 for LeviLamina by
1.12.0