Replace AsyncExecutor with simple closure

This makes everything much simpler. The task type is now defined
directly on `Plugin`.
This commit is contained in:
Robbert van der Helm
2022-10-22 01:59:29 +02:00
parent 84f834abb6
commit 5ea2377c18
28 changed files with 85 additions and 125 deletions

View File

@@ -132,11 +132,10 @@ impl Plugin for Gain {
// splits.
const SAMPLE_ACCURATE_AUTOMATION: bool = true;
// More advanced plugins can use this to run expensive background tasks. See the `AsyncExecutor`
// trait's documentation for more information. `()` means that the plugin does not have any
// background tasks.
type AsyncExecutor = ();
fn async_executor(&self) -> Self::AsyncExecutor {}
// More advanced plugins can use this to run expensive background tasks. See the field's
// documentation for more information. `()` means that the plugin does not have any background
// tasks.
type BackgroundTask = ();
fn params(&self) -> Arc<dyn Params> {
self.params.clone()