LeviLamina
Loading...
Searching...
No Matches
EmitterRateManualComponent.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 EmitterRateManualComponent : public ::ParticleSystem::EmitterRateComponentBase {
20public:
21 // member variables
22 // NOLINTBEGIN
23 ::ll::TypedStorage<8, 16, ::ExpressionNode> mManualParticlesAllowedExpr;
24 // NOLINTEND
25
26public:
27 // virtual functions
28 // NOLINTBEGIN
29 virtual void initializeFromData(::SharedTypes::v1_20_80::ParticleEffectComponent& data) /*override*/;
30
31 virtual void upgradeToSharedTypes(::SharedTypes::v1_20_80::ParticleEffectComponent& data) /*override*/;
32
33 virtual void parseJson(::ConstDeserializeDataParams const& deserializeDataParams) /*override*/;
34
35 virtual uint64 getNumberOfParticlesToEmit(
36 ::ParticleSystem::ComponentAccessParticleEmitter& emitter,
37 ::RenderParams& renderParams,
38 ::std::chrono::nanoseconds const& dt
39 ) /*override*/;
40
41 virtual uint64 getNumberOfManualParticlesAllowed(
42 ::ParticleSystem::ComponentAccessParticleEmitter& emitter,
43 ::RenderParams& renderParams
44 ) /*override*/;
45 // NOLINTEND
46
47public:
48 // virtual function thunks
49 // NOLINTBEGIN
50 MCFOLD void $initializeFromData(::SharedTypes::v1_20_80::ParticleEffectComponent& data);
51
52 MCFOLD void $upgradeToSharedTypes(::SharedTypes::v1_20_80::ParticleEffectComponent& data);
53
54 MCAPI void $parseJson(::ConstDeserializeDataParams const& deserializeDataParams);
55
56 MCFOLD uint64 $getNumberOfParticlesToEmit(
57 ::ParticleSystem::ComponentAccessParticleEmitter& emitter,
58 ::RenderParams& renderParams,
59 ::std::chrono::nanoseconds const& dt
60 );
61
62 MCAPI uint64 $getNumberOfManualParticlesAllowed(
63 ::ParticleSystem::ComponentAccessParticleEmitter& emitter,
64 ::RenderParams& renderParams
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 EmitterRateManualComponent.h:7
Definition RenderParams.h:30
Definition ConstDeserializeDataParams.h:13
Definition ParticleEffectComponent.h:12