mirror of
https://github.com/robbert-vdh/yabridge.git
synced 2026-05-09 20:29:10 +02:00
Add message structs for IParameterFinder
This commit is contained in:
@@ -18,6 +18,7 @@
|
|||||||
|
|
||||||
#include <pluginterfaces/vst/ivstplugview.h>
|
#include <pluginterfaces/vst/ivstplugview.h>
|
||||||
|
|
||||||
|
#include "../../common.h"
|
||||||
#include "../base.h"
|
#include "../base.h"
|
||||||
|
|
||||||
#pragma GCC diagnostic push
|
#pragma GCC diagnostic push
|
||||||
@@ -60,6 +61,41 @@ class YaParameterFinder : public Steinberg::Vst::IParameterFinder {
|
|||||||
|
|
||||||
inline bool supported() const { return arguments.supported; }
|
inline bool supported() const { return arguments.supported; }
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The response code and editor size returned by a call to
|
||||||
|
* `IParameterFinder::findParameter(x_pos, y_pos, &result_tag)`.
|
||||||
|
*/
|
||||||
|
struct FindParameterResponse {
|
||||||
|
UniversalTResult result;
|
||||||
|
Steinberg::Vst::ParamID result_tag;
|
||||||
|
|
||||||
|
template <typename S>
|
||||||
|
void serialize(S& s) {
|
||||||
|
s.object(result);
|
||||||
|
s.value4b(result_tag);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Message to pass through a call to `IParameterFinder::findParameter(x_pos,
|
||||||
|
* y_pos, &result_tag)` to the Wine plugin host.
|
||||||
|
*/
|
||||||
|
struct FindParameter {
|
||||||
|
using Response = FindParameterResponse;
|
||||||
|
|
||||||
|
native_size_t owner_instance_id;
|
||||||
|
|
||||||
|
int32 x_pos;
|
||||||
|
int32 y_pos;
|
||||||
|
|
||||||
|
template <typename S>
|
||||||
|
void serialize(S& s) {
|
||||||
|
s.value8b(owner_instance_id);
|
||||||
|
s.value4b(x_pos);
|
||||||
|
s.value4b(y_pos);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
virtual tresult PLUGIN_API
|
virtual tresult PLUGIN_API
|
||||||
findParameter(int32 xPos,
|
findParameter(int32 xPos,
|
||||||
int32 yPos,
|
int32 yPos,
|
||||||
|
|||||||
@@ -18,6 +18,7 @@
|
|||||||
|
|
||||||
#include <pluginterfaces/gui/iplugview.h>
|
#include <pluginterfaces/gui/iplugview.h>
|
||||||
|
|
||||||
|
#include "../../common.h"
|
||||||
#include "../base.h"
|
#include "../base.h"
|
||||||
#include "../plug-frame-proxy.h"
|
#include "../plug-frame-proxy.h"
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user