diff options
Diffstat (limited to 'al/eax_api.cpp')
-rw-r--r-- | al/eax_api.cpp | 121 |
1 files changed, 62 insertions, 59 deletions
diff --git a/al/eax_api.cpp b/al/eax_api.cpp index 041bd01a..6b1f7fcf 100644 --- a/al/eax_api.cpp +++ b/al/eax_api.cpp @@ -393,7 +393,9 @@ bool operator!=( } -const EAXREVERBPROPERTIES EAXREVERB_PRESET_GENERIC = +namespace { + +constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_GENERIC = { EAXREVERB_DEFAULTENVIRONMENT, EAXREVERB_DEFAULTENVIRONMENTSIZE, @@ -421,7 +423,7 @@ const EAXREVERBPROPERTIES EAXREVERB_PRESET_GENERIC = EAXREVERB_DEFAULTFLAGS, }; -const EAXREVERBPROPERTIES EAXREVERB_PRESET_PADDEDCELL = +constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_PADDEDCELL = { EAX_ENVIRONMENT_PADDEDCELL, 1.4F, @@ -449,7 +451,7 @@ const EAXREVERBPROPERTIES EAXREVERB_PRESET_PADDEDCELL = 0x3FUL, }; -const EAXREVERBPROPERTIES EAXREVERB_PRESET_ROOM = +constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_ROOM = { EAX_ENVIRONMENT_ROOM, 1.9F, @@ -477,7 +479,7 @@ const EAXREVERBPROPERTIES EAXREVERB_PRESET_ROOM = 0x3FUL, }; -const EAXREVERBPROPERTIES EAXREVERB_PRESET_BATHROOM = +constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_BATHROOM = { EAX_ENVIRONMENT_BATHROOM, 1.4F, @@ -505,7 +507,7 @@ const EAXREVERBPROPERTIES EAXREVERB_PRESET_BATHROOM = 0x3FUL, }; -const EAXREVERBPROPERTIES EAXREVERB_PRESET_LIVINGROOM = +constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_LIVINGROOM = { EAX_ENVIRONMENT_LIVINGROOM, 2.5F, @@ -533,7 +535,7 @@ const EAXREVERBPROPERTIES EAXREVERB_PRESET_LIVINGROOM = 0x3FUL, }; -const EAXREVERBPROPERTIES EAXREVERB_PRESET_STONEROOM = +constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_STONEROOM = { EAX_ENVIRONMENT_STONEROOM, 11.6F, @@ -561,7 +563,7 @@ const EAXREVERBPROPERTIES EAXREVERB_PRESET_STONEROOM = 0x3FUL, }; -const EAXREVERBPROPERTIES EAXREVERB_PRESET_AUDITORIUM = +constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_AUDITORIUM = { EAX_ENVIRONMENT_AUDITORIUM, 21.6F, @@ -589,7 +591,7 @@ const EAXREVERBPROPERTIES EAXREVERB_PRESET_AUDITORIUM = 0x3FUL, }; -const EAXREVERBPROPERTIES EAXREVERB_PRESET_CONCERTHALL = +constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_CONCERTHALL = { EAX_ENVIRONMENT_CONCERTHALL, 19.6F, @@ -617,7 +619,7 @@ const EAXREVERBPROPERTIES EAXREVERB_PRESET_CONCERTHALL = 0x3FUL, }; -const EAXREVERBPROPERTIES EAXREVERB_PRESET_CAVE = +constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_CAVE = { EAX_ENVIRONMENT_CAVE, 14.6F, @@ -645,7 +647,7 @@ const EAXREVERBPROPERTIES EAXREVERB_PRESET_CAVE = 0x1FUL, }; -const EAXREVERBPROPERTIES EAXREVERB_PRESET_ARENA = +constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_ARENA = { EAX_ENVIRONMENT_ARENA, 36.2F, @@ -673,7 +675,7 @@ const EAXREVERBPROPERTIES EAXREVERB_PRESET_ARENA = 0x3FUL, }; -const EAXREVERBPROPERTIES EAXREVERB_PRESET_HANGAR = +constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_HANGAR = { EAX_ENVIRONMENT_HANGAR, 50.3F, @@ -701,7 +703,7 @@ const EAXREVERBPROPERTIES EAXREVERB_PRESET_HANGAR = 0x3FUL, }; -const EAXREVERBPROPERTIES EAXREVERB_PRESET_CARPETTEDHALLWAY = +constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_CARPETTEDHALLWAY = { EAX_ENVIRONMENT_CARPETEDHALLWAY, 1.9F, @@ -729,7 +731,7 @@ const EAXREVERBPROPERTIES EAXREVERB_PRESET_CARPETTEDHALLWAY = 0x3FUL, }; -const EAXREVERBPROPERTIES EAXREVERB_PRESET_HALLWAY = +constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_HALLWAY = { EAX_ENVIRONMENT_HALLWAY, 1.8F, @@ -757,7 +759,7 @@ const EAXREVERBPROPERTIES EAXREVERB_PRESET_HALLWAY = 0x3FUL, }; -const EAXREVERBPROPERTIES EAXREVERB_PRESET_STONECORRIDOR = +constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_STONECORRIDOR = { EAX_ENVIRONMENT_STONECORRIDOR, 13.5F, @@ -785,7 +787,7 @@ const EAXREVERBPROPERTIES EAXREVERB_PRESET_STONECORRIDOR = 0x3FUL, }; -const EAXREVERBPROPERTIES EAXREVERB_PRESET_ALLEY = +constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_ALLEY = { EAX_ENVIRONMENT_ALLEY, 7.5F, @@ -813,7 +815,7 @@ const EAXREVERBPROPERTIES EAXREVERB_PRESET_ALLEY = 0x3FUL, }; -const EAXREVERBPROPERTIES EAXREVERB_PRESET_FOREST = +constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_FOREST = { EAX_ENVIRONMENT_FOREST, 38.0F, @@ -841,7 +843,7 @@ const EAXREVERBPROPERTIES EAXREVERB_PRESET_FOREST = 0x3FUL, }; -const EAXREVERBPROPERTIES EAXREVERB_PRESET_CITY = +constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_CITY = { EAX_ENVIRONMENT_CITY, 7.5F, @@ -869,7 +871,7 @@ const EAXREVERBPROPERTIES EAXREVERB_PRESET_CITY = 0x3FUL, }; -const EAXREVERBPROPERTIES EAXREVERB_PRESET_MOUNTAINS = +constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_MOUNTAINS = { EAX_ENVIRONMENT_MOUNTAINS, 100.0F, @@ -897,7 +899,7 @@ const EAXREVERBPROPERTIES EAXREVERB_PRESET_MOUNTAINS = 0x1FUL, }; -const EAXREVERBPROPERTIES EAXREVERB_PRESET_QUARRY = +constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_QUARRY = { EAX_ENVIRONMENT_QUARRY, 17.5F, @@ -925,7 +927,7 @@ const EAXREVERBPROPERTIES EAXREVERB_PRESET_QUARRY = 0x3FUL, }; -const EAXREVERBPROPERTIES EAXREVERB_PRESET_PLAIN = +constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_PLAIN = { EAX_ENVIRONMENT_PLAIN, 42.5F, @@ -953,7 +955,7 @@ const EAXREVERBPROPERTIES EAXREVERB_PRESET_PLAIN = 0x3FUL, }; -const EAXREVERBPROPERTIES EAXREVERB_PRESET_PARKINGLOT = +constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_PARKINGLOT = { EAX_ENVIRONMENT_PARKINGLOT, 8.3F, @@ -981,7 +983,7 @@ const EAXREVERBPROPERTIES EAXREVERB_PRESET_PARKINGLOT = 0x1FUL, }; -const EAXREVERBPROPERTIES EAXREVERB_PRESET_SEWERPIPE = +constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_SEWERPIPE = { EAX_ENVIRONMENT_SEWERPIPE, 1.7F, @@ -1009,7 +1011,7 @@ const EAXREVERBPROPERTIES EAXREVERB_PRESET_SEWERPIPE = 0x3FUL, }; -const EAXREVERBPROPERTIES EAXREVERB_PRESET_UNDERWATER = +constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_UNDERWATER = { EAX_ENVIRONMENT_UNDERWATER, 1.8F, @@ -1037,7 +1039,7 @@ const EAXREVERBPROPERTIES EAXREVERB_PRESET_UNDERWATER = 0x3FUL, }; -const EAXREVERBPROPERTIES EAXREVERB_PRESET_DRUGGED = +constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_DRUGGED = { EAX_ENVIRONMENT_DRUGGED, 1.9F, @@ -1065,7 +1067,7 @@ const EAXREVERBPROPERTIES EAXREVERB_PRESET_DRUGGED = 0x1FUL, }; -const EAXREVERBPROPERTIES EAXREVERB_PRESET_DIZZY = +constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_DIZZY = { EAX_ENVIRONMENT_DIZZY, 1.8F, @@ -1093,7 +1095,7 @@ const EAXREVERBPROPERTIES EAXREVERB_PRESET_DIZZY = 0x1FUL, }; -const EAXREVERBPROPERTIES EAXREVERB_PRESET_PSYCHOTIC = +constexpr EAXREVERBPROPERTIES EAXREVERB_PRESET_PSYCHOTIC = { EAX_ENVIRONMENT_PSYCHOTIC, 1.0F, @@ -1121,9 +1123,9 @@ const EAXREVERBPROPERTIES EAXREVERB_PRESET_PSYCHOTIC = 0x1FUL, }; +} // namespace -const EaxReverbPresets EAXREVERB_PRESETS = -{ +const EaxReverbPresets EAXREVERB_PRESETS{{ EAXREVERB_PRESET_GENERIC, EAXREVERB_PRESET_PADDEDCELL, EAXREVERB_PRESET_ROOM, @@ -1150,37 +1152,38 @@ const EaxReverbPresets EAXREVERB_PRESETS = EAXREVERB_PRESET_DRUGGED, EAXREVERB_PRESET_DIZZY, EAXREVERB_PRESET_PSYCHOTIC, -}; +}}; -const EAX_REVERBPROPERTIES EAX1REVERB_PRESET_GENERIC = {EAX_ENVIRONMENT_GENERIC, 0.5F, 1.493F, 0.5F}; -const EAX_REVERBPROPERTIES EAX1REVERB_PRESET_PADDEDCELL = {EAX_ENVIRONMENT_PADDEDCELL, 0.25F, 0.1F, 0.0F}; -const EAX_REVERBPROPERTIES EAX1REVERB_PRESET_ROOM = {EAX_ENVIRONMENT_ROOM, 0.417F, 0.4F, 0.666F}; -const EAX_REVERBPROPERTIES EAX1REVERB_PRESET_BATHROOM = {EAX_ENVIRONMENT_BATHROOM, 0.653F, 1.499F, 0.166F}; -const EAX_REVERBPROPERTIES EAX1REVERB_PRESET_LIVINGROOM = {EAX_ENVIRONMENT_LIVINGROOM, 0.208F, 0.478F, 0.0F}; -const EAX_REVERBPROPERTIES EAX1REVERB_PRESET_STONEROOM = {EAX_ENVIRONMENT_STONEROOM, 0.5F, 2.309F, 0.888F}; -const EAX_REVERBPROPERTIES EAX1REVERB_PRESET_AUDITORIUM = {EAX_ENVIRONMENT_AUDITORIUM, 0.403F, 4.279F, 0.5F}; -const EAX_REVERBPROPERTIES EAX1REVERB_PRESET_CONCERTHALL = {EAX_ENVIRONMENT_CONCERTHALL, 0.5F, 3.961F, 0.5F}; -const EAX_REVERBPROPERTIES EAX1REVERB_PRESET_CAVE = {EAX_ENVIRONMENT_CAVE, 0.5F, 2.886F, 1.304F}; -const EAX_REVERBPROPERTIES EAX1REVERB_PRESET_ARENA = {EAX_ENVIRONMENT_ARENA, 0.361F, 7.284F, 0.332F}; -const EAX_REVERBPROPERTIES EAX1REVERB_PRESET_HANGAR = {EAX_ENVIRONMENT_HANGAR, 0.5F, 10.0F, 0.3F}; -const EAX_REVERBPROPERTIES EAX1REVERB_PRESET_CARPETTEDHALLWAY = {EAX_ENVIRONMENT_CARPETEDHALLWAY, 0.153F, 0.259F, 2.0F}; -const EAX_REVERBPROPERTIES EAX1REVERB_PRESET_HALLWAY = {EAX_ENVIRONMENT_HALLWAY, 0.361F, 1.493F, 0.0F}; -const EAX_REVERBPROPERTIES EAX1REVERB_PRESET_STONECORRIDOR = {EAX_ENVIRONMENT_STONECORRIDOR, 0.444F, 2.697F, 0.638F}; -const EAX_REVERBPROPERTIES EAX1REVERB_PRESET_ALLEY = {EAX_ENVIRONMENT_ALLEY, 0.25F, 1.752F, 0.776F}; -const EAX_REVERBPROPERTIES EAX1REVERB_PRESET_FOREST = {EAX_ENVIRONMENT_FOREST, 0.111F, 3.145F, 0.472F}; -const EAX_REVERBPROPERTIES EAX1REVERB_PRESET_CITY = {EAX_ENVIRONMENT_CITY, 0.111F, 2.767F, 0.224F}; -const EAX_REVERBPROPERTIES EAX1REVERB_PRESET_MOUNTAINS = {EAX_ENVIRONMENT_MOUNTAINS, 0.194F, 7.841F, 0.472F}; -const EAX_REVERBPROPERTIES EAX1REVERB_PRESET_QUARRY = {EAX_ENVIRONMENT_QUARRY, 1.0F, 1.499F, 0.5F}; -const EAX_REVERBPROPERTIES EAX1REVERB_PRESET_PLAIN = {EAX_ENVIRONMENT_PLAIN, 0.097F, 2.767F, 0.224F}; -const EAX_REVERBPROPERTIES EAX1REVERB_PRESET_PARKINGLOT = {EAX_ENVIRONMENT_PARKINGLOT, 0.208F, 1.652F, 1.5F}; -const EAX_REVERBPROPERTIES EAX1REVERB_PRESET_SEWERPIPE = {EAX_ENVIRONMENT_SEWERPIPE, 0.652F, 2.886F, 0.25F}; -const EAX_REVERBPROPERTIES EAX1REVERB_PRESET_UNDERWATER = {EAX_ENVIRONMENT_UNDERWATER, 1.0F, 1.499F, 0.0F}; -const EAX_REVERBPROPERTIES EAX1REVERB_PRESET_DRUGGED = {EAX_ENVIRONMENT_DRUGGED, 0.875F, 8.392F, 1.388F}; -const EAX_REVERBPROPERTIES EAX1REVERB_PRESET_DIZZY = {EAX_ENVIRONMENT_DIZZY, 0.139F, 17.234F, 0.666F}; -const EAX_REVERBPROPERTIES EAX1REVERB_PRESET_PSYCHOTIC = {EAX_ENVIRONMENT_PSYCHOTIC, 0.486F, 7.563F, 0.806F}; - -const Eax1ReverbPresets EAX1REVERB_PRESETS = -{ +namespace { +constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_GENERIC = {EAX_ENVIRONMENT_GENERIC, 0.5F, 1.493F, 0.5F}; +constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_PADDEDCELL = {EAX_ENVIRONMENT_PADDEDCELL, 0.25F, 0.1F, 0.0F}; +constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_ROOM = {EAX_ENVIRONMENT_ROOM, 0.417F, 0.4F, 0.666F}; +constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_BATHROOM = {EAX_ENVIRONMENT_BATHROOM, 0.653F, 1.499F, 0.166F}; +constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_LIVINGROOM = {EAX_ENVIRONMENT_LIVINGROOM, 0.208F, 0.478F, 0.0F}; +constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_STONEROOM = {EAX_ENVIRONMENT_STONEROOM, 0.5F, 2.309F, 0.888F}; +constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_AUDITORIUM = {EAX_ENVIRONMENT_AUDITORIUM, 0.403F, 4.279F, 0.5F}; +constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_CONCERTHALL = {EAX_ENVIRONMENT_CONCERTHALL, 0.5F, 3.961F, 0.5F}; +constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_CAVE = {EAX_ENVIRONMENT_CAVE, 0.5F, 2.886F, 1.304F}; +constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_ARENA = {EAX_ENVIRONMENT_ARENA, 0.361F, 7.284F, 0.332F}; +constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_HANGAR = {EAX_ENVIRONMENT_HANGAR, 0.5F, 10.0F, 0.3F}; +constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_CARPETTEDHALLWAY = {EAX_ENVIRONMENT_CARPETEDHALLWAY, 0.153F, 0.259F, 2.0F}; +constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_HALLWAY = {EAX_ENVIRONMENT_HALLWAY, 0.361F, 1.493F, 0.0F}; +constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_STONECORRIDOR = {EAX_ENVIRONMENT_STONECORRIDOR, 0.444F, 2.697F, 0.638F}; +constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_ALLEY = {EAX_ENVIRONMENT_ALLEY, 0.25F, 1.752F, 0.776F}; +constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_FOREST = {EAX_ENVIRONMENT_FOREST, 0.111F, 3.145F, 0.472F}; +constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_CITY = {EAX_ENVIRONMENT_CITY, 0.111F, 2.767F, 0.224F}; +constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_MOUNTAINS = {EAX_ENVIRONMENT_MOUNTAINS, 0.194F, 7.841F, 0.472F}; +constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_QUARRY = {EAX_ENVIRONMENT_QUARRY, 1.0F, 1.499F, 0.5F}; +constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_PLAIN = {EAX_ENVIRONMENT_PLAIN, 0.097F, 2.767F, 0.224F}; +constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_PARKINGLOT = {EAX_ENVIRONMENT_PARKINGLOT, 0.208F, 1.652F, 1.5F}; +constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_SEWERPIPE = {EAX_ENVIRONMENT_SEWERPIPE, 0.652F, 2.886F, 0.25F}; +constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_UNDERWATER = {EAX_ENVIRONMENT_UNDERWATER, 1.0F, 1.499F, 0.0F}; +constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_DRUGGED = {EAX_ENVIRONMENT_DRUGGED, 0.875F, 8.392F, 1.388F}; +constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_DIZZY = {EAX_ENVIRONMENT_DIZZY, 0.139F, 17.234F, 0.666F}; +constexpr EAX_REVERBPROPERTIES EAX1REVERB_PRESET_PSYCHOTIC = {EAX_ENVIRONMENT_PSYCHOTIC, 0.486F, 7.563F, 0.806F}; +} // namespace + +const Eax1ReverbPresets EAX1REVERB_PRESETS{{ EAX1REVERB_PRESET_GENERIC, EAX1REVERB_PRESET_PADDEDCELL, EAX1REVERB_PRESET_ROOM, @@ -1207,4 +1210,4 @@ const Eax1ReverbPresets EAX1REVERB_PRESETS = EAX1REVERB_PRESET_DRUGGED, EAX1REVERB_PRESET_DIZZY, EAX1REVERB_PRESET_PSYCHOTIC, -}; +}}; |