Commit Graph

145 Commits

Author SHA1 Message Date
Luke Street 7acefc6c60 AudioMatrix/Submix: static_cast INT_MAX to float 2020-04-19 00:08:03 -04:00
Luke Street 4417c43721 AudioMatrix: Use alignas(16) for Coefs 2020-04-14 22:12:45 -04:00
Jack Andersen c36895a109 Update fmtlib 2020-04-11 12:46:05 -10:00
Jack Andersen 9b8ef4695f Add missing override keywords 2019-08-31 11:20:30 -10:00
Phillip Stephens efbb2f96ec
Merge pull request #34 from lioncash/ltrt
LtRtProcessing: Make use of if constexpr in ClampFull()
2019-08-24 20:46:08 -07:00
Phillip Stephens b9971502a5
Merge pull request #33 from lioncash/midi-dec
MIDIDecoder: Make readContinuedValue internal + other cleanups
2019-08-24 20:45:57 -07:00
Lioncash 097df47641 LtRtProcessing: Amend code formatting in if'd out code block 2019-08-24 23:13:01 -04:00
Lioncash f4fafbcb26 LtRtProcessing: Simplify allocations in LtRtProcessing constructor
We can use std::make_unique, which provides the same behavior as zeroing
out the buffer. Now we can remove the use of memset here.
2019-08-24 23:13:01 -04:00
Lioncash f8e827fcd4 LtRtProcessing: Make use of if constexpr in ClampFull()
This is a condition known at compile-time, so we can turn it into an
if-constexpr statement. We can also make use of std::clamp in this
scenario.
2019-08-24 23:12:56 -04:00
Lioncash 93045d5264 LtRtProcessing: Make ClampFull() internally linked
inline provides external linkage instead of internal linkage which is
more desirable here. We can enclose it within an anonymous namespace to
make it internally linked.
2019-08-24 22:58:14 -04:00
Lioncash 068ff29b44 MIDIDecoder: Use auto for iterator type
Same thing, significantly less reading.
2019-08-24 22:49:16 -04:00
Lioncash e7fe7ff49f MIDIDecoder: Make use of std::clamp() within clamp7()
We can simplify the implementation of clamp7() with the use of
std::clamp().
2019-08-24 22:47:09 -04:00
Lioncash e48a094198 MIDIDecoder: Convert return value of readContinuedValue into a std::optional
Rather than use an out reference, we can convert the return value into a
std::optional, combining the out reference and boolean return value into
one.
2019-08-24 22:44:33 -04:00
Lioncash 64fbb923ca MIDIDecoder: Make readContinuedValue an internal function
This doesn't rely on any member state, so it can be decoupled from the
interface entirely.
2019-08-24 22:39:13 -04:00
Lioncash 890ac24068 MIDIEncoder: Make use of _sendMessage overload 2019-08-24 22:26:20 -04:00
Lioncash f1ad7e5ef0 General: Correct fmt specifiers
Corrects a few fmt calls to use fmt's specifiers. This also converts
instances of printf over to fmt::print
2019-08-24 17:12:49 -04:00
Lioncash baff71cdc3 General: Tidy up includes
Alphabetizes includes and resolves quite a few instances of indirect
inclusions, making the requirements of several interfaces explicit. This
also trims out includes that aren't actually necessary (likely due to
changes in the API over time).
2019-08-19 21:02:56 -04:00
Lioncash 84f62a0f2c BooObject: Remove destructorLock()
Now that we have the fencing and atomic operations in place to ensure
access to data on other threads will always occur before the use of
delete, we can remove the destructor lock. This will be useful for
making ObjToken's move assignment operator noexcept.
2019-08-17 14:12:23 -04:00
Lioncash 88355ada5f General: Convert typedefs into using aliases 2019-08-16 18:27:23 -07:00
Lioncash 78ce16aa9f General: Make use of nullptr where applicable 2019-08-16 18:27:23 -07:00
Phillip Stephens 1822b555fa Fix missed override declarations 2019-08-16 18:27:23 -07:00
Lioncash d4cd2b4dce General: Make use of override where applicable
Continues the override modernizations, but now targeting boo.
2019-08-12 22:44:45 -04:00
Jack Andersen af50bc0bc2 Windows build fixes 2019-07-27 15:19:25 -10:00
Jack Andersen deefc8e995 Massive fmtlib refactor 2019-07-19 18:22:36 -10:00
Jack Andersen 0f330c1f05 Add support for MemorySanitizer instrumentation 2019-04-06 18:53:41 -10:00
Jack Andersen 058ea23a00 New code style refactor 2018-12-07 19:17:51 -10:00
Jack Andersen 592ffa1372 Windows sync for API changes 2018-10-14 09:59:19 -10:00
Jack Andersen 0b52f3dbab Convert to pragma once 2018-10-06 17:36:44 -10:00
Jack Andersen c29d837ab5 Huge shader infrastructure refactor 2018-10-06 16:49:22 -10:00
Jack Andersen 08d632a8bd Multichannel WAVOut 2018-09-03 14:14:59 -10:00
Jack Andersen c78afbdcdd Better matrix slewing 2018-09-02 14:44:38 -10:00
Jack Andersen 8ee04c8f1a Sync macOS with API changes 2018-08-27 17:46:33 -10:00
Jack Andersen 261c06d746 Optional teVirtualMIDI integration 2018-08-25 21:56:16 -10:00
Jack Andersen fd2a92e2c2 Allow MIDIDecoder to handle multiple messages per pass 2018-08-24 22:37:26 -10:00
Jack Andersen f73e4f08fa Windows Audio and MIDI feature sync 2018-08-19 10:06:29 -10:00
Jack Andersen 168fb3f516 ALSA MIDI fixes 2018-08-18 14:28:00 -10:00
Jack Andersen 5e58e989a8 Remove ALSA audio backend 2018-08-18 12:08:58 -10:00
Jack Andersen 82966931f8 Increase PulseAudio buffer size 2018-06-01 20:05:45 -10:00
Jack Andersen 1a71ed813a Fix TSan-reported race conditions 2018-06-01 14:01:47 -10:00
Jack Andersen 3028e34b51 Silent audio mixing fix; Xlib Vulkan destruction order fix 2018-05-28 09:28:36 -10:00
Jack Andersen fdf37c95e0 PulseAudio buffering fix 2018-05-26 18:20:01 -10:00
Jack Andersen 19014e0ba7 synchronize macOS with latest changes 2018-05-26 11:29:19 -10:00
Jack Andersen 84df8af28c Windows build fixes and cleanups 2018-05-24 20:30:42 -10:00
Jack Andersen 74bdd2d2a5 Remove unnecessary loop contents 2018-05-14 16:55:22 -10:00
Jack Andersen edf2c1e34d Add PulseAudio backend. Various Xlib fixes 2018-05-06 12:44:31 -10:00
Jack Andersen 5d310c008f AudioSubmix reference fix; macOS window icon 2018-01-13 20:37:17 -10:00
Jack Andersen fa8989bed3 Huge compile performance refactor 2017-12-28 21:54:26 -10:00
Jack Andersen e57f6fb2d5 Include <immintrin.h> instead of <xmmintrin.h> 2017-12-18 17:04:47 -10:00
Jack Andersen 2db777eead Convert misconfigured tabs to spaces 2017-12-08 09:17:23 -10:00
Jack Andersen 1259255f34 UWP mouse and DPI fixes 2017-12-07 16:52:38 -10:00