1
0
Fork 0
mirror of https://github.com/juce-framework/JUCE.git synced 2026-01-20 01:14:20 +00:00
Commit graph

355 commits

Author SHA1 Message Date
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
reuk
7c14c1fcd7
Use more concise stdlib type aliases 2022-09-26 18:03:47 +01:00
reuk
7391d18b8e
Optional: Implement in terms of std::optional 2022-09-12 16:14:57 +01:00
Tom Poole
784f82ffec
Fix some Doxygen issues 2022-06-16 16:19:10 +01:00
reuk
891daf1332
Optional: Update implementation to improve debugging experience
This patch also makes Optional public to end users.
2022-06-16 16:17:53 +01:00
Tom Poole
2ec861d99e Update licensing banners to JUCE 7 2022-05-16 17:55:48 +01:00
attila
e6cf6ab064 ListenerList: Modify iterator during removals to guarantee callback 2022-05-11 16:06:18 +02:00
reuk
5705a83065
ListenerList: Remove deprecation warning 2022-04-22 14:18:49 +01:00
reuk
5d096b46d7
Add simple Optional type 2022-04-22 14:18:48 +01:00
Tom Poole
dea3fe60e4 Update copyright banners 2022-04-04 12:36:32 +01:00