Chris Robinson
3bbfd0c099
Fix compilation with MSVC
2018-11-16 23:01:40 -08:00
Chris Robinson
1bd40d9434
Put a lambda in the call_once call
...
This optimizes better and avoids a visible symbol (templating to an anonymous
lambda type will generate a unique anonymous instantiation, making inlining
more likely, whereas passing a general function pointer/reference type will
likely use or generate a publically available instance).
2018-11-16 22:41:04 -08:00
Chris Robinson
de8d8b5216
Remove unused altss types and methods
2018-11-16 22:12:35 -08:00
Chris Robinson
ee8e6733e1
Avoid using C-style TLS
2018-11-16 21:55:11 -08:00
Chris Robinson
8410e71a34
Convert the reverb effect to C++
2018-11-16 21:31:52 -08:00
Chris Robinson
a68d0b68d7
Convert mixvoice.c to C++
2018-11-16 20:46:50 -08:00
Chris Robinson
53373a43b8
Convert ALu.c to C++
...
Required changes to bsincgen to generate C++-friendly structures.
2018-11-16 20:32:19 -08:00
Chris Robinson
317acd6ae2
Convert alEffect.c and alFilter.c to C++
2018-11-16 18:44:43 -08:00
Chris Robinson
a15a678da6
Convert alListener.c to C++
2018-11-16 18:37:55 -08:00
Chris Robinson
0e0fe15b98
Convert alAuxEffectSlot.c to C++
2018-11-16 18:28:39 -08:00
Chris Robinson
ce370be52b
Remove some unneeded includes
2018-11-16 08:09:56 -08:00
Chris Robinson
50f36d39f7
Use lock_guard instead of manual lock/unlock calls
2018-11-16 07:11:27 -08:00
Chris Robinson
165c162d01
Convert alState.c to C++
2018-11-16 06:48:33 -08:00
Chris Robinson
436db28a3f
Convert alError.c to C++
2018-11-16 06:24:24 -08:00
Chris Robinson
8be45fe8a5
Convert alExtension.c to C++
2018-11-16 06:08:25 -08:00
Chris Robinson
fedd5ebbea
Convert event.c to C++
2018-11-16 06:00:28 -08:00
Chris Robinson
5cdd28c736
Convert sample_cvt.c to C++
2018-11-16 05:24:15 -08:00
Chris Robinson
02eae1123f
Use iterators instead of indexed loops
2018-11-16 05:23:42 -08:00
Chris Robinson
fc8191012a
Cleanup some syntax in alc.cpp
2018-11-16 00:06:54 -08:00
Chris Robinson
7a06a54af7
Simplify a couple checks
2018-11-15 23:58:34 -08:00
Chris Robinson
a727978eb9
Remove unused declarations and definitions
2018-11-15 23:55:23 -08:00
Chris Robinson
7ef7477a13
Convert the PortAudio backend factory
2018-11-15 23:50:15 -08:00
Chris Robinson
78eb68a89f
Convert the WinMM backend factory
2018-11-15 23:41:09 -08:00
Chris Robinson
2ca6119e0e
Convert the DSound backend factory
2018-11-15 23:32:28 -08:00
Chris Robinson
5dc1956e18
Convert the QSA backend factory
2018-11-15 23:10:06 -08:00
Chris Robinson
c78b42fb4e
Convert the OSS backend factory
2018-11-15 23:02:26 -08:00
Chris Robinson
7884cec02b
Convert the SndIO backend factory
2018-11-15 22:36:49 -08:00
Chris Robinson
271cfcf8e3
Convert the Solaris backend factory
2018-11-15 22:23:29 -08:00
Chris Robinson
d73d01548d
Convert the SDL2 backend factory
2018-11-15 22:15:10 -08:00
Chris Robinson
2a839e5762
Convert the JACK backend factory
2018-11-15 22:03:20 -08:00
Chris Robinson
d4928d4e7d
Convert the Wave Writer backend factory
2018-11-15 21:53:14 -08:00
Chris Robinson
cc113ce6ab
Convert the OpenSL backend factory
2018-11-15 21:42:17 -08:00
Chris Robinson
9d43b548cc
Convert the ALSA backend factory
2018-11-15 21:33:44 -08:00
Chris Robinson
ead830814b
Convert the CoreAudio backend factory
2018-11-15 21:24:09 -08:00
Chris Robinson
b1fb2e9e14
Convert the WASAPI backend factory
2018-11-15 21:14:20 -08:00
Chris Robinson
e716c7b988
Convert the PulseAudio backend factory
2018-11-15 19:57:21 -08:00
Chris Robinson
4311c609e4
Update the loopback backend
2018-11-15 19:42:13 -08:00
Chris Robinson
49d8ac2537
Start a new backend factory API
...
Using proper class inheritance. Be aware this breaks all backends except null
(and loopback). They will be restored individually in due time.
2018-11-15 19:15:14 -08:00
Chris Robinson
7c93308771
Remove checks for functions that always exist
...
They're part of C++11 and available on the testing systems. If some system has
trouble, switching to proper C++ calls should fix it.
2018-11-15 17:53:05 -08:00
Chris Robinson
dc622b3182
Use std::isfinite from the cmath header
2018-11-15 06:48:52 -08:00
Chris Robinson
a3b644374b
Add a missing cast for MSVC
2018-11-15 06:48:00 -08:00
Chris Robinson
245b7ff0b4
Remove the unused al_string API
2018-11-15 06:32:01 -08:00
Chris Robinson
7b3a2085aa
Use a regular char* for the device's name
2018-11-15 06:23:01 -08:00
Chris Robinson
ab9f8162b8
Pass a normal const char* to EnumerateHrtf
2018-11-15 05:38:27 -08:00
Chris Robinson
9d9d626d99
Avoid some more uses of al_string
2018-11-15 05:33:02 -08:00
Chris Robinson
08bee7cb58
Search the right list for WASAPI name duplicates
2018-11-15 04:35:35 -08:00
Chris Robinson
17161131e5
Remove an unused extern inline
2018-11-15 04:28:47 -08:00
Chris Robinson
1971d0f5c6
Use std::string instead of al_string for enumerating
2018-11-15 04:24:33 -08:00
Chris Robinson
d4f64b9e29
Use a C++ mutex with the device backend base
2018-11-15 03:49:59 -08:00
Chris Robinson
b7daddb564
Try to clean up compat.h's macro block spaghetti a bit
2018-11-15 03:29:56 -08:00