Robbert van der Helm
1c7a5e08a0
Check for null pointers in input parameter changes
...
This is not allowed to be a null pointer, but the SDK's plugin validator
will pass a null pointer anyways.
2020-12-29 17:32:33 +01:00
Robbert van der Helm
ccba1ce36c
Add IProgramListData request and response objects
2020-12-29 16:11:25 +01:00
Robbert van der Helm
22269570d0
Add stubs for IProgramListData
2020-12-29 15:53:01 +01:00
Robbert van der Helm
c2f1722f14
Add a proxy class for IProgramListData
2020-12-29 15:47:25 +01:00
Robbert van der Helm
c1118af21c
Update the readmes for merging into master
2020-12-29 15:39:41 +01:00
Robbert van der Helm
b34762db29
Mention that XEmbed is only available on master
2020-12-29 15:23:22 +01:00
Robbert van der Helm
5a3b6319bd
Add VST3 status to supported DAWs list
2020-12-29 15:17:19 +01:00
Robbert van der Helm
7946a1d874
Set the global bridge instance to null on deinit
...
Hosts like Qtractor will deinitialize the module only to then
immediately initialize it again, so without this we would get an
assertion failure in `InitModule()`.
2020-12-29 14:57:45 +01:00
Robbert van der Helm
902b05ddc0
Update todos in the readme
2020-12-29 14:42:36 +01:00
Robbert van der Helm
1e1eaee69c
Log the entire speaker arrangement bitsets
...
This makes it very clear why lots of plugins don't work in Ardour right
now.
2020-12-29 13:13:15 +01:00
Robbert van der Helm
c42c05a795
Make BusInfo logging more verbose
2020-12-29 01:26:25 +01:00
Robbert van der Helm
49745d23f1
Fix IEditController::createView log message
2020-12-29 00:50:27 +01:00
Robbert van der Helm
0a05558a8c
Make the persistent buffer thread local
...
Now that we allow ad hoc socket spawning for the audio sockets.
2020-12-29 00:39:23 +01:00
Robbert van der Helm
33806139e9
Revert "Allow disabling ad-hoc socket spawning"
...
It turns out we can't safely disable this, because in some situations we
still have these mutually recursive function calls. We could optimize
this a bit to have those calls be handled by the general sockets, but
this is much more manageable.
This reverts commit 415c1b5683 .
2020-12-29 00:25:44 +01:00
Robbert van der Helm
4226ab6e43
Pass pointers to IMessage objects around
...
Instead of serializing the actual `YaMessage`, for the reasons mentioned
in the comments. This was needed to stop iZotope VocalSynth 2 in Ardour
from segfaulting when editing parameters, because that plugin is
apparently being very naughty.
2020-12-29 00:22:42 +01:00
Robbert van der Helm
2c3312b452
Merge branch 'master' into feature/vst3
2020-12-28 11:51:28 +01:00
Robbert van der Helm
ae71536639
Add back __cdecl on older Wine versions
2020-12-28 11:50:08 +01:00
Robbert van der Helm
dd74e54854
Add FIXME for a crazy design issue in VocalSynth 2
...
They're exchanging pointers between the processor and the controller
using messages. And not only that, they're storing the message objects
instead of storing the pointers.
2020-12-28 00:38:35 +01:00
Robbert van der Helm
9cacf03765
Add missing lambda return type annotations
2020-12-27 23:34:40 +01:00
Robbert van der Helm
047c7691e2
Flip the logging prefixes
...
This makes it easier to visually distinguish the direction of the
request.
2020-12-27 23:24:42 +01:00
Robbert van der Helm
9c3b3a0ca9
Fix typo in plugin factory logging
2020-12-27 18:37:07 +01:00
Robbert van der Helm
d6a33b422d
Fix Vst3Bridge stderr logger
...
This was trying to free `std::cerr`, which of course won't work.
2020-12-27 18:33:09 +01:00
Robbert van der Helm
5773c471f9
[yabridgectl] Don't purge VST3 yabridge.toml
...
We only want to consider directories here.
2020-12-27 18:25:13 +01:00
Robbert van der Helm
2823a74783
Implement all IUnitInfo functions
...
With this IUnitInfo has been fully implemented.
2020-12-27 18:07:32 +01:00
Robbert van der Helm
163c936286
Add logging for the new IUnitInfo structs
2020-12-27 17:55:22 +01:00
Robbert van der Helm
1229518fb5
Add request and response structs for IUnitInfo
2020-12-27 17:20:53 +01:00
Robbert van der Helm
70c5792593
Implement IUnitInfo::getSelectedUnit
2020-12-27 16:48:47 +01:00
Robbert van der Helm
fbef37b924
Disable blitting on window position changes
...
This slightly reduces flickering because redraws are now a bit faster.
2020-12-27 15:08:39 +01:00
Robbert van der Helm
35c7138333
Add a background brush to the window
...
So the background always gets cleared out when the window resizes.
2020-12-27 14:37:43 +01:00
Robbert van der Helm
86c8b284a2
Mention the XEmbed Wine patch in the readme
2020-12-27 13:31:16 +01:00
Robbert van der Helm
07d57771c1
Fix IPluginFactory implementation level detection
...
These were not getting initialized, and could thus evaluate to true if
you're unlucky.
2020-12-27 13:03:49 +01:00
Robbert van der Helm
095716d248
Fix retrieving old-style class infos
...
Most plugins implement IPluginFactory3 so this slipped through. Melodyne
5 apparently does not.
2020-12-27 13:00:20 +01:00
Robbert van der Helm
14c47c1c09
Change plugin factory logging format
2020-12-27 13:00:20 +01:00
Robbert van der Helm
d34b399ba0
Implement IUnitInfo::getProgramPitchName
2020-12-26 23:20:13 +01:00
Robbert van der Helm
e414c58a7a
Implement IUnitInfo::hasProgramPitchNames
2020-12-26 23:04:02 +01:00
Robbert van der Helm
f96e6b5a1e
Implement IUnitInfo::getProgramInfo
2020-12-26 23:00:15 +01:00
Robbert van der Helm
204765ec0c
Implement IUnitInfo::getProgramName
2020-12-26 22:38:15 +01:00
Robbert van der Helm
60f6b30b84
Implement IUnitInfo::getProgramListInfo
2020-12-26 22:17:21 +01:00
Robbert van der Helm
92a7cb755a
Implement IUnitInfo::getProgramListCount
2020-12-26 22:10:46 +01:00
Robbert van der Helm
999cf45d6a
Fix the return type for IUnitInfo::getUnitCount
2020-12-26 22:07:12 +01:00
Robbert van der Helm
5e832a2689
Implement IUnitInfo::getUnitInfo
2020-12-26 22:03:26 +01:00
Robbert van der Helm
f3e706a39a
Implement IUnitInfo::getUnitCount
2020-12-26 21:33:19 +01:00
Robbert van der Helm
aed369c4be
Add stubs for IUnitInfo
...
This is a big boy.
2020-12-26 21:18:11 +01:00
Robbert van der Helm
f940d3371b
Allow casting YaComponentInfo to IUnitHandler
...
Quite an important detail.
2020-12-26 21:13:23 +01:00
Robbert van der Helm
bce3afa5e4
Revert "Mostly fix editor GUIs drifting in negative coords"
...
I've also tried a lot of other things, but none of the solutions I've
tried work 100% of the time. It sounds like a better idea to have
something that doesn't work consistently than to have something that
inconsistently sort of works. Setting the size in `WM_WINDOWPOSCHANGING`
to (0, 0) fixes the drifting, but the mouse coordinates are still wrong
and `SetWindowPos()` breaks the reparenting.
This reverts commit db2cc5800a .
2020-12-26 18:13:40 +01:00
Robbert van der Helm
db2cc5800a
Mostly fix editor GUIs drifting in negative coords
...
I think some rounding in Wine is causing this issue, but then again
we're not supposed to send these ConfigureNotify events to the window
directly anyways.
2020-12-26 16:30:25 +01:00
Robbert van der Helm
47177ed889
Implement IUnitHandler::notifyProgramListChange
...
With this IUnitHandler has been fully implemented.
2020-12-26 14:30:28 +01:00
Robbert van der Helm
bf40e10780
Implement IUnitHandler::notifyUnitSelection
2020-12-26 14:26:29 +01:00
Robbert van der Helm
934aea3860
Add IUnitHandler stubs to component handler proxy
2020-12-26 14:17:10 +01:00
Robbert van der Helm
5e26d30752
Add a wrapper for IUnitHandler
2020-12-26 14:12:40 +01:00