Add an IConnectionPoint proxy proxy

This is a bit dumb, but this way we can support indirectly connected
objects.
This commit is contained in:
Robbert van der Helm
2020-12-25 13:28:03 +01:00
parent 65694d261c
commit 0fce9c9eed
4 changed files with 170 additions and 12 deletions
+13 -12
View File
@@ -7,18 +7,19 @@ serialization works.
VST3 plugin interfaces are implemented as follows:
| yabridge class | Included in | Interfaces |
| ------------------- | ------------------- | ------------------------------------------------------ |
| `YaPluginFactory` | | `IPluginFactory`, `IPluginFactory2`, `IPluginFactory3` |
| `Vst3PlugViewProxy` | | All of the below: |
| `YaPlugView` | `Vst3PlugViewProxy` | `IPlugView` |
| `Vst3PluginProxy` | | All of the below: |
| `YaAudioProcessor` | `Vst3PluginProxy` | `IAudioProcessor` |
| `YaComponent` | `Vst3PluginProxy` | `IComponent` |
| `YaConnectionPoint` | `Vst3PluginProxy` | `IConnectionPoint` |
| `YaEditController` | `Vst3PluginProxy` | `IEditController` |
| `YaEditController2` | `Vst3PluginProxy` | `IEditController2` |
| `YaPluginBase` | `Vst3PluginProxy` | `IPluginBase` |
| yabridge class | Included in | Interfaces |
| -------------------------- | ------------------- | ------------------------------------------------------ |
| `YaPluginFactory` | | `IPluginFactory`, `IPluginFactory2`, `IPluginFactory3` |
| `Vst3ConnectionPointProxy` | | `IConnectionPoint` through `YaConnectionPoint` |
| `Vst3PlugViewProxy` | | All of the below: |
| `YaPlugView` | `Vst3PlugViewProxy` | `IPlugView` |
| `Vst3PluginProxy` | | All of the below: |
| `YaAudioProcessor` | `Vst3PluginProxy` | `IAudioProcessor` |
| `YaComponent` | `Vst3PluginProxy` | `IComponent` |
| `YaConnectionPoint` | `Vst3PluginProxy` | `IConnectionPoint` |
| `YaEditController` | `Vst3PluginProxy` | `IEditController` |
| `YaEditController2` | `Vst3PluginProxy` | `IEditController2` |
| `YaPluginBase` | `Vst3PluginProxy` | `IPluginBase` |
VST3 host interfaces are implemented as follows: