00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef __SLV2_PLUGINUIINSTANCE_H__
00020 #define __SLV2_PLUGINUIINSTANCE_H__
00021
00022 #ifdef __cplusplus
00023 extern "C" {
00024 #endif
00025
00026 #include <assert.h>
00027 #include "slv2/lv2_ui.h"
00028 #include "slv2/plugin.h"
00029
00030 typedef struct _SLV2UIInstanceImpl* SLV2UIInstanceImpl;
00031
00032
00033
00034
00035
00036
00037 typedef struct _SLV2UIInstance {
00038 SLV2UIInstanceImpl pimpl;
00039 }* SLV2UIInstance;
00040
00041
00062 SLV2_API
00063 SLV2UIInstance
00064 slv2_ui_instantiate(SLV2Plugin plugin,
00065 SLV2UI ui,
00066 LV2UI_Write_Function write_function,
00067 LV2UI_Controller controller,
00068 const LV2_Feature* const* features);
00069
00070
00079 SLV2_API
00080 void
00081 slv2_ui_instance_free(SLV2UIInstance instance);
00082
00083
00086 SLV2_API
00087 LV2UI_Widget
00088 slv2_ui_instance_get_widget(SLV2UIInstance instance);
00089
00090
00098 SLV2_API
00099 const LV2UI_Descriptor*
00100 slv2_ui_instance_get_descriptor(SLV2UIInstance instance);
00101
00102
00110 SLV2_API
00111 LV2UI_Handle
00112 slv2_ui_instance_get_handle(SLV2UIInstance instance);
00113
00114
00117 #ifdef __cplusplus
00118 }
00119 #endif
00120
00121
00122 #endif
00123