aboutsummaryrefslogtreecommitdiffstats
path: root/common
Commit message (Collapse)AuthorAgeFilesLines
* Handle the listener position separate from the rotation matrixChris Robinson2021-05-251-0/+7
| | | | | | It's too unstable with larger vectors. Even when the source and listener positions are the same, floating point precision can cause noticeable rounding errors.
* Don't bother with al string typesChris Robinson2021-04-241-13/+0
|
* Make an inverted atomic flag type and use itChris Robinson2021-04-151-0/+21
| | | | | | | | The inverted atomic flag replaces test_and_set+clear with test_and_clear+set, essentially inverting the flag status. This makes more logical sense for flagging dirty state, which is less confusing than flagging clean state. The one caveat is ATOMIC_FLAG_INIT (or default construction in C++20) initializes the state to true rather than false.
* Move the UHJ phase shifter to a common headerChris Robinson2021-03-281-0/+347
|
* Move the ComPtr wrapper to a common headerChris Robinson2021-03-081-0/+70
|
* Use a fast native type for the backup popcountChris Robinson2021-03-021-7/+20
|
* Calculate the square root after checking the limitChris Robinson2021-01-291-4/+5
|
* Add a panning "deadzone" for spatialized sourcesChris Robinson2021-01-281-2/+3
| | | | It is now the greater of 'epsilon' (1 / 2**23) or ref_distance/1024.
* Move al::deque to a common headerChris Robinson2021-01-251-0/+16
|
* Remove some unnecessary function attributesChris Robinson2021-01-231-4/+4
| | | | | | | | The alloc_size was wrong anyway since the function parameter takes the number of objects to be allocated and the attribute declares which is the number of bytes. The assume_aligned is unnecessary since the function is inlined and al_malloc/al_calloc already have appropriate attributes for the compiler to see.
* Don't bother checking for std::aligned_allocChris Robinson2021-01-221-5/+2
|
* Fix __cplusplus value checkChris Robinson2021-01-221-1/+1
|
* Use if constexpr when possibleChris Robinson2021-01-222-2/+9
|
* Make PopCount and CountTrailingZeros more standard-likeChris Robinson2021-01-223-87/+110
|
* Use a standard bitset for bitfield flagsChris Robinson2021-01-221-47/+0
|
* Make the endian test more C++-likeChris Robinson2021-01-212-15/+35
|
* Remove the invalid noexcept specificationChris Robinson2021-01-081-1/+1
|
* Ensure the endian test is constexprChris Robinson2021-01-061-5/+6
|
* Make optional trivially destructible if the stored type isChris Robinson2021-01-021-43/+70
|
* Fix comment typoChris Robinson2021-01-011-1/+1
|
* Don't use templates unnecessarilyChris Robinson2021-01-011-19/+0
|
* Remove some unnecessary constructorsChris Robinson2020-12-272-25/+12
|
* Make FlexArray trivially destructible when possibleChris Robinson2020-12-271-42/+89
|
* Move alexcpt to coreChris Robinson2020-12-242-62/+0
|
* fast_roundf implementations in asm for ARM64. (#511)David CARLIER2020-12-241-0/+6
|
* Move the AL error enum out of base_exceptionChris Robinson2020-12-171-5/+1
|
* Avoid using a hidden unnamed template parameterChris Robinson2020-12-151-2/+4
|
* Reorder definitions to keep them near each otherChris Robinson2020-12-051-13/+13
|
* Remove some unnecessary inlines and includesChris Robinson2020-12-051-8/+6
|
* Avoid a REQUIRES macro for SFINAEChris Robinson2020-12-051-31/+34
|
* Move the ringbuffer to commonChris Robinson2020-12-052-0/+337
|
* Move lerp/cubic to alnumeric.hChris Robinson2020-12-041-0/+13
|
* Add a close method to the win32 ifstreamChris Robinson2020-11-162-5/+12
|
* Use doubles to calculate the listener matrix translationChris Robinson2020-11-131-39/+70
| | | | | To help stablize sources near the listener, when away from origin. Also clean up some related methods and move them to more appropriate places.
* Avoid bitshifts for loop countingChris Robinson2020-11-081-11/+21
|
* Remove a constexpr that needs C++17Chris Robinson2020-10-231-1/+1
|
* Don't use a template parameter as a variableChris Robinson2020-10-231-6/+17
| | | | And try to silence an MSVC warning about a constant overflow.
* Some cleanup in alspan.hChris Robinson2020-10-231-21/+31
|
* Add some constexprChris Robinson2020-10-231-4/+3
|
* Add some missing constexpr attributesChris Robinson2020-10-202-4/+4
|
* Use inline functions for popcnt and ctz instead of macrosChris Robinson2020-10-131-48/+47
|
* Fix an invalid unicode character in a commentChris Robinson2020-09-141-1/+1
|
* Use inline wrappers to clarify forward/inverse FFTsChris Robinson2020-09-132-5/+18
|
* Partly simplify FFT bit-reversalChris Robinson2020-09-131-8/+4
| | | | | | | | | | | This can almost certainly be improved further, as less than half of the indices really need their reversed bit-pattern calculated and elements swapped (any symetrical bit pattern would just swap with itself, and indices whose reversed bit-pattern has already been traversed is already swapped). It may also prove beneficial to provide the base-2 log of the fft buffer size (number of bits to represent the indices), as that could help make the reversal more efficient with a known bit/loop count.
* Avoid class templates for the POPCNT64/CTZ64 macrosChris Robinson2020-09-011-15/+16
|
* Use a separate structure for buffer storageChris Robinson2020-08-281-0/+1
|
* Allow intrusive_ptr::reset to take a new pointerChris Robinson2020-08-241-2/+2
|
* Ensure enough space is allocated for structs with a FlexArrayChris Robinson2020-08-151-1/+4
|
* Avoid a zero-length array for the FlexArray definitionChris Robinson2020-08-151-5/+4
| | | | | | Newer GCCs are warning about FlexArray being used at the end of another struct. Though not the most ideal to always allocate space for at least 1 element, actual 0-sized uses are rare and for smaller element types.
* Avoid a cmake check for determining the size of longChris Robinson2020-08-131-7/+19
|