1
0
Fork 0
Commit graph

524 commits

Author SHA1 Message Date
Robbert van der Helm
3122c0cb41 Pass block references to the block smoother
So you can't mess this up by passing the maximum block size instead.
2022-03-01 17:33:22 +01:00
Robbert van der Helm
dffddfaf04 Implement the block smoothers 2022-03-01 17:29:09 +01:00
Robbert van der Helm
17145a4482 Add a helper for initializing all block smoothers 2022-03-01 17:11:34 +01:00
Robbert van der Helm
d470a1db5a Add functions for allocating block smoothers 2022-03-01 17:07:03 +01:00
Robbert van der Helm
892aef7e37 Mark smoother functions as inline 2022-03-01 16:55:30 +01:00
Robbert van der Helm
f103e1e14c Reorder Param methods
Moving the things that are only used internally to the bottom.
2022-03-01 16:53:18 +01:00
Robbert van der Helm
e6292a4650 Add a usage example to Buffer::iter_blocks() 2022-03-01 16:16:13 +01:00
Robbert van der Helm
b177e3114c Add per-block iterators to Buffer 2022-03-01 16:03:13 +01:00
Robbert van der Helm
a58c796fc0 Add an output slices field to Buffer 2022-03-01 15:43:13 +01:00
Robbert van der Helm
6ded3d6f11 Use the thread check extension in the CLAP wrapper 2022-03-01 13:47:06 +01:00
Robbert van der Helm
afb9449df5 Reorder buffer module
To have the same definitions -> trait impls -> other impls structure as
most other modules.
2022-03-01 04:21:26 +01:00
Robbert van der Helm
d2517d6785 Rename Buffer::as_raw to Buffer::as_slice
Since things named `as_raw` usually involve pointers.
2022-03-01 04:18:06 +01:00
Robbert van der Helm
e5edbac2b4 Add comments for potential parameter quirks 2022-03-01 02:15:23 +01:00
Robbert van der Helm
5f1ebca6e6 Implement clap_plugin_params::get_value() 2022-03-01 02:00:12 +01:00
Robbert van der Helm
ae3c00d069 Implement CLAP parmater info 2022-03-01 01:54:04 +01:00
Robbert van der Helm
0fd80330bb Move parameter step count to ParamPtr 2022-03-01 01:53:48 +01:00
Robbert van der Helm
1c4a5bc4da Add stubs for the CLAP params extension 2022-03-01 01:27:01 +01:00
Robbert van der Helm
a268d71eee Add a note on snapping normalized values 2022-03-01 01:02:00 +01:00
Robbert van der Helm
08d63f0e73 Fix typo 2022-03-01 00:06:22 +01:00
Robbert van der Helm
ae212962a3 Add a todo for nested params objects 2022-02-28 22:16:46 +01:00
Robbert van der Helm
af77d45877 Add a Send+Sync wrapper for CLAP object pointers
We'll need this for the extensions.
2022-02-28 20:39:15 +01:00
Robbert van der Helm
12075b1a24 Rename main CLAP plugin wrapper struct to Wrapper 2022-02-28 20:25:49 +01:00
Robbert van der Helm
2750b2a6ad Implement the event loop for CLAP
It cannot yet handle any tasks though.
2022-02-28 20:05:48 +01:00
Robbert van der Helm
4ad972ea23 Add stubs for a CLAP ProcessContext implementation
And the `clap_plugin::active()` function.
2022-02-28 19:45:41 +01:00
Robbert van der Helm
41663a404a Change VST3 wrapper trait bounds to Vst3Plugin
To be consistent with the CLAP wrapper
2022-02-28 19:21:14 +01:00
Robbert van der Helm
6d1e581c26 Partially implement clap_plugin 2022-02-28 19:16:03 +01:00
Robbert van der Helm
0511053b3b Add stubs for the clap_plugin methods 2022-02-28 18:55:33 +01:00
Robbert van der Helm
2e6faaa324 Move plugin descriptor to its own module
Because we also need this in the clap_plugin implementation.
2022-02-28 18:44:03 +01:00
Robbert van der Helm
32a640acf7 Create a clap_plugin instance stub 2022-02-28 18:27:57 +01:00
Robbert van der Helm
0b0876e4a5 Remove entry point debug prints 2022-02-28 18:17:01 +01:00
Robbert van der Helm
560d5fd78f Build the CLAP plugin descriptor
This requires a _lot_ of CStrings.
2022-02-28 17:46:20 +01:00
Robbert van der Helm
e718bbd0a4 Capitalize the FACTORY lazy static
To stop the linters from complaining.
2022-02-28 17:30:21 +01:00
Robbert van der Helm
a26ddbb45e Change CLAP_KEYWORDS to CLAP_FEATURES
This name was changed in CLAP 0.19, but in 0.18 it's still called
features.
2022-02-28 17:29:53 +01:00
Robbert van der Helm
1151a80769 Add the other CLAP metadata fields 2022-02-28 17:18:11 +01:00
Robbert van der Helm
c7f1c46f18 Add a reverse DNS ID field to ClapPlugin 2022-02-28 17:04:47 +01:00
Robbert van der Helm
089f1589bf Add the remaining CLAP factory stubs 2022-02-28 16:53:31 +01:00
Robbert van der Helm
31e2480458 Begin clap objects with vtables for pointer casts 2022-02-28 16:50:37 +01:00
Robbert van der Helm
17b51c8920 Remove function pointer transmutes 2022-02-28 16:46:06 +01:00
Robbert van der Helm
0609f89df6 Create a factory stub from the entry point macro
From this point on we should no longer need any of these ugly macros.
2022-02-28 16:31:49 +01:00
Robbert van der Helm
199deb887c Fix CLAP bundle name on macOS 2022-02-28 15:57:45 +01:00
Robbert van der Helm
51d7532b87 Add some more use path safety for the clap export 2022-02-28 15:48:26 +01:00
Robbert van der Helm
7e505ff09b Export CLAP plugins from bundler 2022-02-28 15:34:11 +01:00
Robbert van der Helm
ab30b7dc9d Don't filter ELF exports by functions
Since we export a constant for CLAP.
2022-02-28 15:17:04 +01:00
Robbert van der Helm
f0504ed59a Rework the bundler to use a CompilationTarget enum
This removes a lot of redundancy.
2022-02-28 15:06:36 +01:00
Robbert van der Helm
56c1545196 Add a basic nih_export_clap!() macro
This does not do anything useful yet.
2022-02-28 14:45:31 +01:00
Robbert van der Helm
d5d90e3e61 Add a ClapPlugin trait
Just like the Vst3Plugin trait
2022-02-28 14:45:07 +01:00
Robbert van der Helm
8c63cebc07 Add a readme section on plugin formats 2022-02-28 13:47:45 +01: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
Robbert van der Helm
07d8f81f44 Update to egui 0.17 2022-02-27 16:49:18 +01:00
Robbert van der Helm
b40c43a862 Temporarily use egui's system scale factor
Until we support HiDPI ourselves. This fixes #1.
2022-02-27 12:59:41 +01:00