|
LMMS
|
#include <stdint.h>#include "lv2/lv2plug.in/ns/lv2core/lv2.h"#include <stdbool.h>Go to the source code of this file.
Classes | |
| struct | _LV2UI_Descriptor |
| struct | _LV2UI_Resize |
| struct | _LV2UI_Port_Map |
| struct | _LV2UI_Port_Subscribe |
| struct | _LV2UI_Touch |
| struct | _LV2UI_Idle_Interface |
| struct | _LV2UI_Show_Interface |
| struct | _LV2UI_Peak_Data |
Typedefs | |
| typedef void * | LV2UI_Widget |
| typedef void * | LV2UI_Handle |
| typedef void * | LV2UI_Controller |
| typedef void * | LV2UI_Feature_Handle |
| typedef void(* | LV2UI_Write_Function) (LV2UI_Controller controller, uint32_t port_index, uint32_t buffer_size, uint32_t port_protocol, const void *buffer) |
| typedef struct _LV2UI_Descriptor | LV2UI_Descriptor |
| typedef struct _LV2UI_Resize | LV2UI_Resize |
| typedef struct _LV2UI_Port_Map | LV2UI_Port_Map |
| typedef struct _LV2UI_Port_Subscribe | LV2UI_Port_Subscribe |
| typedef struct _LV2UI_Touch | LV2UI_Touch |
| typedef struct _LV2UI_Idle_Interface | LV2UI_Idle_Interface |
| typedef struct _LV2UI_Show_Interface | LV2UI_Show_Interface |
| typedef struct _LV2UI_Peak_Data | LV2UI_Peak_Data |
| typedef const LV2UI_Descriptor *(* | LV2UI_DescriptorFunction) (uint32_t index) |
Functions | |
| LV2_SYMBOL_EXPORT const LV2UI_Descriptor * | lv2ui_descriptor (uint32_t index) |
| #define LV2_UI__binary LV2_UI_PREFIX "binary" |
| #define LV2_UI__CocoaUI LV2_UI_PREFIX "CocoaUI" |
| #define LV2_UI__fixedSize LV2_UI_PREFIX "fixedSize" |
| #define LV2_UI__Gtk3UI LV2_UI_PREFIX "Gtk3UI" |
| #define LV2_UI__GtkUI LV2_UI_PREFIX "GtkUI" |
| #define LV2_UI__idleInterface LV2_UI_PREFIX "idleInterface" |
| #define LV2_UI__notifyType LV2_UI_PREFIX "notifyType" |
| #define LV2_UI__noUserResize LV2_UI_PREFIX "noUserResize" |
| #define LV2_UI__parent LV2_UI_PREFIX "parent" |
| #define LV2_UI__plugin LV2_UI_PREFIX "plugin" |
| #define LV2_UI__portIndex LV2_UI_PREFIX "portIndex" |
| #define LV2_UI__portMap LV2_UI_PREFIX "portMap" |
| #define LV2_UI__PortNotification LV2_UI_PREFIX "PortNotification" |
| #define LV2_UI__portNotification LV2_UI_PREFIX "portNotification" |
| #define LV2_UI__portSubscribe LV2_UI_PREFIX "portSubscribe" |
| #define LV2_UI__Qt4UI LV2_UI_PREFIX "Qt4UI" |
| #define LV2_UI__resize LV2_UI_PREFIX "resize" |
| #define LV2_UI__showInterface LV2_UI_PREFIX "showInterface" |
| #define LV2_UI__touch LV2_UI_PREFIX "touch" |
| #define LV2_UI__UI LV2_UI_PREFIX "UI" |
| #define LV2_UI__ui LV2_UI_PREFIX "ui" |
| #define LV2_UI__updateRate LV2_UI_PREFIX "updateRate" |
| #define LV2_UI__WindowsUI LV2_UI_PREFIX "WindowsUI" |
| #define LV2_UI__windowTitle LV2_UI_PREFIX "windowTitle" |
| #define LV2_UI__X11UI LV2_UI_PREFIX "X11UI" |
| #define LV2_UI_PREFIX LV2_UI_URI "#" |
| #define LV2_UI_URI "http://lv2plug.in/ns/extensions/ui" |
| #define LV2UI_INVALID_PORT_INDEX ((uint32_t)-1) |
The index returned by LV2_UI_Port_Port::port_index() for unknown ports.
| typedef void* LV2UI_Controller |
A pointer to a controller provided by the host.
The UI may compare this to NULL, but otherwise MUST NOT interpret it.
| typedef struct _LV2UI_Descriptor LV2UI_Descriptor |
A plugin UI.
A pointer to an object of this type is returned by the lv2ui_descriptor() function.
| typedef const LV2UI_Descriptor *(* LV2UI_DescriptorFunction) (uint32_t index) |
The type of the lv2ui_descriptor() function.
| typedef void* LV2UI_Feature_Handle |
A pointer to opaque data for a feature.
| typedef void* LV2UI_Handle |
A pointer to UI instance internals.
The host may compare this to NULL, but otherwise MUST NOT interpret it.
| typedef struct _LV2UI_Idle_Interface LV2UI_Idle_Interface |
UI Idle Interface (LV2_UI__idleInterface)
UIs can provide this interface to have an idle() callback called by the host rapidly to update the UI.
| typedef struct _LV2UI_Peak_Data LV2UI_Peak_Data |
Peak data for a slice of time, the update format for ui:peakProtocol.
| typedef struct _LV2UI_Port_Map LV2UI_Port_Map |
Feature to map port symbols to UIs.
This can be used by the UI to get the index for a port with the given symbol. This makes it possible to implement and distribute a UI separately from the plugin (since symbol, unlike index, is a stable port identifier).
| typedef struct _LV2UI_Port_Subscribe LV2UI_Port_Subscribe |
Feature to subscribe to port updates (LV2_UI__portSubscribe).
| typedef struct _LV2UI_Resize LV2UI_Resize |
Feature/interface for resizable UIs (LV2_UI__resize).
This structure is used in two ways: as a feature passed by the host via LV2UI_Descriptor::instantiate(), or as an interface provided by a UI via LV2UI_Descriptor::extension_data()).
| typedef struct _LV2UI_Show_Interface LV2UI_Show_Interface |
UI Show Interface (LV2_UI__showInterface)
UIs can provide this interface to show and hide a window, which allows them to function in hosts unable to embed their widget. This allows any UI to provide a fallback for embedding that works in any host.
If used:
| typedef struct _LV2UI_Touch LV2UI_Touch |
A feature to notify the host that the user has grabbed a UI control.
| typedef void* LV2UI_Widget |
A pointer to some widget or other type of UI handle.
The actual type is defined by the type of the UI.
| typedef void(* LV2UI_Write_Function) (LV2UI_Controller controller, uint32_t port_index, uint32_t buffer_size, uint32_t port_protocol, const void *buffer) |
A host-provided function that sends data to a plugin's input ports.
The buffer parameter must point to a block of data, buffer_size bytes large. The format of this data and how the host should use it is defined by the port_protocol. This buffer is owned by the UI and is only valid for the duration of this call.
The port_protocol parameter should either be 0 or the URID for a ui:PortProtocol. If it is 0, the protocol is implicitly ui:floatProtocol, the port MUST be an lv2:ControlPort input, buffer MUST point to a single float value, and buffer_size MUST be sizeof(float).
The UI SHOULD NOT use a protocol not supported by the host, but the host MUST gracefully ignore any protocol it does not understand.