From 16aece1d47ad1c1137d68ab12989cbc94b112c0f Mon Sep 17 00:00:00 2001 From: Carl Hetherington Date: Tue, 22 Nov 2011 02:27:26 +0000 Subject: Share main VSTFX / FST struct between windows / linux VSTs. git-svn-id: svn://localhost/ardour2/branches/3.0@10762 d708f5d6-7413-0410-9779-e7cbd77b26cf --- libs/fst/fst.h | 64 ++++++++++------------------------------------------------ 1 file changed, 11 insertions(+), 53 deletions(-) (limited to 'libs/fst/fst.h') diff --git a/libs/fst/fst.h b/libs/fst/fst.h index 545bfaf165..5313f5ee03 100644 --- a/libs/fst/fst.h +++ b/libs/fst/fst.h @@ -28,48 +28,6 @@ void fst_set_error_function (void (*func)(const char *)); void fst_error (const char *fmt, ...); -typedef struct _FST FST; - -struct _FST -{ - AEffect* plugin; - void* window; /* win32 HWND */ - int xid; /* X11 XWindow */ - VSTHandle* handle; - int width; - int height; - int wantIdle; - int destroy; - int vst_version; - int has_editor; - - int program_set_without_editor; - int want_program; - int want_chunk; - unsigned char *wanted_chunk; - int wanted_chunk_size; - int current_program; - float *want_params; - float *set_params; - - VSTKey pending_keys[16]; - int n_pending_keys; - - int dispatcher_wantcall; - int dispatcher_opcode; - int dispatcher_index; - int dispatcher_val; - void * dispatcher_ptr; - float dispatcher_opt; - int dispatcher_retval; - - struct _FST* next; - pthread_mutex_t lock; - pthread_cond_t window_status_change; - pthread_cond_t plugin_dispatcher_called; - int been_activated; -}; - #ifdef __cplusplus extern "C" { #endif @@ -80,29 +38,29 @@ extern void fst_exit (); extern VSTHandle* fst_load (const char*); extern int fst_unload (VSTHandle*); -extern FST* fst_instantiate (VSTHandle*, audioMasterCallback amc, void* userptr); -extern void fst_close (FST*); +extern VSTState * fst_instantiate (VSTHandle *, audioMasterCallback amc, void* userptr); +extern void fst_close (VSTState *); -extern int fst_create_editor (FST* fst); -extern int fst_run_editor (FST*); -extern void fst_destroy_editor (FST*); -extern int fst_get_XID (FST*); -extern void fst_move_window_into_view (FST*); +extern int fst_create_editor (VSTState* fst); +extern int fst_run_editor (VSTState *); +extern void fst_destroy_editor (VSTState *); +extern int fst_get_XID (VSTState *); +extern void fst_move_window_into_view (VSTState *); extern VSTInfo *fst_get_info (char *dllpathname); extern void fst_free_info (VSTInfo *info); -extern void fst_event_loop_remove_plugin (FST* fst); -extern int fst_call_dispatcher(FST *fst, int opcode, int index, int val, void *ptr, float opt ); +extern void fst_event_loop_remove_plugin (VSTState* fst); +extern int fst_call_dispatcher (VSTState *, int, int, int, void *, float); /** * Load a plugin state from a file. */ -extern int fst_load_state (FST * fst, char * filename); +extern int fst_load_state (VSTState *, char *); /** * Save a plugin state to a file. */ -extern int fst_save_state (FST * fst, char * filename); +extern int fst_save_state (VSTState *, char *); extern int wine_pthread_create (pthread_t* thread_id, const pthread_attr_t* attr, void *(*function)(void*), void* arg); -- cgit v1.2.3