author | peter1138 |
Sun, 03 Aug 2008 17:35:08 +0000 | |
changeset 9834 | 7474149531c1 |
parent 9390 | 88d36f907e96 |
permissions | -rw-r--r-- |
2186 | 1 |
/* $Id$ */ |
2 |
||
8157
1505def01945
(svn r11719) -Codechange: split sound.h in a header with types and one with functions.
rubidium
parents:
8138
diff
changeset
|
3 |
/** @file sound_type.h Types related to sounds. */ |
6420
456c275f3313
(svn r9556) -Documentation: doxygen and comment-style changes. 'R', 'S'.. The end of the preliminary work is near
belugas
parents:
6248
diff
changeset
|
4 |
|
8157
1505def01945
(svn r11719) -Codechange: split sound.h in a header with types and one with functions.
rubidium
parents:
8138
diff
changeset
|
5 |
#ifndef SOUND_TYPE_H |
1505def01945
(svn r11719) -Codechange: split sound.h in a header with types and one with functions.
rubidium
parents:
8138
diff
changeset
|
6 |
#define SOUND_TYPE_H |
0 | 7 |
|
8119
52b48108425a
(svn r11680) -Codechange: refactor more out of openttd.h and functions.h.
rubidium
parents:
7570
diff
changeset
|
8 |
#include "core/enum_type.hpp" |
5587
167d9a91ef02
(svn r8038) -Merge: the cpp branch. Effort of KUDr, Celestar, glx, Smoovius, stillunknown and pv2b.
rubidium
parents:
5475
diff
changeset
|
9 |
|
6248
e4a2ed7e5613
(svn r9051) -Codechange: typedef [enum|struct] Y {} X; -> [enum|struct] X {};
rubidium
parents:
6247
diff
changeset
|
10 |
struct MusicFileSettings { |
0 | 11 |
byte playlist; |
12 |
byte music_vol; |
|
13 |
byte effect_vol; |
|
14 |
byte custom_1[33]; |
|
15 |
byte custom_2[33]; |
|
3052
ebb8c7a94e5f
(svn r3641) - Rename MusicFilesettings 'btn_down' to more sensible 'playing'
Darkvater
parents:
2186
diff
changeset
|
16 |
bool playing; |
0 | 17 |
bool shuffle; |
1584
7122e759d56c
(svn r2088) - Fix: [ 1155158 ] Make extmidi command a config option in addition to the compile-time MIDI switch. Patch by macbaine.
pasky
parents:
1496
diff
changeset
|
18 |
char extmidi[80]; |
6248
e4a2ed7e5613
(svn r9051) -Codechange: typedef [enum|struct] Y {} X; -> [enum|struct] X {};
rubidium
parents:
6247
diff
changeset
|
19 |
}; |
0 | 20 |
|
6248
e4a2ed7e5613
(svn r9051) -Codechange: typedef [enum|struct] Y {} X; -> [enum|struct] X {};
rubidium
parents:
6247
diff
changeset
|
21 |
struct FileEntry { |
7570
5d5d9b6af0ef
(svn r11095) -Codechange: don't abuse 'file_pos' by storing the file_slot in it too, but use a nice seperate variable for it
truelight
parents:
6420
diff
changeset
|
22 |
uint8 file_slot; |
9390
88d36f907e96
(svn r13301) -Fix [FS#1997]: resolve more MSVC 9 x64 warnings.
rubidium
parents:
8157
diff
changeset
|
23 |
size_t file_offset; |
88d36f907e96
(svn r13301) -Fix [FS#1997]: resolve more MSVC 9 x64 warnings.
rubidium
parents:
8157
diff
changeset
|
24 |
size_t file_size; |
4656
9c1d8c4d3e60
(svn r6532) - Feature: Add support for NewGRF sound effects. Currently sound priority isn't supported.
peter1138
parents:
3052
diff
changeset
|
25 |
uint16 rate; |
9c1d8c4d3e60
(svn r6532) - Feature: Add support for NewGRF sound effects. Currently sound priority isn't supported.
peter1138
parents:
3052
diff
changeset
|
26 |
uint8 bits_per_sample; |
9c1d8c4d3e60
(svn r6532) - Feature: Add support for NewGRF sound effects. Currently sound priority isn't supported.
peter1138
parents:
3052
diff
changeset
|
27 |
uint8 channels; |
9c1d8c4d3e60
(svn r6532) - Feature: Add support for NewGRF sound effects. Currently sound priority isn't supported.
peter1138
parents:
3052
diff
changeset
|
28 |
uint8 volume; |
9c1d8c4d3e60
(svn r6532) - Feature: Add support for NewGRF sound effects. Currently sound priority isn't supported.
peter1138
parents:
3052
diff
changeset
|
29 |
uint8 priority; |
6248
e4a2ed7e5613
(svn r9051) -Codechange: typedef [enum|struct] Y {} X; -> [enum|struct] X {};
rubidium
parents:
6247
diff
changeset
|
30 |
}; |
4656
9c1d8c4d3e60
(svn r6532) - Feature: Add support for NewGRF sound effects. Currently sound priority isn't supported.
peter1138
parents:
3052
diff
changeset
|
31 |
|
6248
e4a2ed7e5613
(svn r9051) -Codechange: typedef [enum|struct] Y {} X; -> [enum|struct] X {};
rubidium
parents:
6247
diff
changeset
|
32 |
enum SoundFx { |
5587
167d9a91ef02
(svn r8038) -Merge: the cpp branch. Effort of KUDr, Celestar, glx, Smoovius, stillunknown and pv2b.
rubidium
parents:
5475
diff
changeset
|
33 |
SND_BEGIN = 0, |
167d9a91ef02
(svn r8038) -Merge: the cpp branch. Effort of KUDr, Celestar, glx, Smoovius, stillunknown and pv2b.
rubidium
parents:
5475
diff
changeset
|
34 |
SND_02_SPLAT = 0, // 0 == 0x00 ! |
337
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
35 |
SND_03_FACTORY_WHISTLE, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
36 |
SND_04_TRAIN, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
37 |
SND_05_TRAIN_THROUGH_TUNNEL, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
38 |
SND_06_SHIP_HORN, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
39 |
SND_07_FERRY_HORN, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
40 |
SND_08_PLANE_TAKE_OFF, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
41 |
SND_09_JET, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
42 |
SND_0A_TRAIN_HORN, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
43 |
SND_0B_MINING_MACHINERY, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
44 |
SND_0C_ELECTRIC_SPARK, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
45 |
SND_0D_STEAM, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
46 |
SND_0E_LEVEL_CROSSING, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
47 |
SND_0F_VEHICLE_BREAKDOWN, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
48 |
SND_10_TRAIN_BREAKDOWN, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
49 |
SND_11_CRASH, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
50 |
SND_12_EXPLOSION, // 16 == 0x10 |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
51 |
SND_13_BIG_CRASH, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
52 |
SND_14_CASHTILL, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
53 |
SND_15_BEEP, // 19 == 0x13 |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
54 |
SND_16_MORSE, // 20 == 0x14 |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
55 |
SND_17_SKID_PLANE, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
56 |
SND_18_HELICOPTER, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
57 |
SND_19_BUS_START_PULL_AWAY, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
58 |
SND_1A_BUS_START_PULL_AWAY_WITH_HORN, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
59 |
SND_1B_TRUCK_START, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
60 |
SND_1C_TRUCK_START_2, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
61 |
SND_1D_APPLAUSE, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
62 |
SND_1E_OOOOH, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
63 |
SND_1F_SPLAT, // 29 == 0x1D |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
64 |
SND_20_SPLAT_2, // 30 == 0x1E |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
65 |
SND_21_JACKHAMMER, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
66 |
SND_22_CAR_HORN, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
67 |
SND_23_CAR_HORN_2, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
68 |
SND_24_SHEEP, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
69 |
SND_25_COW, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
70 |
SND_26_HORSE, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
71 |
SND_27_BLACKSMITH_ANVIL, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
72 |
SND_28_SAWMILL, // 38 == 0x26 ! |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
73 |
SND_00_GOOD_YEAR, // 39 == 0x27 ! |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
74 |
SND_01_BAD_YEAR, // 40 == 0x28 ! |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
75 |
SND_29_RIP, // 41 == 0x29 ! |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
76 |
SND_2A_EXTRACT_AND_POP, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
77 |
SND_2B_COMEDY_HIT, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
78 |
SND_2C_MACHINERY, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
79 |
SND_2D_RIP_2, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
80 |
SND_2E_EXTRACT_AND_POP, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
81 |
SND_2F_POP, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
82 |
SND_30_CARTOON_SOUND, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
83 |
SND_31_EXTRACT, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
84 |
SND_32_POP_2, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
85 |
SND_33_PLASTIC_MINE, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
86 |
SND_34_WIND, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
87 |
SND_35_COMEDY_BREAKDOWN, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
88 |
SND_36_CARTOON_CRASH, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
89 |
SND_37_BALLOON_SQUEAK, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
90 |
SND_38_CHAINSAW, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
91 |
SND_39_HEAVY_WIND, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
92 |
SND_3A_COMEDY_BREAKDOWN_2, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
93 |
SND_3B_JET_OVERHEAD, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
94 |
SND_3C_COMEDY_CAR, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
95 |
SND_3D_ANOTHER_JET_OVERHEAD, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
96 |
SND_3E_COMEDY_CAR_2, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
97 |
SND_3F_COMEDY_CAR_3, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
98 |
SND_40_COMEDY_CAR_START_AND_PULL_AWAY, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
99 |
SND_41_MAGLEV, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
100 |
SND_42_LOON_BIRD, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
101 |
SND_43_LION, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
102 |
SND_44_MONKEYS, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
103 |
SND_45_PLANE_CRASHING, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
104 |
SND_46_PLANE_ENGINE_SPUTTERING, |
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
105 |
SND_47_MAGLEV_2, |
5587
167d9a91ef02
(svn r8038) -Merge: the cpp branch. Effort of KUDr, Celestar, glx, Smoovius, stillunknown and pv2b.
rubidium
parents:
5475
diff
changeset
|
106 |
SND_48_DISTANT_BIRD, // 72 == 0x48 |
167d9a91ef02
(svn r8038) -Merge: the cpp branch. Effort of KUDr, Celestar, glx, Smoovius, stillunknown and pv2b.
rubidium
parents:
5475
diff
changeset
|
107 |
SND_END |
6248
e4a2ed7e5613
(svn r9051) -Codechange: typedef [enum|struct] Y {} X; -> [enum|struct] X {};
rubidium
parents:
6247
diff
changeset
|
108 |
}; |
337
cbe0c766c947
(svn r513) Merge revisions 402, 416, 417, 478, 479, 511, 512 from map to trunk
tron
parents:
0
diff
changeset
|
109 |
|
5587
167d9a91ef02
(svn r8038) -Merge: the cpp branch. Effort of KUDr, Celestar, glx, Smoovius, stillunknown and pv2b.
rubidium
parents:
5475
diff
changeset
|
110 |
/** Define basic enum properties */ |
167d9a91ef02
(svn r8038) -Merge: the cpp branch. Effort of KUDr, Celestar, glx, Smoovius, stillunknown and pv2b.
rubidium
parents:
5475
diff
changeset
|
111 |
template <> struct EnumPropsT<SoundFx> : MakeEnumPropsT<SoundFx, byte, SND_BEGIN, SND_END, SND_END> {}; |
167d9a91ef02
(svn r8038) -Merge: the cpp branch. Effort of KUDr, Celestar, glx, Smoovius, stillunknown and pv2b.
rubidium
parents:
5475
diff
changeset
|
112 |
typedef TinyEnumT<SoundFx> SoundFxByte; |
167d9a91ef02
(svn r8038) -Merge: the cpp branch. Effort of KUDr, Celestar, glx, Smoovius, stillunknown and pv2b.
rubidium
parents:
5475
diff
changeset
|
113 |
|
8157
1505def01945
(svn r11719) -Codechange: split sound.h in a header with types and one with functions.
rubidium
parents:
8138
diff
changeset
|
114 |
#endif /* SOUND_TYPE_H */ |