summaryrefslogtreecommitdiff
path: root/libs/fst/fst.h
diff options
context:
space:
mode:
authorCarl Hetherington <carl@carlh.net>2010-12-29 23:31:02 +0000
committerCarl Hetherington <carl@carlh.net>2010-12-29 23:31:02 +0000
commit72190954c49dbe5874115132e0497cf5b8d6e633 (patch)
tree90f60f857b461cb924801e0530b374710bd0b1d5 /libs/fst/fst.h
parentcf2cd98db01f28aab4e6dfcd3e0de9c5a26964c4 (diff)
Clean up VST plugin key handling slightly.
git-svn-id: svn://localhost/ardour2/branches/3.0@8377 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/fst/fst.h')
-rw-r--r--libs/fst/fst.h13
1 files changed, 12 insertions, 1 deletions
diff --git a/libs/fst/fst.h b/libs/fst/fst.h
index 25fef9dd36..2e4236fe4d 100644
--- a/libs/fst/fst.h
+++ b/libs/fst/fst.h
@@ -34,6 +34,7 @@ void fst_error (const char *fmt, ...);
typedef struct _FST FST;
typedef struct _FSTHandle FSTHandle;
typedef struct _FSTInfo FSTInfo;
+typedef struct _FSTKey FSTKey;
struct _FSTInfo
{
@@ -70,6 +71,14 @@ struct _FSTHandle
int plugincnt;
};
+struct _FSTKey
+{
+ /** virtual-key code, or 0 if this _FSTKey is a `character' key */
+ int special;
+ /** `character' key, or 0 if this _FSTKey is a virtual-key */
+ int character;
+};
+
struct _FST
{
struct AEffect* plugin;
@@ -89,7 +98,9 @@ struct _FST
int current_program;
float *want_params;
float *set_params;
- int pending_key;
+
+ FSTKey pending_keys[16];
+ int n_pending_keys;
int dispatcher_wantcall;
int dispatcher_opcode;