Plasma Engine  2.0
Loading...
Searching...
No Matches
ParticleEventReaction_Effect.h
1#pragma once
2
3#include <Core/Physics/SurfaceResourceDescriptor.h>
4#include <Foundation/Types/RangeView.h>
5#include <Foundation/Types/SharedPtr.h>
6#include <ParticlePlugin/Events/ParticleEventReaction.h>
7
9{
11
12public:
14
15 virtual const plRTTI* GetEventReactionType() const override;
16 virtual void CopyReactionProperties(plParticleEventReaction* pObject, bool bFirstTime) const override;
17
18 virtual void Save(plStreamWriter& inout_stream) const override;
19 virtual void Load(plStreamReader& inout_stream) override;
20
21 plString m_sEffect;
23
25 // Exposed Parameters
26public:
27 const plRangeView<const char*, plUInt32> GetParameters() const;
28 void SetParameter(const char* szKey, const plVariant& value);
29 void RemoveParameter(const char* szKey);
30 bool GetParameter(const char* szKey, plVariant& out_value) const;
31
32private:
34};
35
36class PL_PARTICLEPLUGIN_DLL plParticleEventReaction_Effect final : public plParticleEventReaction
37{
39
40public:
43
47
48protected:
49 virtual void ProcessEvent(const plParticleEvent& e) override;
50};
Definition ParticleEventReaction_Effect.h:37
Definition ParticleEventReaction_Effect.h:9
Base class for all particle event reactions.
Definition ParticleEventReaction.h:12
Definition ParticleEventReaction.h:29
This class holds information about reflected types. Each instance represents one type that is known t...
Definition RTTI.h:30
This class uses delegates to define a range of values that can be enumerated using a forward iterator...
Definition RangeView.h:24
A Shared ptr manages a shared object and destroys that object when no one references it anymore....
Definition SharedPtr.h:10
Interface for binary in (read) streams.
Definition Stream.h:22
Interface for binary out (write) streams.
Definition Stream.h:107
plVariant is a class that can store different types of variables, which is useful in situations where...
Definition Variant.h:44
A custom enum implementation that allows to define the underlying storage type to control its memory ...
Definition Enum.h:37
Definition ParticleEvent.h:9