LeviLamina
Loading...
Searching...
No Matches
ParticleCurveBezier.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/particlesystem/particle/curves/ParticleCurveSimpleBase.h"
7#include "mc/client/particlesystem/particle/curves/ParticleCurveType.h"
8
9// auto generated forward declare list
10// clang-format off
11class HashedString;
12class RenderParams;
13namespace SharedTypes::v1_20_80 { struct ParticleCurveBase; }
14// clang-format on
15
16namespace ParticleSystem {
17
18class ParticleCurveBezier : public ::ParticleSystem::ParticleCurveSimpleBase {
19public:
20 // virtual functions
21 // NOLINTBEGIN
22 virtual void
23 initializeFromData(::SharedTypes::v1_20_80::ParticleCurveBase& data, ::HashedString const& curveName) /*override*/;
24
25 virtual void upgradeToSharedTypes(::SharedTypes::v1_20_80::ParticleCurveBase& data) /*override*/;
26
27 virtual uint64 _getMinCurveNodesAllowed() /*override*/;
28
29 virtual uint64 _getMaxCurveNodesAllowed() /*override*/;
30
31 virtual float _evaluateCurve(float t, ::RenderParams& renderParams) /*override*/;
32
33 virtual ::ParticleSystem::ParticleCurveType getCurveType() const /*override*/;
34
35 virtual ~ParticleCurveBezier() /*override*/ = default;
36 // NOLINTEND
37
38public:
39 // static functions
40 // NOLINTBEGIN
41 MCAPI static float
42 evaluateNormalizedBezierCurve(float tNormalized, float value0, float value1, float value2, float value3);
43 // NOLINTEND
44
45public:
46 // virtual function thunks
47 // NOLINTBEGIN
48 MCFOLD void $initializeFromData(::SharedTypes::v1_20_80::ParticleCurveBase& data, ::HashedString const& curveName);
49
50 MCAPI void $upgradeToSharedTypes(::SharedTypes::v1_20_80::ParticleCurveBase& data);
51
52 MCFOLD uint64 $_getMinCurveNodesAllowed();
53
54 MCFOLD uint64 $_getMaxCurveNodesAllowed();
55
56 MCAPI float $_evaluateCurve(float t, ::RenderParams& renderParams);
57
58 MCFOLD ::ParticleSystem::ParticleCurveType $getCurveType() const;
59 // NOLINTEND
60
61public:
62 // vftables
63 // NOLINTBEGIN
64 MCNAPI static void** $vftable();
65 // NOLINTEND
66};
67
68} // namespace ParticleSystem
Definition HashedString.h:5
Definition ParticleCurveBezier.h:7
static MCAPI void ** $vftable()
Definition RenderParams.h:30
Definition ParticleCurveBase.h:7