reuk
c514c95797
ScopedValueSetter: Make nodiscard
2025-11-18 15:47:42 +00:00
reuk
83e5264c86
Formatting: Remove double-dots from comments and other strings
2025-11-18 15:47:42 +00:00
Tom Poole
be58c6de30
AbstractFifo: Improve docs
2025-10-13 12:07:00 +01:00
Anthony Nicholls
36d07a6ce3
Docs: Replace doxygen preprocessor conditionals with @cond and @endconds
2025-07-21 18:11:43 +02:00
reuk
58fabf3a8f
XmlElement: Add new API to allow iterating over attributes
2025-06-19 14:45:30 +01:00
Sudara
9a4ab937ad
Docs: Fix a few tiny typos in comments
2025-05-08 16:33:24 +02:00
Anthony Nicholls
76215d2dd0
ListenerList: Prevent false positive assertions in callCheckedExcluding
2025-05-01 15:57:19 +01:00
Anthony Nicholls
5e803ded5f
Deprecations: Add ignore deprecation warning macros
2024-11-27 11:07:04 +00:00
reuk
0ea1af03a1
ListenerList: Fix rare use-after-free when assertions are enabled
...
This issue manifested on Linux when building in Debug mode. It may also
have caused issues on other platforms. When editing a slider's value
using its text box, and then pressing the enter key, the program would
crash. The issue was not present when running with address sanitizer.
Valgrind was able to find the problem.
2024-11-07 21:00:22 +00:00
reuk
67396435e5
DynamicObject: Add virtual functions that are called to indicate a property change
2024-10-20 22:59:39 +01:00
Anthony Nicholls
1e5c88899e
JSON: Use UTF8 encoding by default
2024-09-06 15:40:39 +00:00
attila
95e71b10b0
FixedSizeFunction: Replace std::aligned_storage_t to avoid C++23 warning
...
We are ignoring warning 4324, which warns us that a FixedSizeFunction<4>
will have it's size increased to 8 bytes, due to the minimum alignment
requirement of 8 bytes.
2024-08-15 11:15:15 +02:00
Anthony Nicholls
2e6ee49cfa
ListenerList: Add a LightweightListenerList class
...
When extra guarantees were added to ListenerList to guard against mutations of
the list from callbacks, it also resulted in removing a previously observable
guarantee that calls to the listeners could be made concurrently as long as
those listeners were themselves thread safe. This commit adds a new class that
restores that behaviour for anybody who needs it.
2024-08-01 16:10:09 +00:00
reuk
ef31cbb620
DynamicObject: Make virtual functions non-virtual
2024-07-29 16:09:53 +01:00
Anthony Nicholls
0d8f2c63ec
ListenerList: Assert if initialisation could throw for any reason other than a bad allocation
2024-06-27 14:17:37 +01:00
Anthony Nicholls
06fb8f4ea2
ListenerList: Fix a bug where removing a listener during a callback in which it had also been added prevents other listeners from being called
2024-06-27 14:14:25 +01:00
Anthony Nicholls
43762c7575
ListenerList: Move unit tests into separate file
2024-06-27 14:14:25 +01:00
Anthony Nicholls
29cb346db2
ListenerList: Prevent a data race while clearing the list
2024-06-13 11:22:04 +01:00
Anthony Nicholls
c4d5ffa7ab
ListenerList: Add a thread safe ListenerList type
2024-06-07 20:25:39 +01:00
Anthony Nicholls
0dfff1454c
ListenerList: Optimise empty listener list
2024-06-07 20:25:39 +01:00
Tom Poole
94d98a2b10
Update licensing information
2024-04-16 11:39:35 +01:00
Anthony Nicholls
fe00442335
Copyright: Fix incorrect or inconsistent copyright notices
2024-03-25 10:22:58 +00:00
Tom Poole
a028f277c1
Docs: Fix a typo
2024-01-31 12:43:33 +00:00
reuk
047448fbce
Warnings: Add missing overrides
2024-01-30 11:37:30 +00:00
Anthony Nicholls
67570d34c4
ListenerList: Prevent calling any listeners that are added during a callback
...
This fixes an edge case in which if listeners are both removed and added during a callback the added listener(s) may be called during the same iteration
2024-01-15 17:17:58 +00:00
Anthony Nicholls
b05b73fb49
ListenerList: Fix some edge cases when iterating the listeners
...
- Prevent out of scope access of the listeners lock
- Allow clearing the listener list from a callback
2024-01-12 11:22:03 +00:00
reuk
224c4f706b
JSON: Add new JSON::Formatter for configuring JSON output
...
This also fixes an issue where MIDI CI header data could contain spaces,
which is not allowed according to the spec.
2023-12-06 20:25:22 +00:00
Tom Poole
2c7043319b
Doxygen updates
2023-11-20 13:14:20 +00:00
reuk
387ab88c13
Span: Add missing move constructors
2023-10-31 10:58:06 +00:00
reuk
cb44d72b78
EnumerateIterator: Add utility for concisely enumerating ranges
2023-10-30 14:45:24 +00:00
Tom Poole
6bf9bb9a2e
Add final specifiers in implementation files
2023-10-10 16:12:38 +01:00
Anthony Nicholls
158220ddfa
Formatting: Use nested namespace definitions
2023-10-09 14:49:18 +01:00
Nathan Blair
65f55e17ac
Docs: abstract FIFO example
2023-10-02 16:43:15 +01:00
Tom Poole
4153d59e39
Formatting
2023-10-02 15:42:20 +01:00
reuk
dd30569b3e
Formatting: Add missing newlines
2023-09-27 15:22:11 +01:00
reuk
d8b71b4eef
VariantConverter: Use FromVar and ToVar as a fallback
2023-09-26 11:21:45 +01:00
reuk
1bc90055b9
DynamicObject: Add const overload for getProperties
2023-09-26 11:05:56 +01:00
reuk
a4dfd8d6c6
FixedSizeFunction: Allow sinking of rvalue arguments for functions returning void
2023-09-20 18:40:53 +01:00
Tom Poole
9b041f3d74
Add a base clang-tidy configuration
2023-09-18 11:24:19 +01:00
Oliver James
7d9cdd3016
Audio: Add AudioWorkgroup support
...
This allows real-time threads to join an audio workgroup on Apple platforms.
2023-08-30 12:03:47 +01:00
reuk
6420ab31b6
DynamicObject: Update signature of clone to return unique_ptr
2023-08-23 20:31:54 +01:00
reuk
679a33d657
ScopeGuard: Add new heavyweight ErasedScopeGuard type
2023-08-23 20:31:54 +01:00
Tom Poole
ff835be2ac
Doxygen: Fix some Doxygen issues
2023-07-17 18:24:01 +01:00
reuk
c93ac07202
Array: Add missing floating point equality warning suppression
2023-04-11 12:36:19 +01:00
reuk
28414a6af8
Global: Avoid floating-point equality checks where possible
2023-04-04 19:55:11 +01:00
reuk
f1f68007c6
Containers: Add simple Span implementation
2023-02-14 22:29:01 +00:00
Tom Poole
a28597c3c9
Fix GCC 12 compiler warnings
2023-01-31 12:54:56 +00:00
reuk
b46edc31ce
Optional: Make operator bool() explicit
2023-01-04 15:00:33 +00:00
reuk
2dc90bd6e6
Variant: Remove unnecessary definitions of static constexpr data members
2022-12-07 13:12:01 +00:00
reuk
28f2157912
Convert ignoreUnused to [[maybe_unused]]
2022-12-01 11:41:50 +00:00