Skip to content
LeviMC
English
AutoLightDark
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 MCNAPI ::ParticleSystem::EffectComponentBase::EffectComponentType $getParticleComponentType() const;
54
55 MCNAPI bool
56 $emitterResetting(::ParticleSystem::ComponentAccessParticleEmitter& emitter, ::RenderParams& renderParams);
57
58 MCNAPI bool
59 $hasEmitterExpired(::ParticleSystem::ComponentAccessParticleEmitter const& emitter, ::RenderParams& renderParams);
60
61 MCNAPI bool
62 $isEmitterActive(::ParticleSystem::ComponentAccessParticleEmitter const& emitter, ::RenderParams& renderParams);
63
64 MCNAPI void $handleCreation(::ParticleSystem::ComponentAccessParticleEmitter& emitter);
65
66 MCNAPI void $handleExpiration(::ParticleSystem::ComponentAccessParticleEmitter& emitter);
67
69 ::ParticleSystem::ComponentAccessParticleEmitter& emitter,
70 ::std::chrono::nanoseconds const lastAge,
71 ::std::chrono::nanoseconds age
72 );
73
75 ::ParticleSystem::ComponentAccessParticleEmitter& emitter,
76 float lastDistance,
77 float distance
78 );
79 // NOLINTEND
80};
81
82} // namespace ParticleSystem
Definition ComponentAccessParticleEmitter.h:7
Definition EffectComponentBase.h:7
Definition EmitterLifetimeComponentBase.h:7
MCAPI bool $isEmitterActive(::ParticleSystem::ComponentAccessParticleEmitter const &emitter, ::RenderParams &renderParams)
MCAPI bool $hasEmitterExpired(::ParticleSystem::ComponentAccessParticleEmitter const &emitter, ::RenderParams &renderParams)
MCAPI void $handleTimelineEvents(::ParticleSystem::ComponentAccessParticleEmitter &emitter, ::std::chrono::nanoseconds const lastAge, ::std::chrono::nanoseconds age)
MCAPI void $handleExpiration(::ParticleSystem::ComponentAccessParticleEmitter &emitter)
MCAPI void $handleTravelDistanceEvents(::ParticleSystem::ComponentAccessParticleEmitter &emitter, float lastDistance, float distance)
MCAPI bool $emitterResetting(::ParticleSystem::ComponentAccessParticleEmitter &emitter, ::RenderParams &renderParams)
MCAPI void $handleCreation(::ParticleSystem::ComponentAccessParticleEmitter &emitter)
MCAPI::ParticleSystem::EffectComponentBase::EffectComponentType $getParticleComponentType() const
Definition RenderParams.h:29
STL namespace.