diff options
Diffstat (limited to 'src/jalv_internal.h')
-rw-r--r-- | src/jalv_internal.h | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/src/jalv_internal.h b/src/jalv_internal.h index 5ee7755..950d1b7 100644 --- a/src/jalv_internal.h +++ b/src/jalv_internal.h @@ -32,16 +32,23 @@ extern "C" { #endif +#define JALV_UI_UPDATE_HZ 15 + typedef struct { LilvWorld* world; /**< Lilv World */ Symap* symap; /**< Symbol (URI) map */ jack_client_t* jack_client; /**< Jack client */ - jack_ringbuffer_t* events; /**< Control change events */ + jack_ringbuffer_t* ui_events; /**< Port events from UI */ + jack_ringbuffer_t* plugin_events; /**< Port events from plugin */ sem_t* done; /**< Exit semaphore */ const LilvPlugin* plugin; /**< Plugin class (RDF data) */ + const LilvUI* ui; /**< Plugin UI (RDF data) */ LilvInstance* instance; /**< Plugin instance (shared library) */ - uint32_t num_ports; /**< Size of the two following arrays: */ + SuilInstance* ui_instance; /**< Plugin UI instance (shared library) */ struct Port* ports; /**< Port array of size num_ports */ + uint32_t num_ports; /**< Size of the two following arrays: */ + jack_nframes_t sample_rate; /**< Sample rate */ + jack_nframes_t event_delta_t; /**< Frames since last update sent to UI */ LilvNode* input_class; /**< Input port class (URI) */ LilvNode* output_class; /**< Output port class (URI) */ LilvNode* control_class; /**< Control port class (URI) */ @@ -62,6 +69,9 @@ int jalv_open_ui(Jalv* jalv, SuilInstance* instance); +bool +jalv_emit_ui_events(Jalv* jalv); + #ifdef __cplusplus } // extern "C" |