153 Commits

Author SHA1 Message Date
Chris Robinson
c01743fe5d Remove the CONST_CAST hack 2018-11-19 03:53:31 -08:00
Chris Robinson
e6c2c1f3b6 Remove unnecessary using statements 2018-11-19 03:32:16 -08:00
Chris Robinson
e24435ef58 Remove the atomic exchange macros 2018-11-19 03:21:58 -08:00
Chris Robinson
c5142530d6 Simplify the RefCount type 2018-11-19 02:17:06 -08:00
Chris Robinson
6e114a7a70 Replace ATOMIC_REPLACE_HEAD with an inline function 2018-11-19 01:20:03 -08:00
Chris Robinson
f48be9d73b Remove the pointer-specific atomic exchange macros 2018-11-18 03:59:39 -08:00
Chris Robinson
4dc8f44d00 Move the alignment-aware allocator and vector to headers 2018-11-18 01:33:26 -08:00
Chris Robinson
d7cc9b912b Use new/delete for ALCcontext objects 2018-11-18 00:38:31 -08:00
Chris Robinson
e79d9bdd1a Move the vector and matrix declarations to a separate header 2018-11-17 23:21:37 -08:00
Chris Robinson
d10301c209 Remove unused headers and checks 2018-11-17 19:52:54 -08:00
Chris Robinson
1ac41d3ea0 Convert almalloc.c to C++ 2018-11-17 19:01:10 -08:00
Chris Robinson
8c69fb046c Always use C++11 atomics 2018-11-17 18:56:00 -08:00
Chris Robinson
7b537c795b Don't pass the current thread to althrd_setname 2018-11-17 06:07:04 -08:00
Chris Robinson
1fae8c16a8 Convert threads.c to C++
Also vastly simplify and remove related code.
2018-11-17 05:31:29 -08:00
Chris Robinson
ccdaca80c9 Use standard complex types instead of custom 2018-11-17 04:14:57 -08:00
Chris Robinson
09943683b5 Remove some more unused stuff 2018-11-17 02:41:21 -08:00
Chris Robinson
f1731af282 Remove unneeded declarations and definitions 2018-11-17 01:29:35 -08:00
Chris Robinson
de8d8b5216 Remove unused altss types and methods 2018-11-16 22:12:35 -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
3b1b029a75 Remove some now-unused function checks 2018-11-14 17:08:14 -08:00
Chris Robinson
a5f68c2121 Avoid using ATOMIC_FLAG
Although it cant potentially be better than a regular atomic, it presents
compatibility issues when non-C11 atomics are mixed with C++
2018-11-13 20:26:32 -08:00
Chris Robinson
5bc2918e16 Remove the unused condition variable APIs 2018-11-10 22:53:03 -08:00
Chris Robinson
f3ce7bc7dc Move altimespec_get and al_nssleep to examples' common code 2018-11-10 21:09:54 -08:00
Chris Robinson
27fbccfb23 Don't directly declare standard function names 2018-11-06 19:14:17 -08:00
Chris Robinson
4d422dfb24 Fix some backup atomic macros 2018-10-31 12:00:02 -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
3deb7c6ed5 Workaround C++ compatiility issues for atomic.h
This isn't wholly correct since neither C11 or C++11 guarantee compatibility
between atomic implementations. It's desired behavior and mostly works, see:

http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p0943r1.html

Alignment issues can be fixed with manual alignas() specifications, should the
need arise.
2018-10-29 20:50:57 -07:00
Chris Robinson
5fea511cce Fix some more headers for C++ 2018-10-29 11:51:41 -07:00
Chris Robinson
e876b50113 Remove unnecessary uses of IN_IDE_PARSER 2018-10-29 10:10:37 -07:00
Chris Robinson
7f8ef092aa Fix a couple internal headers to compile with C++ 2018-10-29 10:10:37 -07:00
Filip Gawin
08226bc6b0 Simplify some statements 2018-10-29 13:38:58 +01:00
alexey.lysiuk
c8d866a25a Use GCD semaphore on macOS
Unnamed POSIX semaphore doesn't work on macOS
2018-10-15 19:41:22 +03:00
Chris Robinson
48b7745a49 Add macros for commonly used square roots 2018-09-19 19:53:25 -07:00
Chris Robinson
21dc2c761d Check for and use copysignf 2018-08-29 03:53:09 -07:00
Chris Robinson
bd9c6989c2 Clear the TLS pointer after running its destructor callback 2018-06-06 23:10:37 -07:00
Chris Robinson
803d331711 Improve formatting of the hilbert function 2018-05-24 00:16:50 -07:00
Raulshc
97c165b951
Add correct cast 2018-05-20 18:44:24 +02:00
Raulshc
dd51ba396b
Common: Implement discrete Hilbert transform 2018-05-20 17:21:50 +02:00
Chris Robinson
e42489b3e9 Include math_defs.h to ensure M_PI is defined 2018-05-15 18:50:32 -07:00
Chris Robinson
2b9064cb6e Move the ALcomplex and FFT functions to a separate file 2018-05-15 18:31:41 -07:00
Chris Robinson
5272caf7f4 More accurately convert between degrees and radians 2018-05-14 00:20:31 -07:00
Chris Robinson
788f5398b0 Slightly relax the memory order for ref counters 2018-03-26 10:14:27 -07:00
Chris Robinson
7789cc8e32 Define the Hanning window globally once for the pitch shifter 2018-03-22 09:55:15 -07:00
Chris Robinson
dac9379449 Add methods to clean up althrd and altss data 2018-03-10 12:10:58 -08:00
Chris Robinson
b11e31fbfd Clear stale 'post's on the event semphaphore 2018-02-11 06:14:18 -08:00
Chris Robinson
f5f996c14a Check for a cbrtf function 2018-02-06 02:35:08 -08:00
Chris Robinson
a114d6cbb5 Remove unused _timed methods
They're not reliably implemented anyway, as some systems will just flat out
fail when trying to use them.
2018-02-01 22:24:17 -08:00
Chris Robinson
3a90fd5751 Avoid an unnecessary temp variable 2018-02-01 19:11:23 -08:00
Chris Robinson
4ec31291c0 Add semaphore functions to the thread API wrapper 2018-02-01 17:37:31 -08:00
Chris Robinson
d1da9f1f67 Remove some now-unused NoLock function variants 2018-01-28 00:53:21 -08:00