Robbert van der Helm
42a7bb37b4
Revert event loop APIs to use Weak instead of Arc
...
Previously the plugin wouldn't get dropped because the event loops kept
them alive. These APIs used Weak instead of Arc in the past precisely to
prevent this issue. Not sure why I changed that.
2023-02-23 21:45:09 +01:00
Robbert van der Helm
090b4b529f
Fix unused/dead code warnings with VST3 disabled
2023-02-19 13:19:02 +01:00
Robbert van der Helm
5ddcc3bc7d
Silence unused event loop warning without VST3
2023-02-19 13:15:09 +01:00
Robbert van der Helm
4e53d3a799
Significantly increase task queue capacity
...
This is needed to prevent parameter change events from being dropped.
2023-01-11 15:22:26 +01:00
Robbert van der Helm
57e751d277
Remove todo about single message queues
...
Because we just did that.
2023-01-06 18:05:52 +01:00
max
9fd88ffd48
initial event loop implementation for macOS
2023-01-01 20:14:55 +02:00
Robbert van der Helm
028aeed18e
Add a schedule_background() EventLoop method
2022-10-23 16:19:49 +02:00
Robbert van der Helm
520eba71ca
Add a simple background thread task runner
...
This can be used by the Windows event loop, the future macOS event loop,
and the CLAP event loop.
2022-10-23 16:14:35 +02:00
Robbert van der Helm
31cda78201
Rename do_maybe_async() to schedule_gui()
2022-10-23 15:48:27 +02:00
Robbert van der Helm
4524719128
Add an is_gui_thread flag to MainThreadExecutor
...
We'll also use the EventLoop for running background tasks completely
decoupled from the GUI.
2022-10-23 15:48:27 +02:00
Robbert van der Helm
967426453a
Clean up EventLoop API
...
By taking an `Arc<T>` instead of a `Weak<T>`. The `Weak` is only needed
for the background threads.
2022-10-23 15:48:27 +02:00
Robbert van der Helm
5ea2377c18
Replace AsyncExecutor with simple closure
...
This makes everything much simpler. The task type is now defined
directly on `Plugin`.
2022-10-22 02:01:03 +02:00
Robbert van der Helm
84f834abb6
Add AsyncExecutor support to ProcessContext
2022-10-22 02:01:03 +02:00
Robbert van der Helm
417a810936
Always use a hyphen in realtime-safe
2022-09-29 16:50:53 +02:00
Robbert van der Helm
b209c9caf3
Move the event loop to its own module
...
Now that the context module is becoming larger and larger.
2022-02-28 12:57:01 +01:00