|
1 /* |
|
2 * OpenAL Bridge - a simple portable library for OpenAL interface |
|
3 * Copyright (c) 2009 Vittorio Giovara <vittorio.giovara@gmail.com> |
|
4 * |
|
5 * This program is free software; you can redistribute it and/or modify |
|
6 * it under the terms of the GNU Lesser General Public License as published by |
|
7 * the Free Software Foundation; version 2 of the License |
|
8 * |
|
9 * This program is distributed in the hope that it will be useful, |
|
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
12 * GNU Lesser General Public License for more details. |
|
13 * |
|
14 * You should have received a copy of the GNU Lesser General Public License |
|
15 * along with this program; if not, write to the Free Software |
|
16 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA |
|
17 */ |
|
18 |
|
19 #include <stdint.h> |
|
20 |
|
21 #ifndef _OALB_INTERFACE_TYPES_H |
|
22 #define _OALB_INTERFACE_TYPES_H |
|
23 |
|
24 enum al_fade_enum {AL_FADE_IN, AL_FADE_OUT}; |
|
25 typedef enum al_fade_enum al_fade_t; |
|
26 |
|
27 //data type for passing data between threads |
|
28 #pragma pack(1) |
|
29 typedef struct _fade_t { |
|
30 uint32_t index; |
|
31 uint16_t quantity; |
|
32 al_fade_t type; |
|
33 } fade_t; |
|
34 #pragma pack() |
|
35 |
|
36 |
|
37 //data type for WAV header |
|
38 #pragma pack(1) |
|
39 typedef struct _WAV_header_t { |
|
40 uint32_t ChunkID; |
|
41 uint32_t ChunkSize; |
|
42 uint32_t Format; |
|
43 uint32_t Subchunk1ID; |
|
44 uint32_t Subchunk1Size; |
|
45 uint16_t AudioFormat; |
|
46 uint16_t NumChannels; |
|
47 uint32_t SampleRate; |
|
48 uint32_t ByteRate; |
|
49 uint16_t BlockAlign; |
|
50 uint16_t BitsPerSample; |
|
51 uint32_t Subchunk2ID; |
|
52 uint32_t Subchunk2Size; |
|
53 } WAV_header_t; |
|
54 #pragma pack() |
|
55 |
|
56 |
|
57 #ifdef __CPLUSPLUS |
|
58 } |
|
59 #endif |
|
60 |
|
61 #endif /*_OALB_INTERFACE_TYPES_H*/ |