LeviLamina
Loading...
Searching...
No Matches
EmitterRateSteadyComponent.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/particlesystem/particle/components/EmitterRateComponentBase.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 SharedTypes::v1_20_80 { struct ParticleEffectComponent; }
15// clang-format on
16
17namespace ParticleSystem {
18
19class EmitterRateSteadyComponent : public ::ParticleSystem::EmitterRateComponentBase {
20public:
21 // member variables
22 // NOLINTBEGIN
23 ::ll::TypedStorage<8, 16, ::ExpressionNode> mSpawnRateExpr;
24 ::ll::TypedStorage<8, 16, ::ExpressionNode> mMaxParticlesExpr;
25 // NOLINTEND
26
27public:
28 // virtual functions
29 // NOLINTBEGIN
30 virtual void initializeFromData(::SharedTypes::v1_20_80::ParticleEffectComponent& data) /*override*/;
31
32 virtual void upgradeToSharedTypes(::SharedTypes::v1_20_80::ParticleEffectComponent& data) /*override*/;
33
34 virtual void parseJson(::ConstDeserializeDataParams const& deserializeDataParams) /*override*/;
35
36 virtual uint64 getNumberOfParticlesToEmit(
37 ::ParticleSystem::ComponentAccessParticleEmitter& emitter,
38 ::RenderParams& renderParams,
39 ::std::chrono::nanoseconds const& dt
40 ) /*override*/;
41
42 virtual ~EmitterRateSteadyComponent() /*override*/ = default;
43 // NOLINTEND
44
45public:
46 // virtual function thunks
47 // NOLINTBEGIN
48 MCFOLD void $initializeFromData(::SharedTypes::v1_20_80::ParticleEffectComponent& data);
49
50 MCFOLD void $upgradeToSharedTypes(::SharedTypes::v1_20_80::ParticleEffectComponent& data);
51
52 MCAPI void $parseJson(::ConstDeserializeDataParams const& deserializeDataParams);
53
54 MCAPI uint64 $getNumberOfParticlesToEmit(
55 ::ParticleSystem::ComponentAccessParticleEmitter& emitter,
56 ::RenderParams& renderParams,
57 ::std::chrono::nanoseconds const& dt
58 );
59 // NOLINTEND
60
61public:
62 // vftables
63 // NOLINTBEGIN
64 MCNAPI static void** $vftable();
65 // NOLINTEND
66};
67
68} // namespace ParticleSystem
Definition ComponentAccessParticleEmitter.h:7
Definition EmitterRateSteadyComponent.h:7
Definition RenderParams.h:30
Definition ConstDeserializeDataParams.h:13
Definition ParticleEffectComponent.h:12