LeviLamina
Loading...
Searching...
No Matches
EmitterLifetimeComponentBase.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/particlesystem/particle/components/EffectComponentBase.h"
7
8// auto generated forward declare list
9// clang-format off
10class RenderParams;
11namespace ParticleSystem { class ComponentAccessParticleEmitter; }
12// clang-format on
13
14namespace ParticleSystem {
15
16class EmitterLifetimeComponentBase : public ::ParticleSystem::EffectComponentBase {
17public:
18 // virtual functions
19 // NOLINTBEGIN
20 virtual ~EmitterLifetimeComponentBase() /*override*/ = default;
21
22 virtual ::ParticleSystem::EffectComponentBase::EffectComponentType getParticleComponentType() const /*override*/;
23
24 virtual bool
25 emitterResetting(::ParticleSystem::ComponentAccessParticleEmitter& emitter, ::RenderParams& renderParams);
26
27 virtual bool
28 hasEmitterExpired(::ParticleSystem::ComponentAccessParticleEmitter const& emitter, ::RenderParams& renderParams);
29
30 virtual bool
31 isEmitterActive(::ParticleSystem::ComponentAccessParticleEmitter const& emitter, ::RenderParams& renderParams);
32
33 virtual void handleCreation(::ParticleSystem::ComponentAccessParticleEmitter& emitter);
34
35 virtual void handleExpiration(::ParticleSystem::ComponentAccessParticleEmitter& emitter);
36
37 virtual void handleTimelineEvents(
38 ::ParticleSystem::ComponentAccessParticleEmitter& emitter,
39 ::std::chrono::nanoseconds const lastAge,
40 ::std::chrono::nanoseconds age
41 );
42
43 virtual void handleTravelDistanceEvents(
44 ::ParticleSystem::ComponentAccessParticleEmitter& emitter,
45 float lastDistance,
46 float distance
47 );
48 // NOLINTEND
49
50public:
51 // virtual function thunks
52 // NOLINTBEGIN
53 MCFOLD ::ParticleSystem::EffectComponentBase::EffectComponentType $getParticleComponentType() const;
54
55 MCFOLD bool
56 $emitterResetting(::ParticleSystem::ComponentAccessParticleEmitter& emitter, ::RenderParams& renderParams);
57
58 MCFOLD bool
59 $hasEmitterExpired(::ParticleSystem::ComponentAccessParticleEmitter const& emitter, ::RenderParams& renderParams);
60
61 MCFOLD bool
62 $isEmitterActive(::ParticleSystem::ComponentAccessParticleEmitter const& emitter, ::RenderParams& renderParams);
63
64 MCFOLD void $handleCreation(::ParticleSystem::ComponentAccessParticleEmitter& emitter);
65
66 MCFOLD void $handleExpiration(::ParticleSystem::ComponentAccessParticleEmitter& emitter);
67
68 MCFOLD void $handleTimelineEvents(
69 ::ParticleSystem::ComponentAccessParticleEmitter& emitter,
70 ::std::chrono::nanoseconds const lastAge,
71 ::std::chrono::nanoseconds age
72 );
73
74 MCFOLD void $handleTravelDistanceEvents(
75 ::ParticleSystem::ComponentAccessParticleEmitter& emitter,
76 float lastDistance,
77 float distance
78 );
79 // NOLINTEND
80};
81
82} // namespace ParticleSystem
Definition ComponentAccessParticleEmitter.h:7
Definition EmitterLifetimeComponentBase.h:7
Definition RenderParams.h:30