1
0
Fork 0
Commit graph

454 commits

Author SHA1 Message Date
Robbert van der Helm
0e930668f2 Move EnumParam to its own module 2022-02-14 14:35:57 +01:00
Robbert van der Helm
5a26756765 Move BoolParam to its own module 2022-02-14 14:27:40 +01:00
Robbert van der Helm
287576d064 Fix rustdoc hyperlinks 2022-02-14 14:22:57 +01:00
Robbert van der Helm
70da6209fc Move PlainParam to its own module 2022-02-14 14:19:46 +01:00
Robbert van der Helm
cf0fb039b0 Add todo about enum value serialization 2022-02-14 02:29:08 +01:00
Robbert van der Helm
847887db9d Allow custom names for enum variants 2022-02-14 02:26:11 +01:00
Robbert van der Helm
0c1f105910 Fix string to value for enum parameters 2022-02-14 02:10:12 +01:00
Robbert van der Helm
39e8dfc83c Add somewhat shady enum parameters 2022-02-14 02:04:17 +01:00
Robbert van der Helm
d878fd692a Prefix all marker fields with underscores 2022-02-13 22:58:51 +01:00
Robbert van der Helm
fd3f4c2c48 Allow skipping steps in the smoothers
I'll need this for Diopser since it's going to have a parameter to
control the automation's granularity.
2022-02-13 18:33:05 +01:00
Robbert van der Helm
99fe9e865b Fix decimals in snapping test 2022-02-13 18:07:19 +01:00
Robbert van der Helm
990072f529 Fix step size based formatting 2022-02-13 18:03:45 +01:00
Robbert van der Helm
19d2dc0a67 Implement step snapping for parameters 2022-02-13 17:52:54 +01:00
Robbert van der Helm
4481ef0ae9 Avoid more redundancy in parameter handling 2022-02-13 16:49:29 +01:00
Robbert van der Helm
4783535ebb Use preview_plain when setting normalized values
To prevent bugs, there should be only one way parameters are
unnormalized.
2022-02-13 16:44:18 +01:00
Robbert van der Helm
adf59c192b Add a step size for float parameters 2022-02-13 16:41:31 +01:00
Robbert van der Helm
ef4c2ad7f9 Add missing #[cfg(test)] 2022-02-13 16:14:26 +01:00
Robbert van der Helm
16c0dc8b1e Shorten miri tests
These extra iterations shouldn't matter, and miri is pretty slow.
2022-02-13 15:54:19 +01:00
Robbert van der Helm
7d3beb174e Simplify ScopedFtz 2022-02-13 13:51:02 +01:00
Robbert van der Helm
e7c3e19519 Add (miri) tests for {u16,}strlcpy() 2022-02-13 13:04:19 +01:00
Robbert van der Helm
a70edc8105 Remove now-unnecessary unsafe blocks 2022-02-13 12:47:14 +01:00
Robbert van der Helm
2525319207 Add a miri test for the buffer 2022-02-13 02:29:10 +01:00
Robbert van der Helm
a734dd09f3 Fix lifetimes on buffer adapter 2022-02-13 01:58:22 +01:00
Robbert van der Helm
73fe012751 Rename the buffer lifetimes 2022-02-13 01:48:56 +01:00
Robbert van der Helm
16e299ca34 Add the outer lifetime back to the sample buffer 2022-02-13 01:47:26 +01:00
Robbert van der Helm
81ddb410f5 Fix buffer iterators over last refactor
This len() function returns the remaining length, which is not what we
want.
2022-02-13 01:16:52 +01:00
Robbert van der Helm
8411313270 Move Buffer::iter_mut() lifetime definitions 2022-02-13 01:11:23 +01:00
Robbert van der Helm
eac3fdf612 Fix duplicate mutable borrow soundness in buffer
This gets rid of multiple simultaneous &mut references to the
vector (which should be fine, I think), and also replaces the
`.iter_mut()` that just resets the index (which definitely leads to
soundness issues) with an `.iter_mut()` and a `.into_iter()` that don't
let you have concurrent mutable borrows to the same sample data.
2022-02-13 00:59:25 +01:00
Robbert van der Helm
eea05cc748 Rename reset_iter to iter_mut
So it's more consistent.
2022-02-12 23:28:15 +01:00
Robbert van der Helm
2c394aabd5 Add nicer adapter for repeating channel iteration 2022-02-12 23:16:07 +01:00
Robbert van der Helm
c99877ec05 Fix Smoother::is_smoothing() 2022-02-12 20:54:03 +01:00
Robbert van der Helm
0bb3113197 Fix manual buffer accessors 2022-02-12 20:33:31 +01:00
Robbert van der Helm
cd0b870682 Directly pass a style to .with_smoother() 2022-02-12 19:56:37 +01:00
Robbert van der Helm
693b618bc5 Add accessors for channel data
This is needed when you want to modify the same sample multiple times
within an outer loop.
2022-02-12 19:24:41 +01:00
Robbert van der Helm
bc11c97fcf Use the new builder interface 2022-02-12 17:19:52 +01:00
Robbert van der Helm
34fa536acb Add a builder interface for constructing params 2022-02-12 17:10:25 +01:00
Robbert van der Helm
f645b6a92f Relicense under the ISC license 2022-02-12 16:04:46 +01:00
Robbert van der Helm
93fdb0da97 Shamelessly plug yabridge 2022-02-10 23:53:31 +01:00
Robbert van der Helm
379c74e874 Remove spurious dbg!() calls 2022-02-10 23:41:04 +01:00
Robbert van der Helm
69498f3527 Implement the event loop for Windows 2022-02-10 23:37:59 +01:00
Robbert van der Helm
6e1f7930e3 Fix VST3 CID consistency between platforms 2022-02-10 21:31:27 +01:00
Robbert van der Helm
8934d06381 Add a todo for adding builders to parameters 2022-02-10 01:21:07 +01:00
Robbert van der Helm
b61d17fee9 Require all parameters to have a Display instance
So their value can be easily formatted in UIs.
2022-02-09 19:45:16 +01:00
Robbert van der Helm
cd683187e0 Allow resetting parameters by double clicking 2022-02-09 11:51:30 +01:00
Robbert van der Helm
0633fddb5c Add a function for setting pre-normalized values 2022-02-09 01:07:17 +01:00
Robbert van der Helm
1d6a9aac74 Add a way to fetch a parameter's default value 2022-02-08 23:51:07 +01:00
Robbert van der Helm
19bf213204 Add alignment specifiers and soundness comment 2022-02-08 23:16:32 +01:00
Robbert van der Helm
0ddfae1dd3 Also mode the factory to its own module
Now you can finally find the thing you're looking for.
2022-02-08 22:32:54 +01:00
Robbert van der Helm
05b9d4dd0b Move the main VST3 wrapper to a module 2022-02-08 22:28:18 +01:00
Robbert van der Helm
08fe8e703e Explicitly guarantee no simultaneous editors exist 2022-02-08 20:16:04 +01:00