Skip to content
LeviMC
English
AutoLightDark
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 // NOLINTEND
66
67public:
68 // virtual function thunks
69 // NOLINTBEGIN
70 MCNAPI void $initializeFromData(::SharedTypes::v1_20_80::ParticleCurveBase& data, ::HashedString const& curveName);
71
72 MCNAPI void $upgradeToSharedTypes(::SharedTypes::v1_20_80::ParticleCurveBase& data);
73
74 MCNAPI void
75 $parseJson(::ConstDeserializeDataParams const& deserializeDataParams, ::HashedString const& molangVariableName);
76
77 MCNAPI void $evaluateCurve(::RenderParams& renderParams);
78
79 MCNAPI ::ParticleSystem::ParticleCurveType $getCurveType() const;
80 // NOLINTEND
81};
82
83} // namespace ParticleSystem
Definition HashedString.h:5
Definition ParticleCurveBase.h:7
Definition ParticleCurveBezierChain.h:7
MCAPI void $evaluateCurve(::RenderParams &renderParams)
MCAPI::ParticleSystem::ParticleCurveType $getCurveType() const
MCAPI void $upgradeToSharedTypes(::SharedTypes::v1_20_80::ParticleCurveBase &data)
MCAPI void $initializeFromData(::SharedTypes::v1_20_80::ParticleCurveBase &data, ::HashedString const &curveName)
MCAPI void $parseJson(::ConstDeserializeDataParams const &deserializeDataParams, ::HashedString const &molangVariableName)
Definition RenderParams.h:29
Definition ConstDeserializeDataParams.h:15
Definition ParticleCurveBezierChain.h:15
Definition ParticleCurveBase.h:7