14#ifndef __AUDACITY_LV2_UI_FEATURES_LIST__
15#define __AUDACITY_LV2_UI_FEATURES_LIST__
22#include "lv2/data-access/data-access.h"
34 uint32_t protocol,
const void *buffer) = 0;
41 LilvInstance *pInstance =
nullptr, wxWindow *pParent =
nullptr);
46 LilvInstance *pInstance, wxWindow *pParent);
57 static int ui_resize(LV2UI_Feature_Handle handle,
int width,
int height);
58 static void ui_closed(LV2UI_Controller controller);
60 SuilController controller,
const char *port_symbol);
62 uint32_t port_index, uint32_t buffer_size, uint32_t protocol,
Lilv_ptr< LilvNode, lilv_node_free > LilvNodePtr
Extends one (immutable) feature list (whose lifetime contains this one's)
std::vector< LV2_Feature > mFeatures
Abstraction of host services that a plug-ins native UI needs.
virtual uint32_t suil_port_index(const char *port_symbol)=0
virtual void ui_closed()=0
virtual int ui_resize(int width, int height)=0
virtual void suil_port_write(uint32_t port_index, uint32_t buffer_size, uint32_t protocol, const void *buffer)=0
static uint32_t suil_port_index(SuilController controller, const char *port_symbol)
bool InitializeFeatures(const LilvNode *node, LilvInstance *pInstance, wxWindow *pParent)
const LV2UI_Resize mUIResizeFeature
UIHandler *const mpHandler
static int ui_resize(LV2UI_Feature_Handle handle, int width, int height)
static void suil_port_write(SuilController controller, uint32_t port_index, uint32_t buffer_size, uint32_t protocol, const void *buffer)
const LV2_External_UI_Host mExternalUIHost
const LilvNodePtr mHumanId
static void ui_closed(LV2UI_Controller controller)
LV2UIFeaturesList(const LV2WrapperFeaturesList &baseFeatures, UIHandler *pHandler, const LilvNode *node, LilvInstance *pInstance=nullptr, wxWindow *pParent=nullptr)
LV2_Extension_Data_Feature mExtensionDataFeature