LeviLamina
Loading...
Searching...
No Matches
ParticleMotionParametricComponent.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/particlesystem/particle/components/ParticleMotionComponentBase.h"
7#include "mc/util/molang/ExpressionNode.h"
8
9// auto generated forward declare list
10// clang-format off
11class RenderParams;
13namespace ParticleSystem { class ComponentAccessParticleEmitter; }
14namespace ParticleSystem { struct CommonParticle; }
15namespace SharedTypes::v1_20_80 { struct ParticleEffectComponent; }
16// clang-format on
17
18namespace ParticleSystem {
19
20class ParticleMotionParametricComponent : public ::ParticleSystem::ParticleMotionComponentBase {
21public:
22 // member variables
23 // NOLINTBEGIN
24 ::ll::TypedStorage<1, 1, bool> mRelativePositionSpecified;
25 ::ll::TypedStorage<1, 1, bool> mDirectionSpecified;
26 ::ll::TypedStorage<1, 1, bool> mRotationSpecified;
27 ::ll::TypedStorage<8, 48, ::ExpressionNode[3]> mRelativePositionExpr;
28 ::ll::TypedStorage<8, 48, ::ExpressionNode[3]> mDirectionExpr;
29 ::ll::TypedStorage<8, 16, ::ExpressionNode> mRotationExpr;
30 // NOLINTEND
31
32public:
33 // virtual functions
34 // NOLINTBEGIN
35 virtual void initializeFromData(::SharedTypes::v1_20_80::ParticleEffectComponent& data) /*override*/;
36
37 virtual void upgradeToSharedTypes(::SharedTypes::v1_20_80::ParticleEffectComponent& data) /*override*/;
38
39 virtual void parseJson(::ConstDeserializeDataParams const& deserializeDataParams) /*override*/;
40
41 virtual void updateParticleMotion(
42 ::ParticleSystem::ComponentAccessParticleEmitter& emitter,
43 ::ParticleSystem::CommonParticle& particle,
44 ::RenderParams& renderParams,
45 ::std::chrono::nanoseconds const& dt
46 ) /*override*/;
47
48 virtual ~ParticleMotionParametricComponent() /*override*/ = default;
49 // NOLINTEND
50
51public:
52 // virtual function thunks
53 // NOLINTBEGIN
54 MCAPI void $initializeFromData(::SharedTypes::v1_20_80::ParticleEffectComponent& data);
55
56 MCAPI void $upgradeToSharedTypes(::SharedTypes::v1_20_80::ParticleEffectComponent& data);
57
58 MCAPI void $parseJson(::ConstDeserializeDataParams const& deserializeDataParams);
59
60 MCAPI void $updateParticleMotion(
61 ::ParticleSystem::ComponentAccessParticleEmitter& emitter,
62 ::ParticleSystem::CommonParticle& particle,
63 ::RenderParams& renderParams,
64 ::std::chrono::nanoseconds const& dt
65 );
66 // NOLINTEND
67
68public:
69 // vftables
70 // NOLINTBEGIN
71 MCNAPI static void** $vftable();
72 // NOLINTEND
73};
74
75} // namespace ParticleSystem
Definition ComponentAccessParticleEmitter.h:7
Definition ParticleMotionParametricComponent.h:7
Definition RenderParams.h:30
Definition ConstDeserializeDataParams.h:13
Definition CommonParticle.h:7
Definition ParticleEffectComponent.h:12