Robbert van der Helm
cb815ebb56
Work around null pointers in Ardour
2020-12-19 17:40:55 +01:00
Robbert van der Helm
0522f84f4a
Create Vst3HostContextProxy from YaHostApplication
...
This is quite a huge refactor, but note everything is consistent (and
we're going to need one or two more of these `Vst3*Proxy` objects).
Right now nothing extends `IHostApplication`, but this way it will be
trivial to add support for more host context interfaces.
2020-12-19 17:13:17 +01:00
Robbert van der Helm
c94089b832
Fix creating component handler proxy
2020-12-19 17:00:57 +01:00
Robbert van der Helm
bf3d802f36
Implement IEditController::setComponentHandler()
2020-12-19 15:04:27 +01:00
Robbert van der Helm
7e3568e333
Rename YaEditController2 to YaEditController
...
Adding versions to our implementations doesn't work when the versions
and extensions start becoming non-numerical. This is what happened with
`IComponentHandler`.
2020-12-19 13:49:00 +01:00
Robbert van der Helm
71493299ec
Implement IConnectionPoint::disconnect
2020-12-19 13:07:58 +01:00
Robbert van der Helm
8251249959
Remove fixme about out of order messages
...
This appears to 100% be a bug in ValhallaSuperMassive.
2020-12-18 23:10:07 +01:00
Robbert van der Helm
70e01e17c1
Add note wrong parameter value strings in Bitwig
2020-12-18 23:02:49 +01:00
Robbert van der Helm
43f5e65b45
Implement IEditController::setParamNormalized()
2020-12-18 21:53:13 +01:00
Robbert van der Helm
bc0c13778f
Implement IEditController::getParamNormalized()
2020-12-18 21:53:04 +01:00
Robbert van der Helm
fcbf198fee
Implement IEditController::plainParamToNormalized
2020-12-18 21:36:39 +01:00
Robbert van der Helm
78d5e3bbfb
Implement IEditController::normalizedValueToPlain
2020-12-18 21:36:39 +01:00
Robbert van der Helm
a4e2a18480
Implement IEditController::getParamValueByString()
2020-12-18 21:36:39 +01:00
Robbert van der Helm
d2585a3550
Add a todo about reusing YaProcessData objects
2020-12-18 20:22:34 +01:00
Robbert van der Helm
74f21f12a5
Use a getter for a proxy object's instance ID
...
We also need this to get some random other object's instance ID, so
might as well use it everywhere.
2020-12-18 14:22:57 +01:00
Robbert van der Helm
cfa4849467
Partially implement IConnectionPoint::connect()
...
This now works for direct connections, which is probably how most hosts
will use this.
2020-12-18 14:09:20 +01:00
Robbert van der Helm
41a9ca5a36
Add boilerplate for connecting Vst3PluginProxies
...
This way we can identify the actual objects and directly connect them on
the Wine side.
2020-12-18 13:45:13 +01:00
Robbert van der Helm
f83e526fc6
Add stubs for IConnectionPoint
2020-12-18 13:36:48 +01:00
Robbert van der Helm
7809c9094c
Fix query interface log message
2020-12-17 23:06:30 +01:00
Robbert van der Helm
585d1e736c
Implement IEditController::getParamStringByValue()
2020-12-17 22:44:13 +01:00
Robbert van der Helm
ccc5688f0c
Implement IEditController::getParameterInfo()
2020-12-17 22:16:20 +01:00
Robbert van der Helm
4cc24f74d1
Implement IEditController::getParameterCount()
2020-12-17 21:55:12 +01:00
Robbert van der Helm
7eb7e87953
Implement IEditController::setComponentState()
2020-12-17 21:50:04 +01:00
Robbert van der Helm
fe2de8de8d
Unify handling for *::{get,set}State
...
Since these functions are exactly the same, and for whatever reason they
didn't just add them to the `IPluginBase` both `IComponent` and
`IEditController`. inherit from
2020-12-17 17:52:51 +01:00
Robbert van der Helm
2155240cca
Add stubs for IEditController{,2}
2020-12-17 16:39:50 +01:00
Robbert van der Helm
d0e96da21a
Rename register_component to register_plugin_proxy
2020-12-17 13:33:34 +01:00
Robbert van der Helm
11bf7532fa
Rename the monolitic class to Vst3PluginProxy
...
Now it's starting to look promising.
2020-12-17 13:07:42 +01:00