Robbert van der Helm
34f8d3b1d2
Update the copyright notices for 2021
2021-01-01 18:54:02 +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
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
481975860c
Use the new simple supports flags for the factory
...
This is both more type safe and as it turns out much more manageable.
2020-12-17 13:20:16 +01:00
Robbert van der Helm
39984ad442
Use the new approach for creating plugin factory
...
Directly serializing and deserializing into objects was and more
boilerplate heavy (since we now need two implementations even though we
only use one), and also much less flexible because we can't wrap
payloads in structs or provide optional values that way.
2020-12-12 21:53:38 +01:00
Robbert van der Helm
547b11e8ba
Remove interface filtering from the plugin factory
...
This doesn't work that way, and CIDs really are class IDs (good thing
that everything's documented, oh right).
2020-12-07 18:28:17 +01:00
Robbert van der Helm
79c6f02d91
Request and deserialize plugin factory from plugin
2020-12-07 18:28:16 +01:00
Robbert van der Helm
3be5836c07
Log and ignore unsupported interfaces
2020-12-07 18:28:16 +01:00
Robbert van der Helm
5f14958146
Implement IpluginFactory3::getClassInfoUnicode
2020-12-07 18:28:16 +01:00
Robbert van der Helm
ef3f82e00f
Implement IpluginFactory2::getClassInfo2
2020-12-07 18:28:16 +01:00
Robbert van der Helm
049eb257c5
Make YaPluginFactory abstract
...
And add separate implementations for the native plugin and the Wine
plugin host. This way we can easily allow the native host to do
callbacks without having to manage a load of lambdas.
2020-12-07 18:28:16 +01:00
Robbert van der Helm
dd48523183
Implement IPluginFactory::getClassInfo
2020-12-07 18:28:16 +01:00
Robbert van der Helm
e6da03ae84
Implement IPluginFactory::countClasses()
2020-12-07 18:28:16 +01:00
Robbert van der Helm
79df8fecc2
Serialize the factory info
2020-12-07 18:28:16 +01:00
Robbert van der Helm
fa10600114
Add more thoughts on how the factory should work
2020-12-07 18:28:16 +01:00
Robbert van der Helm
82c1542b74
Add boilerplate for copying factory interfaces
2020-12-07 18:28:16 +01:00
Robbert van der Helm
8f152c7af5
Clean up the query interface serialization
2020-12-07 18:28:16 +01:00
Robbert van der Helm
42f3639e93
Add boilerplate for PluginFactory serialization
2020-12-07 18:28:16 +01:00