Add message objects for IInfoListeener

This commit is contained in:
Robbert van der Helm
2021-01-12 16:58:37 +01:00
parent ccdb121f96
commit 67303f3adc
@@ -19,6 +19,7 @@
#include <pluginterfaces/vst/ivstchannelcontextinfo.h>
#include "../../common.h"
#include "../attribute-list.h"
#include "../base.h"
#pragma GCC diagnostic push
@@ -61,6 +62,28 @@ class YaInfoListener : public Steinberg::Vst::ChannelContext::IInfoListener {
inline bool supported() const { return arguments.supported; }
/**
* Message to pass through a call to
* `IInfoListeener::setChannelContextInfos(list)` to the Wine plugin host.
*/
struct SetChannelContextInfos {
using Response = UniversalTResult;
native_size_t instance_id;
/**
* The passed channel context attributes, read using
* `YaAttributeList::read_channel_context()`.
*/
YaAttributeList list;
template <typename S>
void serialize(S& s) {
s.value8b(instance_id);
s.object(list);
}
};
virtual tresult PLUGIN_API
setChannelContextInfos(Steinberg::Vst::IAttributeList* list) override = 0;