Chris Robinson
087fdd3ca9
Properly mark arrays constexpr and/or static
2018-11-04 15:19:48 -08:00
Chris Robinson
96819237d6
Convert ambdec.c to C++
2018-11-03 19:51:23 -07:00
Chris Robinson
4bfaa173c4
Convert panning.c to C++
2018-11-03 19:05:23 -07:00
Chris Robinson
ba5ec8b074
Be more C++-friendly with the B-Format decoder
2018-11-03 18:00:05 -07:00
Chris Robinson
67f9efdad4
Convert the BFormat decoder to C++
2018-11-03 15:32:09 -07:00
Chris Robinson
12d5b638f2
Convert the band-split filter to C++
2018-11-03 15:23:15 -07:00
Chris Robinson
18e1d10338
Convert the UHJ encoder to C++
2018-11-03 14:40:40 -07:00
Chris Robinson
e9d17c5191
Move wstr_to_utf8 to compat.h
2018-11-03 12:55:02 -07:00
Chris Robinson
5482efc921
Make the polymorphic allocators allocate cleared memory
2018-11-02 18:48:08 -07:00
Chris Robinson
a7dcc1c6d1
Expand the anonymous namespaces
2018-11-02 14:56:10 -07:00
Chris Robinson
b54c4b02c7
Add a wrapper to manage PROPVARIANT objects
2018-11-02 13:32:42 -07:00
Chris Robinson
9e8e3c146f
Workaround lack of roundf with early MSVC
2018-11-02 09:39:57 -07:00
Chris Robinson
e20d2cdbce
Use HUGE_VALF instead of INFINITY
...
Older MSVC lacks INFINITY, and we define a HUGE_VALF fallback when needed.
2018-11-02 09:25:19 -07:00
Chris Robinson
4ec757c1de
Specify the correct array size for casting
2018-11-02 09:22:12 -07:00
Chris Robinson
aaa31d987f
Check the correct propvariant object
2018-11-02 00:42:50 -07:00
Chris Robinson
d66664122a
Try another fix to declare GUIDs in C++
2018-11-02 00:13:07 -07:00
Chris Robinson
66df771d96
Make the polymorphism macros less hacky in C++
...
In particular, it relies on derived structs using C++-style inheritence. Any
implementation's source that's converted to C++ will consequently need to make
that change.
2018-11-01 23:52:53 -07:00
Chris Robinson
7307c2d5aa
Workaround some issue with DEFINE_GUID in C++
2018-11-01 21:42:26 -07:00
Chris Robinson
a90b17113a
Use more C++ types where possible
2018-11-01 21:39:34 -07:00
Chris Robinson
434582b8e3
Use an anonymous namespace instead of static for some things
2018-11-01 20:18:51 -07:00
Chris Robinson
1ca4e268f6
Preliminary conversion of the WASAPI backend to C++
...
A very sparse conversion. Will clean up more later after seeing what MSVC does.
2018-11-01 16:26:42 -07:00
Chris Robinson
dee2905f4a
Remove unused CXX_FLAGS variable
...
The Visual Studio generators apparently don't like the $<COMPILE_LANGUAGE:...>
expression. Since it's not actually used for anything at the moment, remove it.
2018-11-01 16:10:46 -07:00
Chris Robinson
c0ce71a175
Fix a macro check
2018-11-01 16:00:38 -07:00
Chris Robinson
11967dc2da
Use a wrapper function to simplify a check
2018-11-01 16:00:16 -07:00
Chris Robinson
69162cf9c6
Use perfect forwarding to initialize DevMap entries
2018-11-01 13:12:42 -07:00
Chris Robinson
cd68530ab4
Simplify a couple loops
2018-11-01 11:44:11 -07:00
Chris Robinson
5d092a1c58
Use the appropriate enums for standard atomics
2018-11-01 08:43:31 -07:00
Chris Robinson
d28c0eb556
Avoid uniform initialization with references
...
Also doesn't work with GCC 4.x
2018-11-01 08:41:23 -07:00
Chris Robinson
48f877e859
Remove unused header
2018-11-01 08:19:51 -07:00
Chris Robinson
ccf356a03d
Include a missing header for atomic
2018-11-01 08:17:23 -07:00
Chris Robinson
95966c4d92
Fix another use of auto uniform initialization
2018-11-01 08:15:47 -07:00
Chris Robinson
759c3a996c
Avoid all uniform initialization with auto
...
Because of early C++11 (GCC 4.x) deficiencies, it's not interpreted correctly.
Either declare the type name explicitly with uniform initization, or use auto
with = initialization. It'll be fine when updating to GCC 5 or Clang 3.6.
2018-11-01 08:04:21 -07:00
Chris Robinson
353bb1ed17
Avoid uniform initialization on auto for integer types
...
To work around a deficiency with early C++11 compilers (GCC 4.x).
2018-10-31 22:10:26 -07:00
Chris Robinson
d41fbd5c2d
Convert the PulseAudio backend to C++
2018-10-31 20:09:14 -07:00
Chris Robinson
de275408fa
Make a const array constexpr
2018-10-31 13:31:14 -07:00
Chris Robinson
0e7986eaa8
Move some extern inline declarations to C
2018-10-31 13:21:05 -07:00
Chris Robinson
9dba90fa20
Avoid assigning in an if statement
2018-10-31 13:00:08 -07:00
Chris Robinson
77bac8eeaa
Add a missing <array> include
2018-10-31 12:01:07 -07:00
Chris Robinson
4d422dfb24
Fix some backup atomic macros
2018-10-31 12:00:02 -07:00
Chris Robinson
624bc1c839
Convert alBuffer.c to C++
...
A test to ensure everything works.
2018-10-31 10:37:16 -07:00
Chris Robinson
4b7af24ed5
Add specializations for lock_guard and unique_lock to take almtx_t
2018-10-31 10:35:12 -07:00
Chris Robinson
1e8c6df7b9
Add a C++ ContextRef helper to manage a ALCcontext reference
2018-10-31 10:05:15 -07:00
Chris Robinson
da150572f9
Clean up the DriverIface in its destructor
2018-10-30 17:03:21 -07:00
Chris Robinson
615c025b67
Add a missing include for array
2018-10-30 16:35:14 -07:00
Chris Robinson
08aa9d898b
Remove an unnecessary include
2018-10-30 16:32:25 -07:00
Chris Robinson
6a8f5e5950
Build the router with AppVeyor
2018-10-30 15:38:11 -07:00
Chris Robinson
f747ac8882
Clean up the router's PtrIntMap
2018-10-30 14:28:19 -07:00
Chris Robinson
44f91760b5
Use std::array instead of raw arrays
2018-10-30 10:01:49 -07:00
Chris Robinson
e2a1dd4503
Use std::wstring in place of some fixed WCHAR arrays
2018-10-30 09:31:52 -07:00
Chris Robinson
ce212c911c
Add a cmake option to static-link winpthread
2018-10-30 09:24:39 -07:00