LeviLamina
Loading...
Searching...
No Matches
ParticleCurveBezierChain.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/particlesystem/particle/curves/ParticleCurveBase.h"
7#include "mc/client/particlesystem/particle/curves/ParticleCurveType.h"
8#include "mc/util/molang/ExpressionNode.h"
9
10// auto generated forward declare list
11// clang-format off
12class HashedString;
13class RenderParams;
15namespace SharedTypes::v1_20_80 { struct ParticleCurveBase; }
16// clang-format on
17
18namespace ParticleSystem {
19
20class ParticleCurveBezierChain : public ::ParticleSystem::ParticleCurveBase {
21public:
22 // ParticleCurveBezierChain inner types declare
23 // clang-format off
24 struct Segment;
25 // clang-format on
26
27 // ParticleCurveBezierChain inner types define
28 struct Segment {
29 public:
30 // member variables
31 // NOLINTBEGIN
32 ::ll::TypedStorage<4, 4, float> mStartValue;
33 ::ll::TypedStorage<4, 4, float> mEndValue;
34 ::ll::TypedStorage<4, 4, float> mStartValueControlPoint;
35 ::ll::TypedStorage<4, 4, float> mEndValueControlPoint;
36 ::ll::TypedStorage<4, 4, float> mStartRange;
37 ::ll::TypedStorage<4, 4, float> mEndRange;
38 // NOLINTEND
39 };
40
41public:
42 // member variables
43 // NOLINTBEGIN
44 ::ll::TypedStorage<8, 16, ::ExpressionNode> mInputExpr;
45 ::ll::TypedStorage<8, 24, ::std::vector<::ParticleSystem::ParticleCurveBezierChain::Segment>> mSegments;
46 ::ll::TypedStorage<8, 16, ::ExpressionNode> mHorizontalRange;
47 // NOLINTEND
48
49public:
50 // virtual functions
51 // NOLINTBEGIN
52 virtual void
53 initializeFromData(::SharedTypes::v1_20_80::ParticleCurveBase& data, ::HashedString const& curveName) /*override*/;
54
55 virtual void upgradeToSharedTypes(::SharedTypes::v1_20_80::ParticleCurveBase& data) /*override*/;
56
57 virtual void parseJson(
58 ::ConstDeserializeDataParams const& deserializeDataParams,
59 ::HashedString const& molangVariableName
60 ) /*override*/;
61
62 virtual void evaluateCurve(::RenderParams& renderParams) /*override*/;
63
64 virtual ::ParticleSystem::ParticleCurveType getCurveType() const /*override*/;
65
66 virtual ~ParticleCurveBezierChain() /*override*/;
67 // NOLINTEND
68
69public:
70 // destructor thunk
71 // NOLINTBEGIN
72 MCAPI void $dtor();
73 // NOLINTEND
74
75public:
76 // virtual function thunks
77 // NOLINTBEGIN
78 MCAPI void $initializeFromData(::SharedTypes::v1_20_80::ParticleCurveBase& data, ::HashedString const& curveName);
79
80 MCAPI void $upgradeToSharedTypes(::SharedTypes::v1_20_80::ParticleCurveBase& data);
81
82 MCAPI void
83 $parseJson(::ConstDeserializeDataParams const& deserializeDataParams, ::HashedString const& molangVariableName);
84
85 MCAPI void $evaluateCurve(::RenderParams& renderParams);
86
87 MCFOLD ::ParticleSystem::ParticleCurveType $getCurveType() const;
88 // NOLINTEND
89
90public:
91 // vftables
92 // NOLINTBEGIN
93 MCNAPI static void** $vftable();
94 // NOLINTEND
95};
96
97} // namespace ParticleSystem
Definition HashedString.h:5
Definition ParticleCurveBezierChain.h:7
Definition RenderParams.h:30
Definition ConstDeserializeDataParams.h:13
Definition ParticleCurveBezierChain.h:15
Definition ParticleCurveBase.h:7