Plasma Engine  2.0
Loading...
Searching...
No Matches
AmplitudeAudioData.h
1#pragma once
2
3#include <AmplitudeAudioPlugin/AmplitudeAudioPluginDLL.h>
4
5#include <AudioSystemPlugin/Core/AudioSystemData.h>
6
7#include <SparkyStudios/Audio/Amplitude/Amplitude.h>
8#include <SparkyStudios/Audio/Amplitude/Core/Common/Types.h>
9
12struct PL_AMPLITUDEAUDIOPLUGIN_DLL plAmplitudeAudioControlType
13{
14 using StorageType = plUInt8;
15
16 enum Enum : StorageType
17 {
19 Invalid = 0,
20
22 Trigger = 1,
23
25 Rtpc = 2,
26
28 SoundBank = 3,
29
31 Switch = 4,
32
34 SwitchState = 5,
35
37 Environment = 6,
38
39 Default = Invalid,
40 };
41};
42
43PL_DECLARE_REFLECTABLE_TYPE(PL_AMPLITUDEAUDIOPLUGIN_DLL, plAmplitudeAudioControlType);
44
45class PL_AMPLITUDEAUDIOPLUGIN_DLL plAmplitudeAudioEntityData : public plAudioSystemEntityData
46{
47 PL_ADD_DYNAMIC_REFLECTION(plAmplitudeAudioEntityData, plAudioSystemEntityData);
48
49public:
50 explicit plAmplitudeAudioEntityData(const SparkyStudios::Audio::Amplitude::AmEntityID uiEntityID, bool bHasPosition = true)
52 , m_uiAmId(uiEntityID)
53 , m_bHasPosition(bHasPosition)
54 {
55 }
56
57 bool m_bHasPosition;
58 const SparkyStudios::Audio::Amplitude::AmEntityID m_uiAmId;
59};
60
61class PL_AMPLITUDEAUDIOPLUGIN_DLL plAmplitudeAudioListenerData : public plAudioSystemListenerData
62{
64
65public:
66 explicit plAmplitudeAudioListenerData(const SparkyStudios::Audio::Amplitude::AmEntityID uiListenerID)
68 , m_uiAmId(uiListenerID)
69 {
70 }
71
72 const SparkyStudios::Audio::Amplitude::AmListenerID m_uiAmId;
73};
74
75class PL_AMPLITUDEAUDIOPLUGIN_DLL plAmplitudeAudioTriggerData : public plAudioSystemTriggerData
76{
77 PL_ADD_DYNAMIC_REFLECTION(plAmplitudeAudioTriggerData, plAudioSystemTriggerData);
78
79public:
80 explicit plAmplitudeAudioTriggerData(const SparkyStudios::Audio::Amplitude::AmEventID uiEventId)
82 , m_uiAmId(uiEventId)
83 {
84 }
85
86 const SparkyStudios::Audio::Amplitude::AmEventID m_uiAmId;
87};
88
89class PL_AMPLITUDEAUDIOPLUGIN_DLL plAmplitudeAudioRtpcData : public plAudioSystemRtpcData
90{
91 PL_ADD_DYNAMIC_REFLECTION(plAmplitudeAudioRtpcData, plAudioSystemRtpcData);
92
93public:
94 explicit plAmplitudeAudioRtpcData(const SparkyStudios::Audio::Amplitude::AmRtpcID uiRtpcId)
96 , m_uiAmId(uiRtpcId)
97 {
98 }
99
100 const SparkyStudios::Audio::Amplitude::AmRtpcID m_uiAmId;
101};
102
103class PL_AMPLITUDEAUDIOPLUGIN_DLL plAmplitudeAudioSwitchStateData : public plAudioSystemSwitchStateData
104{
106
107public:
108 explicit plAmplitudeAudioSwitchStateData(const SparkyStudios::Audio::Amplitude::AmSwitchID uiSwitchId, const SparkyStudios::Audio::Amplitude::AmObjectID uiSwitchStateId)
110 , m_uiSwitchId(uiSwitchId)
111 , m_uiSwitchStateId(uiSwitchStateId)
112 {
113 }
114
115 const SparkyStudios::Audio::Amplitude::AmSwitchID m_uiSwitchId;
116 const SparkyStudios::Audio::Amplitude::AmObjectID m_uiSwitchStateId;
117};
118
119class PL_AMPLITUDEAUDIOPLUGIN_DLL plAmplitudeAudioEnvironmentData : public plAudioSystemEnvironmentData
120{
122
123public:
124 explicit plAmplitudeAudioEnvironmentData(const SparkyStudios::Audio::Amplitude::AmEnvironmentID uiEnvironmentId, const SparkyStudios::Audio::Amplitude::AmEffectID uiEffectId)
126 , m_uiAmId(uiEnvironmentId)
127 , m_uiEffectId(uiEffectId)
128 {
129 }
130
131 const SparkyStudios::Audio::Amplitude::AmEnvironmentID m_uiAmId;
132 const SparkyStudios::Audio::Amplitude::AmEffectID m_uiEffectId;
133};
134
135class PL_AMPLITUDEAUDIOPLUGIN_DLL plAmplitudeAudioEventData : public plAudioSystemEventData
136{
137 PL_ADD_DYNAMIC_REFLECTION(plAmplitudeAudioEventData, plAudioSystemEventData);
138
139public:
140 explicit plAmplitudeAudioEventData(const SparkyStudios::Audio::Amplitude::AmEventID uiEventId)
142 , m_uiAmId(uiEventId)
143 {
144 }
145
146 plAudioSystemEventState m_eState{plAudioSystemEventState::Invalid};
147 SparkyStudios::Audio::Amplitude::EventCanceler m_EventCanceler;
148 const SparkyStudios::Audio::Amplitude::AmEventID m_uiAmId;
149};
150
151class PL_AMPLITUDEAUDIOPLUGIN_DLL plAmplitudeAudioSoundBankData : public plAudioSystemBankData
152{
153 PL_ADD_DYNAMIC_REFLECTION(plAmplitudeAudioSoundBankData, plAudioSystemBankData);
154
155public:
156 explicit plAmplitudeAudioSoundBankData(const SparkyStudios::Audio::Amplitude::AmBankID uiBankId, const plString& sFileName)
158 , m_uiAmId(uiBankId)
159 , m_sFileName(sFileName)
160 {
161 }
162
163 const SparkyStudios::Audio::Amplitude::AmEventID m_uiAmId;
164 const plString m_sFileName;
165};
Definition AmplitudeAudioData.h:46
Definition AmplitudeAudioData.h:120
Definition AmplitudeAudioData.h:136
Definition AmplitudeAudioData.h:62
Definition AmplitudeAudioData.h:90
Definition AmplitudeAudioData.h:152
Definition AmplitudeAudioData.h:104
Definition AmplitudeAudioData.h:76
Base class for an audio middleware bank file.
Definition AudioSystemData.h:224
Base class for an audio middleware entity.
Definition AudioSystemData.h:153
Base class for an audio middleware environment.
Definition AudioSystemData.h:198
Base class for an audio middleware event.
Definition AudioSystemData.h:207
Base class for an audio middleware listener.
Definition AudioSystemData.h:162
Base class for an audio middleware RTPC.
Definition AudioSystemData.h:180
Base class for an audio middleware switch state.
Definition AudioSystemData.h:189
Base class for an audio middleware trigger.
Definition AudioSystemData.h:171
The type of a control. This is used by control assets to determine the type of the control when the a...
Definition AmplitudeAudioData.h:13
Enum
Definition AmplitudeAudioData.h:17