forked from MadFlyFish/fmod-for-godot
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathfmod_types.h
259 lines (210 loc) · 6.24 KB
/
fmod_types.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
#ifndef FMOD_TYPES_H
#define FMOD_TYPES_H
#include "core/io/resource.h"
#include "utils/fmod_utils.h"
#include <fmod.hpp>
#include <fmod_studio.hpp>
namespace FmodTypes
{
class FMOD_STUDIO_PARAMETER_ID : public Resource
{
GDCLASS(FMOD_STUDIO_PARAMETER_ID, Resource);
protected:
static void _bind_methods();
private:
unsigned int data1{};
unsigned int data2{};
public:
void set_data1(const unsigned int& data1);
unsigned int get_data1() const;
void set_data2(const unsigned int& data2);
unsigned int get_data2() const;
void set_parameter_id(const ::FMOD_STUDIO_PARAMETER_ID& parameter_id);
void get_parameter_id(::FMOD_STUDIO_PARAMETER_ID& out_id) const;
};
class FMOD_STUDIO_PARAMETER_DESCRIPTION : public Resource
{
GDCLASS(FMOD_STUDIO_PARAMETER_DESCRIPTION, Resource);
protected:
static void _bind_methods();
private:
String name{};
Ref<FMOD_STUDIO_PARAMETER_ID> id;
float minimum{};
float maximum{};
float defaultvalue{};
FMOD_STUDIO_PARAMETER_TYPE type{};
int flags{};
String guid{};
public:
void set_id(const Ref<FMOD_STUDIO_PARAMETER_ID>& id);
Ref<FMOD_STUDIO_PARAMETER_ID> get_id() const;
void set_minimum(float minimum);
float get_minimum() const;
void set_maximum(float maximum);
float get_maximum() const;
void set_default_value(float defaultValue);
float get_default_value() const;
void set_type(int type);
int get_type() const;
void set_flags(int flags);
int get_flags() const;
void set_guid(const String& guid);
String get_guid() const;
void set_parameter_description(const ::FMOD_STUDIO_PARAMETER_DESCRIPTION& parameter_description);
void get_parameter_description(::FMOD_STUDIO_PARAMETER_DESCRIPTION& out_description) const;
};
class FMOD_STUDIO_USER_PROPERTY : public RefCounted
{
GDCLASS(FMOD_STUDIO_USER_PROPERTY, RefCounted);
protected:
static void _bind_methods();
private:
String name{};
FMOD_STUDIO_USER_PROPERTY_TYPE type{};
int intvalue{};
bool boolvalue{};
float floatvalue{};
String stringvalue{};
public:
void set_name(const String& name);
String get_name() const;
void set_type(int type);
int get_type() const;
void set_intvalue(int intvalue);
int get_intvalue() const;
void set_boolvalue(bool boolvalue);
bool get_boolvalue() const;
void set_floatvalue(float floatvalue);
float get_floatvalue() const;
void set_stringvalue(const String& stringvalue);
String get_stringvalue() const;
void set_user_property(const ::FMOD_STUDIO_USER_PROPERTY& user_property);
void get_user_property(::FMOD_STUDIO_USER_PROPERTY& out_user_property) const;
};
class FMOD_3D_ATTRIBUTES : public RefCounted
{
GDCLASS(FMOD_3D_ATTRIBUTES, RefCounted);
protected:
static void _bind_methods();
private:
Vector3 position{};
Vector3 velocity{};
Vector3 forward{};
Vector3 up{};
public:
void set_position(const Vector3& position);
Vector3 get_position() const;
void set_velocity(const Vector3& velocity);
Vector3 get_velocity() const;
void set_forward(const Vector3& forward);
Vector3 get_forward() const;
void set_up(const Vector3& up);
Vector3 get_up() const;
void set_3d_attributes(::FMOD_3D_ATTRIBUTES &attributes);
void get_3d_attributes(::FMOD_3D_ATTRIBUTES &out_attributes) const;
FMOD_3D_ATTRIBUTES();
};
class FMOD_STUDIO_BUFFER_INFO : public RefCounted
{
GDCLASS(FMOD_STUDIO_BUFFER_INFO, RefCounted);
protected:
static void _bind_methods();
private:
int currentusage{};
int peakusage{};
int capacity{};
int stallcount{};
float stalltime{};
public:
void set_currentusage(int currentusage);
int get_currentusage() const;
void set_peakusage(int peakusage);
int get_peakusage() const;
void set_capacity(int capacity);
int get_capacity() const;
void set_stallcount(int stallcount);
int get_stallcount() const;
void set_stalltime(float stalltime);
float get_stalltime() const;
void set_buffer_info(const ::FMOD_STUDIO_BUFFER_INFO& buffer_info);
void get_buffer_info(::FMOD_STUDIO_BUFFER_INFO& out_buffer_info) const;
};
class FMOD_STUDIO_BUFFER_USAGE : public RefCounted
{
GDCLASS(FMOD_STUDIO_BUFFER_USAGE, RefCounted);
protected:
static void _bind_methods();
private:
Ref<FMOD_STUDIO_BUFFER_INFO> studiocommandqueue;
Ref<FMOD_STUDIO_BUFFER_INFO> studiohandle;
public:
void set_studio_command_queue(const Ref<FMOD_STUDIO_BUFFER_INFO>& studiocommandqueue);
Ref<FMOD_STUDIO_BUFFER_INFO> get_studio_command_queue() const;
void set_studio_handle(const Ref<FMOD_STUDIO_BUFFER_INFO>& studiohandle);
Ref<FMOD_STUDIO_BUFFER_INFO> get_studio_handle() const;
void set_buffer_usage(const ::FMOD_STUDIO_BUFFER_USAGE& buffer_usage);
void get_buffer_usage(::FMOD_STUDIO_BUFFER_USAGE& out_buffer_usage) const;
};
class FMOD_STUDIO_CPU_USAGE : public RefCounted
{
GDCLASS(FMOD_STUDIO_CPU_USAGE, RefCounted);
protected:
static void _bind_methods();
private:
float update{};
public:
void set_update(float update);
float get_update() const;
void set_cpu_usage(const ::FMOD_STUDIO_CPU_USAGE& cpu_usage);
void get_cpu_usage(::FMOD_STUDIO_CPU_USAGE& out_cpu_usage) const;
};
class FMOD_CPU_USAGE : public RefCounted
{
GDCLASS(FMOD_CPU_USAGE, RefCounted);
protected:
static void _bind_methods();
private:
float dsp{};
float stream{};
float geometry{};
float update{};
float convolution1{};
float convolution2{};
public:
void set_dsp(float dsp);
float get_dsp() const;
void set_stream(float stream);
float get_stream() const;
void set_geometry(float geometry);
float get_geometry() const;
void set_update(float update);
float get_update() const;
void set_convolution_1(float convolution1);
float get_convolution_1() const;
void set_convolution_2(float convolution2);
float get_convolution_2() const;
void set_cpu_usage(const ::FMOD_CPU_USAGE& cpu_usage);
void get_cpu_usage(::FMOD_CPU_USAGE& out_memory_usage) const;
};
class FMOD_STUDIO_MEMORY_USAGE : public RefCounted
{
GDCLASS(FMOD_STUDIO_MEMORY_USAGE, RefCounted);
protected:
static void _bind_methods();
private:
int exclusive{};
int inclusive{};
int sampledata{};
public:
void set_exclusive(int exclusive);
int get_exclusive() const;
void set_inclusive(int inclusive);
int get_inclusive() const;
void set_sampledata(int sampledata);
int get_sampledata() const;
void set_memory_usage(const ::FMOD_STUDIO_MEMORY_USAGE& memory_usage);
void get_memory_usage(::FMOD_STUDIO_MEMORY_USAGE& out_memory_usage) const;
};
} //namespace FmodTypes
#endif // FMOD_TYPES_H