annotate AIL.h @ 1090:8b59f13c9c3e

a few spells fixed
author zipi
date Sun, 26 May 2013 02:44:58 +0100
parents d95a91011d57
children
rev   line source
0
Ritor1
parents:
diff changeset
1 #pragma once
Ritor1
parents:
diff changeset
2 #include "OSAPI.h"
Ritor1
parents:
diff changeset
3
Ritor1
parents:
diff changeset
4
Ritor1
parents:
diff changeset
5
Ritor1
parents:
diff changeset
6 /* 252 */
Ritor1
parents:
diff changeset
7 enum AILFILETYPE : __int32
Ritor1
parents:
diff changeset
8 {
Ritor1
parents:
diff changeset
9 AILFILETYPE_UNKNOWN = 0x0,
Ritor1
parents:
diff changeset
10 AILFILETYPE_PCM_WAV = 0x1,
Ritor1
parents:
diff changeset
11 AILFILETYPE_ADPCM_WAV = 0x2,
Ritor1
parents:
diff changeset
12 AILFILETYPE_OTHER_WAV = 0x3,
Ritor1
parents:
diff changeset
13 AILFILETYPE_VOC = 0x4,
Ritor1
parents:
diff changeset
14 AILFILETYPE_MIDI = 0x5,
Ritor1
parents:
diff changeset
15 AILFILETYPE_XMIDI = 0x6,
Ritor1
parents:
diff changeset
16 AILFILETYPE_7 = 0x7,
Ritor1
parents:
diff changeset
17 AILFILETYPE_XMIDI_MLS = 0x8,
Ritor1
parents:
diff changeset
18 AILFILETYPE_DLS = 0x9,
Ritor1
parents:
diff changeset
19 AILFILETYPE_MLS = 0xA,
Ritor1
parents:
diff changeset
20 AILFILETYPE_MPEG_L1_AUDIO = 0xB,
Ritor1
parents:
diff changeset
21 AILFILETYPE_MPEG_L2_AUDIO = 0xC,
Ritor1
parents:
diff changeset
22 AILFILETYPE_MPEG_L3_AUDIO = 0xD,
Ritor1
parents:
diff changeset
23 AILFILETYPE_OTHER_ASI_WAV = 0xE,
Ritor1
parents:
diff changeset
24 AILFILETYPE_OTHER_ASI_F = 0xF,
Ritor1
parents:
diff changeset
25 };
Ritor1
parents:
diff changeset
26
Ritor1
parents:
diff changeset
27
Ritor1
parents:
diff changeset
28
Ritor1
parents:
diff changeset
29 /* 253 */
Ritor1
parents:
diff changeset
30 #pragma pack(push, 1)
Ritor1
parents:
diff changeset
31 struct AILSOUNDINFO
Ritor1
parents:
diff changeset
32 {
Ritor1
parents:
diff changeset
33 int uFormat;
Ritor1
parents:
diff changeset
34 void *pData;
Ritor1
parents:
diff changeset
35 unsigned int uDataSize;
Ritor1
parents:
diff changeset
36 unsigned int uRate;
Ritor1
parents:
diff changeset
37 int uBits;
Ritor1
parents:
diff changeset
38 int uChannels;
Ritor1
parents:
diff changeset
39 unsigned int uSamples;
Ritor1
parents:
diff changeset
40 unsigned int uBlockSize;
Ritor1
parents:
diff changeset
41 void *pInitial;
Ritor1
parents:
diff changeset
42 };
Ritor1
parents:
diff changeset
43 #pragma pack(pop)
Ritor1
parents:
diff changeset
44
Ritor1
parents:
diff changeset
45
Ritor1
parents:
diff changeset
46
Ritor1
parents:
diff changeset
47
Ritor1
parents:
diff changeset
48 //Bink
Ritor1
parents:
diff changeset
49 typedef struct _BINK *HBINK;
Ritor1
parents:
diff changeset
50 typedef struct _BINKBUF *HBINKBUF;
Ritor1
parents:
diff changeset
51 //Smacker & AIL types
Ritor1
parents:
diff changeset
52 typedef struct _DIG_DRIVER *HDIGDRIVER;
Ritor1
parents:
diff changeset
53 typedef struct _SMACK *HSMACK;
Ritor1
parents:
diff changeset
54 typedef struct _SMACKBLIT *HSMACKBLIT;
Ritor1
parents:
diff changeset
55 typedef struct _SMACKBUF *HSMACKBUF;
Ritor1
parents:
diff changeset
56 //AIL
Ritor1
parents:
diff changeset
57 typedef struct _REDBOOK *HREDBOOK;
Ritor1
parents:
diff changeset
58 typedef struct _SAMPLE *HSAMPLE;
Ritor1
parents:
diff changeset
59 typedef struct _PROVIDER *HPROVIDER;
Ritor1
parents:
diff changeset
60 typedef struct _SEQUENCE *HSEQUENCE;
Ritor1
parents:
diff changeset
61 typedef struct _STREAM *HSTREAM;
Ritor1
parents:
diff changeset
62 typedef __int32 HATTRIB;
Ritor1
parents:
diff changeset
63 typedef __int32 HASISTREAM; // Handle to stream being managed by ASI codec
Ritor1
parents:
diff changeset
64
Ritor1
parents:
diff changeset
65
Ritor1
parents:
diff changeset
66
Ritor1
parents:
diff changeset
67 void MSS32_DLL_Initialize();
Ritor1
parents:
diff changeset
68
Ritor1
parents:
diff changeset
69 #define AILCALL __stdcall
Ritor1
parents:
diff changeset
70 #define AILCALLBACK __stdcall
Ritor1
parents:
diff changeset
71
Ritor1
parents:
diff changeset
72
Ritor1
parents:
diff changeset
73 typedef __int32 (AILCALLBACK FAR * AILASIFETCHCB) (unsigned __int32 user, // User value passed to ASI_open_stream()
Ritor1
parents:
diff changeset
74 void FAR *dest, // Location to which stream data should be copied by app
Ritor1
parents:
diff changeset
75 __int32 bytes_requested, // # of bytes requested by ASI codec
Ritor1
parents:
diff changeset
76 __int32 offset); // If not -1, application should seek to this point in stream
Ritor1
parents:
diff changeset
77
Ritor1
parents:
diff changeset
78 typedef HASISTREAM (AILCALL FAR *ASI_STREAM_OPEN) (unsigned __int32 user, // User value passed to fetch callback
Ritor1
parents:
diff changeset
79 AILASIFETCHCB fetch_CB, // Source data fetch handler
Ritor1
parents:
diff changeset
80 unsigned __int32 total_size); // Total size for %-done calculations (0=unknown)
Ritor1
parents:
diff changeset
81 typedef __int32 (AILCALL FAR *ASI_STREAM_PROCESS) (HASISTREAM stream, // Handle of stream
Ritor1
parents:
diff changeset
82 void FAR *buffer, // Destination for processed data
Ritor1
parents:
diff changeset
83 __int32 buffer_size); // # of bytes to return in buffer
Ritor1
parents:
diff changeset
84 typedef __int32 (AILCALL FAR *ASI_STREAM_SEEK) (HASISTREAM stream,
Ritor1
parents:
diff changeset
85 __int32 stream_offset);
Ritor1
parents:
diff changeset
86 typedef __int32 (AILCALL FAR *ASI_STREAM_CLOSE) (HASISTREAM stream);
Ritor1
parents:
diff changeset
87 typedef __int32 (AILCALL FAR *ASI_STREAM_ATTRIBUTE) (HASISTREAM stream,
Ritor1
parents:
diff changeset
88 HATTRIB attrib);
Ritor1
parents:
diff changeset
89 typedef __int32 (AILCALL FAR *ASI_STREAM_SET_PREFERENCE) (HASISTREAM stream,
Ritor1
parents:
diff changeset
90 HATTRIB preference,
Ritor1
parents:
diff changeset
91 void const FAR * value);
Ritor1
parents:
diff changeset
92
Ritor1
parents:
diff changeset
93 typedef struct
Ritor1
parents:
diff changeset
94 {
Ritor1
parents:
diff changeset
95 ASI_STREAM_OPEN ASI_stream_open;
Ritor1
parents:
diff changeset
96 ASI_STREAM_PROCESS ASI_stream_process;
Ritor1
parents:
diff changeset
97 ASI_STREAM_SEEK ASI_stream_seek;
Ritor1
parents:
diff changeset
98 ASI_STREAM_CLOSE ASI_stream_close;
Ritor1
parents:
diff changeset
99 ASI_STREAM_ATTRIBUTE ASI_stream_attribute;
Ritor1
parents:
diff changeset
100 ASI_STREAM_SET_PREFERENCE ASI_stream_set_preference;
Ritor1
parents:
diff changeset
101
Ritor1
parents:
diff changeset
102 HATTRIB INPUT_BIT_RATE;
Ritor1
parents:
diff changeset
103 HATTRIB INPUT_SAMPLE_RATE;
Ritor1
parents:
diff changeset
104 HATTRIB INPUT_BITS;
Ritor1
parents:
diff changeset
105 HATTRIB INPUT_CHANNELS;
Ritor1
parents:
diff changeset
106 HATTRIB OUTPUT_BIT_RATE;
Ritor1
parents:
diff changeset
107 HATTRIB OUTPUT_SAMPLE_RATE;
Ritor1
parents:
diff changeset
108 HATTRIB OUTPUT_BITS;
Ritor1
parents:
diff changeset
109 HATTRIB OUTPUT_CHANNELS;
Ritor1
parents:
diff changeset
110 HATTRIB POSITION;
Ritor1
parents:
diff changeset
111 HATTRIB PERCENT_DONE;
Ritor1
parents:
diff changeset
112 HATTRIB MIN_INPUT_BLOCK_SIZE;
Ritor1
parents:
diff changeset
113 HATTRIB RAW_RATE;
Ritor1
parents:
diff changeset
114 HATTRIB RAW_BITS;
Ritor1
parents:
diff changeset
115 HATTRIB RAW_CHANNELS;
Ritor1
parents:
diff changeset
116 HATTRIB REQUESTED_RATE;
Ritor1
parents:
diff changeset
117 HATTRIB REQUESTED_BITS;
Ritor1
parents:
diff changeset
118 HATTRIB REQUESTED_CHANS;
Ritor1
parents:
diff changeset
119
Ritor1
parents:
diff changeset
120 HASISTREAM stream;
Ritor1
parents:
diff changeset
121 }
Ritor1
parents:
diff changeset
122 ASISTAGE;
Ritor1
parents:
diff changeset
123
Ritor1
parents:
diff changeset
124
Ritor1
parents:
diff changeset
125
Ritor1
parents:
diff changeset
126
Ritor1
parents:
diff changeset
127 typedef void (AILCALLBACK FAR* AILSTREAMCB)(HSTREAM stream);
Ritor1
parents:
diff changeset
128 typedef struct _STREAM {
Ritor1
parents:
diff changeset
129
Ritor1
parents:
diff changeset
130 __int32 block_oriented; // 1 if this is an ADPCM or ASI-compressed stream
Ritor1
parents:
diff changeset
131 __int32 using_ASI; // 1 if using ASI decoder to uncompress stream data
Ritor1
parents:
diff changeset
132 ASISTAGE FAR *ASI; // handy pointer to our ASI coded
Ritor1
parents:
diff changeset
133
Ritor1
parents:
diff changeset
134 HSAMPLE samp; // the sample handle
Ritor1
parents:
diff changeset
135
Ritor1
parents:
diff changeset
136 unsigned __int32 fileh; // the open file handle
Ritor1
parents:
diff changeset
137
Ritor1
parents:
diff changeset
138 unsigned __int8 FAR* bufs[3]; // the data buffers
Ritor1
parents:
diff changeset
139 unsigned __int32 bufsizes[3]; // the size of each buffer
Ritor1
parents:
diff changeset
140 __int32 reset_ASI[3]; // should we reset the ASI at the end of the buffer?
Ritor1
parents:
diff changeset
141 __int32 bufstart[3]; // offset of where this buffer started
Ritor1
parents:
diff changeset
142 void FAR* asyncs[3];// async read structures
Ritor1
parents:
diff changeset
143
Ritor1
parents:
diff changeset
144 __int32 loadedbufstart[2]; // offset of where the loaded buffer started
Ritor1
parents:
diff changeset
145 __int32 loadedorder[2]; // order of the buffers as they were loaded
Ritor1
parents:
diff changeset
146 __int32 loadorder; // incremented as each buffer is loaded
Ritor1
parents:
diff changeset
147
Ritor1
parents:
diff changeset
148 __int32 bufsize; // size of each buffer
Ritor1
parents:
diff changeset
149 __int32 readsize; // size of each read block
Ritor1
parents:
diff changeset
150
Ritor1
parents:
diff changeset
151 unsigned __int32 buf1; // 0,1,2 (current buffer that we are reading into)
Ritor1
parents:
diff changeset
152 __int32 size1; // holds the current amount of data read
Ritor1
parents:
diff changeset
153
Ritor1
parents:
diff changeset
154 unsigned __int32 buf2; // 0,1,2 (the next buffer that we are reading into)
Ritor1
parents:
diff changeset
155 __int32 size2; // next buffer loaded up to
Ritor1
parents:
diff changeset
156
Ritor1
parents:
diff changeset
157 unsigned __int32 buf3; // 0,1,2 (the next buffer that we are reading into)
Ritor1
parents:
diff changeset
158 __int32 size3; // next buffer loaded up to
Ritor1
parents:
diff changeset
159
Ritor1
parents:
diff changeset
160 unsigned __int32 datarate; // datarate in bytes per second
Ritor1
parents:
diff changeset
161 __int32 filerate; // original datarate of the file
Ritor1
parents:
diff changeset
162 __int32 filetype; // file format type
Ritor1
parents:
diff changeset
163 unsigned __int32 fileflags; // file format flags (signed or unsigned)
Ritor1
parents:
diff changeset
164 __int32 totallen; // total length of the sound data
Ritor1
parents:
diff changeset
165
Ritor1
parents:
diff changeset
166 __int32 substart; // subblock loop start
Ritor1
parents:
diff changeset
167 __int32 sublen; // subblock loop len
Ritor1
parents:
diff changeset
168 __int32 subpadding; // amount to pad the final block
Ritor1
parents:
diff changeset
169
Ritor1
parents:
diff changeset
170 unsigned __int32 blocksize; // ADPCM block size
Ritor1
parents:
diff changeset
171 __int32 padding; // padding to be done
Ritor1
parents:
diff changeset
172 __int32 padded; // padding done
Ritor1
parents:
diff changeset
173
Ritor1
parents:
diff changeset
174 __int32 loadedsome; // have we done any loads?
Ritor1
parents:
diff changeset
175
Ritor1
parents:
diff changeset
176 unsigned __int32 startpos; // point that the sound data begins
Ritor1
parents:
diff changeset
177 unsigned __int32 totalread; // total bytes read from the disk
Ritor1
parents:
diff changeset
178
Ritor1
parents:
diff changeset
179 unsigned __int32 loopsleft; // how many loops are left
Ritor1
parents:
diff changeset
180
Ritor1
parents:
diff changeset
181 unsigned __int32 error; // read error has occurred
Ritor1
parents:
diff changeset
182
Ritor1
parents:
diff changeset
183 __int32 preload; // preload the file into the first buffer
Ritor1
parents:
diff changeset
184 unsigned __int32 preloadpos; // position to use in preload
Ritor1
parents:
diff changeset
185 __int32 noback; // no background processing
Ritor1
parents:
diff changeset
186 __int32 alldone; // alldone
Ritor1
parents:
diff changeset
187 __int32 primeamount; // amount to load after a seek
Ritor1
parents:
diff changeset
188 __int32 readatleast; // forced amount to read on next service
Ritor1
parents:
diff changeset
189
Ritor1
parents:
diff changeset
190 __int32 playcontrol; // control: 0=stopped, 1=started, |8=paused, |16=sample paused
Ritor1
parents:
diff changeset
191
Ritor1
parents:
diff changeset
192 AILSTREAMCB callback; // end of stream callback
Ritor1
parents:
diff changeset
193
Ritor1
parents:
diff changeset
194 __int32 user_data[8]; // Miscellaneous user data
Ritor1
parents:
diff changeset
195 void FAR* next; // pointer to next stream
Ritor1
parents:
diff changeset
196
Ritor1
parents:
diff changeset
197 #if defined(IS_WINDOWS) || defined(IS_MAC)
Ritor1
parents:
diff changeset
198 __int32 autostreaming; // are we autostreaming this stream
Ritor1
parents:
diff changeset
199 #endif
Ritor1
parents:
diff changeset
200
Ritor1
parents:
diff changeset
201 #ifdef IS_WINDOWS
Ritor1
parents:
diff changeset
202 __int32 cb_IsWin32s; // Is the callback win32s?
Ritor1
parents:
diff changeset
203 #endif
Ritor1
parents:
diff changeset
204 __int32 docallback; // set when it time to poll for a callback
Ritor1
parents:
diff changeset
205 #ifdef IS_MAC
Ritor1
parents:
diff changeset
206 IOParam stream_param;
Ritor1
parents:
diff changeset
207 __int32 donext;
Ritor1
parents:
diff changeset
208 __int32 donext1;
Ritor1
parents:
diff changeset
209 unsigned __int32 fillup;
Ritor1
parents:
diff changeset
210 unsigned __int32 session;
Ritor1
parents:
diff changeset
211 unsigned __int32 tamt;
Ritor1
parents:
diff changeset
212 unsigned __int32 buf;
Ritor1
parents:
diff changeset
213 __int32* size;
Ritor1
parents:
diff changeset
214 __int32* done;
Ritor1
parents:
diff changeset
215 __int32 done1;
Ritor1
parents:
diff changeset
216 __int32 done2;
Ritor1
parents:
diff changeset
217 __int32 done3;
Ritor1
parents:
diff changeset
218 Boolean force_quit;
Ritor1
parents:
diff changeset
219 #endif
Ritor1
parents:
diff changeset
220
Ritor1
parents:
diff changeset
221 } MSTREAM_TYPE;
Ritor1
parents:
diff changeset
222
Ritor1
parents:
diff changeset
223
Ritor1
parents:
diff changeset
224
Ritor1
parents:
diff changeset
225
Ritor1
parents:
diff changeset
226
Ritor1
parents:
diff changeset
227
Ritor1
parents:
diff changeset
228
Ritor1
parents:
diff changeset
229
Ritor1
parents:
diff changeset
230 int __stdcall AIL_startup();
Ritor1
parents:
diff changeset
231 HREDBOOK __stdcall AIL_redbook_open_drive(long drive);
Ritor1
parents:
diff changeset
232 HREDBOOK __stdcall AIL_redbook_open(int);
Ritor1
parents:
diff changeset
233 int __stdcall AIL_set_preference(unsigned int number, int value);
Ritor1
parents:
diff changeset
234 int __stdcall AIL_waveOutOpen(HDIGDRIVER *drv, HWAVEOUT *phWaveOut, int wDeviceID, WAVEFORMAT *pFormat);
Ritor1
parents:
diff changeset
235 int __stdcall AIL_get_preference(unsigned int number);
Ritor1
parents:
diff changeset
236 int __stdcall AIL_digital_configuration(HDIGDRIVER drv, int *rate, int *format, char *string);
Ritor1
parents:
diff changeset
237 HSAMPLE __stdcall AIL_allocate_sample_handle(HDIGDRIVER hDrv);
Ritor1
parents:
diff changeset
238 unsigned int __stdcall AIL_redbook_tracks(HREDBOOK hRedbook);
Ritor1
parents:
diff changeset
239 int __stdcall AIL_redbook_volume(HREDBOOK hRedbook);
Ritor1
parents:
diff changeset
240 unsigned int __stdcall AIL_redbook_stop(HREDBOOK hRedbook);
Ritor1
parents:
diff changeset
241 void __stdcall AIL_set_digital_master_volume(HDIGDRIVER hDrv, float master_volume);
Ritor1
parents:
diff changeset
242 int __stdcall AIL_redbook_set_volume(HREDBOOK hRedbook, int volume);
Ritor1
parents:
diff changeset
243 unsigned int __stdcall AIL_redbook_pause(HREDBOOK hRedbook);
Ritor1
parents:
diff changeset
244 void __stdcall AIL_redbook_track_info(HREDBOOK hRedbook, unsigned int uTrackNum, unsigned int *pStartMS, unsigned int *pEndMS);
Ritor1
parents:
diff changeset
245 unsigned int __stdcall AIL_redbook_play(HREDBOOK hRedbook, unsigned int uStartMS, unsigned int uEndMS);
Ritor1
parents:
diff changeset
246 unsigned int __stdcall AIL_redbook_resume(HREDBOOK);
Ritor1
parents:
diff changeset
247 int __stdcall AIL_enumerate_3D_providers(int *a1, HPROVIDER *pOutProv, char **pOutName);
Ritor1
parents:
diff changeset
248 DWORD __stdcall AIL_open_3D_provider(HPROVIDER a2);
28
739d8f3b50f9 ReleaseSoundData fix
zipi@zipi-PC
parents: 0
diff changeset
249 void __stdcall AIL_3D_provider_attribute(HPROVIDER lib, char *name, void *val);
0
Ritor1
parents:
diff changeset
250 int __stdcall AIL_set_3D_provider_preference(HPROVIDER a1, const char *a2, int *a3);
28
739d8f3b50f9 ReleaseSoundData fix
zipi@zipi-PC
parents: 0
diff changeset
251 void __stdcall AIL_waveOutClose(HDIGDRIVER drvr);
0
Ritor1
parents:
diff changeset
252 int __stdcall AIL_allocate_3D_sample_handle(HPROVIDER);
Ritor1
parents:
diff changeset
253 int __stdcall AIL_set_3D_sample_float_distances(void *a1, long a2, long a3, long a4, long a5);
Ritor1
parents:
diff changeset
254 int __stdcall AIL_set_3D_sample_volume(void *a1, long a2);
28
739d8f3b50f9 ReleaseSoundData fix
zipi@zipi-PC
parents: 0
diff changeset
255 void __stdcall AIL_release_sample_handle(HSAMPLE s);
0
Ritor1
parents:
diff changeset
256 int __stdcall AIL_3D_position(void *a1, int *a2, float *a3, long *a4);
Ritor1
parents:
diff changeset
257 int __stdcall AIL_set_3D_sample_file(long a1, void *a2);
Ritor1
parents:
diff changeset
258 int __stdcall AIL_set_3D_sample_loop_count(long a1, long a2);
Ritor1
parents:
diff changeset
259 int __stdcall AIL_start_3D_sample(long a1);
Ritor1
parents:
diff changeset
260 int __stdcall AIL_set_3D_position(void *hSample, long a2, long a3, long a4);
Ritor1
parents:
diff changeset
261 int __stdcall AIL_set_3D_orientation(void *hSample, long a2, long a3, long a4, long a5, long a6, long a7);
Ritor1
parents:
diff changeset
262 int __stdcall AIL_release_3D_sample_handle(void *hHandle);
Ritor1
parents:
diff changeset
263
Ritor1
parents:
diff changeset
264 int __stdcall AIL_close_3D_provider(HPROVIDER);
Ritor1
parents:
diff changeset
265 int __stdcall AIL_redbook_close(HREDBOOK);
Ritor1
parents:
diff changeset
266
Ritor1
parents:
diff changeset
267 // sub_4D8344: using guessed type int __stdcall AIL_shutdown();
Ritor1
parents:
diff changeset
268 int __stdcall AIL_shutdown();
Ritor1
parents:
diff changeset
269
Ritor1
parents:
diff changeset
270 int __stdcall AIL_end_sample(HSAMPLE a1);
Ritor1
parents:
diff changeset
271 int __stdcall AIL_end_3D_sample(void *a1);
Ritor1
parents:
diff changeset
272 void __stdcall AIL_end_sequence(HSEQUENCE a1);
Ritor1
parents:
diff changeset
273 void __stdcall AIL_pause_stream(HSTREAM a1, int onoff);
Ritor1
parents:
diff changeset
274 int __stdcall AIL_set_sample_file(HSAMPLE, const void *file_image, int block);
388
d95a91011d57 AudioPlayer::PlaySound
Nomad
parents: 28
diff changeset
275 int __stdcall AIL_start_sample(HSAMPLE);
0
Ritor1
parents:
diff changeset
276 void __stdcall AIL_set_sample_playback_rate(HSAMPLE, int rate);
Ritor1
parents:
diff changeset
277 void __stdcall AIL_sample_ms_position(HSAMPLE, int *pTotalMS, int *pCurrentMS);
Ritor1
parents:
diff changeset
278 int __stdcall AIL_3D_sample_status(void *a1);
Ritor1
parents:
diff changeset
279
Ritor1
parents:
diff changeset
280
Ritor1
parents:
diff changeset
281 namespace AIL
Ritor1
parents:
diff changeset
282 {
Ritor1
parents:
diff changeset
283 namespace Sample
Ritor1
parents:
diff changeset
284 {
Ritor1
parents:
diff changeset
285 enum Status
Ritor1
parents:
diff changeset
286 {
Ritor1
parents:
diff changeset
287 Free = 1, // Sample is available for allocation
Ritor1
parents:
diff changeset
288 Done = 2, // Sample has finished playing, or has never been started
Ritor1
parents:
diff changeset
289 Playing = 4, // Sample is playing
Ritor1
parents:
diff changeset
290 Stopped = 8, // Sample has been stopped
Ritor1
parents:
diff changeset
291 PlayingButReleased = 16 // Sample is playing, but digital handle has been temporarily released
Ritor1
parents:
diff changeset
292 };
Ritor1
parents:
diff changeset
293 };
Ritor1
parents:
diff changeset
294 };
Ritor1
parents:
diff changeset
295 AIL::Sample::Status __stdcall AIL_sample_status(HSAMPLE a1);
Ritor1
parents:
diff changeset
296
Ritor1
parents:
diff changeset
297
Ritor1
parents:
diff changeset
298 void __stdcall AIL_set_sample_loop_count(HSAMPLE, int);
Ritor1
parents:
diff changeset
299 int __stdcall AIL_set_sample_volume(HSAMPLE a1, long a2);
Ritor1
parents:
diff changeset
300
Ritor1
parents:
diff changeset
301
Ritor1
parents:
diff changeset
302 int __stdcall AIL_sample_volume(HSAMPLE);
Ritor1
parents:
diff changeset
303 void __stdcall AIL_init_sample(HSAMPLE);
Ritor1
parents:
diff changeset
304 int __stdcall AIL_set_sample_pan(HSAMPLE, long a2);
Ritor1
parents:
diff changeset
305 AILFILETYPE __stdcall AIL_file_type(void *pSoundBytes, int numBytes);
Ritor1
parents:
diff changeset
306 int __stdcall AIL_WAV_info(void *pSoundBytes, AILSOUNDINFO *pInfo);
Ritor1
parents:
diff changeset
307 int __stdcall AIL_decompress_ADPCM(AILSOUNDINFO *pInfo, void *a2, void *a3);
Ritor1
parents:
diff changeset
308 int __stdcall AIL_mem_free_lock(void *a1);
Ritor1
parents:
diff changeset
309
Ritor1
parents:
diff changeset
310
Ritor1
parents:
diff changeset
311
Ritor1
parents:
diff changeset
312
Ritor1
parents:
diff changeset
313
Ritor1
parents:
diff changeset
314
Ritor1
parents:
diff changeset
315
Ritor1
parents:
diff changeset
316
Ritor1
parents:
diff changeset
317
Ritor1
parents:
diff changeset
318