From 0b984c10a38430c029e3cbecad9507eea6058d2c Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Fri, 8 Aug 2025 00:39:49 +0000 Subject: [PATCH] e9fcf1408be5af7d206ce42099bc556b349ecaa4 --- annotated.html | 2 +- bug.html | 2 +- classes.html | 2 +- deprecated.html | 2 +- files.html | 2 +- functions.html | 2 +- functions_vars.html | 2 +- globals.html | 2 +- globals_defs.html | 2 +- globals_enum.html | 2 +- globals_eval.html | 2 +- globals_eval_v.html | 2 +- globals_type.html | 2 +- globals_v.html | 2 +- index.html | 2 +- navtreeindex0.js | 4 +- pages.html | 2 +- structvst__effect__supports__t.html | 54 +- structvst__effect__t.html | 50 +- structvst__host__supports__t.html | 32 +- structvst__parameter__properties__t.html | 2 +- structvst__rect__t.html | 2 +- ...vst__speaker__arrangement__dynamic__t.html | 2 +- structvst__speaker__arrangement__t.html | 2 +- structvst__speaker__properties__t.html | 2 +- structvst__stream__properties__t.html | 2 +- vst_8h.html | 1232 +++--- vst_8h.js | 2 +- vst_8h_source.html | 3650 +++++++++-------- vst_8hpp.html | 2 +- vst_8hpp_source.html | 2 +- 31 files changed, 2538 insertions(+), 2534 deletions(-) diff --git a/annotated.html b/annotated.html index 3720c54..24fb53a 100644 --- a/annotated.html +++ b/annotated.html @@ -111,7 +111,7 @@ $(document).ready(function(){initNavTree('annotated.html',''); initResizable(); diff --git a/bug.html b/bug.html index 21d660f..03d774a 100644 --- a/bug.html +++ b/bug.html @@ -105,7 +105,7 @@ $(document).ready(function(){initNavTree('bug.html',''); initResizable(); }); diff --git a/classes.html b/classes.html index 738da53..e9a73e9 100644 --- a/classes.html +++ b/classes.html @@ -104,7 +104,7 @@ $(document).ready(function(){initNavTree('classes.html',''); initResizable(); }) diff --git a/deprecated.html b/deprecated.html index c391fc9..68b5c09 100644 --- a/deprecated.html +++ b/deprecated.html @@ -131,7 +131,7 @@ $(document).ready(function(){initNavTree('deprecated.html',''); initResizable(); diff --git a/files.html b/files.html index 1ebadbf..4cf009c 100644 --- a/files.html +++ b/files.html @@ -104,7 +104,7 @@ $(document).ready(function(){initNavTree('files.html',''); initResizable(); }); diff --git a/functions.html b/functions.html index 6b2539a..1617ba5 100644 --- a/functions.html +++ b/functions.html @@ -255,7 +255,7 @@ $(document).ready(function(){initNavTree('functions.html',''); initResizable(); diff --git a/functions_vars.html b/functions_vars.html index c624b08..8cf6f90 100644 --- a/functions_vars.html +++ b/functions_vars.html @@ -255,7 +255,7 @@ $(document).ready(function(){initNavTree('functions_vars.html',''); initResizabl diff --git a/globals.html b/globals.html index 62477eb..d1ce327 100644 --- a/globals.html +++ b/globals.html @@ -105,7 +105,7 @@ $(document).ready(function(){initNavTree('globals.html',''); initResizable(); }) diff --git a/globals_defs.html b/globals_defs.html index 361200e..99c9684 100644 --- a/globals_defs.html +++ b/globals_defs.html @@ -109,7 +109,7 @@ $(document).ready(function(){initNavTree('globals_defs.html',''); initResizable( diff --git a/globals_enum.html b/globals_enum.html index 283b879..3da5aee 100644 --- a/globals_enum.html +++ b/globals_enum.html @@ -108,7 +108,7 @@ $(document).ready(function(){initNavTree('globals_enum.html',''); initResizable( diff --git a/globals_eval.html b/globals_eval.html index 8801595..d3b1fde 100644 --- a/globals_eval.html +++ b/globals_eval.html @@ -105,7 +105,7 @@ $(document).ready(function(){initNavTree('globals_eval.html',''); initResizable( diff --git a/globals_eval_v.html b/globals_eval_v.html index a0a9580..de25960 100644 --- a/globals_eval_v.html +++ b/globals_eval_v.html @@ -459,7 +459,7 @@ $(document).ready(function(){initNavTree('globals_eval_v.html',''); initResizabl diff --git a/globals_type.html b/globals_type.html index e77919a..c112496 100644 --- a/globals_type.html +++ b/globals_type.html @@ -104,7 +104,7 @@ $(document).ready(function(){initNavTree('globals_type.html',''); initResizable( diff --git a/globals_v.html b/globals_v.html index 6e18541..1dc46a3 100644 --- a/globals_v.html +++ b/globals_v.html @@ -489,7 +489,7 @@ $(document).ready(function(){initNavTree('globals_v.html',''); initResizable(); diff --git a/index.html b/index.html index fdf45b8..12d9d60 100644 --- a/index.html +++ b/index.html @@ -98,7 +98,7 @@ $(document).ready(function(){initNavTree('index.html',''); initResizable(); }); diff --git a/navtreeindex0.js b/navtreeindex0.js index 9c4a622..486af32 100644 --- a/navtreeindex0.js +++ b/navtreeindex0.js @@ -168,7 +168,7 @@ var NAVTREEINDEX0 = "vst_8h.html#a223eb6814e8e03b7f89687280db8b8eca218e6eadb0eda302fcdc07ad5b619a1c":[3,0,0,30,32], "vst_8h.html#a223eb6814e8e03b7f89687280db8b8eca27ccf6c0ae6965462d0c95668a5328e9":[3,0,0,30,21], "vst_8h.html#a223eb6814e8e03b7f89687280db8b8eca28bcfd43d8494d6c1a1bf22b180b6ef4":[3,0,0,30,61], -"vst_8h.html#a223eb6814e8e03b7f89687280db8b8eca3365f17c1b25e26e5b7ef3d3e1da82e0":[3,0,0,30,20], +"vst_8h.html#a223eb6814e8e03b7f89687280db8b8eca3365f17c1b25e26e5b7ef3d3e1da82e0":[3,0,0,30,19], "vst_8h.html#a223eb6814e8e03b7f89687280db8b8eca34073cc936673d594b7d8b204f4ee702":[3,0,0,30,33], "vst_8h.html#a223eb6814e8e03b7f89687280db8b8eca397585e27e5a49a75956cf67adfda496":[3,0,0,30,24], "vst_8h.html#a223eb6814e8e03b7f89687280db8b8eca3a854908f0c413d0d640b832df931b06":[3,0,0,30,8], @@ -197,7 +197,7 @@ var NAVTREEINDEX0 = "vst_8h.html#a223eb6814e8e03b7f89687280db8b8eca9226e0e6b1e3929060be3c534d54efab":[3,0,0,30,22], "vst_8h.html#a223eb6814e8e03b7f89687280db8b8eca9e86c9deba6977be5229b2982d0c8aa6":[3,0,0,30,57], "vst_8h.html#a223eb6814e8e03b7f89687280db8b8eca9f34fe7eb72d7aa8ddbf7547361d6526":[3,0,0,30,25], -"vst_8h.html#a223eb6814e8e03b7f89687280db8b8ecaa08be4a54bab1745f2011a5a30e880a5":[3,0,0,30,19], +"vst_8h.html#a223eb6814e8e03b7f89687280db8b8ecaa08be4a54bab1745f2011a5a30e880a5":[3,0,0,30,20], "vst_8h.html#a223eb6814e8e03b7f89687280db8b8ecaa3195b429e827047e23d08522d49e558":[3,0,0,30,59], "vst_8h.html#a223eb6814e8e03b7f89687280db8b8ecab0181c84715dd10c037caea91faccf17":[3,0,0,30,18], "vst_8h.html#a223eb6814e8e03b7f89687280db8b8ecab24fb5e7be2c83d7c6aa9dca4169a42b":[3,0,0,30,0], diff --git a/pages.html b/pages.html index c12d7d7..26cbde4 100644 --- a/pages.html +++ b/pages.html @@ -104,7 +104,7 @@ $(document).ready(function(){initNavTree('pages.html',''); initResizable(); }); diff --git a/structvst__effect__supports__t.html b/structvst__effect__supports__t.html index 59fe496..fdda44c 100644 --- a/structvst__effect__supports__t.html +++ b/structvst__effect__supports__t.html @@ -160,7 +160,7 @@ Data Fields

Provided as char* p_ptr in the VST_EFFECT_OPCODE_SUPPORTS op code.

Harvested via strings command and just checking what plug-ins actually responded to.

-

Definition at line 1957 of file vst.h.

+

Definition at line 1959 of file vst.h.

Field Documentation

◆ _1in1out

@@ -174,7 +174,7 @@ Data Fields
-

Definition at line 1983 of file vst.h.

+

Definition at line 1985 of file vst.h.

@@ -190,7 +190,7 @@ Data Fields
-

Definition at line 1984 of file vst.h.

+

Definition at line 1986 of file vst.h.

@@ -206,7 +206,7 @@ Data Fields
-

Definition at line 1985 of file vst.h.

+

Definition at line 1987 of file vst.h.

@@ -222,7 +222,7 @@ Data Fields
-

Definition at line 1986 of file vst.h.

+

Definition at line 1988 of file vst.h.

@@ -238,7 +238,7 @@ Data Fields
-

Definition at line 1987 of file vst.h.

+

Definition at line 1989 of file vst.h.

@@ -254,7 +254,7 @@ Data Fields
-

Definition at line 1988 of file vst.h.

+

Definition at line 1990 of file vst.h.

@@ -270,7 +270,7 @@ Data Fields
-

Definition at line 1989 of file vst.h.

+

Definition at line 1991 of file vst.h.

@@ -286,7 +286,7 @@ Data Fields
-

Definition at line 1990 of file vst.h.

+

Definition at line 1992 of file vst.h.

@@ -302,7 +302,7 @@ Data Fields
-

Definition at line 1991 of file vst.h.

+

Definition at line 1993 of file vst.h.

@@ -318,7 +318,7 @@ Data Fields
-

Definition at line 1992 of file vst.h.

+

Definition at line 1994 of file vst.h.

@@ -339,7 +339,7 @@ Data Fields
Note
VST 2.3 or later only.
Returns
VST_STATUS_TRUE if we support this, otherwise VST_STATUS_FALSE.
-

Definition at line 1966 of file vst.h.

+

Definition at line 1968 of file vst.h.

@@ -355,7 +355,7 @@ Data Fields
-

Definition at line 1977 of file vst.h.

+

Definition at line 1979 of file vst.h.

@@ -371,7 +371,7 @@ Data Fields
-

Definition at line 1982 of file vst.h.

+

Definition at line 1984 of file vst.h.

@@ -387,7 +387,7 @@ Data Fields
-

Definition at line 1972 of file vst.h.

+

Definition at line 1974 of file vst.h.

@@ -403,7 +403,7 @@ Data Fields
-

Definition at line 1979 of file vst.h.

+

Definition at line 1981 of file vst.h.

@@ -419,7 +419,7 @@ Data Fields
-

Definition at line 1981 of file vst.h.

+

Definition at line 1983 of file vst.h.

@@ -435,7 +435,7 @@ Data Fields
-

Definition at line 1980 of file vst.h.

+

Definition at line 1982 of file vst.h.

@@ -451,7 +451,7 @@ Data Fields
-

Definition at line 1974 of file vst.h.

+

Definition at line 1976 of file vst.h.

@@ -467,7 +467,7 @@ Data Fields
-

Definition at line 1976 of file vst.h.

+

Definition at line 1978 of file vst.h.

@@ -483,7 +483,7 @@ Data Fields
-

Definition at line 1978 of file vst.h.

+

Definition at line 1980 of file vst.h.

@@ -499,7 +499,7 @@ Data Fields
-

Definition at line 1969 of file vst.h.

+

Definition at line 1971 of file vst.h.

@@ -515,7 +515,7 @@ Data Fields
-

Definition at line 1971 of file vst.h.

+

Definition at line 1973 of file vst.h.

@@ -531,7 +531,7 @@ Data Fields
-

Definition at line 1973 of file vst.h.

+

Definition at line 1975 of file vst.h.

@@ -547,7 +547,7 @@ Data Fields
-

Definition at line 1968 of file vst.h.

+

Definition at line 1970 of file vst.h.

@@ -563,7 +563,7 @@ Data Fields
-

Definition at line 1970 of file vst.h.

+

Definition at line 1972 of file vst.h.

@@ -576,7 +576,7 @@ Data Fields diff --git a/structvst__effect__t.html b/structvst__effect__t.html index 408113a..8821400 100644 --- a/structvst__effect__t.html +++ b/structvst__effect__t.html @@ -171,7 +171,7 @@ Data Fields

Detailed Description

Plug-in Effect definition.

-

Definition at line 2089 of file vst.h.

+

Definition at line 2091 of file vst.h.

Field Documentation

◆ _unknown

@@ -185,7 +185,7 @@ Data Fields
-

Definition at line 2245 of file vst.h.

+

Definition at line 2247 of file vst.h.

@@ -201,7 +201,7 @@ Data Fields
-

Definition at line 2166 of file vst.h.

+

Definition at line 2168 of file vst.h.

@@ -217,7 +217,7 @@ Data Fields
-

Definition at line 2167 of file vst.h.

+

Definition at line 2169 of file vst.h.

@@ -233,7 +233,7 @@ Data Fields
-

Definition at line 2178 of file vst.h.

+

Definition at line 2180 of file vst.h.

@@ -249,7 +249,7 @@ Data Fields
-

Definition at line 2179 of file vst.h.

+

Definition at line 2181 of file vst.h.

@@ -270,7 +270,7 @@ Data Fields
VST_EFFECT_OPCODE
-

Definition at line 2102 of file vst.h.

+

Definition at line 2104 of file vst.h.

@@ -292,7 +292,7 @@ Data Fields Should be reinitialized when the effect is resumed.
See also
VST_HOST_OPCODE_IO_MODIFIED
-

Definition at line 2176 of file vst.h.

+

Definition at line 2178 of file vst.h.

@@ -311,7 +311,7 @@ Should be reinitialized when the effect is resumed.

Effect Internal Pointer.

You can freely set this to point at some sort of class or similar for use in your own effect. The host must never modify this or the data available through this.

-

Definition at line 2196 of file vst.h.

+

Definition at line 2198 of file vst.h.

@@ -330,7 +330,7 @@ Should be reinitialized when the effect is resumed.

Effect Flags.

See also
VST_EFFECT_FLAGS
-

Definition at line 2164 of file vst.h.

+

Definition at line 2166 of file vst.h.

@@ -349,7 +349,7 @@ Should be reinitialized when the effect is resumed.

Get Parameter Function.

See also
vst_effect_get_parameter_t
-

Definition at line 2119 of file vst.h.

+

Definition at line 2121 of file vst.h.

@@ -368,7 +368,7 @@ Should be reinitialized when the effect is resumed.

Host Internal Pointer.

The host may set this to point at data related to your effect instance that the host needs. The effect must never modify this or the data available through this.

-

Definition at line 2203 of file vst.h.

+

Definition at line 2205 of file vst.h.

@@ -388,7 +388,7 @@ Should be reinitialized when the effect is resumed.

Example: A ratio of 2.0 means we produce twice as much output as we receive input.

Range: >0.0 to Infinity Default: 1.0

Note
Ignored in VST 2.4 or with VST_EFFECT_FLAG_SUPPORTS_FLOAT.
-

Definition at line 2189 of file vst.h.

+

Definition at line 2191 of file vst.h.

@@ -408,7 +408,7 @@ Should be reinitialized when the effect is resumed.

Should always be VST_FOURCC('VstP')

See also
VST_MAGICNUMBER
-

Definition at line 2096 of file vst.h.

+

Definition at line 2098 of file vst.h.

@@ -431,7 +431,7 @@ Should be reinitialized when the effect is resumed.
VST_HOST_OPCODE_IO_MODIFIED
-

Definition at line 2150 of file vst.h.

+

Definition at line 2152 of file vst.h.

@@ -454,7 +454,7 @@ Should be reinitialized when the effect is resumed.
VST_HOST_OPCODE_IO_MODIFIED
-

Definition at line 2158 of file vst.h.

+

Definition at line 2160 of file vst.h.

@@ -474,7 +474,7 @@ Should be reinitialized when the effect is resumed.

All programs must have at least this many parameters.

See also
VST_HOST_OPCODE_IO_MODIFIED
-

Definition at line 2141 of file vst.h.

+

Definition at line 2143 of file vst.h.

@@ -511,7 +511,7 @@ Should be reinitialized when the effect is resumed.
VST_EFFECT_OPCODE_GET_CHUNK_DATA
-

Definition at line 2134 of file vst.h.

+

Definition at line 2136 of file vst.h.

@@ -531,7 +531,7 @@ Should be reinitialized when the effect is resumed.
See also
vst_effect_process_t
Deprecated:
(VST 2.4+) Deprecated and practically unsupported in all VST 2.4 compatible hosts and may treat it as just another vst_effect_t::process_float.
-

Definition at line 2109 of file vst.h.

+

Definition at line 2111 of file vst.h.

@@ -551,7 +551,7 @@ Should be reinitialized when the effect is resumed.
See also
vst_effect_process_double_t
Note
(VST 2.4+) Available from VST 2.4 and later.
-

Definition at line 2242 of file vst.h.

+

Definition at line 2244 of file vst.h.

@@ -571,7 +571,7 @@ Should be reinitialized when the effect is resumed.
See also
vst_effect_process_single_t
Note
(VST 2.0+) Available from VST 2.0 and later.
-

Definition at line 2232 of file vst.h.

+

Definition at line 2234 of file vst.h.

@@ -590,7 +590,7 @@ Should be reinitialized when the effect is resumed.

Set Parameter Function.

See also
vst_effect_set_parameter_t
-

Definition at line 2114 of file vst.h.

+

Definition at line 2116 of file vst.h.

@@ -611,7 +611,7 @@ Should be reinitialized when the effect is resumed.

Used in combination with VST_EFFECT_CATEGORY_CONTAINER.

BUG: Some broken hosts rely on this alone to save information about VST plug-ins.

-

Definition at line 2216 of file vst.h.

+

Definition at line 2218 of file vst.h.

@@ -630,7 +630,7 @@ Should be reinitialized when the effect is resumed.

Plugin version.

Unrelated to the minimum VST Version, but often the same.

-

Definition at line 2222 of file vst.h.

+

Definition at line 2224 of file vst.h.

@@ -643,7 +643,7 @@ Should be reinitialized when the effect is resumed. diff --git a/structvst__host__supports__t.html b/structvst__host__supports__t.html index 38a2017..8063b4e 100644 --- a/structvst__host__supports__t.html +++ b/structvst__host__supports__t.html @@ -140,7 +140,7 @@ Data Fields

Provided as char* p_ptr in the VST_EFFECT_OPCODE_SUPPORTS op code.

Harvested via strings command and just checking what hosts actually responded to.

-

Definition at line 740 of file vst.h.

+

Definition at line 742 of file vst.h.

Field Documentation

◆ acceptIOChanges

@@ -160,7 +160,7 @@ Data Fields
Returns
VST_STATUS_TRUE if it supports it.
-

Definition at line 750 of file vst.h.

+

Definition at line 752 of file vst.h.

@@ -176,7 +176,7 @@ Data Fields
-

Definition at line 789 of file vst.h.

+

Definition at line 791 of file vst.h.

@@ -192,7 +192,7 @@ Data Fields
-

Definition at line 786 of file vst.h.

+

Definition at line 788 of file vst.h.

@@ -208,7 +208,7 @@ Data Fields
-

Definition at line 788 of file vst.h.

+

Definition at line 790 of file vst.h.

@@ -224,7 +224,7 @@ Data Fields
-

Definition at line 777 of file vst.h.

+

Definition at line 779 of file vst.h.

@@ -240,7 +240,7 @@ Data Fields
-

Definition at line 780 of file vst.h.

+

Definition at line 782 of file vst.h.

@@ -256,7 +256,7 @@ Data Fields
-

Definition at line 784 of file vst.h.

+

Definition at line 786 of file vst.h.

@@ -272,7 +272,7 @@ Data Fields
-

Definition at line 776 of file vst.h.

+

Definition at line 778 of file vst.h.

@@ -288,7 +288,7 @@ Data Fields
-

Definition at line 779 of file vst.h.

+

Definition at line 781 of file vst.h.

@@ -304,7 +304,7 @@ Data Fields
-

Definition at line 781 of file vst.h.

+

Definition at line 783 of file vst.h.

@@ -320,7 +320,7 @@ Data Fields
-

Definition at line 783 of file vst.h.

+

Definition at line 785 of file vst.h.

@@ -344,7 +344,7 @@ Data Fields
Note
Is shell a reference to Windows shell menus?
Returns
VST_STATUS_TRUE if the host supports it and the current plug-in is a container plug-in.
-

Definition at line 774 of file vst.h.

+

Definition at line 776 of file vst.h.

@@ -360,7 +360,7 @@ Data Fields
-

Definition at line 785 of file vst.h.

+

Definition at line 787 of file vst.h.

@@ -385,7 +385,7 @@ Data Fields
Deprecated:
(VST 2.4) This behavior is the default in VST 2.4 and later.
Returns
VST_STATUS_TRUE if it supports it.
-

Definition at line 762 of file vst.h.

+

Definition at line 764 of file vst.h.

@@ -398,7 +398,7 @@ Data Fields diff --git a/structvst__parameter__properties__t.html b/structvst__parameter__properties__t.html index 902b8c3..1a58df2 100644 --- a/structvst__parameter__properties__t.html +++ b/structvst__parameter__properties__t.html @@ -465,7 +465,7 @@ Ignored if diff --git a/structvst__rect__t.html b/structvst__rect__t.html index 53af81e..10493e0 100644 --- a/structvst__rect__t.html +++ b/structvst__rect__t.html @@ -191,7 +191,7 @@ Data Fields diff --git a/structvst__speaker__arrangement__dynamic__t.html b/structvst__speaker__arrangement__dynamic__t.html index fa0ed78..1e2ab05 100644 --- a/structvst__speaker__arrangement__dynamic__t.html +++ b/structvst__speaker__arrangement__dynamic__t.html @@ -175,7 +175,7 @@ template<size_t T> diff --git a/structvst__speaker__arrangement__t.html b/structvst__speaker__arrangement__t.html index cf72720..ecf1098 100644 --- a/structvst__speaker__arrangement__t.html +++ b/structvst__speaker__arrangement__t.html @@ -168,7 +168,7 @@ Data Fields diff --git a/structvst__speaker__properties__t.html b/structvst__speaker__properties__t.html index 907fe43..d46c5be 100644 --- a/structvst__speaker__properties__t.html +++ b/structvst__speaker__properties__t.html @@ -261,7 +261,7 @@ Data Fields diff --git a/structvst__stream__properties__t.html b/structvst__stream__properties__t.html index 4280c87..8cf318c 100644 --- a/structvst__stream__properties__t.html +++ b/structvst__stream__properties__t.html @@ -216,7 +216,7 @@ Data Fields diff --git a/vst_8h.html b/vst_8h.html index 532d683..71c59ce 100644 --- a/vst_8h.html +++ b/vst_8h.html @@ -369,9 +369,9 @@ Enumerations   VST_HOST_OPCODE_0B = 0x0B , VST_HOST_OPCODE_0C = 0x0C , VST_HOST_OPCODE_0D = 0x0D -, VST_HOST_OPCODE_0E = 0x0E +, VST_HOST_OPCODE_IO_MODIFIED = 0x0D ,
-  VST_HOST_OPCODE_IO_MODIFIED = 0x0E +  VST_HOST_OPCODE_0E = 0x0E , VST_HOST_OPCODE_0F = 0x0F , VST_HOST_OPCODE_10 = 0x10 , VST_HOST_OPCODE_11 = 0x11 @@ -727,7 +727,7 @@ Enumerations

Default VST 2.x Block Size All VST 2.x hosts expect you to initialize your plug-in to these default values.

See also
VST_EFFECT_OPCODE_SET_BLOCK_SIZE
-

Definition at line 839 of file vst.h.

+

Definition at line 841 of file vst.h.

@@ -746,7 +746,7 @@ Enumerations

Default VST 2.x Sample Rate All VST 2.x hosts expect you to initialize your plug-in to these default values.

See also
VST_EFFECT_OPCODE_SET_SAMPLE_RATE
-

Definition at line 832 of file vst.h.

+

Definition at line 834 of file vst.h.

@@ -766,20 +766,20 @@ Enumerations

Must be present in VST 2.x plug-ins but must not be present in VST 1.x plug-ins.

Returns
A new instance of the VST 2.x effect.
-

Definition at line 2254 of file vst.h.

-
2263 { return VSTPluginMain(callback); }
-
2264
-
2271#define VST_ENTRYPOINT_MACOS \
-
2272 vst_effect_t* main_macho(vst_host_callback_t callback) { return VSTPluginMain(callback); }
-
2273
-
2280#define VST_ENTRYPOINT_MACOS_POWERPC \
-
2281 vst_effect_t* main(vst_host_callback_t callback) { return VSTPluginMain(callback); }
-
2282
-
2283#ifdef __cplusplus
-
2284}
-
2285#endif
-
2286#pragma pack(pop)
+

Definition at line 2256 of file vst.h.

+
2265 { return VSTPluginMain(callback); }
+
2266
+
2273#define VST_ENTRYPOINT_MACOS \
+
2274 vst_effect_t* main_macho(vst_host_callback_t callback) { return VSTPluginMain(callback); }
+
2275
+
2282#define VST_ENTRYPOINT_MACOS_POWERPC \
+
2283 vst_effect_t* main(vst_host_callback_t callback) { return VSTPluginMain(callback); }
+
2284
+
2285#ifdef __cplusplus
+
2286}
2287#endif
+
2288#pragma pack(pop)
+
2289#endif
@@ -799,8 +799,8 @@ Enumerations

Do not implement in VST 2.1 or later plug-ins!

Returns
A new instance of the VST 1.x effect.
-

Definition at line 2272 of file vst.h.

-
2273 { return VSTPluginMain(callback); }
+

Definition at line 2274 of file vst.h.

+
2275 { return VSTPluginMain(callback); }
@@ -820,8 +820,8 @@ Enumerations

Present in some VST 2.3 and earlier compatible plug-ins that support MacOS.

Returns
A new instance of the VST 2.x effect.
-

Definition at line 2281 of file vst.h.

-
2282 { return VSTPluginMain(callback); }
+

Definition at line 2283 of file vst.h.

+
2284 { return VSTPluginMain(callback); }
@@ -841,8 +841,8 @@ Enumerations

Do not implement in VST 2.1 or later plug-ins!

Returns
A new instance of the VST 1.x effect.
-

Definition at line 2263 of file vst.h.

-
2264 { return VSTPluginMain(callback); }
+

Definition at line 2265 of file vst.h.

+
2266 { return VSTPluginMain(callback); }
@@ -924,7 +924,7 @@ Enumerations

Magic Number identifying a VST 2.x plug-in structure.

See also
vst_effect_t.magic_numer
-

Definition at line 825 of file vst.h.

+

Definition at line 827 of file vst.h.

@@ -973,7 +973,7 @@ Enumerations -

Definition at line 2032 of file vst.h.

+

Definition at line 2034 of file vst.h.

@@ -999,7 +999,7 @@ Enumerations
Returns
Current value of the parameter.
-

Definition at line 2059 of file vst.h.

+

Definition at line 2061 of file vst.h.

@@ -1028,7 +1028,7 @@ Enumerations -

Definition at line 2085 of file vst.h.

+

Definition at line 2087 of file vst.h.

@@ -1057,7 +1057,7 @@ Enumerations -

Definition at line 2072 of file vst.h.

+

Definition at line 2074 of file vst.h.

@@ -1085,7 +1085,7 @@ Enumerations -

Definition at line 2043 of file vst.h.

+

Definition at line 2045 of file vst.h.

@@ -1111,7 +1111,7 @@ Enumerations -

Definition at line 2051 of file vst.h.

+

Definition at line 2053 of file vst.h.

@@ -1138,7 +1138,7 @@ Enumerations
Returns
?
-

Definition at line 815 of file vst.h.

+

Definition at line 817 of file vst.h.

@@ -1290,15 +1290,15 @@ Enumerations
// Do things to list only this plugin in the host.
}
// ...
-
Plug-in Effect definition.
Definition vst.h:2089
-
vst_effect_control_t control
Control Function.
Definition vst.h:2102
-
const char * shellCategory
Does the host support container plug-ins?
Definition vst.h:774
+
Plug-in Effect definition.
Definition vst.h:2091
+
vst_effect_control_t control
Control Function.
Definition vst.h:2104
+
const char * shellCategory
Does the host support container plug-ins?
Definition vst.h:776
@ VST_HOST_OPCODE_CURRENT_EFFECT_ID
Definition vst.h:568
@ VST_HOST_OPCODE_SUPPORTS
Definition vst.h:690
@ VST_STATUS_TRUE
Definition vst.h:81
-
@ VST_EFFECT_CATEGORY_CONTAINER
Definition vst.h:1004
-
@ VST_EFFECT_OPCODE_CATEGORY
Definition vst.h:1515
-
@ VST_EFFECT_OPCODE_CONTAINER_NEXT_EFFECT_ID
Definition vst.h:1859
+
@ VST_EFFECT_CATEGORY_CONTAINER
Definition vst.h:1006
+
@ VST_EFFECT_OPCODE_CATEGORY
Definition vst.h:1517
+
@ VST_EFFECT_OPCODE_CONTAINER_NEXT_EFFECT_ID
Definition vst.h:1861

Plug-in handling:

// ... in vst_effect for the container
size_t current_effect_idx;
int32_t effect_list[] = {
@@ -1335,7 +1335,7 @@ Enumerations
// ...
@ VST_HOST_OPCODE_VST_VERSION
Definition vst.h:558
-
#define VST_ENTRYPOINT
VST 2.x Entry Point for all platforms.
Definition vst.h:2254
+
#define VST_ENTRYPOINT
VST 2.x Entry Point for all platforms.
Definition vst.h:2256
VST_EFFECT_CATEGORY_CONTAINER 
See also
VST_EFFECT_CATEGORY_0A
@@ -1347,67 +1347,67 @@ Enumerations -

Definition at line 846 of file vst.h.

-
846 {
- -
848
- - -
857
- - -
866
- - -
876
- - -
885
- - -
894
- - -
903
- +

Definition at line 848 of file vst.h.

+
848 {
+ +
850
+ + +
859
+ + +
868
+ + +
878
+ + +
887
+ + +
896
+ +
905
- - -
915
- -
922 VST_EFFECT_CATEGORY_OFFLINE = 0x09, // Offline Processing VST? Seems to receive all audio data prior to playback.
-
923
- - -
1005
- - -
1017
-
1019 VST_EFFECT_CATEGORY_MAX, // Not part of specification, marks maximum category.
-
1020
-
1022 _VST_EFFECT_CATEGORY_PAD = 0xFFFFFFFFul,
-
1023};
-
@ VST_EFFECT_CATEGORY_0A
Container Plug-in This plug-in contains multiple effects in one and requires special handling on both...
Definition vst.h:1002
-
@ VST_EFFECT_CATEGORY_EFFECT
Definition vst.h:856
-
@ VST_EFFECT_CATEGORY_02
Instruments Examples: Instruments, Synths, Samplers, ...
Definition vst.h:863
-
@ VST_EFFECT_CATEGORY_METERING
Definition vst.h:875
-
@ VST_EFFECT_CATEGORY_01
Generic Effects Examples: Distortion, Pitch Shift, ...
Definition vst.h:854
-
@ VST_EFFECT_CATEGORY_08
Restoration Examples: Noise Filtering, Upsamplers, ...
Definition vst.h:912
-
@ VST_EFFECT_CATEGORY_WAVEGENERATOR
Definition vst.h:1016
-
@ VST_EFFECT_CATEGORY_09
Offline Processing Examples: Nothing Supports: Nothing.
Definition vst.h:920
-
@ VST_EFFECT_CATEGORY_SPATIAL
Definition vst.h:893
-
@ VST_EFFECT_CATEGORY_07
Definition vst.h:904
-
@ VST_EFFECT_CATEGORY_06
Delay/Echo Examples: Echo, Reverb, Room Simulation, Delay, ...
Definition vst.h:900
-
@ VST_EFFECT_CATEGORY_OFFLINE
Definition vst.h:922
-
@ VST_EFFECT_CATEGORY_0B
Waveform Generators Examples: Sine Wave Generator, ... Supports: Delay, Tail Samples.
Definition vst.h:1014
-
@ VST_EFFECT_CATEGORY_05
Spatializers Examples: Channel Panning, Expanders, ...
Definition vst.h:891
-
@ VST_EFFECT_CATEGORY_MASTERING
Definition vst.h:884
-
@ VST_EFFECT_CATEGORY_RESTORATION
Definition vst.h:914
-
@ VST_EFFECT_CATEGORY_UNCATEGORIZED
Definition vst.h:847
-
@ VST_EFFECT_CATEGORY_03
Metering Examples: Loudness Meters, Volume Analysis, ...
Definition vst.h:873
-
@ VST_EFFECT_CATEGORY_INSTRUMENT
Definition vst.h:865
-
@ VST_EFFECT_CATEGORY_DELAY_OR_ECHO
Definition vst.h:902
-
@ VST_EFFECT_CATEGORY_04
Mastering Examples: Compressors, Limiters, ...
Definition vst.h:882
+ +
907
+ + +
917
+ +
924 VST_EFFECT_CATEGORY_OFFLINE = 0x09, // Offline Processing VST? Seems to receive all audio data prior to playback.
+
925
+ + +
1007
+ + +
1019
+
1021 VST_EFFECT_CATEGORY_MAX, // Not part of specification, marks maximum category.
+
1022
+
1024 _VST_EFFECT_CATEGORY_PAD = 0xFFFFFFFFul,
+
1025};
+
@ VST_EFFECT_CATEGORY_0A
Container Plug-in This plug-in contains multiple effects in one and requires special handling on both...
Definition vst.h:1004
+
@ VST_EFFECT_CATEGORY_EFFECT
Definition vst.h:858
+
@ VST_EFFECT_CATEGORY_02
Instruments Examples: Instruments, Synths, Samplers, ...
Definition vst.h:865
+
@ VST_EFFECT_CATEGORY_METERING
Definition vst.h:877
+
@ VST_EFFECT_CATEGORY_01
Generic Effects Examples: Distortion, Pitch Shift, ...
Definition vst.h:856
+
@ VST_EFFECT_CATEGORY_08
Restoration Examples: Noise Filtering, Upsamplers, ...
Definition vst.h:914
+
@ VST_EFFECT_CATEGORY_WAVEGENERATOR
Definition vst.h:1018
+
@ VST_EFFECT_CATEGORY_09
Offline Processing Examples: Nothing Supports: Nothing.
Definition vst.h:922
+
@ VST_EFFECT_CATEGORY_SPATIAL
Definition vst.h:895
+
@ VST_EFFECT_CATEGORY_07
Definition vst.h:906
+
@ VST_EFFECT_CATEGORY_06
Delay/Echo Examples: Echo, Reverb, Room Simulation, Delay, ...
Definition vst.h:902
+
@ VST_EFFECT_CATEGORY_OFFLINE
Definition vst.h:924
+
@ VST_EFFECT_CATEGORY_0B
Waveform Generators Examples: Sine Wave Generator, ... Supports: Delay, Tail Samples.
Definition vst.h:1016
+
@ VST_EFFECT_CATEGORY_05
Spatializers Examples: Channel Panning, Expanders, ...
Definition vst.h:893
+
@ VST_EFFECT_CATEGORY_MASTERING
Definition vst.h:886
+
@ VST_EFFECT_CATEGORY_RESTORATION
Definition vst.h:916
+
@ VST_EFFECT_CATEGORY_UNCATEGORIZED
Definition vst.h:849
+
@ VST_EFFECT_CATEGORY_03
Metering Examples: Loudness Meters, Volume Analysis, ...
Definition vst.h:875
+
@ VST_EFFECT_CATEGORY_INSTRUMENT
Definition vst.h:867
+
@ VST_EFFECT_CATEGORY_DELAY_OR_ECHO
Definition vst.h:904
+
@ VST_EFFECT_CATEGORY_04
Mastering Examples: Compressors, Limiters, ...
Definition vst.h:884
@@ -1493,48 +1493,48 @@ Enumerations -

Definition at line 1027 of file vst.h.

-
1027 {
-
1047 VST_EFFECT_FLAG_1ls0 = 1 << 0,
-
1049 VST_EFFECT_FLAG_EDITOR = 1 << 0,
-
1050
-
1051 //1 << 1,
-
1052 //1 << 2, // Only seen when the plug-in responds to VST_EFFECT_OPCODE_09. Seems to be ignored by hosts entirely.
-
1053 //1 << 3, // Only seen when the plug-in behaves differently in mono mode. Seems to be ignored by hosts entirely.
-
1054
-
1061 VST_EFFECT_FLAG_1ls4 = 1 << 4,
- -
1064
-
1071 VST_EFFECT_FLAG_1ls5 = 1 << 5,
-
1073 VST_EFFECT_FLAG_CHUNKS = 1 << 5,
-
1074
-
1075 //1 << 6,
-
1076 //1 << 7,
-
1077
-
1083 VST_EFFECT_FLAG_1ls8 = 1 << 8,
- -
1086
-
1093 VST_EFFECT_FLAG_1ls9 = 1 << 9,
- -
1096
-
1097 //1 << 10,
-
1098 //1 << 11,
-
1099
-
1107 VST_EFFECT_FLAG_1ls12 = 1 << 12,
- -
1110};
-
@ VST_EFFECT_FLAG_SILENT_TAIL
Definition vst.h:1095
-
@ VST_EFFECT_FLAG_1ls9
Effect does not produce tail samples when the input is silent.
Definition vst.h:1093
-
@ VST_EFFECT_FLAG_CHUNKS
Definition vst.h:1073
-
@ VST_EFFECT_FLAG_1ls4
Effect uses process_float.
Definition vst.h:1061
-
@ VST_EFFECT_FLAG_1ls5
Effect supports saving/loading programs/banks from unformatted chunk data.
Definition vst.h:1071
-
@ VST_EFFECT_FLAG_EDITOR
Definition vst.h:1049
-
@ VST_EFFECT_FLAG_SUPPORTS_FLOAT
Definition vst.h:1063
-
@ VST_EFFECT_FLAG_1ls0
Effect provides a custom editor.
Definition vst.h:1047
-
@ VST_EFFECT_FLAG_INSTRUMENT
Definition vst.h:1085
-
@ VST_EFFECT_FLAG_1ls12
Effect supports process_double.
Definition vst.h:1107
-
@ VST_EFFECT_FLAG_1ls8
Effect is an Instrument/Generator.
Definition vst.h:1083
-
@ VST_EFFECT_FLAG_SUPPORTS_DOUBLE
Definition vst.h:1109
+

Definition at line 1029 of file vst.h.

+
1029 {
+
1049 VST_EFFECT_FLAG_1ls0 = 1 << 0,
+
1051 VST_EFFECT_FLAG_EDITOR = 1 << 0,
+
1052
+
1053 //1 << 1,
+
1054 //1 << 2, // Only seen when the plug-in responds to VST_EFFECT_OPCODE_09. Seems to be ignored by hosts entirely.
+
1055 //1 << 3, // Only seen when the plug-in behaves differently in mono mode. Seems to be ignored by hosts entirely.
+
1056
+
1063 VST_EFFECT_FLAG_1ls4 = 1 << 4,
+ +
1066
+
1073 VST_EFFECT_FLAG_1ls5 = 1 << 5,
+
1075 VST_EFFECT_FLAG_CHUNKS = 1 << 5,
+
1076
+
1077 //1 << 6,
+
1078 //1 << 7,
+
1079
+
1085 VST_EFFECT_FLAG_1ls8 = 1 << 8,
+ +
1088
+
1095 VST_EFFECT_FLAG_1ls9 = 1 << 9,
+ +
1098
+
1099 //1 << 10,
+
1100 //1 << 11,
+
1101
+
1109 VST_EFFECT_FLAG_1ls12 = 1 << 12,
+ +
1112};
+
@ VST_EFFECT_FLAG_SILENT_TAIL
Definition vst.h:1097
+
@ VST_EFFECT_FLAG_1ls9
Effect does not produce tail samples when the input is silent.
Definition vst.h:1095
+
@ VST_EFFECT_FLAG_CHUNKS
Definition vst.h:1075
+
@ VST_EFFECT_FLAG_1ls4
Effect uses process_float.
Definition vst.h:1063
+
@ VST_EFFECT_FLAG_1ls5
Effect supports saving/loading programs/banks from unformatted chunk data.
Definition vst.h:1073
+
@ VST_EFFECT_FLAG_EDITOR
Definition vst.h:1051
+
@ VST_EFFECT_FLAG_SUPPORTS_FLOAT
Definition vst.h:1065
+
@ VST_EFFECT_FLAG_1ls0
Effect provides a custom editor.
Definition vst.h:1049
+
@ VST_EFFECT_FLAG_INSTRUMENT
Definition vst.h:1087
+
@ VST_EFFECT_FLAG_1ls12
Effect supports process_double.
Definition vst.h:1109
+
@ VST_EFFECT_FLAG_1ls8
Effect is an Instrument/Generator.
Definition vst.h:1085
+
@ VST_EFFECT_FLAG_SUPPORTS_DOUBLE
Definition vst.h:1111
@@ -2224,434 +2224,434 @@ Appears to be Mac OS exclusive. -

Definition at line 1115 of file vst.h.

-
1115 {
-
1120 VST_EFFECT_OPCODE_00 = 0x00,
- - -
1125
-
1132 VST_EFFECT_OPCODE_01 = 0x01,
- -
1135
-
1140 VST_EFFECT_OPCODE_02 = 0x02,
- - -
1145
-
1150 VST_EFFECT_OPCODE_03 = 0x03,
- - -
1155
-
1160 VST_EFFECT_OPCODE_04 = 0x04,
- - -
1165
-
1170 VST_EFFECT_OPCODE_05 = 0x05,
- - -
1175
-
1182 VST_EFFECT_OPCODE_06 = 0x06,
- - - -
1189
-
1196 VST_EFFECT_OPCODE_07 = 0x07,
- - - - -
1205
-
1212 VST_EFFECT_OPCODE_08 = 0x08,
- - - -
1219
-
1224 VST_EFFECT_OPCODE_09 = 0x09,
-
1225
-
1230 VST_EFFECT_OPCODE_0A = 0x0A,
- - -
1235
-
1240 VST_EFFECT_OPCODE_0B = 0x0B,
- - -
1245
-
1254 VST_EFFECT_OPCODE_0C = 0x0C,
- - - -
1261
-
1268 VST_EFFECT_OPCODE_0D = 0x0D,
- - - -
1275
-
1281 VST_EFFECT_OPCODE_0E = 0x0E,
- - -
1286
-
1291 VST_EFFECT_OPCODE_0F = 0x0F,
- - -
1296
-
1307 VST_EFFECT_OPCODE_10 = 0x10,
- - -
1312
-
1323 VST_EFFECT_OPCODE_11 = 0x11,
- - -
1328
-
1339 VST_EFFECT_OPCODE_12 = 0x12,
- - -
1344
-
1349 VST_EFFECT_OPCODE_13 = 0x13,
- -
1352
-
1361 VST_EFFECT_OPCODE_14 = 0x14,
-
1362
-
1371 VST_EFFECT_OPCODE_15 = 0x15,
-
1372
-
1379 VST_EFFECT_OPCODE_16 = 0x16,
- -
1382
-
1393 VST_EFFECT_OPCODE_17 = 0x17,
- -
1396
-
1407 VST_EFFECT_OPCODE_18 = 0x18,
- -
1410
-
1411 //--------------------------------------------------------------------------------
-
1412 // VST 2.x starts here.
+

Definition at line 1117 of file vst.h.

+
1117 {
+
1122 VST_EFFECT_OPCODE_00 = 0x00,
+ + +
1127
+
1134 VST_EFFECT_OPCODE_01 = 0x01,
+ +
1137
+
1142 VST_EFFECT_OPCODE_02 = 0x02,
+ + +
1147
+
1152 VST_EFFECT_OPCODE_03 = 0x03,
+ + +
1157
+
1162 VST_EFFECT_OPCODE_04 = 0x04,
+ + +
1167
+
1172 VST_EFFECT_OPCODE_05 = 0x05,
+ + +
1177
+
1184 VST_EFFECT_OPCODE_06 = 0x06,
+ + + +
1191
+
1198 VST_EFFECT_OPCODE_07 = 0x07,
+ + + + +
1207
+
1214 VST_EFFECT_OPCODE_08 = 0x08,
+ + + +
1221
+
1226 VST_EFFECT_OPCODE_09 = 0x09,
+
1227
+
1232 VST_EFFECT_OPCODE_0A = 0x0A,
+ + +
1237
+
1242 VST_EFFECT_OPCODE_0B = 0x0B,
+ + +
1247
+
1256 VST_EFFECT_OPCODE_0C = 0x0C,
+ + + +
1263
+
1270 VST_EFFECT_OPCODE_0D = 0x0D,
+ + + +
1277
+
1283 VST_EFFECT_OPCODE_0E = 0x0E,
+ + +
1288
+
1293 VST_EFFECT_OPCODE_0F = 0x0F,
+ + +
1298
+
1309 VST_EFFECT_OPCODE_10 = 0x10,
+ + +
1314
+
1325 VST_EFFECT_OPCODE_11 = 0x11,
+ + +
1330
+
1341 VST_EFFECT_OPCODE_12 = 0x12,
+ + +
1346
+
1351 VST_EFFECT_OPCODE_13 = 0x13,
+ +
1354
+
1363 VST_EFFECT_OPCODE_14 = 0x14,
+
1364
+
1373 VST_EFFECT_OPCODE_15 = 0x15,
+
1374
+
1381 VST_EFFECT_OPCODE_16 = 0x16,
+ +
1384
+
1395 VST_EFFECT_OPCODE_17 = 0x17,
+ +
1398
+
1409 VST_EFFECT_OPCODE_18 = 0x18,
+ +
1412
1413 //--------------------------------------------------------------------------------
-
1414
-
1420 VST_EFFECT_OPCODE_19 = 0x19,
-
1421
-
1428 VST_EFFECT_OPCODE_1A = 0x1A,
- - - -
1435
-
1443 VST_EFFECT_OPCODE_1B = 0x1B,
- - -
1448
-
1454 VST_EFFECT_OPCODE_1C = 0x1C,
-
1455
-
1461 VST_EFFECT_OPCODE_1D = 0x1D,
-
1462
-
1468 VST_EFFECT_OPCODE_1E = 0x1E,
-
1469
-
1475 VST_EFFECT_OPCODE_1F = 0x1F,
-
1476
-
1482 VST_EFFECT_OPCODE_20 = 0x20,
-
1483
-
1491 VST_EFFECT_OPCODE_21 = 0x21,
- -
1494
-
1502 VST_EFFECT_OPCODE_22 = 0x22,
- -
1505
-
1511 VST_EFFECT_OPCODE_23 = 0x23,
- - -
1516
-
1522 VST_EFFECT_OPCODE_24 = 0x24,
-
1523
-
1529 VST_EFFECT_OPCODE_25 = 0x25,
-
1530
-
1536 VST_EFFECT_OPCODE_26 = 0x26,
-
1537
-
1543 VST_EFFECT_OPCODE_27 = 0x27,
-
1544
-
1550 VST_EFFECT_OPCODE_28 = 0x28,
-
1551
-
1557 VST_EFFECT_OPCODE_29 = 0x29,
-
1558
-
1571 VST_EFFECT_OPCODE_2A = 0x2A,
- -
1574
-
1579 VST_EFFECT_OPCODE_2B = 0x2B,
-
1580
-
1588 VST_EFFECT_OPCODE_2C = 0x2C,
- -
1591
-
1599 VST_EFFECT_OPCODE_2D = 0x2D,
- - - -
1606
-
1615 VST_EFFECT_OPCODE_2E = 0x2E,
- -
1618
-
1624 VST_EFFECT_OPCODE_2F = 0x2F,
- - -
1629
-
1635 VST_EFFECT_OPCODE_30 = 0x30,
- - -
1640
-
1646 VST_EFFECT_OPCODE_31 = 0x31,
- - -
1651
-
1659 VST_EFFECT_OPCODE_32 = 0x32,
- -
1662
-
1670 VST_EFFECT_OPCODE_33 = 0x33,
- -
1673
-
1680 VST_EFFECT_OPCODE_34 = 0x34,
- - -
1685
-
1693 VST_EFFECT_OPCODE_35 = 0x35,
- -
1696
-
1703 VST_EFFECT_OPCODE_36 = 0x36,
-
1704
-
1711 VST_EFFECT_OPCODE_37 = 0x37,
-
1712
-
1720 VST_EFFECT_OPCODE_38 = 0x38,
- - -
1725
-
1731 VST_EFFECT_OPCODE_39 = 0x39,
-
1732
-
1739 VST_EFFECT_OPCODE_3A = 0x3A,
- -
1742
-
1743 //--------------------------------------------------------------------------------
-
1744 // VST 2.1
+
1414 // VST 2.x starts here.
+
1415 //--------------------------------------------------------------------------------
+
1416
+
1422 VST_EFFECT_OPCODE_19 = 0x19,
+
1423
+
1430 VST_EFFECT_OPCODE_1A = 0x1A,
+ + + +
1437
+
1445 VST_EFFECT_OPCODE_1B = 0x1B,
+ + +
1450
+
1456 VST_EFFECT_OPCODE_1C = 0x1C,
+
1457
+
1463 VST_EFFECT_OPCODE_1D = 0x1D,
+
1464
+
1470 VST_EFFECT_OPCODE_1E = 0x1E,
+
1471
+
1477 VST_EFFECT_OPCODE_1F = 0x1F,
+
1478
+
1484 VST_EFFECT_OPCODE_20 = 0x20,
+
1485
+
1493 VST_EFFECT_OPCODE_21 = 0x21,
+ +
1496
+
1504 VST_EFFECT_OPCODE_22 = 0x22,
+ +
1507
+
1513 VST_EFFECT_OPCODE_23 = 0x23,
+ + +
1518
+
1524 VST_EFFECT_OPCODE_24 = 0x24,
+
1525
+
1531 VST_EFFECT_OPCODE_25 = 0x25,
+
1532
+
1538 VST_EFFECT_OPCODE_26 = 0x26,
+
1539
+
1545 VST_EFFECT_OPCODE_27 = 0x27,
+
1546
+
1552 VST_EFFECT_OPCODE_28 = 0x28,
+
1553
+
1559 VST_EFFECT_OPCODE_29 = 0x29,
+
1560
+
1573 VST_EFFECT_OPCODE_2A = 0x2A,
+ +
1576
+
1581 VST_EFFECT_OPCODE_2B = 0x2B,
+
1582
+
1590 VST_EFFECT_OPCODE_2C = 0x2C,
+ +
1593
+
1601 VST_EFFECT_OPCODE_2D = 0x2D,
+ + + +
1608
+
1617 VST_EFFECT_OPCODE_2E = 0x2E,
+ +
1620
+
1626 VST_EFFECT_OPCODE_2F = 0x2F,
+ + +
1631
+
1637 VST_EFFECT_OPCODE_30 = 0x30,
+ + +
1642
+
1648 VST_EFFECT_OPCODE_31 = 0x31,
+ + +
1653
+
1661 VST_EFFECT_OPCODE_32 = 0x32,
+ +
1664
+
1672 VST_EFFECT_OPCODE_33 = 0x33,
+ +
1675
+
1682 VST_EFFECT_OPCODE_34 = 0x34,
+ + +
1687
+
1695 VST_EFFECT_OPCODE_35 = 0x35,
+ +
1698
+
1705 VST_EFFECT_OPCODE_36 = 0x36,
+
1706
+
1713 VST_EFFECT_OPCODE_37 = 0x37,
+
1714
+
1722 VST_EFFECT_OPCODE_38 = 0x38,
+ + +
1727
+
1733 VST_EFFECT_OPCODE_39 = 0x39,
+
1734
+
1741 VST_EFFECT_OPCODE_3A = 0x3A,
+ +
1744
1745 //--------------------------------------------------------------------------------
-
1746
-
1755 VST_EFFECT_OPCODE_3B = 0x3B,
- -
1758
-
1767 VST_EFFECT_OPCODE_3C = 0x3C,
- -
1770
-
1776 VST_EFFECT_OPCODE_3D = 0x3D,
-
1777
-
1783 VST_EFFECT_OPCODE_3E = 0x3E,
-
1784
-
1790 VST_EFFECT_OPCODE_3F = 0x3F,
-
1791
-
1797 VST_EFFECT_OPCODE_40 = 0x40,
-
1798
-
1804 VST_EFFECT_OPCODE_41 = 0x41,
-
1805
-
1811 VST_EFFECT_OPCODE_42 = 0x42,
-
1812
-
1819 VST_EFFECT_OPCODE_43 = 0x43,
- -
1822
-
1829 VST_EFFECT_OPCODE_44 = 0x44,
- -
1832
-
1833 //--------------------------------------------------------------------------------
-
1834 // VST 2.3
+
1746 // VST 2.1
+
1747 //--------------------------------------------------------------------------------
+
1748
+
1757 VST_EFFECT_OPCODE_3B = 0x3B,
+ +
1760
+
1769 VST_EFFECT_OPCODE_3C = 0x3C,
+ +
1772
+
1778 VST_EFFECT_OPCODE_3D = 0x3D,
+
1779
+
1785 VST_EFFECT_OPCODE_3E = 0x3E,
+
1786
+
1792 VST_EFFECT_OPCODE_3F = 0x3F,
+
1793
+
1799 VST_EFFECT_OPCODE_40 = 0x40,
+
1800
+
1806 VST_EFFECT_OPCODE_41 = 0x41,
+
1807
+
1813 VST_EFFECT_OPCODE_42 = 0x42,
+
1814
+
1821 VST_EFFECT_OPCODE_43 = 0x43,
+ +
1824
+
1831 VST_EFFECT_OPCODE_44 = 0x44,
+ +
1834
1835 //--------------------------------------------------------------------------------
-
1836
-
1844 VST_EFFECT_OPCODE_45 = 0x45,
- -
1847
-
1857 VST_EFFECT_OPCODE_46 = 0x46,
- -
1860
-
1866 VST_EFFECT_OPCODE_47 = 0x47,
- -
1869
-
1875 VST_EFFECT_OPCODE_48 = 0x48,
- -
1878
-
1884 VST_EFFECT_OPCODE_49 = 0x49,
-
1885
-
1893 VST_EFFECT_OPCODE_4A = 0x4A,
-
1894
-
1903 VST_EFFECT_OPCODE_4B = 0x4B,
- -
1906
-
1915 VST_EFFECT_OPCODE_4C = 0x4C,
- -
1918
-
1919 //--------------------------------------------------------------------------------
-
1920 // VST 2.4
+
1836 // VST 2.3
+
1837 //--------------------------------------------------------------------------------
+
1838
+
1846 VST_EFFECT_OPCODE_45 = 0x45,
+ +
1849
+
1859 VST_EFFECT_OPCODE_46 = 0x46,
+ +
1862
+
1868 VST_EFFECT_OPCODE_47 = 0x47,
+ +
1871
+
1877 VST_EFFECT_OPCODE_48 = 0x48,
+ +
1880
+
1886 VST_EFFECT_OPCODE_49 = 0x49,
+
1887
+
1895 VST_EFFECT_OPCODE_4A = 0x4A,
+
1896
+
1905 VST_EFFECT_OPCODE_4B = 0x4B,
+ +
1908
+
1917 VST_EFFECT_OPCODE_4C = 0x4C,
+ +
1920
1921 //--------------------------------------------------------------------------------
-
1922
-
1928 VST_EFFECT_OPCODE_4D = 0x4D,
-
1929
-
1935 VST_EFFECT_OPCODE_4E = 0x4E,
-
1936
-
1942 VST_EFFECT_OPCODE_4F = 0x4F,
-
1943
-
1945 VST_EFFECT_OPCODE_MAX,
-
1946
-
1948 _VST_EFFECT_OPCODE_PAD = 0xFFFFFFFFul,
-
1949};
-
@ VST_EFFECT_OPCODE_WINDOW_MOUSE
Definition vst.h:1325
-
@ VST_EFFECT_OPCODE_2A
Host wants to change the speaker arrangement.
Definition vst.h:1571
-
@ VST_EFFECT_OPCODE_GETVENDORVERSION
Definition vst.h:1648
-
@ VST_EFFECT_OPCODE_20
Input disconnected.
Definition vst.h:1482
-
@ VST_EFFECT_OPCODE_14
Window Focus Event?
Definition vst.h:1361
-
@ VST_EFFECT_OPCODE_PARAM_VALUE_TO_STRING
Definition vst.h:1204
-
@ VST_EFFECT_OPCODE_PARAM_GETLABEL
Definition vst.h:1184
-
@ VST_EFFECT_OPCODE_4E
Definition vst.h:1935
-
@ VST_EFFECT_OPCODE_43
Host is starting to set up a program.
Definition vst.h:1819
-
@ VST_EFFECT_OPCODE_3E
Midi related.
Definition vst.h:1783
-
@ VST_EFFECT_OPCODE_32
User-defined Op-Code for VST extensions.
Definition vst.h:1659
-
@ VST_EFFECT_OPCODE_03
Get currently selected program number.
Definition vst.h:1150
-
@ VST_EFFECT_OPCODE_SET_CHUNK_DATA
Definition vst.h:1409
-
@ VST_EFFECT_OPCODE_21
Retrieve properties for the given input index.
Definition vst.h:1491
-
@ VST_EFFECT_OPCODE_PRODUCT_NAME
Definition vst.h:1639
-
@ VST_EFFECT_OPCODE_4B
Host wants to know if we can load the provided bank data.
Definition vst.h:1903
-
@ VST_EFFECT_OPCODE_PARAM_NAME
Definition vst.h:1218
-
@ VST_EFFECT_OPCODE_1C
Definition vst.h:1454
-
@ VST_EFFECT_OPCODE_41
Midi related.
Definition vst.h:1804
-
@ VST_EFFECT_OPCODE_SET_SAMPLE_RATE
Definition vst.h:1234
-
@ VST_EFFECT_OPCODE_CREATE
Definition vst.h:1122
-
@ VST_EFFECT_OPCODE_EDITOR_GET_RECT
Definition vst.h:1274
-
@ VST_EFFECT_OPCODE_SET_SPEAKER_ARRANGEMENT
Definition vst.h:1573
-
@ VST_EFFECT_OPCODE_PARAM_GETVALUE
Definition vst.h:1198
-
@ VST_EFFECT_OPCODE_PROGRAM_SET_NAME
Definition vst.h:1164
-
@ VST_EFFECT_OPCODE_06
Get the value? label for the parameter.
Definition vst.h:1182
-
@ VST_EFFECT_OPCODE_0A
Set the new sample rate for the plugin to use.
Definition vst.h:1230
-
@ VST_EFFECT_OPCODE_10
Window Draw Event?
Definition vst.h:1307
-
@ VST_EFFECT_OPCODE_2F
Retrieve the vendor name into the ptr buffer.
Definition vst.h:1624
-
@ VST_EFFECT_OPCODE_PROGRAM_GET
Definition vst.h:1154
-
@ VST_EFFECT_OPCODE_28
Seen in plug-ins with VST_EFFECT_CATEGORY_OFFLINE.
Definition vst.h:1550
-
@ VST_EFFECT_OPCODE_4D
Definition vst.h:1928
-
@ VST_EFFECT_OPCODE_01
Destroy the effect (if there is any) and free its memory.
Definition vst.h:1132
-
@ VST_EFFECT_OPCODE_3C
Editor Virtual Key Up Event.
Definition vst.h:1767
-
@ VST_EFFECT_OPCODE_1B
Set Parameter value from string representation.
Definition vst.h:1443
-
@ VST_EFFECT_OPCODE_SET_BLOCK_SIZE
Definition vst.h:1244
-
@ VST_EFFECT_OPCODE_IDLE
Definition vst.h:1695
-
@ VST_EFFECT_OPCODE_33
Test for support of a specific named feature.
Definition vst.h:1670
-
@ VST_EFFECT_OPCODE_04
Set the name of the currently selected program.
Definition vst.h:1160
-
@ VST_EFFECT_OPCODE_09
Definition vst.h:1224
-
@ VST_EFFECT_OPCODE_PARAM_GET_NAME
Definition vst.h:1216
-
@ VST_EFFECT_OPCODE_BANK_LOAD
Definition vst.h:1905
-
@ VST_EFFECT_OPCODE_EDITOR_MOUSE
Definition vst.h:1327
-
@ VST_EFFECT_OPCODE_WINDOW_CREATE
Definition vst.h:1283
-
@ VST_EFFECT_OPCODE_0B
Sets the block size, which is the maximum number of samples passed into the effect via process calls.
Definition vst.h:1240
-
@ VST_EFFECT_OPCODE_PARAM_GET_VALUE
Definition vst.h:1200
-
@ VST_EFFECT_OPCODE_39
Definition vst.h:1731
-
@ VST_EFFECT_OPCODE_05
Get the name of the currently selected program.
Definition vst.h:1170
-
@ VST_EFFECT_OPCODE_1A
Can the parameter be automated?
Definition vst.h:1428
-
@ VST_EFFECT_OPCODE_19
Appears to be related to midi and audio events.
Definition vst.h:1420
-
@ VST_EFFECT_OPCODE_PROGRAM_SET_END
Definition vst.h:1831
-
@ VST_EFFECT_OPCODE_GET_PROGRAM
Definition vst.h:1152
-
@ VST_EFFECT_OPCODE_12
Window Keyboard Event?
Definition vst.h:1339
-
@ VST_EFFECT_OPCODE_42
Midi related.
Definition vst.h:1811
-
@ VST_EFFECT_OPCODE_EFFECT_CATEGORY
Definition vst.h:1513
-
@ VST_EFFECT_OPCODE_PARAM_IS_AUTOMATABLE
Definition vst.h:1432
-
@ VST_EFFECT_OPCODE_WINDOW_DRAW
Definition vst.h:1309
-
@ VST_EFFECT_OPCODE_DESTROY
Definition vst.h:1134
-
@ VST_EFFECT_OPCODE_SETBLOCKSIZE
Definition vst.h:1242
-
@ VST_EFFECT_OPCODE_02
Set which program number is currently select.
Definition vst.h:1140
-
@ VST_EFFECT_OPCODE_48
End processing of audio.
Definition vst.h:1875
-
@ VST_EFFECT_OPCODE_GETNAME2
Definition vst.h:1637
-
@ VST_EFFECT_OPCODE_CUSTOM
Definition vst.h:1661
-
@ VST_EFFECT_OPCODE_2E
Translate an error code to a string.
Definition vst.h:1615
-
@ VST_EFFECT_OPCODE_3D
Definition vst.h:1776
-
@ VST_EFFECT_OPCODE_EDITOR_KEEP_ALIVE
Definition vst.h:1351
-
@ VST_EFFECT_OPCODE_PARAM_PROPERTIES
Definition vst.h:1724
-
@ VST_EFFECT_OPCODE_TAIL_SAMPLES
Definition vst.h:1684
-
@ VST_EFFECT_OPCODE_30
Retrieve the product name into the ptr buffer.
Definition vst.h:1635
-
@ VST_EFFECT_OPCODE_PARAM_VALUE
Definition vst.h:1202
-
@ VST_EFFECT_OPCODE_35
Notify effect that it is idle?
Definition vst.h:1693
-
@ VST_EFFECT_OPCODE_PROGRAM_GET_NAME
Definition vst.h:1174
-
@ VST_EFFECT_OPCODE_0D
Retrieve the client rect size of the plugins window.
Definition vst.h:1268
-
@ VST_EFFECT_OPCODE_1E
Definition vst.h:1468
-
@ VST_EFFECT_OPCODE_PROGRAM_LOAD
Definition vst.h:1917
-
@ VST_EFFECT_OPCODE_23
Retrieve category of this effect.
Definition vst.h:1511
-
@ VST_EFFECT_OPCODE_VST_VERSION
Definition vst.h:1741
-
@ VST_EFFECT_OPCODE_36
Definition vst.h:1703
-
@ VST_EFFECT_OPCODE_EDITOR_OPEN
Definition vst.h:1285
-
@ VST_EFFECT_OPCODE_EDITOR_VKEY_DOWN
Definition vst.h:1757
-
@ VST_EFFECT_OPCODE_00
Create/Initialize the effect (if it has not been created already).
Definition vst.h:1120
-
@ VST_EFFECT_OPCODE_2B
Definition vst.h:1579
-
@ VST_EFFECT_OPCODE_SUSPEND_RESUME
Definition vst.h:1258
-
@ VST_EFFECT_OPCODE_24
Definition vst.h:1522
-
@ VST_EFFECT_OPCODE_PARAM_LABEL
Definition vst.h:1188
-
@ VST_EFFECT_OPCODE_40
Midi related.
Definition vst.h:1797
-
@ VST_EFFECT_OPCODE_22
Retrieve properties for the given output index.
Definition vst.h:1502
-
@ VST_EFFECT_OPCODE_4F
Definition vst.h:1942
-
@ VST_EFFECT_OPCODE_47
Begin processing of audio.
Definition vst.h:1866
-
@ VST_EFFECT_OPCODE_38
Parameter Properties.
Definition vst.h:1720
-
@ VST_EFFECT_OPCODE_GET_SPEAKER_ARRANGEMENT
Definition vst.h:1846
-
@ VST_EFFECT_OPCODE_0E
Create the window for the plugin.
Definition vst.h:1281
-
@ VST_EFFECT_OPCODE_3B
Editor Virtual Key Down Input.
Definition vst.h:1755
-
@ VST_EFFECT_OPCODE_BYPASS
Definition vst.h:1590
-
@ VST_EFFECT_OPCODE_EDITOR_KEYBOARD
Definition vst.h:1343
-
@ VST_EFFECT_OPCODE_INPUT_GET_PROPERTIES
Definition vst.h:1493
-
@ VST_EFFECT_OPCODE_VENDOR_NAME
Definition vst.h:1628
-
@ VST_EFFECT_OPCODE_PARAM_ISAUTOMATABLE
Definition vst.h:1430
-
@ VST_EFFECT_OPCODE_WINDOW_KEYBOARD
Definition vst.h:1341
-
@ VST_EFFECT_OPCODE_GET_PROGRAM_NAME
Definition vst.h:1172
-
@ VST_EFFECT_OPCODE_17
Get Chunk Data.
Definition vst.h:1393
-
@ VST_EFFECT_OPCODE_31
Retrieve the vendor version in return value.
Definition vst.h:1646
-
@ VST_EFFECT_OPCODE_2D
Retrieve the effect name into the ptr buffer.
Definition vst.h:1599
-
@ VST_EFFECT_OPCODE_07
Get the string representing the value for the parameter.
Definition vst.h:1196
-
@ VST_EFFECT_OPCODE_PROCESS_END
Definition vst.h:1877
-
@ VST_EFFECT_OPCODE_SET_PROGRAM
Definition vst.h:1142
-
@ VST_EFFECT_OPCODE_27
Seen in plug-ins with VST_EFFECT_CATEGORY_OFFLINE.
Definition vst.h:1543
-
@ VST_EFFECT_OPCODE_EDITOR_DRAW
Definition vst.h:1311
-
@ VST_EFFECT_OPCODE_15
Window Unfocus Event?
Definition vst.h:1371
-
@ VST_EFFECT_OPCODE_49
Definition vst.h:1884
-
@ VST_EFFECT_OPCODE_NAME
Definition vst.h:1605
-
@ VST_EFFECT_OPCODE_EDITOR_CLOSE
Definition vst.h:1295
-
@ VST_EFFECT_OPCODE_29
Seen in plug-ins with VST_EFFECT_CATEGORY_OFFLINE.
Definition vst.h:1557
-
@ VST_EFFECT_OPCODE_3A
Retrieve the VST Version supported.
Definition vst.h:1739
-
@ VST_EFFECT_OPCODE_11
Window Mouse Event?
Definition vst.h:1323
-
@ VST_EFFECT_OPCODE_PARAM_GET_LABEL
Definition vst.h:1186
-
@ VST_EFFECT_OPCODE_SETSAMPLERATE
Definition vst.h:1232
-
@ VST_EFFECT_OPCODE_0F
Destroy the plugins window.
Definition vst.h:1291
-
@ VST_EFFECT_OPCODE_GET_CHUNK_DATA
Definition vst.h:1395
-
@ VST_EFFECT_OPCODE_INITIALIZE
Definition vst.h:1124
-
@ VST_EFFECT_OPCODE_GETTAILSAMPLES
Definition vst.h:1682
-
@ VST_EFFECT_OPCODE_18
Set Chunk Data.
Definition vst.h:1407
-
@ VST_EFFECT_OPCODE_EFFECT_NAME
Definition vst.h:1603
-
@ VST_EFFECT_OPCODE_GET_PARAMETER_PROPERTIES
Definition vst.h:1722
-
@ VST_EFFECT_OPCODE_PARAM_AUTOMATABLE
Definition vst.h:1434
-
@ VST_EFFECT_OPCODE_PARAM_GETNAME
Definition vst.h:1214
-
@ VST_EFFECT_OPCODE_4A
Definition vst.h:1893
-
@ VST_EFFECT_OPCODE_08
Get the name for the parameter.
Definition vst.h:1212
-
@ VST_EFFECT_OPCODE_13
Window/Editor Idle/Keep-Alive Callback?
Definition vst.h:1349
-
@ VST_EFFECT_OPCODE_45
Host wants to know the current speaker arrangement.
Definition vst.h:1844
-
@ VST_EFFECT_OPCODE_WINDOW_GETRECT
Definition vst.h:1270
-
@ VST_EFFECT_OPCODE_OUTPUT_GET_PROPERTIES
Definition vst.h:1504
-
@ VST_EFFECT_OPCODE_PARAM_VALUE_FROM_STRING
Definition vst.h:1447
-
@ VST_EFFECT_OPCODE_GETVENDOR
Definition vst.h:1626
-
@ VST_EFFECT_OPCODE_PROCESS_BEGIN
Definition vst.h:1868
-
@ VST_EFFECT_OPCODE_1D
Definition vst.h:1461
-
@ VST_EFFECT_OPCODE_PAUSE_UNPAUSE
Definition vst.h:1256
-
@ VST_EFFECT_OPCODE_4C
Host wants to know if we can load the provided program data.
Definition vst.h:1915
-
@ VST_EFFECT_OPCODE_26
Seen in plug-ins with VST_EFFECT_CATEGORY_OFFLINE.
Definition vst.h:1536
-
@ VST_EFFECT_OPCODE_GETNAME
Definition vst.h:1601
-
@ VST_EFFECT_OPCODE_VENDOR_VERSION
Definition vst.h:1650
-
@ VST_EFFECT_OPCODE_46
Get the next effect contained in this effect.
Definition vst.h:1857
-
@ VST_EFFECT_OPCODE_SET_PROGRAM_NAME
Definition vst.h:1162
-
@ VST_EFFECT_OPCODE_FOURCC
Definition vst.h:1381
-
@ VST_EFFECT_OPCODE_37
Definition vst.h:1711
-
@ VST_EFFECT_OPCODE_44
Host is done setting up a program.
Definition vst.h:1829
-
@ VST_EFFECT_OPCODE_3F
Midi related.
Definition vst.h:1790
-
@ VST_EFFECT_OPCODE_WINDOW_DESTROY
Definition vst.h:1293
-
@ VST_EFFECT_OPCODE_EDITOR_VKEY_UP
Definition vst.h:1769
-
@ VST_EFFECT_OPCODE_1F
Input connected.
Definition vst.h:1475
-
@ VST_EFFECT_OPCODE_34
Number of samples that are at the tail at the end of playback.
Definition vst.h:1680
-
@ VST_EFFECT_OPCODE_2C
Enable/Disable bypassing the effect.
Definition vst.h:1588
-
@ VST_EFFECT_OPCODE_PROGRAM_SET
Definition vst.h:1144
-
@ VST_EFFECT_OPCODE_SUPPORTS
Definition vst.h:1672
-
@ VST_EFFECT_OPCODE_PROGRAM_SET_BEGIN
Definition vst.h:1821
-
@ VST_EFFECT_OPCODE_16
Definition vst.h:1379
-
@ VST_EFFECT_OPCODE_TRANSLATE_ERROR
Definition vst.h:1617
-
@ VST_EFFECT_OPCODE_EDITOR_RECT
Definition vst.h:1272
-
@ VST_EFFECT_OPCODE_25
Definition vst.h:1529
-
@ VST_EFFECT_OPCODE_PARAM_SET_VALUE
Definition vst.h:1445
-
@ VST_EFFECT_OPCODE_SUSPEND
Definition vst.h:1260
-
@ VST_EFFECT_OPCODE_0C
Effect processing should be suspended/paused or resumed/unpaused.
Definition vst.h:1254
+
1922 // VST 2.4
+
1923 //--------------------------------------------------------------------------------
+
1924
+
1930 VST_EFFECT_OPCODE_4D = 0x4D,
+
1931
+
1937 VST_EFFECT_OPCODE_4E = 0x4E,
+
1938
+
1944 VST_EFFECT_OPCODE_4F = 0x4F,
+
1945
+
1947 VST_EFFECT_OPCODE_MAX,
+
1948
+
1950 _VST_EFFECT_OPCODE_PAD = 0xFFFFFFFFul,
+
1951};
+
@ VST_EFFECT_OPCODE_WINDOW_MOUSE
Definition vst.h:1327
+
@ VST_EFFECT_OPCODE_2A
Host wants to change the speaker arrangement.
Definition vst.h:1573
+
@ VST_EFFECT_OPCODE_GETVENDORVERSION
Definition vst.h:1650
+
@ VST_EFFECT_OPCODE_20
Input disconnected.
Definition vst.h:1484
+
@ VST_EFFECT_OPCODE_14
Window Focus Event?
Definition vst.h:1363
+
@ VST_EFFECT_OPCODE_PARAM_VALUE_TO_STRING
Definition vst.h:1206
+
@ VST_EFFECT_OPCODE_PARAM_GETLABEL
Definition vst.h:1186
+
@ VST_EFFECT_OPCODE_4E
Definition vst.h:1937
+
@ VST_EFFECT_OPCODE_43
Host is starting to set up a program.
Definition vst.h:1821
+
@ VST_EFFECT_OPCODE_3E
Midi related.
Definition vst.h:1785
+
@ VST_EFFECT_OPCODE_32
User-defined Op-Code for VST extensions.
Definition vst.h:1661
+
@ VST_EFFECT_OPCODE_03
Get currently selected program number.
Definition vst.h:1152
+
@ VST_EFFECT_OPCODE_SET_CHUNK_DATA
Definition vst.h:1411
+
@ VST_EFFECT_OPCODE_21
Retrieve properties for the given input index.
Definition vst.h:1493
+
@ VST_EFFECT_OPCODE_PRODUCT_NAME
Definition vst.h:1641
+
@ VST_EFFECT_OPCODE_4B
Host wants to know if we can load the provided bank data.
Definition vst.h:1905
+
@ VST_EFFECT_OPCODE_PARAM_NAME
Definition vst.h:1220
+
@ VST_EFFECT_OPCODE_1C
Definition vst.h:1456
+
@ VST_EFFECT_OPCODE_41
Midi related.
Definition vst.h:1806
+
@ VST_EFFECT_OPCODE_SET_SAMPLE_RATE
Definition vst.h:1236
+
@ VST_EFFECT_OPCODE_CREATE
Definition vst.h:1124
+
@ VST_EFFECT_OPCODE_EDITOR_GET_RECT
Definition vst.h:1276
+
@ VST_EFFECT_OPCODE_SET_SPEAKER_ARRANGEMENT
Definition vst.h:1575
+
@ VST_EFFECT_OPCODE_PARAM_GETVALUE
Definition vst.h:1200
+
@ VST_EFFECT_OPCODE_PROGRAM_SET_NAME
Definition vst.h:1166
+
@ VST_EFFECT_OPCODE_06
Get the value? label for the parameter.
Definition vst.h:1184
+
@ VST_EFFECT_OPCODE_0A
Set the new sample rate for the plugin to use.
Definition vst.h:1232
+
@ VST_EFFECT_OPCODE_10
Window Draw Event?
Definition vst.h:1309
+
@ VST_EFFECT_OPCODE_2F
Retrieve the vendor name into the ptr buffer.
Definition vst.h:1626
+
@ VST_EFFECT_OPCODE_PROGRAM_GET
Definition vst.h:1156
+
@ VST_EFFECT_OPCODE_28
Seen in plug-ins with VST_EFFECT_CATEGORY_OFFLINE.
Definition vst.h:1552
+
@ VST_EFFECT_OPCODE_4D
Definition vst.h:1930
+
@ VST_EFFECT_OPCODE_01
Destroy the effect (if there is any) and free its memory.
Definition vst.h:1134
+
@ VST_EFFECT_OPCODE_3C
Editor Virtual Key Up Event.
Definition vst.h:1769
+
@ VST_EFFECT_OPCODE_1B
Set Parameter value from string representation.
Definition vst.h:1445
+
@ VST_EFFECT_OPCODE_SET_BLOCK_SIZE
Definition vst.h:1246
+
@ VST_EFFECT_OPCODE_IDLE
Definition vst.h:1697
+
@ VST_EFFECT_OPCODE_33
Test for support of a specific named feature.
Definition vst.h:1672
+
@ VST_EFFECT_OPCODE_04
Set the name of the currently selected program.
Definition vst.h:1162
+
@ VST_EFFECT_OPCODE_09
Definition vst.h:1226
+
@ VST_EFFECT_OPCODE_PARAM_GET_NAME
Definition vst.h:1218
+
@ VST_EFFECT_OPCODE_BANK_LOAD
Definition vst.h:1907
+
@ VST_EFFECT_OPCODE_EDITOR_MOUSE
Definition vst.h:1329
+
@ VST_EFFECT_OPCODE_WINDOW_CREATE
Definition vst.h:1285
+
@ VST_EFFECT_OPCODE_0B
Sets the block size, which is the maximum number of samples passed into the effect via process calls.
Definition vst.h:1242
+
@ VST_EFFECT_OPCODE_PARAM_GET_VALUE
Definition vst.h:1202
+
@ VST_EFFECT_OPCODE_39
Definition vst.h:1733
+
@ VST_EFFECT_OPCODE_05
Get the name of the currently selected program.
Definition vst.h:1172
+
@ VST_EFFECT_OPCODE_1A
Can the parameter be automated?
Definition vst.h:1430
+
@ VST_EFFECT_OPCODE_19
Appears to be related to midi and audio events.
Definition vst.h:1422
+
@ VST_EFFECT_OPCODE_PROGRAM_SET_END
Definition vst.h:1833
+
@ VST_EFFECT_OPCODE_GET_PROGRAM
Definition vst.h:1154
+
@ VST_EFFECT_OPCODE_12
Window Keyboard Event?
Definition vst.h:1341
+
@ VST_EFFECT_OPCODE_42
Midi related.
Definition vst.h:1813
+
@ VST_EFFECT_OPCODE_EFFECT_CATEGORY
Definition vst.h:1515
+
@ VST_EFFECT_OPCODE_PARAM_IS_AUTOMATABLE
Definition vst.h:1434
+
@ VST_EFFECT_OPCODE_WINDOW_DRAW
Definition vst.h:1311
+
@ VST_EFFECT_OPCODE_DESTROY
Definition vst.h:1136
+
@ VST_EFFECT_OPCODE_SETBLOCKSIZE
Definition vst.h:1244
+
@ VST_EFFECT_OPCODE_02
Set which program number is currently select.
Definition vst.h:1142
+
@ VST_EFFECT_OPCODE_48
End processing of audio.
Definition vst.h:1877
+
@ VST_EFFECT_OPCODE_GETNAME2
Definition vst.h:1639
+
@ VST_EFFECT_OPCODE_CUSTOM
Definition vst.h:1663
+
@ VST_EFFECT_OPCODE_2E
Translate an error code to a string.
Definition vst.h:1617
+
@ VST_EFFECT_OPCODE_3D
Definition vst.h:1778
+
@ VST_EFFECT_OPCODE_EDITOR_KEEP_ALIVE
Definition vst.h:1353
+
@ VST_EFFECT_OPCODE_PARAM_PROPERTIES
Definition vst.h:1726
+
@ VST_EFFECT_OPCODE_TAIL_SAMPLES
Definition vst.h:1686
+
@ VST_EFFECT_OPCODE_30
Retrieve the product name into the ptr buffer.
Definition vst.h:1637
+
@ VST_EFFECT_OPCODE_PARAM_VALUE
Definition vst.h:1204
+
@ VST_EFFECT_OPCODE_35
Notify effect that it is idle?
Definition vst.h:1695
+
@ VST_EFFECT_OPCODE_PROGRAM_GET_NAME
Definition vst.h:1176
+
@ VST_EFFECT_OPCODE_0D
Retrieve the client rect size of the plugins window.
Definition vst.h:1270
+
@ VST_EFFECT_OPCODE_1E
Definition vst.h:1470
+
@ VST_EFFECT_OPCODE_PROGRAM_LOAD
Definition vst.h:1919
+
@ VST_EFFECT_OPCODE_23
Retrieve category of this effect.
Definition vst.h:1513
+
@ VST_EFFECT_OPCODE_VST_VERSION
Definition vst.h:1743
+
@ VST_EFFECT_OPCODE_36
Definition vst.h:1705
+
@ VST_EFFECT_OPCODE_EDITOR_OPEN
Definition vst.h:1287
+
@ VST_EFFECT_OPCODE_EDITOR_VKEY_DOWN
Definition vst.h:1759
+
@ VST_EFFECT_OPCODE_00
Create/Initialize the effect (if it has not been created already).
Definition vst.h:1122
+
@ VST_EFFECT_OPCODE_2B
Definition vst.h:1581
+
@ VST_EFFECT_OPCODE_SUSPEND_RESUME
Definition vst.h:1260
+
@ VST_EFFECT_OPCODE_24
Definition vst.h:1524
+
@ VST_EFFECT_OPCODE_PARAM_LABEL
Definition vst.h:1190
+
@ VST_EFFECT_OPCODE_40
Midi related.
Definition vst.h:1799
+
@ VST_EFFECT_OPCODE_22
Retrieve properties for the given output index.
Definition vst.h:1504
+
@ VST_EFFECT_OPCODE_4F
Definition vst.h:1944
+
@ VST_EFFECT_OPCODE_47
Begin processing of audio.
Definition vst.h:1868
+
@ VST_EFFECT_OPCODE_38
Parameter Properties.
Definition vst.h:1722
+
@ VST_EFFECT_OPCODE_GET_SPEAKER_ARRANGEMENT
Definition vst.h:1848
+
@ VST_EFFECT_OPCODE_0E
Create the window for the plugin.
Definition vst.h:1283
+
@ VST_EFFECT_OPCODE_3B
Editor Virtual Key Down Input.
Definition vst.h:1757
+
@ VST_EFFECT_OPCODE_BYPASS
Definition vst.h:1592
+
@ VST_EFFECT_OPCODE_EDITOR_KEYBOARD
Definition vst.h:1345
+
@ VST_EFFECT_OPCODE_INPUT_GET_PROPERTIES
Definition vst.h:1495
+
@ VST_EFFECT_OPCODE_VENDOR_NAME
Definition vst.h:1630
+
@ VST_EFFECT_OPCODE_PARAM_ISAUTOMATABLE
Definition vst.h:1432
+
@ VST_EFFECT_OPCODE_WINDOW_KEYBOARD
Definition vst.h:1343
+
@ VST_EFFECT_OPCODE_GET_PROGRAM_NAME
Definition vst.h:1174
+
@ VST_EFFECT_OPCODE_17
Get Chunk Data.
Definition vst.h:1395
+
@ VST_EFFECT_OPCODE_31
Retrieve the vendor version in return value.
Definition vst.h:1648
+
@ VST_EFFECT_OPCODE_2D
Retrieve the effect name into the ptr buffer.
Definition vst.h:1601
+
@ VST_EFFECT_OPCODE_07
Get the string representing the value for the parameter.
Definition vst.h:1198
+
@ VST_EFFECT_OPCODE_PROCESS_END
Definition vst.h:1879
+
@ VST_EFFECT_OPCODE_SET_PROGRAM
Definition vst.h:1144
+
@ VST_EFFECT_OPCODE_27
Seen in plug-ins with VST_EFFECT_CATEGORY_OFFLINE.
Definition vst.h:1545
+
@ VST_EFFECT_OPCODE_EDITOR_DRAW
Definition vst.h:1313
+
@ VST_EFFECT_OPCODE_15
Window Unfocus Event?
Definition vst.h:1373
+
@ VST_EFFECT_OPCODE_49
Definition vst.h:1886
+
@ VST_EFFECT_OPCODE_NAME
Definition vst.h:1607
+
@ VST_EFFECT_OPCODE_EDITOR_CLOSE
Definition vst.h:1297
+
@ VST_EFFECT_OPCODE_29
Seen in plug-ins with VST_EFFECT_CATEGORY_OFFLINE.
Definition vst.h:1559
+
@ VST_EFFECT_OPCODE_3A
Retrieve the VST Version supported.
Definition vst.h:1741
+
@ VST_EFFECT_OPCODE_11
Window Mouse Event?
Definition vst.h:1325
+
@ VST_EFFECT_OPCODE_PARAM_GET_LABEL
Definition vst.h:1188
+
@ VST_EFFECT_OPCODE_SETSAMPLERATE
Definition vst.h:1234
+
@ VST_EFFECT_OPCODE_0F
Destroy the plugins window.
Definition vst.h:1293
+
@ VST_EFFECT_OPCODE_GET_CHUNK_DATA
Definition vst.h:1397
+
@ VST_EFFECT_OPCODE_INITIALIZE
Definition vst.h:1126
+
@ VST_EFFECT_OPCODE_GETTAILSAMPLES
Definition vst.h:1684
+
@ VST_EFFECT_OPCODE_18
Set Chunk Data.
Definition vst.h:1409
+
@ VST_EFFECT_OPCODE_EFFECT_NAME
Definition vst.h:1605
+
@ VST_EFFECT_OPCODE_GET_PARAMETER_PROPERTIES
Definition vst.h:1724
+
@ VST_EFFECT_OPCODE_PARAM_AUTOMATABLE
Definition vst.h:1436
+
@ VST_EFFECT_OPCODE_PARAM_GETNAME
Definition vst.h:1216
+
@ VST_EFFECT_OPCODE_4A
Definition vst.h:1895
+
@ VST_EFFECT_OPCODE_08
Get the name for the parameter.
Definition vst.h:1214
+
@ VST_EFFECT_OPCODE_13
Window/Editor Idle/Keep-Alive Callback?
Definition vst.h:1351
+
@ VST_EFFECT_OPCODE_45
Host wants to know the current speaker arrangement.
Definition vst.h:1846
+
@ VST_EFFECT_OPCODE_WINDOW_GETRECT
Definition vst.h:1272
+
@ VST_EFFECT_OPCODE_OUTPUT_GET_PROPERTIES
Definition vst.h:1506
+
@ VST_EFFECT_OPCODE_PARAM_VALUE_FROM_STRING
Definition vst.h:1449
+
@ VST_EFFECT_OPCODE_GETVENDOR
Definition vst.h:1628
+
@ VST_EFFECT_OPCODE_PROCESS_BEGIN
Definition vst.h:1870
+
@ VST_EFFECT_OPCODE_1D
Definition vst.h:1463
+
@ VST_EFFECT_OPCODE_PAUSE_UNPAUSE
Definition vst.h:1258
+
@ VST_EFFECT_OPCODE_4C
Host wants to know if we can load the provided program data.
Definition vst.h:1917
+
@ VST_EFFECT_OPCODE_26
Seen in plug-ins with VST_EFFECT_CATEGORY_OFFLINE.
Definition vst.h:1538
+
@ VST_EFFECT_OPCODE_GETNAME
Definition vst.h:1603
+
@ VST_EFFECT_OPCODE_VENDOR_VERSION
Definition vst.h:1652
+
@ VST_EFFECT_OPCODE_46
Get the next effect contained in this effect.
Definition vst.h:1859
+
@ VST_EFFECT_OPCODE_SET_PROGRAM_NAME
Definition vst.h:1164
+
@ VST_EFFECT_OPCODE_FOURCC
Definition vst.h:1383
+
@ VST_EFFECT_OPCODE_37
Definition vst.h:1713
+
@ VST_EFFECT_OPCODE_44
Host is done setting up a program.
Definition vst.h:1831
+
@ VST_EFFECT_OPCODE_3F
Midi related.
Definition vst.h:1792
+
@ VST_EFFECT_OPCODE_WINDOW_DESTROY
Definition vst.h:1295
+
@ VST_EFFECT_OPCODE_EDITOR_VKEY_UP
Definition vst.h:1771
+
@ VST_EFFECT_OPCODE_1F
Input connected.
Definition vst.h:1477
+
@ VST_EFFECT_OPCODE_34
Number of samples that are at the tail at the end of playback.
Definition vst.h:1682
+
@ VST_EFFECT_OPCODE_2C
Enable/Disable bypassing the effect.
Definition vst.h:1590
+
@ VST_EFFECT_OPCODE_PROGRAM_SET
Definition vst.h:1146
+
@ VST_EFFECT_OPCODE_SUPPORTS
Definition vst.h:1674
+
@ VST_EFFECT_OPCODE_PROGRAM_SET_BEGIN
Definition vst.h:1823
+
@ VST_EFFECT_OPCODE_16
Definition vst.h:1381
+
@ VST_EFFECT_OPCODE_TRANSLATE_ERROR
Definition vst.h:1619
+
@ VST_EFFECT_OPCODE_EDITOR_RECT
Definition vst.h:1274
+
@ VST_EFFECT_OPCODE_25
Definition vst.h:1531
+
@ VST_EFFECT_OPCODE_PARAM_SET_VALUE
Definition vst.h:1447
+
@ VST_EFFECT_OPCODE_SUSPEND
Definition vst.h:1262
+
@ VST_EFFECT_OPCODE_0C
Effect processing should be suspended/paused or resumed/unpaused.
Definition vst.h:1256
@@ -2710,16 +2710,16 @@ Appears to be Mac OS exclusive. VST_HOST_OPCODE_0A  VST_HOST_OPCODE_0B  VST_HOST_OPCODE_0C  -VST_HOST_OPCODE_0D  -VST_HOST_OPCODE_0E 

Notify the host that numInputs/numOutputs/delay/numParams has changed.

+VST_HOST_OPCODE_0D 

Notify the host that numInputs/numOutputs/delay/numParams has changed.

Only supported if the host replies VST_STATUS_TRUE to VST_HOST_OPCODE_SUPPORTS query for vst_host_supports_t::acceptIOChanges.

Note
In VST 2.3 and earlier calling this outside of VST_EFFECT_OPCODE_IDLE may result in a crash.
In VST 2.3 and later this may only be called while between VST_EFFECT_OPCODE_PROCESS_END and VST_EFFECT_OPCODE_PROCESS_BEGIN.
Returns
VST_STATUS_TRUE if supported and handled otherwise VST_STATUS_FALSE.
-VST_HOST_OPCODE_IO_MODIFIED 
See also
VST_HOST_OPCODE_0E
+VST_HOST_OPCODE_IO_MODIFIED 
See also
VST_HOST_OPCODE_0D
+VST_HOST_OPCODE_0E  VST_HOST_OPCODE_0F  VST_HOST_OPCODE_10  VST_HOST_OPCODE_11  @@ -2779,8 +2779,10 @@ In VST 2.3 and later this may only be called while between VST_HOST_OPCODE_SUPPORTS 
See also
VST_HOST_OPCODE_25
VST_HOST_OPCODE_26  -VST_HOST_OPCODE_27  -VST_HOST_OPCODE_28  +VST_HOST_OPCODE_27 

Crash the host if p_ptr isn't nullptr.

+ +VST_HOST_OPCODE_28 

Crash the host if p_ptr isn't nullptr.

+ VST_HOST_OPCODE_29  VST_HOST_OPCODE_2A 

Request an update of the editor window.

@@ -2850,10 +2852,10 @@ In VST 2.3 and later this may only be called while between 597
598 VST_HOST_OPCODE_0C = 0x0C,
599
-
600 VST_HOST_OPCODE_0D = 0x0D,
-
601
-
612 VST_HOST_OPCODE_0E = 0x0E,
-
614 VST_HOST_OPCODE_IO_MODIFIED = 0x0E,
+
610 VST_HOST_OPCODE_0D = 0x0D,
+
612 VST_HOST_OPCODE_IO_MODIFIED = 0x0D,
+
613
+
614 VST_HOST_OPCODE_0E = 0x0E,
615
616 VST_HOST_OPCODE_0F = 0x0F,
617
@@ -2908,51 +2910,51 @@ In VST 2.3 and later this may only be called while between 691
692 VST_HOST_OPCODE_26 = 0x26,
693
-
694 VST_HOST_OPCODE_27 = 0x27,
-
695
-
696 VST_HOST_OPCODE_28 = 0x28,
-
697
-
698 VST_HOST_OPCODE_29 = 0x29,
+
695 VST_HOST_OPCODE_27 = 0x27,
+
696
+
698 VST_HOST_OPCODE_28 = 0x28,
699
-
703 VST_HOST_OPCODE_2A = 0x2A,
-
705 VST_HOST_OPCODE_EDITOR_UPDATE = 0x2A,
-
706
-
711 VST_HOST_OPCODE_2B = 0x2B,
-
713 VST_HOST_OPCODE_PARAM_START_EDIT = 0x2B,
-
714
-
719 VST_HOST_OPCODE_2C = 0x2C,
-
721 VST_HOST_OPCODE_PARAM_STOP_EDIT = 0x2C,
-
722
-
723 VST_HOST_OPCODE_2D = 0x2D,
-
724 VST_HOST_OPCODE_2E = 0x2E,
-
725 VST_HOST_OPCODE_2F = 0x2F,
-
726
-
727 // Highest number of known OPCODE.
-
728 VST_HOST_OPCODE_MAX,
-
729
-
730 // Pad to force 32-bit number.
-
731 _VST_HOST_OPCODE_PAD = 0xFFFFFFFFul,
-
732};
-
@ VST_HOST_OPCODE_28
Definition vst.h:696
+
700 VST_HOST_OPCODE_29 = 0x29,
+
701
+
705 VST_HOST_OPCODE_2A = 0x2A,
+
707 VST_HOST_OPCODE_EDITOR_UPDATE = 0x2A,
+
708
+
713 VST_HOST_OPCODE_2B = 0x2B,
+
715 VST_HOST_OPCODE_PARAM_START_EDIT = 0x2B,
+
716
+
721 VST_HOST_OPCODE_2C = 0x2C,
+
723 VST_HOST_OPCODE_PARAM_STOP_EDIT = 0x2C,
+
724
+
725 VST_HOST_OPCODE_2D = 0x2D,
+
726 VST_HOST_OPCODE_2E = 0x2E,
+
727 VST_HOST_OPCODE_2F = 0x2F,
+
728
+
729 // Highest number of known OPCODE.
+
730 VST_HOST_OPCODE_MAX,
+
731
+
732 // Pad to force 32-bit number.
+
733 _VST_HOST_OPCODE_PAD = 0xFFFFFFFFul,
+
734};
+
@ VST_HOST_OPCODE_28
Crash the host if p_ptr isn't nullptr.
Definition vst.h:698
@ VST_HOST_OPCODE_04
Definition vst.h:578
@ VST_HOST_OPCODE_18
Definition vst.h:634
-
@ VST_HOST_OPCODE_EDITOR_UPDATE
Definition vst.h:705
-
@ VST_HOST_OPCODE_PARAM_START_EDIT
Definition vst.h:713
-
@ VST_HOST_OPCODE_PARAM_STOP_EDIT
Definition vst.h:721
+
@ VST_HOST_OPCODE_EDITOR_UPDATE
Definition vst.h:707
+
@ VST_HOST_OPCODE_PARAM_START_EDIT
Definition vst.h:715
+
@ VST_HOST_OPCODE_PARAM_STOP_EDIT
Definition vst.h:723
@ VST_HOST_OPCODE_06
Definition vst.h:586
@ VST_HOST_OPCODE_1A
Definition vst.h:638
@ VST_HOST_OPCODE_0F
Definition vst.h:616
-
@ VST_HOST_OPCODE_2F
Definition vst.h:725
-
@ VST_HOST_OPCODE_IO_MODIFIED
Definition vst.h:614
+
@ VST_HOST_OPCODE_2F
Definition vst.h:727
+
@ VST_HOST_OPCODE_IO_MODIFIED
Definition vst.h:612
@ VST_HOST_OPCODE_1B
Definition vst.h:640
@ VST_HOST_OPCODE_12
Definition vst.h:622
@ VST_HOST_OPCODE_KEEPALIVE_OR_IDLE
Definition vst.h:576
@ VST_HOST_OPCODE_07
Definition vst.h:588
@ VST_HOST_OPCODE_1C
Definition vst.h:642
@ VST_HOST_OPCODE_08
Definition vst.h:590
-
@ VST_HOST_OPCODE_27
Definition vst.h:694
+
@ VST_HOST_OPCODE_27
Crash the host if p_ptr isn't nullptr.
Definition vst.h:695
@ VST_HOST_OPCODE_20
Retrieve the vendor name into the ptr buffer.
Definition vst.h:654
-
@ VST_HOST_OPCODE_2B
Notify host that a parameter is being edited.
Definition vst.h:711
+
@ VST_HOST_OPCODE_2B
Notify host that a parameter is being edited.
Definition vst.h:713
@ VST_HOST_OPCODE_16
Definition vst.h:630
@ VST_HOST_OPCODE_25
Check if the host supports a certain feature.
Definition vst.h:688
@ VST_HOST_OPCODE_1D
Definition vst.h:644
@@ -2962,7 +2964,7 @@ In VST 2.3 and later this may only be called while between
VST_HOST_OPCODE_19
@ VST_HOST_OPCODE_19
Definition vst.h:636
@ VST_HOST_OPCODE_05
Definition vst.h:584
@ VST_HOST_OPCODE_1E
Definition vst.h:646
-
@ VST_HOST_OPCODE_29
Definition vst.h:698
+
@ VST_HOST_OPCODE_29
Definition vst.h:700
@ VST_HOST_OPCODE_01
Retrieve the Hosts VST Version.
Definition vst.h:556
@ VST_HOST_OPCODE_AUTOMATE
Definition vst.h:548
@ VST_HOST_OPCODE_0A
Definition vst.h:594
@@ -2970,24 +2972,24 @@ In VST 2.3 and later this may only be called while between
VST_HOST_OPCODE_11
@ VST_HOST_OPCODE_11
Definition vst.h:620
@ VST_HOST_OPCODE_0C
Definition vst.h:598
@ VST_HOST_OPCODE_10
Definition vst.h:618
-
@ VST_HOST_OPCODE_2C
Notify host that parameter is no longer being edited.
Definition vst.h:719
+
@ VST_HOST_OPCODE_2C
Notify host that parameter is no longer being edited.
Definition vst.h:721
@ VST_HOST_OPCODE_13
Definition vst.h:624
-
@ VST_HOST_OPCODE_0E
Notify the host that numInputs/numOutputs/delay/numParams has changed.
Definition vst.h:612
-
@ VST_HOST_OPCODE_2D
Definition vst.h:723
-
@ VST_HOST_OPCODE_0D
Definition vst.h:600
+
@ VST_HOST_OPCODE_0E
Definition vst.h:614
+
@ VST_HOST_OPCODE_2D
Definition vst.h:725
+
@ VST_HOST_OPCODE_0D
Notify the host that numInputs/numOutputs/delay/numParams has changed.
Definition vst.h:610
@ VST_HOST_OPCODE_00
Update automation for a given Parameter.
Definition vst.h:546
@ VST_HOST_OPCODE_17
Definition vst.h:632
@ VST_HOST_OPCODE_03
Some sort of idle keep-alive?
Definition vst.h:574
@ VST_HOST_OPCODE_PRODUCT_NAME
Definition vst.h:664
-
@ VST_HOST_OPCODE_2A
Request an update of the editor window.
Definition vst.h:703
+
@ VST_HOST_OPCODE_2A
Request an update of the editor window.
Definition vst.h:705
@ VST_HOST_OPCODE_02
Get the currently selected effect id in container plug-ins.
Definition vst.h:566
@ VST_HOST_OPCODE_VENDOR_VERSION
Definition vst.h:672
@ VST_HOST_OPCODE_14
Definition vst.h:626
@ VST_HOST_OPCODE_VENDOR_NAME
Definition vst.h:656
-
@ VST_HOST_OPCODE_2E
Definition vst.h:724
-
@ VST_HOST_OPCODE_MAX
Definition vst.h:728
+
@ VST_HOST_OPCODE_2E
Definition vst.h:726
+
@ VST_HOST_OPCODE_MAX
Definition vst.h:730
@ VST_HOST_OPCODE_22
Retrieve the vendor version in return value.
Definition vst.h:670
-
@ _VST_HOST_OPCODE_PAD
Definition vst.h:731
+
@ _VST_HOST_OPCODE_PAD
Definition vst.h:733
@ VST_HOST_OPCODE_21
Retrieve the product name into the ptr buffer.
Definition vst.h:662
@ VST_HOST_OPCODE_CUSTOM
Definition vst.h:679
@ VST_HOST_OPCODE_PARAM_UPDATE
Definition vst.h:550
@@ -3510,7 +3512,7 @@ In VST 2.3 and later this may only be called while between diff --git a/vst_8h.js b/vst_8h.js index 034bce2..c1ac945 100644 --- a/vst_8h.js +++ b/vst_8h.js @@ -268,8 +268,8 @@ var vst_8h = [ "VST_HOST_OPCODE_0B", "vst_8h.html#a223eb6814e8e03b7f89687280db8b8ecaf9a946bb647daf5d8b206693a02751b0", null ], [ "VST_HOST_OPCODE_0C", "vst_8h.html#a223eb6814e8e03b7f89687280db8b8eca9158362e2038a2cc7fdadbe164572a32", null ], [ "VST_HOST_OPCODE_0D", "vst_8h.html#a223eb6814e8e03b7f89687280db8b8ecab0181c84715dd10c037caea91faccf17", null ], - [ "VST_HOST_OPCODE_0E", "vst_8h.html#a223eb6814e8e03b7f89687280db8b8ecaa08be4a54bab1745f2011a5a30e880a5", null ], [ "VST_HOST_OPCODE_IO_MODIFIED", "vst_8h.html#a223eb6814e8e03b7f89687280db8b8eca3365f17c1b25e26e5b7ef3d3e1da82e0", null ], + [ "VST_HOST_OPCODE_0E", "vst_8h.html#a223eb6814e8e03b7f89687280db8b8ecaa08be4a54bab1745f2011a5a30e880a5", null ], [ "VST_HOST_OPCODE_0F", "vst_8h.html#a223eb6814e8e03b7f89687280db8b8eca27ccf6c0ae6965462d0c95668a5328e9", null ], [ "VST_HOST_OPCODE_10", "vst_8h.html#a223eb6814e8e03b7f89687280db8b8eca9226e0e6b1e3929060be3c534d54efab", null ], [ "VST_HOST_OPCODE_11", "vst_8h.html#a223eb6814e8e03b7f89687280db8b8eca87ce9751c0bff6ef1e27c52b814c1e4a", null ], diff --git a/vst_8h_source.html b/vst_8h_source.html index b4013d0..99e0dae 100644 --- a/vst_8h_source.html +++ b/vst_8h_source.html @@ -697,21 +697,21 @@ $(document).ready(function(){initNavTree('vst_8h_source.html',''); initResizable
597
598 VST_HOST_OPCODE_0C = 0x0C,
599
-
600 VST_HOST_OPCODE_0D = 0x0D,
-
601
-
602 /** Notify the host that numInputs/numOutputs/delay/numParams has changed.
-
603 * Only supported if the host replies @ref VST_STATUS_TRUE to @ref VST_HOST_OPCODE_SUPPORTS query for
-
604 * @ref vst_host_supports_t.acceptIOChanges.
-
605 *
-
606 * @note In VST 2.3 and earlier calling this outside of @ref VST_EFFECT_OPCODE_IDLE may result in a crash.
-
607 * @note In VST 2.3 and later this may only be called while between @ref VST_EFFECT_OPCODE_PROCESS_END and
-
608 * @ref VST_EFFECT_OPCODE_PROCESS_BEGIN.
-
609 *
-
610 * @return @ref VST_STATUS_TRUE if supported and handled otherwise @ref VST_STATUS_FALSE.
-
611 */
-
612 VST_HOST_OPCODE_0E = 0x0E,
-
613 /** @sa VST_HOST_OPCODE_0E */
-
614 VST_HOST_OPCODE_IO_MODIFIED = 0x0E,
+
600 /** Notify the host that numInputs/numOutputs/delay/numParams has changed.
+
601 * Only supported if the host replies @ref VST_STATUS_TRUE to @ref VST_HOST_OPCODE_SUPPORTS query for
+
602 * @ref vst_host_supports_t.acceptIOChanges.
+
603 *
+
604 * @note In VST 2.3 and earlier calling this outside of @ref VST_EFFECT_OPCODE_IDLE may result in a crash.
+
605 * @note In VST 2.3 and later this may only be called while between @ref VST_EFFECT_OPCODE_PROCESS_END and
+
606 * @ref VST_EFFECT_OPCODE_PROCESS_BEGIN.
+
607 *
+
608 * @return @ref VST_STATUS_TRUE if supported and handled otherwise @ref VST_STATUS_FALSE.
+
609 */
+
610 VST_HOST_OPCODE_0D = 0x0D,
+
611 /** @sa VST_HOST_OPCODE_0D */
+
612 VST_HOST_OPCODE_IO_MODIFIED = 0x0D,
+
613
+
614 VST_HOST_OPCODE_0E = 0x0E,
615
616 VST_HOST_OPCODE_0F = 0x0F,
617
@@ -791,1666 +791,1668 @@ $(document).ready(function(){initNavTree('vst_8h_source.html',''); initResizable
691
692 VST_HOST_OPCODE_26 = 0x26,
693
-
694 VST_HOST_OPCODE_27 = 0x27,
-
695
-
696 VST_HOST_OPCODE_28 = 0x28,
-
697
-
698 VST_HOST_OPCODE_29 = 0x29,
+
694 /** Crash the host if p_ptr isn't nullptr. */
+
695 VST_HOST_OPCODE_27 = 0x27,
+
696
+
697 /** Crash the host if p_ptr isn't nullptr. */
+
698 VST_HOST_OPCODE_28 = 0x28,
699
-
700 /** Request an update of the editor window.
-
701 *
-
702 */
-
703 VST_HOST_OPCODE_2A = 0x2A,
-
704 /** @sa VST_HOST_OPCODE_2A */
-
705 VST_HOST_OPCODE_EDITOR_UPDATE = 0x2A,
-
706
-
707 /** Notify host that a parameter is being edited.
-
708 *
-
709 * @param p_int1 Parameter index.
-
710 */
-
711 VST_HOST_OPCODE_2B = 0x2B,
-
712 /** @sa VST_HOST_OPCODE_2B */
-
713 VST_HOST_OPCODE_PARAM_START_EDIT = 0x2B,
-
714
-
715 /** Notify host that parameter is no longer being edited.
-
716 *
-
717 * @param p_int1 Parameter index.
-
718 */
-
719 VST_HOST_OPCODE_2C = 0x2C,
-
720 /** @sa VST_HOST_OPCODE_2C */
-
721 VST_HOST_OPCODE_PARAM_STOP_EDIT = 0x2C,
-
722
-
723 VST_HOST_OPCODE_2D = 0x2D,
-
724 VST_HOST_OPCODE_2E = 0x2E,
-
725 VST_HOST_OPCODE_2F = 0x2F,
-
726
-
727 // Highest number of known OPCODE.
-
728 VST_HOST_OPCODE_MAX,
-
729
-
730 // Pad to force 32-bit number.
-
731 _VST_HOST_OPCODE_PAD = 0xFFFFFFFFul,
-
732};
-
733
-
734/** Plug-in to Host support checks
-
735 *
-
736 * Provided as `char* p_ptr` in the VST_EFFECT_OPCODE_SUPPORTS op code.
+
700 VST_HOST_OPCODE_29 = 0x29,
+
701
+
702 /** Request an update of the editor window.
+
703 *
+
704 */
+
705 VST_HOST_OPCODE_2A = 0x2A,
+
706 /** @sa VST_HOST_OPCODE_2A */
+
707 VST_HOST_OPCODE_EDITOR_UPDATE = 0x2A,
+
708
+
709 /** Notify host that a parameter is being edited.
+
710 *
+
711 * @param p_int1 Parameter index.
+
712 */
+
713 VST_HOST_OPCODE_2B = 0x2B,
+
714 /** @sa VST_HOST_OPCODE_2B */
+
715 VST_HOST_OPCODE_PARAM_START_EDIT = 0x2B,
+
716
+
717 /** Notify host that parameter is no longer being edited.
+
718 *
+
719 * @param p_int1 Parameter index.
+
720 */
+
721 VST_HOST_OPCODE_2C = 0x2C,
+
722 /** @sa VST_HOST_OPCODE_2C */
+
723 VST_HOST_OPCODE_PARAM_STOP_EDIT = 0x2C,
+
724
+
725 VST_HOST_OPCODE_2D = 0x2D,
+
726 VST_HOST_OPCODE_2E = 0x2E,
+
727 VST_HOST_OPCODE_2F = 0x2F,
+
728
+
729 // Highest number of known OPCODE.
+
730 VST_HOST_OPCODE_MAX,
+
731
+
732 // Pad to force 32-bit number.
+
733 _VST_HOST_OPCODE_PAD = 0xFFFFFFFFul,
+
734};
+
735
+
736/** Plug-in to Host support checks
737 *
-
738 * Harvested via strings command and just checking what hosts actually responded to.
-
739 */
-
740struct vst_host_supports_t {
-
741 /** Does the host support modifying input/output/params/delay when programs, banks or parameters are changed?
-
742 * This only means that the host supports this inside of @ref VST_EFFECT_OPCODE_IDLE (VST 2.3 or earlier) or outside
-
743 * of a @ref VST_EFFECT_OPCODE_PROCESS_BEGIN and @ref VST_EFFECT_OPCODE_PROCESS_END group.
-
744 *
-
745 * Signals that the host supports the following:
-
746 * - @ref VST_HOST_OPCODE_IO_MODIFIED
-
747 *
-
748 * @return @ref VST_STATUS_TRUE if it supports it.
-
749 */
-
750 const char* acceptIOChanges;
-
751
-
752 /** Is the host using process begin/end instead of idle?
-
753 * The host may opt to emit @ref VST_EFFECT_OPCODE_IDLE or @ref VST_EFFECT_OPCODE_PROCESS_BEGIN and
-
754 * @ref VST_EFFECT_OPCODE_PROCESS_END when running in VST 2.3 compatibility mode.
-
755 *
-
756 * @sa VST_EFFECT_OPCODE_PROCESS_BEGIN
-
757 * @sa VST_EFFECT_OPCODE_PROCESS_END
-
758 * @sa VST_EFFECT_OPCODE_IDLE
-
759 * @deprecated (VST 2.4) This behavior is the default in VST 2.4 and later.
-
760 * @return @ref VST_STATUS_TRUE if it supports it.
-
761 */
-
762 const char* startStopProcess;
-
763
-
764 /** Does the host support container plug-ins?
-
765 *
-
766 * Signals that the host and plug-in support the following:
-
767 * - @ref VST_HOST_OPCODE_CURRENT_EFFECT_ID
-
768 * - @ref VST_EFFECT_OPCODE_CONTAINER_NEXT_EFFECT_ID
-
769 *
-
770 * @note Is shell a reference to Windows shell menus?
+
738 * Provided as `char* p_ptr` in the VST_EFFECT_OPCODE_SUPPORTS op code.
+
739 *
+
740 * Harvested via strings command and just checking what hosts actually responded to.
+
741 */
+
742struct vst_host_supports_t {
+
743 /** Does the host support modifying input/output/params/delay when programs, banks or parameters are changed?
+
744 * This only means that the host supports this inside of @ref VST_EFFECT_OPCODE_IDLE (VST 2.3 or earlier) or outside
+
745 * of a @ref VST_EFFECT_OPCODE_PROCESS_BEGIN and @ref VST_EFFECT_OPCODE_PROCESS_END group.
+
746 *
+
747 * Signals that the host supports the following:
+
748 * - @ref VST_HOST_OPCODE_IO_MODIFIED
+
749 *
+
750 * @return @ref VST_STATUS_TRUE if it supports it.
+
751 */
+
752 const char* acceptIOChanges;
+
753
+
754 /** Is the host using process begin/end instead of idle?
+
755 * The host may opt to emit @ref VST_EFFECT_OPCODE_IDLE or @ref VST_EFFECT_OPCODE_PROCESS_BEGIN and
+
756 * @ref VST_EFFECT_OPCODE_PROCESS_END when running in VST 2.3 compatibility mode.
+
757 *
+
758 * @sa VST_EFFECT_OPCODE_PROCESS_BEGIN
+
759 * @sa VST_EFFECT_OPCODE_PROCESS_END
+
760 * @sa VST_EFFECT_OPCODE_IDLE
+
761 * @deprecated (VST 2.4) This behavior is the default in VST 2.4 and later.
+
762 * @return @ref VST_STATUS_TRUE if it supports it.
+
763 */
+
764 const char* startStopProcess;
+
765
+
766 /** Does the host support container plug-ins?
+
767 *
+
768 * Signals that the host and plug-in support the following:
+
769 * - @ref VST_HOST_OPCODE_CURRENT_EFFECT_ID
+
770 * - @ref VST_EFFECT_OPCODE_CONTAINER_NEXT_EFFECT_ID
771 *
-
772 * @return @ref VST_STATUS_TRUE if the host supports it _and_ the current plug-in is a container plug-in.
-
773 */
-
774 const char* shellCategory;
-
775
-
776 const char* sendVstEvents;
-
777 const char* receiveVstEvents;
-
778
-
779 const char* sendVstMidiEvent;
-
780 const char* receiveVstMidiEvent;
-
781 const char* sendVstMidiEventFlagIsRealtime;
-
782
-
783 const char* sendVstTimeInfo;
-
784 const char* reportConnectionChanges; // Seems related to speakers?
-
785 const char* sizeWindow;
-
786 const char* offline;
-
787
-
788 const char* openFileSelector;
-
789 const char* closeFileSelector;
-
790} /** @private */ vst_host_supports = {
-
791 .acceptIOChanges = "acceptIOChanges",
-
792 .startStopProcess = "startStopProcess",
-
793 .shellCategory = "shellCategory",
-
794 .sendVstEvents = "sendVstEvents",
-
795 .receiveVstEvents = "receiveVstEvents",
-
796 .sendVstMidiEvent = "sendVstMidiEvent",
-
797 .receiveVstMidiEvent = "receiveVstMidiEvent",
-
798 .sendVstMidiEventFlagIsRealtime = "sendVstMidiEventFlagIsRealtime",
-
799 .sendVstTimeInfo = "sendVstTimeInfo",
-
800 .reportConnectionChanges = "reportConnectionChanges",
-
801 .sizeWindow = "sizeWindow",
-
802 .offline = "offline",
-
803 .openFileSelector = "openFileSelector",
-
804 .closeFileSelector = "closeFileSelector",
-
805};
-
806
-
807/** Plug-in to Host callback
-
808 *
-
809 * The plug-in may call this to attempt to change things on the host side. The host side is free to ignore all requests, annoyingly enough.
+
772 * @note Is shell a reference to Windows shell menus?
+
773 *
+
774 * @return @ref VST_STATUS_TRUE if the host supports it _and_ the current plug-in is a container plug-in.
+
775 */
+
776 const char* shellCategory;
+
777
+
778 const char* sendVstEvents;
+
779 const char* receiveVstEvents;
+
780
+
781 const char* sendVstMidiEvent;
+
782 const char* receiveVstMidiEvent;
+
783 const char* sendVstMidiEventFlagIsRealtime;
+
784
+
785 const char* sendVstTimeInfo;
+
786 const char* reportConnectionChanges; // Seems related to speakers?
+
787 const char* sizeWindow;
+
788 const char* offline;
+
789
+
790 const char* openFileSelector;
+
791 const char* closeFileSelector;
+
792} /** @private */ vst_host_supports = {
+
793 .acceptIOChanges = "acceptIOChanges",
+
794 .startStopProcess = "startStopProcess",
+
795 .shellCategory = "shellCategory",
+
796 .sendVstEvents = "sendVstEvents",
+
797 .receiveVstEvents = "receiveVstEvents",
+
798 .sendVstMidiEvent = "sendVstMidiEvent",
+
799 .receiveVstMidiEvent = "receiveVstMidiEvent",
+
800 .sendVstMidiEventFlagIsRealtime = "sendVstMidiEventFlagIsRealtime",
+
801 .sendVstTimeInfo = "sendVstTimeInfo",
+
802 .reportConnectionChanges = "reportConnectionChanges",
+
803 .sizeWindow = "sizeWindow",
+
804 .offline = "offline",
+
805 .openFileSelector = "openFileSelector",
+
806 .closeFileSelector = "closeFileSelector",
+
807};
+
808
+
809/** Plug-in to Host callback
810 *
-
811 * @param opcode See VST_HOST_OPCODE
-
812 * @param p_str Zero terminated string or null on call.
-
813 * @return ?
-
814 */
-
815typedef intptr_t (VST_FUNCTION_INTERFACE *vst_host_callback_t)(struct vst_effect_t* plugin, int32_t opcode, int32_t p_int1, int64_t p_int2, const char* p_str, float p_float);
-
816
-
817//------------------------------------------------------------------------------------------------------------------------
-
818// VST Plug-in/Effect related Things
+
811 * The plug-in may call this to attempt to change things on the host side. The host side is free to ignore all requests, annoyingly enough.
+
812 *
+
813 * @param opcode See VST_HOST_OPCODE
+
814 * @param p_str Zero terminated string or null on call.
+
815 * @return ?
+
816 */
+
817typedef intptr_t (VST_FUNCTION_INTERFACE *vst_host_callback_t)(struct vst_effect_t* plugin, int32_t opcode, int32_t p_int1, int64_t p_int2, const char* p_str, float p_float);
+
818
819//------------------------------------------------------------------------------------------------------------------------
-
820
-
821/** Magic Number identifying a VST 2.x plug-in structure
-
822 *
-
823 * @sa vst_effect_t.magic_numer
-
824 */
-
825#define VST_MAGICNUMBER VST_FOURCC('V', 's', 't', 'P')
-
826
-
827/** Default VST 2.x Sample Rate
-
828 * All VST 2.x hosts expect you to initialize your plug-in to these default values.
-
829 *
-
830 * @sa VST_EFFECT_OPCODE_SET_SAMPLE_RATE
-
831 */
-
832#define VST_DEFAULT_SAMPLE_RATE 44100.0f
-
833
-
834/** Default VST 2.x Block Size
-
835 * All VST 2.x hosts expect you to initialize your plug-in to these default values.
-
836 *
-
837 * @sa VST_EFFECT_OPCODE_SET_BLOCK_SIZE
-
838 */
-
839#define VST_DEFAULT_BLOCK_SIZE 1024
-
840
-
841/** Plug-in Categories
-
842 * Pre-defined category grouping that also affect host behavior when handling the plug-in. This is not just a UI/UX
-
843 * thing, it actually affects what plug-ins can do, so place your plug-in into the correct category.
-
844 *
-
845 */
-
846enum VST_EFFECT_CATEGORY {
-
847 VST_EFFECT_CATEGORY_UNCATEGORIZED = 0x00,
-
848
-
849 /** Generic Effects
-
850 * Examples: Distortion, Pitch Shift, ...
-
851 *
-
852 * Supports: Delay (Optional), Tail Samples, MIDI
-
853 */
-
854 VST_EFFECT_CATEGORY_01 = 0x01,
-
855 /** @sa VST_EFFECT_CATEGORY_01 */
-
856 VST_EFFECT_CATEGORY_EFFECT = 0x01,
-
857
-
858 /** Instruments
-
859 * Examples: Instruments, Synths, Samplers, ...
-
860 *
-
861 * Supports: Delay (Optional), Tail Samples, MIDI
-
862 */
-
863 VST_EFFECT_CATEGORY_02 = 0x02,
-
864 /** @sa VST_EFFECT_CATEGORY_02 */
-
865 VST_EFFECT_CATEGORY_INSTRUMENT = 0x02,
-
866
-
867 /** Metering
-
868 * Examples: Loudness Meters, Volume Analysis, ...
-
869 *
-
870 * Supports: Tail Samples, MIDI
-
871 * @note Delay causes crashes in some hosts. Fun.
-
872 */
-
873 VST_EFFECT_CATEGORY_03 = 0x03,
-
874 /** @sa VST_EFFECT_CATEGORY_03 */
-
875 VST_EFFECT_CATEGORY_METERING = 0x03,
-
876
-
877 /** Mastering
-
878 * Examples: Compressors, Limiters, ...
-
879 *
-
880 * Supports: Delay, Tail Samples (optional), MIDI
-
881 */
-
882 VST_EFFECT_CATEGORY_04 = 0x04,
-
883 /** @sa VST_EFFECT_CATEGORY_04 */
-
884 VST_EFFECT_CATEGORY_MASTERING = 0x04,
-
885
-
886 /** Spatializers
-
887 * Examples: Channel Panning, Expanders, ...
-
888 *
-
889 * Supports: Tail Samples (optional), MIDI
-
890 */
-
891 VST_EFFECT_CATEGORY_05 = 0x05,
-
892 /** @sa VST_EFFECT_CATEGORY_05 */
-
893 VST_EFFECT_CATEGORY_SPATIAL = 0x05,
-
894
-
895 /** Delay/Echo
-
896 * Examples: Echo, Reverb, Room Simulation, Delay, ...
-
897 *
-
898 * Supports: Delay, Tail Samples, MIDI
-
899 */
-
900 VST_EFFECT_CATEGORY_06 = 0x06,
-
901 /** @sa VST_EFFECT_CATEGORY_06 */
-
902 VST_EFFECT_CATEGORY_DELAY_OR_ECHO = 0x06,
-
903
-
904 VST_EFFECT_CATEGORY_07 = 0x07,
+
820// VST Plug-in/Effect related Things
+
821//------------------------------------------------------------------------------------------------------------------------
+
822
+
823/** Magic Number identifying a VST 2.x plug-in structure
+
824 *
+
825 * @sa vst_effect_t.magic_numer
+
826 */
+
827#define VST_MAGICNUMBER VST_FOURCC('V', 's', 't', 'P')
+
828
+
829/** Default VST 2.x Sample Rate
+
830 * All VST 2.x hosts expect you to initialize your plug-in to these default values.
+
831 *
+
832 * @sa VST_EFFECT_OPCODE_SET_SAMPLE_RATE
+
833 */
+
834#define VST_DEFAULT_SAMPLE_RATE 44100.0f
+
835
+
836/** Default VST 2.x Block Size
+
837 * All VST 2.x hosts expect you to initialize your plug-in to these default values.
+
838 *
+
839 * @sa VST_EFFECT_OPCODE_SET_BLOCK_SIZE
+
840 */
+
841#define VST_DEFAULT_BLOCK_SIZE 1024
+
842
+
843/** Plug-in Categories
+
844 * Pre-defined category grouping that also affect host behavior when handling the plug-in. This is not just a UI/UX
+
845 * thing, it actually affects what plug-ins can do, so place your plug-in into the correct category.
+
846 *
+
847 */
+
848enum VST_EFFECT_CATEGORY {
+
849 VST_EFFECT_CATEGORY_UNCATEGORIZED = 0x00,
+
850
+
851 /** Generic Effects
+
852 * Examples: Distortion, Pitch Shift, ...
+
853 *
+
854 * Supports: Delay (Optional), Tail Samples, MIDI
+
855 */
+
856 VST_EFFECT_CATEGORY_01 = 0x01,
+
857 /** @sa VST_EFFECT_CATEGORY_01 */
+
858 VST_EFFECT_CATEGORY_EFFECT = 0x01,
+
859
+
860 /** Instruments
+
861 * Examples: Instruments, Synths, Samplers, ...
+
862 *
+
863 * Supports: Delay (Optional), Tail Samples, MIDI
+
864 */
+
865 VST_EFFECT_CATEGORY_02 = 0x02,
+
866 /** @sa VST_EFFECT_CATEGORY_02 */
+
867 VST_EFFECT_CATEGORY_INSTRUMENT = 0x02,
+
868
+
869 /** Metering
+
870 * Examples: Loudness Meters, Volume Analysis, ...
+
871 *
+
872 * Supports: Tail Samples, MIDI
+
873 * @note Delay causes crashes in some hosts. Fun.
+
874 */
+
875 VST_EFFECT_CATEGORY_03 = 0x03,
+
876 /** @sa VST_EFFECT_CATEGORY_03 */
+
877 VST_EFFECT_CATEGORY_METERING = 0x03,
+
878
+
879 /** Mastering
+
880 * Examples: Compressors, Limiters, ...
+
881 *
+
882 * Supports: Delay, Tail Samples (optional), MIDI
+
883 */
+
884 VST_EFFECT_CATEGORY_04 = 0x04,
+
885 /** @sa VST_EFFECT_CATEGORY_04 */
+
886 VST_EFFECT_CATEGORY_MASTERING = 0x04,
+
887
+
888 /** Spatializers
+
889 * Examples: Channel Panning, Expanders, ...
+
890 *
+
891 * Supports: Tail Samples (optional), MIDI
+
892 */
+
893 VST_EFFECT_CATEGORY_05 = 0x05,
+
894 /** @sa VST_EFFECT_CATEGORY_05 */
+
895 VST_EFFECT_CATEGORY_SPATIAL = 0x05,
+
896
+
897 /** Delay/Echo
+
898 * Examples: Echo, Reverb, Room Simulation, Delay, ...
+
899 *
+
900 * Supports: Delay, Tail Samples, MIDI
+
901 */
+
902 VST_EFFECT_CATEGORY_06 = 0x06,
+
903 /** @sa VST_EFFECT_CATEGORY_06 */
+
904 VST_EFFECT_CATEGORY_DELAY_OR_ECHO = 0x06,
905
-
906 /** Restoration
-
907 * Examples: Noise Filtering, Upsamplers, ...
-
908 *
-
909 * Supports: Delay, Tail Samples, MIDI
-
910 * @note Some DAWs allocate additional processing time to these.
-
911 */
-
912 VST_EFFECT_CATEGORY_08 = 0x08,
-
913 /** @sa VST_EFFECT_CATEGORY_08 */
-
914 VST_EFFECT_CATEGORY_RESTORATION = 0x08,
-
915
-
916 /** Offline Processing
-
917 * Examples: Nothing
-
918 * Supports: Nothing
-
919 */
-
920 VST_EFFECT_CATEGORY_09 = 0x09,
-
921 /** @sa VST_EFFECT_CATEGORY_09 */
-
922 VST_EFFECT_CATEGORY_OFFLINE = 0x09, // Offline Processing VST? Seems to receive all audio data prior to playback.
-
923
-
924 /** Container Plug-in
-
925 * This plug-in contains multiple effects in one and requires special handling on both sides.
-
926 *
-
927 * Host handling:
-
928 * @code{.c}
-
929 * uint32_t current_select_id;
-
930 *
-
931 * // ... in intptr_t vst_host_callback(vst_effect_t* plugin, VST_HOST_OPCODE opcode, ...)
-
932 * case VST_HOST_OPCODE_SUPPORTS: {
-
933 * char* text = (char*)p_ptr;
-
934 * // The plug-in may ask the host if it even supports containers at all and changes behavior if we don't.
-
935 * if (text && strcmp(text, vst_host_supports.shellCategory) == 0) {
-
936 * return VST_STATUS_TRUE;
-
937 * }
-
938 * }
-
939 * case VST_HOST_OPCODE_CURRENT_EFFECT_ID:
-
940 * return current_selected_id;
-
941 * // ...
-
942 *
-
943 * // ... in whatever you use to load plug-ins ...
-
944 * current_select_id;
-
945 * vst_effect_t* plugin = plugin_main(&vst_host_callback);
-
946 * int32_t plugin_category = plugin->control(plugin, VST_EFFECT_OPCODE_CATEGORY, 0, 0, 0, 0)
-
947 * if (plugin_category == VST_EFFECT_CATEGORY_CONTAINER) {
-
948 * char effect_name[VST_BUFFER_SIZE_EFFECT_NAME] effect_name;
-
949 * int32_t effect_id;
-
950 * // Iterate over all contained effects.
-
951 * while ((effect_id = plugin->control(plugin, VST_EFFECT_OPCODE_CONTAINER_NEXT_EFFECT_ID, 0, 0, effect_name, 0)) != 0) {
-
952 * // Contained effects must be named as far as I can tell.
-
953 * if (effect_name[0] != 0) {
-
954 * // Do some logic that does the necessary things to list these in the host.
-
955 * }
-
956 * }
-
957 * } else {
-
958 * // Do things to list only this plugin in the host.
-
959 * }
-
960 * // ...
-
961 * @endcode
-
962 *
-
963 * Plug-in handling:
-
964 * @code{.c}
-
965 * // ... in vst_effect for the container
-
966 * size_t current_effect_idx;
-
967 * int32_t effect_list[] = {
-
968 * // ... list of effect ids.
-
969 * }
-
970 * // ... in control(...)
-
971 * case VST_EFFECT_OPCODE_CONTAINER_NEXT_EFFECT_ID:
-
972 * // Make sure current_effect_idx doesn't exceed the maximum.
-
973 * if (current_effect_idx > ARRAYSIZEOF(effect_list)) {
-
974 * current_effect_idx;
-
975 * return 0;
-
976 * }
-
977 * // Some code that turns effect indices into names to store into p_ptr.
-
978 * return effect_list[current_effect_idx++]; // Return the effect id.
-
979 * // ...
-
980 *
-
981 * VST_ENTRYPOINT {
-
982 * // Ensure the host VST 2.x compatible.
-
983 * int32_t vst_version = callback(nullptr, VST_HOST_OPCODE_VST_VERSION, 0, 0, 0, 0);
-
984 * if (vst_version == 0) {
-
985 * return 0; // It's not so we exit early.
-
986 * }
-
987 *
-
988 * // Check if the host wants
-
989 * int32_t effect_id = callback(nullptr, VST_HOST_OPCODE_CURRENT_EFFECT_ID, 0, 0, 0);
-
990 * if (effect_id == 0) {
-
991 * // ... logic specific to making the container.
-
992 * return new vst_container_effect();
-
993 * } else {
-
994 * // ... logic specific to make sub effects
-
995 * return new vst_sub_effect();
-
996 * }
-
997 * }
-
998 *
-
999 * // ...
-
1000 * @endcode
-
1001 */
-
1002 VST_EFFECT_CATEGORY_0A = 0x0A,
-
1003 /** @sa VST_EFFECT_CATEGORY_0A */
-
1004 VST_EFFECT_CATEGORY_CONTAINER = 0x0A,
-
1005
-
1006 /** Waveform Generators
-
1007 * Examples: Sine Wave Generator, ...
-
1008 * Supports: Delay, Tail Samples
-
1009 *
-
1010 * I don't know why this exists, there's only one plug-in that has it and all it does is generate a 400hz sine wave.
+
906 VST_EFFECT_CATEGORY_07 = 0x07,
+
907
+
908 /** Restoration
+
909 * Examples: Noise Filtering, Upsamplers, ...
+
910 *
+
911 * Supports: Delay, Tail Samples, MIDI
+
912 * @note Some DAWs allocate additional processing time to these.
+
913 */
+
914 VST_EFFECT_CATEGORY_08 = 0x08,
+
915 /** @sa VST_EFFECT_CATEGORY_08 */
+
916 VST_EFFECT_CATEGORY_RESTORATION = 0x08,
+
917
+
918 /** Offline Processing
+
919 * Examples: Nothing
+
920 * Supports: Nothing
+
921 */
+
922 VST_EFFECT_CATEGORY_09 = 0x09,
+
923 /** @sa VST_EFFECT_CATEGORY_09 */
+
924 VST_EFFECT_CATEGORY_OFFLINE = 0x09, // Offline Processing VST? Seems to receive all audio data prior to playback.
+
925
+
926 /** Container Plug-in
+
927 * This plug-in contains multiple effects in one and requires special handling on both sides.
+
928 *
+
929 * Host handling:
+
930 * @code{.c}
+
931 * uint32_t current_select_id;
+
932 *
+
933 * // ... in intptr_t vst_host_callback(vst_effect_t* plugin, VST_HOST_OPCODE opcode, ...)
+
934 * case VST_HOST_OPCODE_SUPPORTS: {
+
935 * char* text = (char*)p_ptr;
+
936 * // The plug-in may ask the host if it even supports containers at all and changes behavior if we don't.
+
937 * if (text && strcmp(text, vst_host_supports.shellCategory) == 0) {
+
938 * return VST_STATUS_TRUE;
+
939 * }
+
940 * }
+
941 * case VST_HOST_OPCODE_CURRENT_EFFECT_ID:
+
942 * return current_selected_id;
+
943 * // ...
+
944 *
+
945 * // ... in whatever you use to load plug-ins ...
+
946 * current_select_id;
+
947 * vst_effect_t* plugin = plugin_main(&vst_host_callback);
+
948 * int32_t plugin_category = plugin->control(plugin, VST_EFFECT_OPCODE_CATEGORY, 0, 0, 0, 0)
+
949 * if (plugin_category == VST_EFFECT_CATEGORY_CONTAINER) {
+
950 * char effect_name[VST_BUFFER_SIZE_EFFECT_NAME] effect_name;
+
951 * int32_t effect_id;
+
952 * // Iterate over all contained effects.
+
953 * while ((effect_id = plugin->control(plugin, VST_EFFECT_OPCODE_CONTAINER_NEXT_EFFECT_ID, 0, 0, effect_name, 0)) != 0) {
+
954 * // Contained effects must be named as far as I can tell.
+
955 * if (effect_name[0] != 0) {
+
956 * // Do some logic that does the necessary things to list these in the host.
+
957 * }
+
958 * }
+
959 * } else {
+
960 * // Do things to list only this plugin in the host.
+
961 * }
+
962 * // ...
+
963 * @endcode
+
964 *
+
965 * Plug-in handling:
+
966 * @code{.c}
+
967 * // ... in vst_effect for the container
+
968 * size_t current_effect_idx;
+
969 * int32_t effect_list[] = {
+
970 * // ... list of effect ids.
+
971 * }
+
972 * // ... in control(...)
+
973 * case VST_EFFECT_OPCODE_CONTAINER_NEXT_EFFECT_ID:
+
974 * // Make sure current_effect_idx doesn't exceed the maximum.
+
975 * if (current_effect_idx > ARRAYSIZEOF(effect_list)) {
+
976 * current_effect_idx;
+
977 * return 0;
+
978 * }
+
979 * // Some code that turns effect indices into names to store into p_ptr.
+
980 * return effect_list[current_effect_idx++]; // Return the effect id.
+
981 * // ...
+
982 *
+
983 * VST_ENTRYPOINT {
+
984 * // Ensure the host VST 2.x compatible.
+
985 * int32_t vst_version = callback(nullptr, VST_HOST_OPCODE_VST_VERSION, 0, 0, 0, 0);
+
986 * if (vst_version == 0) {
+
987 * return 0; // It's not so we exit early.
+
988 * }
+
989 *
+
990 * // Check if the host wants
+
991 * int32_t effect_id = callback(nullptr, VST_HOST_OPCODE_CURRENT_EFFECT_ID, 0, 0, 0);
+
992 * if (effect_id == 0) {
+
993 * // ... logic specific to making the container.
+
994 * return new vst_container_effect();
+
995 * } else {
+
996 * // ... logic specific to make sub effects
+
997 * return new vst_sub_effect();
+
998 * }
+
999 * }
+
1000 *
+
1001 * // ...
+
1002 * @endcode
+
1003 */
+
1004 VST_EFFECT_CATEGORY_0A = 0x0A,
+
1005 /** @sa VST_EFFECT_CATEGORY_0A */
+
1006 VST_EFFECT_CATEGORY_CONTAINER = 0x0A,
+
1007
+
1008 /** Waveform Generators
+
1009 * Examples: Sine Wave Generator, ...
+
1010 * Supports: Delay, Tail Samples
1011 *
-
1012 * @sa VST_EFFECT_CATEGORY_INSTRUMENT
-
1013 */
-
1014 VST_EFFECT_CATEGORY_0B = 0x0B,
-
1015 /** @sa VST_EFFECT_CATEGORY_0B */
-
1016 VST_EFFECT_CATEGORY_WAVEGENERATOR = 0x0B,
-
1017
-
1018 /** @private */
-
1019 VST_EFFECT_CATEGORY_MAX, // Not part of specification, marks maximum category.
-
1020
-
1021 /** @private */
-
1022 _VST_EFFECT_CATEGORY_PAD = 0xFFFFFFFFul,
-
1023};
-
1024
-
1025/** Effect Flags
-
1026 */
-
1027enum VST_EFFECT_FLAG {
-
1028 /** Effect provides a custom editor.
-
1029 * The host will not provide a generic editor interface and expects @ref VST_EFFECT_OPCODE_EDITOR_OPEN and
-
1030 * @ref VST_EFFECT_OPCODE_EDITOR_CLOSE to work as expected. We are in charge of notifying the host about various
-
1031 * things like which parameter is in focus and stuff.
-
1032 *
-
1033 * @sa VST_EFFECT_OPCODE_EDITOR_GET_RECT
-
1034 * @sa VST_EFFECT_OPCODE_EDITOR_OPEN
-
1035 * @sa VST_EFFECT_OPCODE_EDITOR_CLOSE
-
1036 * @sa VST_EFFECT_OPCODE_EDITOR_DRAW
-
1037 * @sa VST_EFFECT_OPCODE_EDITOR_MOUSE
-
1038 * @sa VST_EFFECT_OPCODE_EDITOR_KEYBOARD
-
1039 * @sa VST_EFFECT_OPCODE_EDITOR_KEEP_ALIVE
-
1040 * @sa VST_EFFECT_OPCODE_EDITOR_VKEY_DOWN
-
1041 * @sa VST_EFFECT_OPCODE_EDITOR_VKEY_UP
-
1042 * @sa VST_HOST_OPCODE_EDITOR_UPDATE
-
1043 * @sa VST_HOST_OPCODE_PARAM_START_EDIT
-
1044 * @sa VST_HOST_OPCODE_PARAM_STOP_EDIT
-
1045 * @sa VST_HOST_OPCODE_PARAM_UPDATE
-
1046 */
-
1047 VST_EFFECT_FLAG_1ls0 = 1 << 0,
-
1048 /** @sa VST_EFFECT_FLAG_1ls0 */
-
1049 VST_EFFECT_FLAG_EDITOR = 1 << 0,
-
1050
-
1051 //1 << 1,
-
1052 //1 << 2, // Only seen when the plug-in responds to VST_EFFECT_OPCODE_09. Seems to be ignored by hosts entirely.
-
1053 //1 << 3, // Only seen when the plug-in behaves differently in mono mode. Seems to be ignored by hosts entirely.
-
1054
-
1055 /** Effect uses process_float.
-
1056 *
-
1057 * @sa vst_effect_t.process_float
-
1058 * @sa vst_effect_process_float_t
-
1059 * @deprecated (VST 2.4) Must be set in VST 2.4 and later or the host should fail to load the plug-in.
-
1060 */
-
1061 VST_EFFECT_FLAG_1ls4 = 1 << 4,
-
1062 /** @sa VST_EFFECT_FLAG_1ls4 */
-
1063 VST_EFFECT_FLAG_SUPPORTS_FLOAT = 1 << 4,
-
1064
-
1065 /** Effect supports saving/loading programs/banks from unformatted chunk data.
-
1066 * When not set some sort of format is expected that I've yet to decipher.
-
1067 *
-
1068 * @sa VST_EFFECT_OPCODE_GET_CHUNK_DATA
-
1069 * @sa VST_EFFECT_OPCODE_SET_CHUNK_DATA
-
1070 */
-
1071 VST_EFFECT_FLAG_1ls5 = 1 << 5,
-
1072 /** @sa VST_EFFECT_FLAG_1ls5 */
-
1073 VST_EFFECT_FLAG_CHUNKS = 1 << 5,
-
1074
-
1075 //1 << 6,
-
1076 //1 << 7,
-
1077
-
1078 /** Effect is an Instrument/Generator
-
1079 *
-
1080 * This must be set in addition to @ref VST_EFFECT_CATEGORY_INSTRUMENT otherwise instruments don't work right.
-
1081 * @note (VST 2.x) Flag is new to VST 2.x and later.
-
1082 */
-
1083 VST_EFFECT_FLAG_1ls8 = 1 << 8,
-
1084 /** @sa VST_EFFECT_FLAG_1ls8 */
-
1085 VST_EFFECT_FLAG_INSTRUMENT = 1 << 8,
-
1086
-
1087 /** Effect does not produce tail samples when the input is silent.
-
1088 *
-
1089 * Not to be confused with choosing to tell the host there is no tail.
-
1090 * @sa VST_EFFECT_OPCODE_GET_TAIL_SAMPLES
-
1091 * @note (VST 2.x) Flag is new to VST 2.x and later.
-
1092 */
-
1093 VST_EFFECT_FLAG_1ls9 = 1 << 9,
-
1094 /** @sa VST_EFFECT_FLAG_1ls9 */
-
1095 VST_EFFECT_FLAG_SILENT_TAIL = 1 << 9,
-
1096
-
1097 //1 << 10,
-
1098 //1 << 11,
-
1099
-
1100 /** Effect supports process_double.
-
1101 * The host can freely choose between process_float and process_double as required.
-
1102 *
-
1103 * @note (VST 2.4) Available in VST 2.4 and later only.
-
1104 * @sa vst_effect_t.process_double
-
1105 * @sa vst_effect_process_double_t
-
1106 */
-
1107 VST_EFFECT_FLAG_1ls12 = 1 << 12,
-
1108 /** @sa VST_EFFECT_FLAG_1ls12 */
-
1109 VST_EFFECT_FLAG_SUPPORTS_DOUBLE = 1 << 12,
-
1110};
-
1111
-
1112/** Host to Plug-in Op-Codes
-
1113 * These Op-Codes are emitted by the host and we must either handle them or return 0 (false).
-
1114 */
-
1115enum VST_EFFECT_OPCODE {
-
1116 /** Create/Initialize the effect (if it has not been created already).
-
1117 *
-
1118 * @return Always 0.
-
1119 */
-
1120 VST_EFFECT_OPCODE_00 = 0x00,
-
1121 /** @sa VST_EFFECT_OPCODE_00 */
-
1122 VST_EFFECT_OPCODE_CREATE = 0x00,
+
1012 * I don't know why this exists, there's only one plug-in that has it and all it does is generate a 400hz sine wave.
+
1013 *
+
1014 * @sa VST_EFFECT_CATEGORY_INSTRUMENT
+
1015 */
+
1016 VST_EFFECT_CATEGORY_0B = 0x0B,
+
1017 /** @sa VST_EFFECT_CATEGORY_0B */
+
1018 VST_EFFECT_CATEGORY_WAVEGENERATOR = 0x0B,
+
1019
+
1020 /** @private */
+
1021 VST_EFFECT_CATEGORY_MAX, // Not part of specification, marks maximum category.
+
1022
+
1023 /** @private */
+
1024 _VST_EFFECT_CATEGORY_PAD = 0xFFFFFFFFul,
+
1025};
+
1026
+
1027/** Effect Flags
+
1028 */
+
1029enum VST_EFFECT_FLAG {
+
1030 /** Effect provides a custom editor.
+
1031 * The host will not provide a generic editor interface and expects @ref VST_EFFECT_OPCODE_EDITOR_OPEN and
+
1032 * @ref VST_EFFECT_OPCODE_EDITOR_CLOSE to work as expected. We are in charge of notifying the host about various
+
1033 * things like which parameter is in focus and stuff.
+
1034 *
+
1035 * @sa VST_EFFECT_OPCODE_EDITOR_GET_RECT
+
1036 * @sa VST_EFFECT_OPCODE_EDITOR_OPEN
+
1037 * @sa VST_EFFECT_OPCODE_EDITOR_CLOSE
+
1038 * @sa VST_EFFECT_OPCODE_EDITOR_DRAW
+
1039 * @sa VST_EFFECT_OPCODE_EDITOR_MOUSE
+
1040 * @sa VST_EFFECT_OPCODE_EDITOR_KEYBOARD
+
1041 * @sa VST_EFFECT_OPCODE_EDITOR_KEEP_ALIVE
+
1042 * @sa VST_EFFECT_OPCODE_EDITOR_VKEY_DOWN
+
1043 * @sa VST_EFFECT_OPCODE_EDITOR_VKEY_UP
+
1044 * @sa VST_HOST_OPCODE_EDITOR_UPDATE
+
1045 * @sa VST_HOST_OPCODE_PARAM_START_EDIT
+
1046 * @sa VST_HOST_OPCODE_PARAM_STOP_EDIT
+
1047 * @sa VST_HOST_OPCODE_PARAM_UPDATE
+
1048 */
+
1049 VST_EFFECT_FLAG_1ls0 = 1 << 0,
+
1050 /** @sa VST_EFFECT_FLAG_1ls0 */
+
1051 VST_EFFECT_FLAG_EDITOR = 1 << 0,
+
1052
+
1053 //1 << 1,
+
1054 //1 << 2, // Only seen when the plug-in responds to VST_EFFECT_OPCODE_09. Seems to be ignored by hosts entirely.
+
1055 //1 << 3, // Only seen when the plug-in behaves differently in mono mode. Seems to be ignored by hosts entirely.
+
1056
+
1057 /** Effect uses process_float.
+
1058 *
+
1059 * @sa vst_effect_t.process_float
+
1060 * @sa vst_effect_process_float_t
+
1061 * @deprecated (VST 2.4) Must be set in VST 2.4 and later or the host should fail to load the plug-in.
+
1062 */
+
1063 VST_EFFECT_FLAG_1ls4 = 1 << 4,
+
1064 /** @sa VST_EFFECT_FLAG_1ls4 */
+
1065 VST_EFFECT_FLAG_SUPPORTS_FLOAT = 1 << 4,
+
1066
+
1067 /** Effect supports saving/loading programs/banks from unformatted chunk data.
+
1068 * When not set some sort of format is expected that I've yet to decipher.
+
1069 *
+
1070 * @sa VST_EFFECT_OPCODE_GET_CHUNK_DATA
+
1071 * @sa VST_EFFECT_OPCODE_SET_CHUNK_DATA
+
1072 */
+
1073 VST_EFFECT_FLAG_1ls5 = 1 << 5,
+
1074 /** @sa VST_EFFECT_FLAG_1ls5 */
+
1075 VST_EFFECT_FLAG_CHUNKS = 1 << 5,
+
1076
+
1077 //1 << 6,
+
1078 //1 << 7,
+
1079
+
1080 /** Effect is an Instrument/Generator
+
1081 *
+
1082 * This must be set in addition to @ref VST_EFFECT_CATEGORY_INSTRUMENT otherwise instruments don't work right.
+
1083 * @note (VST 2.x) Flag is new to VST 2.x and later.
+
1084 */
+
1085 VST_EFFECT_FLAG_1ls8 = 1 << 8,
+
1086 /** @sa VST_EFFECT_FLAG_1ls8 */
+
1087 VST_EFFECT_FLAG_INSTRUMENT = 1 << 8,
+
1088
+
1089 /** Effect does not produce tail samples when the input is silent.
+
1090 *
+
1091 * Not to be confused with choosing to tell the host there is no tail.
+
1092 * @sa VST_EFFECT_OPCODE_GET_TAIL_SAMPLES
+
1093 * @note (VST 2.x) Flag is new to VST 2.x and later.
+
1094 */
+
1095 VST_EFFECT_FLAG_1ls9 = 1 << 9,
+
1096 /** @sa VST_EFFECT_FLAG_1ls9 */
+
1097 VST_EFFECT_FLAG_SILENT_TAIL = 1 << 9,
+
1098
+
1099 //1 << 10,
+
1100 //1 << 11,
+
1101
+
1102 /** Effect supports process_double.
+
1103 * The host can freely choose between process_float and process_double as required.
+
1104 *
+
1105 * @note (VST 2.4) Available in VST 2.4 and later only.
+
1106 * @sa vst_effect_t.process_double
+
1107 * @sa vst_effect_process_double_t
+
1108 */
+
1109 VST_EFFECT_FLAG_1ls12 = 1 << 12,
+
1110 /** @sa VST_EFFECT_FLAG_1ls12 */
+
1111 VST_EFFECT_FLAG_SUPPORTS_DOUBLE = 1 << 12,
+
1112};
+
1113
+
1114/** Host to Plug-in Op-Codes
+
1115 * These Op-Codes are emitted by the host and we must either handle them or return 0 (false).
+
1116 */
+
1117enum VST_EFFECT_OPCODE {
+
1118 /** Create/Initialize the effect (if it has not been created already).
+
1119 *
+
1120 * @return Always 0.
+
1121 */
+
1122 VST_EFFECT_OPCODE_00 = 0x00,
1123 /** @sa VST_EFFECT_OPCODE_00 */
-
1124 VST_EFFECT_OPCODE_INITIALIZE = 0x00,
-
1125
-
1126 /** Destroy the effect (if there is any) and free its memory.
-
1127 *
-
1128 * This should destroy the actual object created by VST_ENTRYPOINT.
+
1124 VST_EFFECT_OPCODE_CREATE = 0x00,
+
1125 /** @sa VST_EFFECT_OPCODE_00 */
+
1126 VST_EFFECT_OPCODE_INITIALIZE = 0x00,
+
1127
+
1128 /** Destroy the effect (if there is any) and free its memory.
1129 *
-
1130 * @return Always 0.
-
1131 */
-
1132 VST_EFFECT_OPCODE_01 = 0x01,
-
1133 /** @sa VST_EFFECT_OPCODE_01 */
-
1134 VST_EFFECT_OPCODE_DESTROY = 0x01,
-
1135
-
1136 /** Set which program number is currently select.
-
1137 *
-
1138 * @param p_int2 The program number to set. Can be negative for some reason.
-
1139 */
-
1140 VST_EFFECT_OPCODE_02 = 0x02,
-
1141 /** @sa VST_EFFECT_OPCODE_02 */
-
1142 VST_EFFECT_OPCODE_SET_PROGRAM = 0x02,
+
1130 * This should destroy the actual object created by VST_ENTRYPOINT.
+
1131 *
+
1132 * @return Always 0.
+
1133 */
+
1134 VST_EFFECT_OPCODE_01 = 0x01,
+
1135 /** @sa VST_EFFECT_OPCODE_01 */
+
1136 VST_EFFECT_OPCODE_DESTROY = 0x01,
+
1137
+
1138 /** Set which program number is currently select.
+
1139 *
+
1140 * @param p_int2 The program number to set. Can be negative for some reason.
+
1141 */
+
1142 VST_EFFECT_OPCODE_02 = 0x02,
1143 /** @sa VST_EFFECT_OPCODE_02 */
-
1144 VST_EFFECT_OPCODE_PROGRAM_SET = 0x02,
-
1145
-
1146 /** Get currently selected program number.
-
1147 *
-
1148 * @return The currently set program number. Can be negative for some reason.
-
1149 */
-
1150 VST_EFFECT_OPCODE_03 = 0x03,
-
1151 /** @sa VST_EFFECT_OPCODE_03 */
-
1152 VST_EFFECT_OPCODE_GET_PROGRAM = 0x03,
+
1144 VST_EFFECT_OPCODE_SET_PROGRAM = 0x02,
+
1145 /** @sa VST_EFFECT_OPCODE_02 */
+
1146 VST_EFFECT_OPCODE_PROGRAM_SET = 0x02,
+
1147
+
1148 /** Get currently selected program number.
+
1149 *
+
1150 * @return The currently set program number. Can be negative for some reason.
+
1151 */
+
1152 VST_EFFECT_OPCODE_03 = 0x03,
1153 /** @sa VST_EFFECT_OPCODE_03 */
-
1154 VST_EFFECT_OPCODE_PROGRAM_GET = 0x03,
-
1155
-
1156 /** Set the name of the currently selected program.
-
1157 *
-
1158 * @param p_ptr `const char[VST_BUFFER_SIZE_PROGRAM_NAME]` Zero terminated string.
-
1159 */
-
1160 VST_EFFECT_OPCODE_04 = 0x04,
-
1161 /** @sa VST_EFFECT_OPCODE_04 */
-
1162 VST_EFFECT_OPCODE_SET_PROGRAM_NAME = 0x04,
+
1154 VST_EFFECT_OPCODE_GET_PROGRAM = 0x03,
+
1155 /** @sa VST_EFFECT_OPCODE_03 */
+
1156 VST_EFFECT_OPCODE_PROGRAM_GET = 0x03,
+
1157
+
1158 /** Set the name of the currently selected program.
+
1159 *
+
1160 * @param p_ptr `const char[VST_BUFFER_SIZE_PROGRAM_NAME]` Zero terminated string.
+
1161 */
+
1162 VST_EFFECT_OPCODE_04 = 0x04,
1163 /** @sa VST_EFFECT_OPCODE_04 */
-
1164 VST_EFFECT_OPCODE_PROGRAM_SET_NAME = 0x04,
-
1165
-
1166 /** Get the name of the currently selected program.
-
1167 *
-
1168 * @param p_ptr `char[VST_BUFFER_SIZE_PROGRAM_NAME]` Zero terminated string.
-
1169 */
-
1170 VST_EFFECT_OPCODE_05 = 0x05,
-
1171 /** @sa VST_EFFECT_OPCODE_05 */
-
1172 VST_EFFECT_OPCODE_GET_PROGRAM_NAME = 0x05,
+
1164 VST_EFFECT_OPCODE_SET_PROGRAM_NAME = 0x04,
+
1165 /** @sa VST_EFFECT_OPCODE_04 */
+
1166 VST_EFFECT_OPCODE_PROGRAM_SET_NAME = 0x04,
+
1167
+
1168 /** Get the name of the currently selected program.
+
1169 *
+
1170 * @param p_ptr `char[VST_BUFFER_SIZE_PROGRAM_NAME]` Zero terminated string.
+
1171 */
+
1172 VST_EFFECT_OPCODE_05 = 0x05,
1173 /** @sa VST_EFFECT_OPCODE_05 */
-
1174 VST_EFFECT_OPCODE_PROGRAM_GET_NAME = 0x05,
-
1175
-
1176 /** Get the value? label for the parameter.
-
1177 *
-
1178 * @param p_int1 Parameter index.
-
1179 * @param p_ptr 'char[VST_BUFFER_SIZE_PARAM_LABEL]' Zero terminated string.
-
1180 * @return 0 on success, 1 on failure.
-
1181 */
-
1182 VST_EFFECT_OPCODE_06 = 0x06,
-
1183 /** @sa VST_EFFECT_OPCODE_06 */
-
1184 VST_EFFECT_OPCODE_PARAM_GETLABEL = 0x06,
+
1174 VST_EFFECT_OPCODE_GET_PROGRAM_NAME = 0x05,
+
1175 /** @sa VST_EFFECT_OPCODE_05 */
+
1176 VST_EFFECT_OPCODE_PROGRAM_GET_NAME = 0x05,
+
1177
+
1178 /** Get the value? label for the parameter.
+
1179 *
+
1180 * @param p_int1 Parameter index.
+
1181 * @param p_ptr 'char[VST_BUFFER_SIZE_PARAM_LABEL]' Zero terminated string.
+
1182 * @return 0 on success, 1 on failure.
+
1183 */
+
1184 VST_EFFECT_OPCODE_06 = 0x06,
1185 /** @sa VST_EFFECT_OPCODE_06 */
-
1186 VST_EFFECT_OPCODE_PARAM_GET_LABEL = 0x06,
+
1186 VST_EFFECT_OPCODE_PARAM_GETLABEL = 0x06,
1187 /** @sa VST_EFFECT_OPCODE_06 */
-
1188 VST_EFFECT_OPCODE_PARAM_LABEL = 0x06,
-
1189
-
1190 /** Get the string representing the value for the parameter.
-
1191 *
-
1192 * @param p_int1 Parameter index.
-
1193 * @param p_ptr 'char[VST_BUFFER_SIZE_PARAM_VALUE]' Zero terminated string.
-
1194 * @return 0 on success, 1 on failure.
-
1195 */
-
1196 VST_EFFECT_OPCODE_07 = 0x07,
-
1197 /** @sa VST_EFFECT_OPCODE_07 */
-
1198 VST_EFFECT_OPCODE_PARAM_GETVALUE = 0x07,
+
1188 VST_EFFECT_OPCODE_PARAM_GET_LABEL = 0x06,
+
1189 /** @sa VST_EFFECT_OPCODE_06 */
+
1190 VST_EFFECT_OPCODE_PARAM_LABEL = 0x06,
+
1191
+
1192 /** Get the string representing the value for the parameter.
+
1193 *
+
1194 * @param p_int1 Parameter index.
+
1195 * @param p_ptr 'char[VST_BUFFER_SIZE_PARAM_VALUE]' Zero terminated string.
+
1196 * @return 0 on success, 1 on failure.
+
1197 */
+
1198 VST_EFFECT_OPCODE_07 = 0x07,
1199 /** @sa VST_EFFECT_OPCODE_07 */
-
1200 VST_EFFECT_OPCODE_PARAM_GET_VALUE = 0x07,
+
1200 VST_EFFECT_OPCODE_PARAM_GETVALUE = 0x07,
1201 /** @sa VST_EFFECT_OPCODE_07 */
-
1202 VST_EFFECT_OPCODE_PARAM_VALUE = 0x07,
+
1202 VST_EFFECT_OPCODE_PARAM_GET_VALUE = 0x07,
1203 /** @sa VST_EFFECT_OPCODE_07 */
-
1204 VST_EFFECT_OPCODE_PARAM_VALUE_TO_STRING = 0x07,
-
1205
-
1206 /** Get the name for the parameter.
-
1207 *
-
1208 * @param p_int1 Parameter index.
-
1209 * @param p_ptr 'char[VST_BUFFER_SIZE_PARAM_NAME]' Zero terminated string.
-
1210 * @return 0 on success, 1 on failure.
-
1211 */
-
1212 VST_EFFECT_OPCODE_08 = 0x08,
-
1213 /** @sa VST_EFFECT_OPCODE_08 */
-
1214 VST_EFFECT_OPCODE_PARAM_GETNAME = 0x08,
+
1204 VST_EFFECT_OPCODE_PARAM_VALUE = 0x07,
+
1205 /** @sa VST_EFFECT_OPCODE_07 */
+
1206 VST_EFFECT_OPCODE_PARAM_VALUE_TO_STRING = 0x07,
+
1207
+
1208 /** Get the name for the parameter.
+
1209 *
+
1210 * @param p_int1 Parameter index.
+
1211 * @param p_ptr 'char[VST_BUFFER_SIZE_PARAM_NAME]' Zero terminated string.
+
1212 * @return 0 on success, 1 on failure.
+
1213 */
+
1214 VST_EFFECT_OPCODE_08 = 0x08,
1215 /** @sa VST_EFFECT_OPCODE_08 */
-
1216 VST_EFFECT_OPCODE_PARAM_GET_NAME = 0x08,
+
1216 VST_EFFECT_OPCODE_PARAM_GETNAME = 0x08,
1217 /** @sa VST_EFFECT_OPCODE_08 */
-
1218 VST_EFFECT_OPCODE_PARAM_NAME = 0x08,
-
1219
-
1220 /**
-
1221 *
-
1222 * @deprecated: (VST 2.3+) Not used in VST 2.3 or later.
-
1223 */
-
1224 VST_EFFECT_OPCODE_09 = 0x09,
-
1225
-
1226 /** Set the new sample rate for the plugin to use.
-
1227 *
-
1228 * @param p_float New sample rate as a float (double on 64-bit because register upgrades).
-
1229 */
-
1230 VST_EFFECT_OPCODE_0A = 0x0A,
-
1231 /** @sa VST_EFFECT_OPCODE_0A */
-
1232 VST_EFFECT_OPCODE_SETSAMPLERATE = 0x0A,
+
1218 VST_EFFECT_OPCODE_PARAM_GET_NAME = 0x08,
+
1219 /** @sa VST_EFFECT_OPCODE_08 */
+
1220 VST_EFFECT_OPCODE_PARAM_NAME = 0x08,
+
1221
+
1222 /**
+
1223 *
+
1224 * @deprecated: (VST 2.3+) Not used in VST 2.3 or later.
+
1225 */
+
1226 VST_EFFECT_OPCODE_09 = 0x09,
+
1227
+
1228 /** Set the new sample rate for the plugin to use.
+
1229 *
+
1230 * @param p_float New sample rate as a float (double on 64-bit because register upgrades).
+
1231 */
+
1232 VST_EFFECT_OPCODE_0A = 0x0A,
1233 /** @sa VST_EFFECT_OPCODE_0A */
-
1234 VST_EFFECT_OPCODE_SET_SAMPLE_RATE = 0x0A,
-
1235
-
1236 /** Sets the block size, which is the maximum number of samples passed into the effect via process calls.
-
1237 *
-
1238 * @param p_int2 The maximum number of samples to be passed in.
-
1239 */
-
1240 VST_EFFECT_OPCODE_0B = 0x0B,
-
1241 /** @sa VST_EFFECT_OPCODE_0B */
-
1242 VST_EFFECT_OPCODE_SETBLOCKSIZE = 0x0B,
+
1234 VST_EFFECT_OPCODE_SETSAMPLERATE = 0x0A,
+
1235 /** @sa VST_EFFECT_OPCODE_0A */
+
1236 VST_EFFECT_OPCODE_SET_SAMPLE_RATE = 0x0A,
+
1237
+
1238 /** Sets the block size, which is the maximum number of samples passed into the effect via process calls.
+
1239 *
+
1240 * @param p_int2 The maximum number of samples to be passed in.
+
1241 */
+
1242 VST_EFFECT_OPCODE_0B = 0x0B,
1243 /** @sa VST_EFFECT_OPCODE_0B */
-
1244 VST_EFFECT_OPCODE_SET_BLOCK_SIZE = 0x0B,
-
1245
-
1246 /** Effect processing should be suspended/paused or resumed/unpaused.
-
1247 *
-
1248 * Unclear if this is should result in a flush of buffers. In VST 2.3+ this is quite clear as we get process
-
1249 * begin/end.
-
1250 *
-
1251 * @param p_int2 @ref VST_STATUS_FALSE if the effect should suspend processing, @ref VST_STATUS_TRUE if it should
-
1252 * resume.
-
1253 */
-
1254 VST_EFFECT_OPCODE_0C = 0x0C,
-
1255 /** @sa VST_EFFECT_OPCODE_0C */
-
1256 VST_EFFECT_OPCODE_PAUSE_UNPAUSE = 0x0C,
+
1244 VST_EFFECT_OPCODE_SETBLOCKSIZE = 0x0B,
+
1245 /** @sa VST_EFFECT_OPCODE_0B */
+
1246 VST_EFFECT_OPCODE_SET_BLOCK_SIZE = 0x0B,
+
1247
+
1248 /** Effect processing should be suspended/paused or resumed/unpaused.
+
1249 *
+
1250 * Unclear if this is should result in a flush of buffers. In VST 2.3+ this is quite clear as we get process
+
1251 * begin/end.
+
1252 *
+
1253 * @param p_int2 @ref VST_STATUS_FALSE if the effect should suspend processing, @ref VST_STATUS_TRUE if it should
+
1254 * resume.
+
1255 */
+
1256 VST_EFFECT_OPCODE_0C = 0x0C,
1257 /** @sa VST_EFFECT_OPCODE_0C */
-
1258 VST_EFFECT_OPCODE_SUSPEND_RESUME = 0x0C,
+
1258 VST_EFFECT_OPCODE_PAUSE_UNPAUSE = 0x0C,
1259 /** @sa VST_EFFECT_OPCODE_0C */
-
1260 VST_EFFECT_OPCODE_SUSPEND = 0x0C,
-
1261
-
1262 /** Retrieve the client rect size of the plugins window.
-
1263 * If no window has been created, returns the default rect.
-
1264 *
-
1265 * @param p_ptr Pointer of type 'struct vst_rect_t*'.
-
1266 * @return On success, returns 1 and updates p_ptr to the rect. On failure, returns 0.
-
1267 */
-
1268 VST_EFFECT_OPCODE_0D = 0x0D,
-
1269 /** @sa VST_EFFECT_OPCODE_0D */
-
1270 VST_EFFECT_OPCODE_WINDOW_GETRECT = 0x0D,
+
1260 VST_EFFECT_OPCODE_SUSPEND_RESUME = 0x0C,
+
1261 /** @sa VST_EFFECT_OPCODE_0C */
+
1262 VST_EFFECT_OPCODE_SUSPEND = 0x0C,
+
1263
+
1264 /** Retrieve the client rect size of the plugins window.
+
1265 * If no window has been created, returns the default rect.
+
1266 *
+
1267 * @param p_ptr Pointer of type 'struct vst_rect_t*'.
+
1268 * @return On success, returns 1 and updates p_ptr to the rect. On failure, returns 0.
+
1269 */
+
1270 VST_EFFECT_OPCODE_0D = 0x0D,
1271 /** @sa VST_EFFECT_OPCODE_0D */
-
1272 VST_EFFECT_OPCODE_EDITOR_RECT = 0x0D,
+
1272 VST_EFFECT_OPCODE_WINDOW_GETRECT = 0x0D,
1273 /** @sa VST_EFFECT_OPCODE_0D */
-
1274 VST_EFFECT_OPCODE_EDITOR_GET_RECT = 0x0D,
-
1275
-
1276 /** Create the window for the plugin.
-
1277 *
-
1278 * @param p_ptr HWND of the parent window.
-
1279 * @return 0 on failure, or HWND on success.
-
1280 */
-
1281 VST_EFFECT_OPCODE_0E = 0x0E,
-
1282 /** @sa VST_EFFECT_OPCODE_0E */
-
1283 VST_EFFECT_OPCODE_WINDOW_CREATE = 0x0E,
+
1274 VST_EFFECT_OPCODE_EDITOR_RECT = 0x0D,
+
1275 /** @sa VST_EFFECT_OPCODE_0D */
+
1276 VST_EFFECT_OPCODE_EDITOR_GET_RECT = 0x0D,
+
1277
+
1278 /** Create the window for the plugin.
+
1279 *
+
1280 * @param p_ptr HWND of the parent window.
+
1281 * @return 0 on failure, or HWND on success.
+
1282 */
+
1283 VST_EFFECT_OPCODE_0E = 0x0E,
1284 /** @sa VST_EFFECT_OPCODE_0E */
-
1285 VST_EFFECT_OPCODE_EDITOR_OPEN = 0x0E,
-
1286
-
1287 /** Destroy the plugins window.
-
1288 *
-
1289 * @return Always 0.
-
1290 */
-
1291 VST_EFFECT_OPCODE_0F = 0x0F,
-
1292 /** @sa VST_EFFECT_OPCODE_0F */
-
1293 VST_EFFECT_OPCODE_WINDOW_DESTROY = 0x0F,
+
1285 VST_EFFECT_OPCODE_WINDOW_CREATE = 0x0E,
+
1286 /** @sa VST_EFFECT_OPCODE_0E */
+
1287 VST_EFFECT_OPCODE_EDITOR_OPEN = 0x0E,
+
1288
+
1289 /** Destroy the plugins window.
+
1290 *
+
1291 * @return Always 0.
+
1292 */
+
1293 VST_EFFECT_OPCODE_0F = 0x0F,
1294 /** @sa VST_EFFECT_OPCODE_0F */
-
1295 VST_EFFECT_OPCODE_EDITOR_CLOSE = 0x0F,
-
1296
-
1297 /** Window Draw Event?
-
1298 *
-
1299 * Ocasionally called simultaneously as WM_DRAW on windows.
+
1295 VST_EFFECT_OPCODE_WINDOW_DESTROY = 0x0F,
+
1296 /** @sa VST_EFFECT_OPCODE_0F */
+
1297 VST_EFFECT_OPCODE_EDITOR_CLOSE = 0x0F,
+
1298
+
1299 /** Window Draw Event?
1300 *
-
1301 * @note Present in some VST 2.1 or earlier plugins.
+
1301 * Ocasionally called simultaneously as WM_DRAW on windows.
1302 *
-
1303 * @note Appears to be Mac OS exclusive.
+
1303 * @note Present in some VST 2.1 or earlier plugins.
1304 *
-
1305 * @deprecated (VST 2.4+) Likely deprecated in VST 2.4 and later.
-
1306 */
-
1307 VST_EFFECT_OPCODE_10 = 0x10,
-
1308 /** @sa VST_EFFECT_OPCODE_10 */
-
1309 VST_EFFECT_OPCODE_WINDOW_DRAW = 0x10,
+
1305 * @note Appears to be Mac OS exclusive.
+
1306 *
+
1307 * @deprecated (VST 2.4+) Likely deprecated in VST 2.4 and later.
+
1308 */
+
1309 VST_EFFECT_OPCODE_10 = 0x10,
1310 /** @sa VST_EFFECT_OPCODE_10 */
-
1311 VST_EFFECT_OPCODE_EDITOR_DRAW = 0x10,
-
1312
-
1313 /** Window Mouse Event?
-
1314 *
-
1315 * Called at the same time mouse events happen.
+
1311 VST_EFFECT_OPCODE_WINDOW_DRAW = 0x10,
+
1312 /** @sa VST_EFFECT_OPCODE_10 */
+
1313 VST_EFFECT_OPCODE_EDITOR_DRAW = 0x10,
+
1314
+
1315 /** Window Mouse Event?
1316 *
-
1317 * @note Present in some VST 2.1 or earlier plugins.
+
1317 * Called at the same time mouse events happen.
1318 *
-
1319 * @note Appears to be Mac OS exclusive.
+
1319 * @note Present in some VST 2.1 or earlier plugins.
1320 *
-
1321 * @deprecated (VST 2.4+) Likely deprecated in VST 2.4 and later.
-
1322 */
-
1323 VST_EFFECT_OPCODE_11 = 0x11,
-
1324 /** @sa VST_EFFECT_OPCODE_11 */
-
1325 VST_EFFECT_OPCODE_WINDOW_MOUSE = 0x11,
+
1321 * @note Appears to be Mac OS exclusive.
+
1322 *
+
1323 * @deprecated (VST 2.4+) Likely deprecated in VST 2.4 and later.
+
1324 */
+
1325 VST_EFFECT_OPCODE_11 = 0x11,
1326 /** @sa VST_EFFECT_OPCODE_11 */
-
1327 VST_EFFECT_OPCODE_EDITOR_MOUSE = 0x11,
-
1328
-
1329 /** Window Keyboard Event?
-
1330 *
-
1331 * Called at the same time keyboard events happen.
+
1327 VST_EFFECT_OPCODE_WINDOW_MOUSE = 0x11,
+
1328 /** @sa VST_EFFECT_OPCODE_11 */
+
1329 VST_EFFECT_OPCODE_EDITOR_MOUSE = 0x11,
+
1330
+
1331 /** Window Keyboard Event?
1332 *
-
1333 * @note Present in some VST 2.1 or earlier plugins.
+
1333 * Called at the same time keyboard events happen.
1334 *
-
1335 * @note Appears to be Mac OS exclusive.
+
1335 * @note Present in some VST 2.1 or earlier plugins.
1336 *
-
1337 * @deprecated (VST 2.4+) Likely deprecated in VST 2.4 and later.
-
1338 */
-
1339 VST_EFFECT_OPCODE_12 = 0x12,
-
1340 /** @sa VST_EFFECT_OPCODE_12 */
-
1341 VST_EFFECT_OPCODE_WINDOW_KEYBOARD = 0x12,
+
1337 * @note Appears to be Mac OS exclusive.
+
1338 *
+
1339 * @deprecated (VST 2.4+) Likely deprecated in VST 2.4 and later.
+
1340 */
+
1341 VST_EFFECT_OPCODE_12 = 0x12,
1342 /** @sa VST_EFFECT_OPCODE_12 */
-
1343 VST_EFFECT_OPCODE_EDITOR_KEYBOARD = 0x12,
-
1344
-
1345 /** Window/Editor Idle/Keep-Alive Callback?
-
1346 *
-
1347 * Does not receive any parameters. Randomly called when nothing happens? Idle/Keep-Alive callback?
-
1348 */
-
1349 VST_EFFECT_OPCODE_13 = 0x13,
-
1350 /** @sa VST_EFFECT_OPCODE_13 */
-
1351 VST_EFFECT_OPCODE_EDITOR_KEEP_ALIVE = 0x13,
-
1352
-
1353 /** Window Focus Event?
-
1354 *
-
1355 * Sometimes called when the editor window goes back into focus.
+
1343 VST_EFFECT_OPCODE_WINDOW_KEYBOARD = 0x12,
+
1344 /** @sa VST_EFFECT_OPCODE_12 */
+
1345 VST_EFFECT_OPCODE_EDITOR_KEYBOARD = 0x12,
+
1346
+
1347 /** Window/Editor Idle/Keep-Alive Callback?
+
1348 *
+
1349 * Does not receive any parameters. Randomly called when nothing happens? Idle/Keep-Alive callback?
+
1350 */
+
1351 VST_EFFECT_OPCODE_13 = 0x13,
+
1352 /** @sa VST_EFFECT_OPCODE_13 */
+
1353 VST_EFFECT_OPCODE_EDITOR_KEEP_ALIVE = 0x13,
+
1354
+
1355 /** Window Focus Event?
1356 *
-
1357 * @note Present in some VST 2.1 or earlier plugins.
-
1358 * @note Appears to be Mac OS exclusive.
-
1359 * @deprecated (VST 2.4+) Likely deprecated in VST 2.4 and later.
-
1360 */
-
1361 VST_EFFECT_OPCODE_14 = 0x14,
-
1362
-
1363 /** Window Unfocus Event?
-
1364 *
-
1365 * Sometimes called when the editor window goes out of focus.
+
1357 * Sometimes called when the editor window goes back into focus.
+
1358 *
+
1359 * @note Present in some VST 2.1 or earlier plugins.
+
1360 * @note Appears to be Mac OS exclusive.
+
1361 * @deprecated (VST 2.4+) Likely deprecated in VST 2.4 and later.
+
1362 */
+
1363 VST_EFFECT_OPCODE_14 = 0x14,
+
1364
+
1365 /** Window Unfocus Event?
1366 *
-
1367 * @note Present in some VST 2.1 or earlier plugins.
-
1368 * @note Appears to be Mac OS exclusive.
-
1369 * @deprecated (VST 2.4+) Likely deprecated in VST 2.4 and later.
-
1370 */
-
1371 VST_EFFECT_OPCODE_15 = 0x15,
-
1372
-
1373 /**
-
1374 *
-
1375 * @note Present in some VST 2.1 or earlier plugins.
-
1376 * @important Almost all plug-ins return the @ref VST_FOURCC 'NvEf' (0x4E764566) here.
-
1377 * @deprecated (VST 2.4+) Likely deprecated in VST 2.4 and later.
-
1378 */
-
1379 VST_EFFECT_OPCODE_16 = 0x16,
-
1380 /** @sa VST_EFFECT_OPCODE_16 */
-
1381 VST_EFFECT_OPCODE_FOURCC = 0x16,
-
1382
-
1383 /** Get Chunk Data
-
1384 *
-
1385 * Save current program or bank state to a buffer.
-
1386 * Behavior is different based on the @ref VST_EFFECT_FLAG_CHUNKS flag.
-
1387 *
-
1388 * @sa VST_EFFECT_FLAG_CHUNKS
-
1389 * @param p_int1 0 means Bank, 1 means Program, nothing else used?
-
1390 * @param p_ptr `void**` Pointer to a potential pointer containing your own chunk data.
-
1391 * @return Size of the Chunk Data in bytes.
-
1392 */
-
1393 VST_EFFECT_OPCODE_17 = 0x17,
-
1394 /** @sa VST_EFFECT_OPCODE_17 */
-
1395 VST_EFFECT_OPCODE_GET_CHUNK_DATA = 0x17,
-
1396
-
1397 /** Set Chunk Data
-
1398 *
-
1399 * Restore current program or bank state from a buffer.
-
1400 * Behavior is different based on the @ref VST_EFFECT_FLAG_CHUNKS flag.
-
1401 *
-
1402 * @sa VST_EFFECT_FLAG_CHUNKS
-
1403 * @param p_int1 0 means Bank, 1 means Program, nothing else used?
-
1404 * @param p_int2 Size of the Chunk Data in bytes.
-
1405 * @param p_ptr `void*` Pointer to a buffer containing chunk data.
-
1406 */
-
1407 VST_EFFECT_OPCODE_18 = 0x18,
-
1408 /** @sa VST_EFFECT_OPCODE_18 */
-
1409 VST_EFFECT_OPCODE_SET_CHUNK_DATA = 0x18,
-
1410
-
1411 //--------------------------------------------------------------------------------
-
1412 // VST 2.x starts here.
+
1367 * Sometimes called when the editor window goes out of focus.
+
1368 *
+
1369 * @note Present in some VST 2.1 or earlier plugins.
+
1370 * @note Appears to be Mac OS exclusive.
+
1371 * @deprecated (VST 2.4+) Likely deprecated in VST 2.4 and later.
+
1372 */
+
1373 VST_EFFECT_OPCODE_15 = 0x15,
+
1374
+
1375 /**
+
1376 *
+
1377 * @note Present in some VST 2.1 or earlier plugins.
+
1378 * @important Almost all plug-ins return the @ref VST_FOURCC 'NvEf' (0x4E764566) here.
+
1379 * @deprecated (VST 2.4+) Likely deprecated in VST 2.4 and later.
+
1380 */
+
1381 VST_EFFECT_OPCODE_16 = 0x16,
+
1382 /** @sa VST_EFFECT_OPCODE_16 */
+
1383 VST_EFFECT_OPCODE_FOURCC = 0x16,
+
1384
+
1385 /** Get Chunk Data
+
1386 *
+
1387 * Save current program or bank state to a buffer.
+
1388 * Behavior is different based on the @ref VST_EFFECT_FLAG_CHUNKS flag.
+
1389 *
+
1390 * @sa VST_EFFECT_FLAG_CHUNKS
+
1391 * @param p_int1 0 means Bank, 1 means Program, nothing else used?
+
1392 * @param p_ptr `void**` Pointer to a potential pointer containing your own chunk data.
+
1393 * @return Size of the Chunk Data in bytes.
+
1394 */
+
1395 VST_EFFECT_OPCODE_17 = 0x17,
+
1396 /** @sa VST_EFFECT_OPCODE_17 */
+
1397 VST_EFFECT_OPCODE_GET_CHUNK_DATA = 0x17,
+
1398
+
1399 /** Set Chunk Data
+
1400 *
+
1401 * Restore current program or bank state from a buffer.
+
1402 * Behavior is different based on the @ref VST_EFFECT_FLAG_CHUNKS flag.
+
1403 *
+
1404 * @sa VST_EFFECT_FLAG_CHUNKS
+
1405 * @param p_int1 0 means Bank, 1 means Program, nothing else used?
+
1406 * @param p_int2 Size of the Chunk Data in bytes.
+
1407 * @param p_ptr `void*` Pointer to a buffer containing chunk data.
+
1408 */
+
1409 VST_EFFECT_OPCODE_18 = 0x18,
+
1410 /** @sa VST_EFFECT_OPCODE_18 */
+
1411 VST_EFFECT_OPCODE_SET_CHUNK_DATA = 0x18,
+
1412
1413 //--------------------------------------------------------------------------------
-
1414
-
1415 /**
-
1416 *
-
1417 * Appears to be related to midi and audio events.
-
1418 * @note (VST 2.0+) Available from VST 2.0 onwards.
-
1419 */
-
1420 VST_EFFECT_OPCODE_19 = 0x19,
-
1421
-
1422 /** Can the parameter be automated?
-
1423 *
-
1424 * @note (VST 2.0+) Available from VST 2.0 onwards.
-
1425 * @param p_int1 Index of the parameter.
-
1426 * @return 1 if the parameter can be automated, otherwise 0.
-
1427 */
-
1428 VST_EFFECT_OPCODE_1A = 0x1A,
-
1429 /** @sa VST_EFFECT_OPCODE_1A */
-
1430 VST_EFFECT_OPCODE_PARAM_ISAUTOMATABLE = 0x1A,
+
1414 // VST 2.x starts here.
+
1415 //--------------------------------------------------------------------------------
+
1416
+
1417 /**
+
1418 *
+
1419 * Appears to be related to midi and audio events.
+
1420 * @note (VST 2.0+) Available from VST 2.0 onwards.
+
1421 */
+
1422 VST_EFFECT_OPCODE_19 = 0x19,
+
1423
+
1424 /** Can the parameter be automated?
+
1425 *
+
1426 * @note (VST 2.0+) Available from VST 2.0 onwards.
+
1427 * @param p_int1 Index of the parameter.
+
1428 * @return 1 if the parameter can be automated, otherwise 0.
+
1429 */
+
1430 VST_EFFECT_OPCODE_1A = 0x1A,
1431 /** @sa VST_EFFECT_OPCODE_1A */
-
1432 VST_EFFECT_OPCODE_PARAM_IS_AUTOMATABLE = 0x1A,
+
1432 VST_EFFECT_OPCODE_PARAM_ISAUTOMATABLE = 0x1A,
1433 /** @sa VST_EFFECT_OPCODE_1A */
-
1434 VST_EFFECT_OPCODE_PARAM_AUTOMATABLE = 0x1A,
-
1435
-
1436 /** Set Parameter value from string representation.
-
1437 *
-
1438 * @note (VST 2.0+) Available from VST 2.0 onwards.
-
1439 * @param p_int1 Index of the parameter.
-
1440 * @param p_ptr `const char*` Zero terminated string representation of the value to set.
-
1441 * @return 1 if it worked, otherwise 0.
-
1442 */
-
1443 VST_EFFECT_OPCODE_1B = 0x1B,
-
1444 /** @sa VST_EFFECT_OPCODE_1B */
-
1445 VST_EFFECT_OPCODE_PARAM_SET_VALUE = 0x1B,
+
1434 VST_EFFECT_OPCODE_PARAM_IS_AUTOMATABLE = 0x1A,
+
1435 /** @sa VST_EFFECT_OPCODE_1A */
+
1436 VST_EFFECT_OPCODE_PARAM_AUTOMATABLE = 0x1A,
+
1437
+
1438 /** Set Parameter value from string representation.
+
1439 *
+
1440 * @note (VST 2.0+) Available from VST 2.0 onwards.
+
1441 * @param p_int1 Index of the parameter.
+
1442 * @param p_ptr `const char*` Zero terminated string representation of the value to set.
+
1443 * @return 1 if it worked, otherwise 0.
+
1444 */
+
1445 VST_EFFECT_OPCODE_1B = 0x1B,
1446 /** @sa VST_EFFECT_OPCODE_1B */
-
1447 VST_EFFECT_OPCODE_PARAM_VALUE_FROM_STRING = 0x1B,
-
1448
-
1449 /**
-
1450 *
-
1451 *
-
1452 * @note (VST 2.0+) Available from VST 2.0 onwards.
-
1453 */
-
1454 VST_EFFECT_OPCODE_1C = 0x1C,
-
1455
-
1456 /**
-
1457 *
-
1458 * @note (VST 2.0+) Available from VST 2.0 onwards.
-
1459 * @sa VST_EFFECT_OPCODE_05
-
1460 */
-
1461 VST_EFFECT_OPCODE_1D = 0x1D,
-
1462
-
1463 /**
-
1464 *
-
1465 *
-
1466 * @note (VST 2.0+) Available from VST 2.0 onwards.
-
1467 */
-
1468 VST_EFFECT_OPCODE_1E = 0x1E,
-
1469
-
1470 /** Input connected.
-
1471 *
-
1472 *
-
1473 * @note (VST 2.0+) Available from VST 2.0 onwards.
-
1474 */
-
1475 VST_EFFECT_OPCODE_1F = 0x1F,
-
1476
-
1477 /** Input disconnected.
-
1478 *
-
1479 *
-
1480 * @note (VST 2.0+) Available from VST 2.0 onwards.
-
1481 */
-
1482 VST_EFFECT_OPCODE_20 = 0x20,
-
1483
-
1484 /** Retrieve properties for the given input index.
-
1485 *
-
1486 * @note (VST 2.0+) Available from VST 2.0 onwards.
-
1487 * @param p_int1 Index of the input to get the properties for.
-
1488 * @param p_ptr Pointer to @ref vst_stream_properties_t for the selected input provided by the host.
-
1489 * @return @ref VST_STATUS_TRUE if p_ptr is updated, @ref VST_STATUS_FALSE otherwise.
-
1490 */
-
1491 VST_EFFECT_OPCODE_21 = 0x21,
-
1492 /** @sa VST_EFFECT_OPCODE_21 */
-
1493 VST_EFFECT_OPCODE_INPUT_GET_PROPERTIES = 0x21,
-
1494
-
1495 /** Retrieve properties for the given output index.
-
1496 *
-
1497 * @note (VST 2.0+) Available from VST 2.0 onwards.
-
1498 * @param p_int1 Index of the output to get the properties for.
-
1499 * @param p_ptr Pointer to @ref vst_stream_properties_t for the selected output provided by the host.
-
1500 * @return @ref VST_STATUS_TRUE if p_ptr is updated, @ref VST_STATUS_FALSE otherwise.
-
1501 */
-
1502 VST_EFFECT_OPCODE_22 = 0x22,
-
1503 /** @sa VST_EFFECT_OPCODE_22 */
-
1504 VST_EFFECT_OPCODE_OUTPUT_GET_PROPERTIES = 0x22,
-
1505
-
1506 /** Retrieve category of this effect.
-
1507 *
-
1508 * @note (VST 2.0+) Available from VST 2.0 onwards.
-
1509 * @return The category that this effect is in, see @ref VST_EFFECT_CATEGORY.
-
1510 */
-
1511 VST_EFFECT_OPCODE_23 = 0x23,
-
1512 /** @sa VST_EFFECT_OPCODE_23 */
-
1513 VST_EFFECT_OPCODE_EFFECT_CATEGORY = 0x23,
+
1447 VST_EFFECT_OPCODE_PARAM_SET_VALUE = 0x1B,
+
1448 /** @sa VST_EFFECT_OPCODE_1B */
+
1449 VST_EFFECT_OPCODE_PARAM_VALUE_FROM_STRING = 0x1B,
+
1450
+
1451 /**
+
1452 *
+
1453 *
+
1454 * @note (VST 2.0+) Available from VST 2.0 onwards.
+
1455 */
+
1456 VST_EFFECT_OPCODE_1C = 0x1C,
+
1457
+
1458 /**
+
1459 *
+
1460 * @note (VST 2.0+) Available from VST 2.0 onwards.
+
1461 * @sa VST_EFFECT_OPCODE_05
+
1462 */
+
1463 VST_EFFECT_OPCODE_1D = 0x1D,
+
1464
+
1465 /**
+
1466 *
+
1467 *
+
1468 * @note (VST 2.0+) Available from VST 2.0 onwards.
+
1469 */
+
1470 VST_EFFECT_OPCODE_1E = 0x1E,
+
1471
+
1472 /** Input connected.
+
1473 *
+
1474 *
+
1475 * @note (VST 2.0+) Available from VST 2.0 onwards.
+
1476 */
+
1477 VST_EFFECT_OPCODE_1F = 0x1F,
+
1478
+
1479 /** Input disconnected.
+
1480 *
+
1481 *
+
1482 * @note (VST 2.0+) Available from VST 2.0 onwards.
+
1483 */
+
1484 VST_EFFECT_OPCODE_20 = 0x20,
+
1485
+
1486 /** Retrieve properties for the given input index.
+
1487 *
+
1488 * @note (VST 2.0+) Available from VST 2.0 onwards.
+
1489 * @param p_int1 Index of the input to get the properties for.
+
1490 * @param p_ptr Pointer to @ref vst_stream_properties_t for the selected input provided by the host.
+
1491 * @return @ref VST_STATUS_TRUE if p_ptr is updated, @ref VST_STATUS_FALSE otherwise.
+
1492 */
+
1493 VST_EFFECT_OPCODE_21 = 0x21,
+
1494 /** @sa VST_EFFECT_OPCODE_21 */
+
1495 VST_EFFECT_OPCODE_INPUT_GET_PROPERTIES = 0x21,
+
1496
+
1497 /** Retrieve properties for the given output index.
+
1498 *
+
1499 * @note (VST 2.0+) Available from VST 2.0 onwards.
+
1500 * @param p_int1 Index of the output to get the properties for.
+
1501 * @param p_ptr Pointer to @ref vst_stream_properties_t for the selected output provided by the host.
+
1502 * @return @ref VST_STATUS_TRUE if p_ptr is updated, @ref VST_STATUS_FALSE otherwise.
+
1503 */
+
1504 VST_EFFECT_OPCODE_22 = 0x22,
+
1505 /** @sa VST_EFFECT_OPCODE_22 */
+
1506 VST_EFFECT_OPCODE_OUTPUT_GET_PROPERTIES = 0x22,
+
1507
+
1508 /** Retrieve category of this effect.
+
1509 *
+
1510 * @note (VST 2.0+) Available from VST 2.0 onwards.
+
1511 * @return The category that this effect is in, see @ref VST_EFFECT_CATEGORY.
+
1512 */
+
1513 VST_EFFECT_OPCODE_23 = 0x23,
1514 /** @sa VST_EFFECT_OPCODE_23 */
-
1515 VST_EFFECT_OPCODE_CATEGORY = 0x23,
-
1516
-
1517 /**
-
1518 *
-
1519 *
-
1520 * @note (VST 2.0+) Available from VST 2.0 onwards.
-
1521 */
-
1522 VST_EFFECT_OPCODE_24 = 0x24,
-
1523
-
1524 /**
-
1525 *
-
1526 *
-
1527 * @note (VST 2.0+) Available from VST 2.0 onwards.
-
1528 */
-
1529 VST_EFFECT_OPCODE_25 = 0x25,
-
1530
-
1531 /**
-
1532 *
-
1533 * Seen in plug-ins with @ref VST_EFFECT_CATEGORY_OFFLINE.
-
1534 * @note (VST 2.0+) Available from VST 2.0 onwards.
-
1535 */
-
1536 VST_EFFECT_OPCODE_26 = 0x26,
-
1537
-
1538 /**
-
1539 *
-
1540 * Seen in plug-ins with @ref VST_EFFECT_CATEGORY_OFFLINE.
-
1541 * @note (VST 2.0+) Available from VST 2.0 onwards.
-
1542 */
-
1543 VST_EFFECT_OPCODE_27 = 0x27,
-
1544
-
1545 /**
-
1546 *
-
1547 * Seen in plug-ins with @ref VST_EFFECT_CATEGORY_OFFLINE.
-
1548 * @note (VST 2.0+) Available from VST 2.0 onwards.
-
1549 */
-
1550 VST_EFFECT_OPCODE_28 = 0x28,
-
1551
-
1552 /**
-
1553 *
-
1554 * Seen in plug-ins with @ref VST_EFFECT_CATEGORY_OFFLINE.
-
1555 * @note (VST 2.0+) Available from VST 2.0 onwards.
-
1556 */
-
1557 VST_EFFECT_OPCODE_29 = 0x29,
-
1558
-
1559 /** Host wants to change the speaker arrangement.
-
1560 *
-
1561 * @note (VST 2.0+) Available from VST 2.0 onwards.
-
1562 * @param p_int2 Pointer to a @ref vst_speaker_arrangement_t for the input.
-
1563 * @param p_ptr Pointer to a @ref vst_speaker_arrangement_t for the output.
-
1564 * @return @ref VST_STATUS_TRUE if we accept the new arrangement, @ref VST_STATUS_FALSE if we don't in which case
-
1565 * the host is required to ask for the speaker arrangement via @ref VST_EFFECT_OPCODE_GET_SPEAKER_ARRANGEMENT
-
1566 * and may retry this op-code with different values.
-
1567 * @sa vst_effect_t.num_inputs
-
1568 * @sa vst_effect_t.num_outputs
-
1569 * @sa VST_EFFECT_OPCODE_GET_SPEAKER_ARRANGEMENT
-
1570 */
-
1571 VST_EFFECT_OPCODE_2A = 0x2A,
-
1572 /** @sa VST_EFFECT_OPCODE_2A */
-
1573 VST_EFFECT_OPCODE_SET_SPEAKER_ARRANGEMENT = 0x2A,
-
1574
-
1575 /**
-
1576 *
-
1577 *
-
1578 */
-
1579 VST_EFFECT_OPCODE_2B = 0x2B,
-
1580
-
1581 /** Enable/Disable bypassing the effect.
-
1582 *
-
1583 * See @ref VST_EFFECT_OPCODE_SUPPORTS with @ref vst_effect_supports_t.bypass for more information.
+
1515 VST_EFFECT_OPCODE_EFFECT_CATEGORY = 0x23,
+
1516 /** @sa VST_EFFECT_OPCODE_23 */
+
1517 VST_EFFECT_OPCODE_CATEGORY = 0x23,
+
1518
+
1519 /**
+
1520 *
+
1521 *
+
1522 * @note (VST 2.0+) Available from VST 2.0 onwards.
+
1523 */
+
1524 VST_EFFECT_OPCODE_24 = 0x24,
+
1525
+
1526 /**
+
1527 *
+
1528 *
+
1529 * @note (VST 2.0+) Available from VST 2.0 onwards.
+
1530 */
+
1531 VST_EFFECT_OPCODE_25 = 0x25,
+
1532
+
1533 /**
+
1534 *
+
1535 * Seen in plug-ins with @ref VST_EFFECT_CATEGORY_OFFLINE.
+
1536 * @note (VST 2.0+) Available from VST 2.0 onwards.
+
1537 */
+
1538 VST_EFFECT_OPCODE_26 = 0x26,
+
1539
+
1540 /**
+
1541 *
+
1542 * Seen in plug-ins with @ref VST_EFFECT_CATEGORY_OFFLINE.
+
1543 * @note (VST 2.0+) Available from VST 2.0 onwards.
+
1544 */
+
1545 VST_EFFECT_OPCODE_27 = 0x27,
+
1546
+
1547 /**
+
1548 *
+
1549 * Seen in plug-ins with @ref VST_EFFECT_CATEGORY_OFFLINE.
+
1550 * @note (VST 2.0+) Available from VST 2.0 onwards.
+
1551 */
+
1552 VST_EFFECT_OPCODE_28 = 0x28,
+
1553
+
1554 /**
+
1555 *
+
1556 * Seen in plug-ins with @ref VST_EFFECT_CATEGORY_OFFLINE.
+
1557 * @note (VST 2.0+) Available from VST 2.0 onwards.
+
1558 */
+
1559 VST_EFFECT_OPCODE_29 = 0x29,
+
1560
+
1561 /** Host wants to change the speaker arrangement.
+
1562 *
+
1563 * @note (VST 2.0+) Available from VST 2.0 onwards.
+
1564 * @param p_int2 Pointer to a @ref vst_speaker_arrangement_t for the input.
+
1565 * @param p_ptr Pointer to a @ref vst_speaker_arrangement_t for the output.
+
1566 * @return @ref VST_STATUS_TRUE if we accept the new arrangement, @ref VST_STATUS_FALSE if we don't in which case
+
1567 * the host is required to ask for the speaker arrangement via @ref VST_EFFECT_OPCODE_GET_SPEAKER_ARRANGEMENT
+
1568 * and may retry this op-code with different values.
+
1569 * @sa vst_effect_t.num_inputs
+
1570 * @sa vst_effect_t.num_outputs
+
1571 * @sa VST_EFFECT_OPCODE_GET_SPEAKER_ARRANGEMENT
+
1572 */
+
1573 VST_EFFECT_OPCODE_2A = 0x2A,
+
1574 /** @sa VST_EFFECT_OPCODE_2A */
+
1575 VST_EFFECT_OPCODE_SET_SPEAKER_ARRANGEMENT = 0x2A,
+
1576
+
1577 /**
+
1578 *
+
1579 *
+
1580 */
+
1581 VST_EFFECT_OPCODE_2B = 0x2B,
+
1582
+
1583 /** Enable/Disable bypassing the effect.
1584 *
-
1585 * @note (VST 2.0+) Available from VST 2.0 onwards.
-
1586 * @param p_int2 Zero if bypassing the effect is disabled, otherwise 1.
-
1587 */
-
1588 VST_EFFECT_OPCODE_2C = 0x2C,
-
1589 /** @sa VST_EFFECT_OPCODE_2C */
-
1590 VST_EFFECT_OPCODE_BYPASS = 0x2C,
-
1591
-
1592 /** Retrieve the effect name into the ptr buffer.
-
1593 *
-
1594 * @note (VST 2.0+) Available from VST 2.0 onwards.
-
1595 * @bug Various hosts only provide a buffer that is 32 bytes long.
-
1596 * @param p_ptr A zero terminated char buffer of size @ref VST_BUFFER_SIZE_EFFECT_NAME.
-
1597 * @return Always 0, even on failure.
-
1598 */
-
1599 VST_EFFECT_OPCODE_2D = 0x2D,
-
1600 /** @sa VST_EFFECT_OPCODE_2D */
-
1601 VST_EFFECT_OPCODE_GETNAME = 0x2D,
+
1585 * See @ref VST_EFFECT_OPCODE_SUPPORTS with @ref vst_effect_supports_t.bypass for more information.
+
1586 *
+
1587 * @note (VST 2.0+) Available from VST 2.0 onwards.
+
1588 * @param p_int2 Zero if bypassing the effect is disabled, otherwise 1.
+
1589 */
+
1590 VST_EFFECT_OPCODE_2C = 0x2C,
+
1591 /** @sa VST_EFFECT_OPCODE_2C */
+
1592 VST_EFFECT_OPCODE_BYPASS = 0x2C,
+
1593
+
1594 /** Retrieve the effect name into the ptr buffer.
+
1595 *
+
1596 * @note (VST 2.0+) Available from VST 2.0 onwards.
+
1597 * @bug Various hosts only provide a buffer that is 32 bytes long.
+
1598 * @param p_ptr A zero terminated char buffer of size @ref VST_BUFFER_SIZE_EFFECT_NAME.
+
1599 * @return Always 0, even on failure.
+
1600 */
+
1601 VST_EFFECT_OPCODE_2D = 0x2D,
1602 /** @sa VST_EFFECT_OPCODE_2D */
-
1603 VST_EFFECT_OPCODE_EFFECT_NAME = 0x2D,
+
1603 VST_EFFECT_OPCODE_GETNAME = 0x2D,
1604 /** @sa VST_EFFECT_OPCODE_2D */
-
1605 VST_EFFECT_OPCODE_NAME = 0x2D,
-
1606
-
1607 /** Translate an error code to a string.
-
1608 *
-
1609 * @bug Some hosts provide unexpected data in p_ptr.
-
1610 * @note (VST 2.0+) Available from VST 2.0 onwards.
-
1611 * @deprecated (VST 2.4+) Fairly sure this is deprecated in VST 2.4 and later.
-
1612 * @param p_ptr A zero terminated char buffer with undefined size.
-
1613 * @return @ref VST_STATUS_TRUE if we could translate the error, @ref VST_STATUS_FALSE if not.
-
1614 */
-
1615 VST_EFFECT_OPCODE_2E = 0x2E,
-
1616 /** @sa VST_EFFECT_OPCODE_2E */
-
1617 VST_EFFECT_OPCODE_TRANSLATE_ERROR = 0x2E,
-
1618
-
1619 /** Retrieve the vendor name into the ptr buffer.
-
1620 *
-
1621 * @note (VST 2.0+) Available from VST 2.0 onwards.
-
1622 * @param p_ptr A zero terminated char buffer of size @ref VST_BUFFER_SIZE_VENDOR_NAME.
-
1623 */
-
1624 VST_EFFECT_OPCODE_2F = 0x2F,
-
1625 /** @sa VST_EFFECT_OPCODE_2F */
-
1626 VST_EFFECT_OPCODE_GETVENDOR = 0x2F,
+
1605 VST_EFFECT_OPCODE_EFFECT_NAME = 0x2D,
+
1606 /** @sa VST_EFFECT_OPCODE_2D */
+
1607 VST_EFFECT_OPCODE_NAME = 0x2D,
+
1608
+
1609 /** Translate an error code to a string.
+
1610 *
+
1611 * @bug Some hosts provide unexpected data in p_ptr.
+
1612 * @note (VST 2.0+) Available from VST 2.0 onwards.
+
1613 * @deprecated (VST 2.4+) Fairly sure this is deprecated in VST 2.4 and later.
+
1614 * @param p_ptr A zero terminated char buffer with undefined size.
+
1615 * @return @ref VST_STATUS_TRUE if we could translate the error, @ref VST_STATUS_FALSE if not.
+
1616 */
+
1617 VST_EFFECT_OPCODE_2E = 0x2E,
+
1618 /** @sa VST_EFFECT_OPCODE_2E */
+
1619 VST_EFFECT_OPCODE_TRANSLATE_ERROR = 0x2E,
+
1620
+
1621 /** Retrieve the vendor name into the ptr buffer.
+
1622 *
+
1623 * @note (VST 2.0+) Available from VST 2.0 onwards.
+
1624 * @param p_ptr A zero terminated char buffer of size @ref VST_BUFFER_SIZE_VENDOR_NAME.
+
1625 */
+
1626 VST_EFFECT_OPCODE_2F = 0x2F,
1627 /** @sa VST_EFFECT_OPCODE_2F */
-
1628 VST_EFFECT_OPCODE_VENDOR_NAME = 0x2F,
-
1629
-
1630 /** Retrieve the product name into the ptr buffer.
-
1631 *
-
1632 * @note (VST 2.0+) Available from VST 2.0 onwards.
-
1633 * @param p_ptr A zero terminated char buffer of size @ref VST_BUFFER_SIZE_PRODUCT_NAME.
-
1634 */
-
1635 VST_EFFECT_OPCODE_30 = 0x30,
-
1636 /** @sa VST_EFFECT_OPCODE_30 */
-
1637 VST_EFFECT_OPCODE_GETNAME2 = 0x30,
+
1628 VST_EFFECT_OPCODE_GETVENDOR = 0x2F,
+
1629 /** @sa VST_EFFECT_OPCODE_2F */
+
1630 VST_EFFECT_OPCODE_VENDOR_NAME = 0x2F,
+
1631
+
1632 /** Retrieve the product name into the ptr buffer.
+
1633 *
+
1634 * @note (VST 2.0+) Available from VST 2.0 onwards.
+
1635 * @param p_ptr A zero terminated char buffer of size @ref VST_BUFFER_SIZE_PRODUCT_NAME.
+
1636 */
+
1637 VST_EFFECT_OPCODE_30 = 0x30,
1638 /** @sa VST_EFFECT_OPCODE_30 */
-
1639 VST_EFFECT_OPCODE_PRODUCT_NAME = 0x30,
-
1640
-
1641 /** Retrieve the vendor version in return value.
-
1642 *
-
1643 * @note (VST 2.0+) Available from VST 2.0 onwards.
-
1644 * @return Version.
-
1645 */
-
1646 VST_EFFECT_OPCODE_31 = 0x31,
-
1647 /** @sa VST_EFFECT_OPCODE_31 */
-
1648 VST_EFFECT_OPCODE_GETVENDORVERSION = 0x31,
+
1639 VST_EFFECT_OPCODE_GETNAME2 = 0x30,
+
1640 /** @sa VST_EFFECT_OPCODE_30 */
+
1641 VST_EFFECT_OPCODE_PRODUCT_NAME = 0x30,
+
1642
+
1643 /** Retrieve the vendor version in return value.
+
1644 *
+
1645 * @note (VST 2.0+) Available from VST 2.0 onwards.
+
1646 * @return Version.
+
1647 */
+
1648 VST_EFFECT_OPCODE_31 = 0x31,
1649 /** @sa VST_EFFECT_OPCODE_31 */
-
1650 VST_EFFECT_OPCODE_VENDOR_VERSION = 0x31,
-
1651
-
1652 /** User-defined Op-Code for VST extensions.
-
1653 *
-
1654 * @note (VST 2.0+) Available from VST 2.0 onwards.
-
1655 * All parameters are undefined by the standard and left up to the host/plug-in. Use @ref VST_EFFECT_OPCODE_SUPPORTS
-
1656 * and @ref VST_EFFECT_OPCODE_VENDOR_NAME + @ref VST_EFFECT_OPCODE_VENDOR_VERSION to check if the plug-in is
-
1657 * compatible with your expected format.
-
1658 */
-
1659 VST_EFFECT_OPCODE_32 = 0x32,
-
1660 /** @sa VST_EFFECT_OPCODE_32 */
-
1661 VST_EFFECT_OPCODE_CUSTOM = 0x32,
-
1662
-
1663 /** Test for support of a specific named feature.
-
1664 *
-
1665 * @note (VST 2.0+) Available from VST 2.0 onwards.
-
1666 * @param p_ptr A zero terminated char buffer of undefined size containing the feature name.
-
1667 * @return @ref VST_STATUS_YES if the feature is supported, @ref VST_STATUS_NO if the feature is not supported,
-
1668 * @ref VST_STATUS_UNKNOWN in all other cases.
-
1669 */
-
1670 VST_EFFECT_OPCODE_33 = 0x33,
-
1671 /** @sa VST_EFFECT_OPCODE_33 */
-
1672 VST_EFFECT_OPCODE_SUPPORTS = 0x33,
-
1673
-
1674 /** Number of samples that are at the tail at the end of playback.
-
1675 *
-
1676 * @note (VST 2.0+) Available from VST 2.0 onwards.
-
1677 * @return @ref VST_STATUS_UNKNOWN for automatic tail size, @ref VST_STATUS_TRUE for no tail, any other number above
-
1678 * 1 for the number of samples the tail has.
-
1679 */
-
1680 VST_EFFECT_OPCODE_34 = 0x34,
-
1681 /** @sa VST_EFFECT_OPCODE_34 */
-
1682 VST_EFFECT_OPCODE_GETTAILSAMPLES = 0x34,
+
1650 VST_EFFECT_OPCODE_GETVENDORVERSION = 0x31,
+
1651 /** @sa VST_EFFECT_OPCODE_31 */
+
1652 VST_EFFECT_OPCODE_VENDOR_VERSION = 0x31,
+
1653
+
1654 /** User-defined Op-Code for VST extensions.
+
1655 *
+
1656 * @note (VST 2.0+) Available from VST 2.0 onwards.
+
1657 * All parameters are undefined by the standard and left up to the host/plug-in. Use @ref VST_EFFECT_OPCODE_SUPPORTS
+
1658 * and @ref VST_EFFECT_OPCODE_VENDOR_NAME + @ref VST_EFFECT_OPCODE_VENDOR_VERSION to check if the plug-in is
+
1659 * compatible with your expected format.
+
1660 */
+
1661 VST_EFFECT_OPCODE_32 = 0x32,
+
1662 /** @sa VST_EFFECT_OPCODE_32 */
+
1663 VST_EFFECT_OPCODE_CUSTOM = 0x32,
+
1664
+
1665 /** Test for support of a specific named feature.
+
1666 *
+
1667 * @note (VST 2.0+) Available from VST 2.0 onwards.
+
1668 * @param p_ptr A zero terminated char buffer of undefined size containing the feature name.
+
1669 * @return @ref VST_STATUS_YES if the feature is supported, @ref VST_STATUS_NO if the feature is not supported,
+
1670 * @ref VST_STATUS_UNKNOWN in all other cases.
+
1671 */
+
1672 VST_EFFECT_OPCODE_33 = 0x33,
+
1673 /** @sa VST_EFFECT_OPCODE_33 */
+
1674 VST_EFFECT_OPCODE_SUPPORTS = 0x33,
+
1675
+
1676 /** Number of samples that are at the tail at the end of playback.
+
1677 *
+
1678 * @note (VST 2.0+) Available from VST 2.0 onwards.
+
1679 * @return @ref VST_STATUS_UNKNOWN for automatic tail size, @ref VST_STATUS_TRUE for no tail, any other number above
+
1680 * 1 for the number of samples the tail has.
+
1681 */
+
1682 VST_EFFECT_OPCODE_34 = 0x34,
1683 /** @sa VST_EFFECT_OPCODE_34 */
-
1684 VST_EFFECT_OPCODE_TAIL_SAMPLES = 0x34,
-
1685
-
1686 /** Notify effect that it is idle?
-
1687 *
-
1688 * @note (VST 2.0+) Available from VST 2.0 onwards.
-
1689 * @deprecated (VST 2.4+) As of VST 2.4 the default behavior is @ref VST_EFFECT_OPCODE_PROCESS_BEGIN and
-
1690 * @ref VST_EFFECT_OPCODE_PROCESS_END which allows cleaner control flows.
-
1691 * @sa vst_host_supports.startStopProcess
-
1692 */
-
1693 VST_EFFECT_OPCODE_35 = 0x35,
-
1694 /** @sa VST_EFFECT_OPCODE_35 */
-
1695 VST_EFFECT_OPCODE_IDLE = 0x35,
-
1696
-
1697 /**
-
1698 *
-
1699 *
-
1700 * @note (VST 2.0+) Available from VST 2.0 onwards.
-
1701 * @deprecated (VST 2.4) Invalid in all VST 2.4 and later hosts.
-
1702 */
-
1703 VST_EFFECT_OPCODE_36 = 0x36,
-
1704
-
1705 /**
-
1706 *
-
1707 *
-
1708 * @note (VST 2.0+) Available from VST 2.0 onwards.
-
1709 * @deprecated (VST 2.4) Invalid in all VST 2.4 and later hosts.
-
1710 */
-
1711 VST_EFFECT_OPCODE_37 = 0x37,
-
1712
-
1713 /** Parameter Properties
-
1714 *
-
1715 * @note (VST 2.0+) Available from VST 2.0 onwards.
-
1716 * @param p_int1 Parameter index to get properties for.
-
1717 * @param p_ptr Pointer to @ref vst_parameter_properties_t for the given parameter.
-
1718 * @return @ref VST_STATUS_YES if supported, otherwise @ref VST_STATUS_NO.
-
1719 */
-
1720 VST_EFFECT_OPCODE_38 = 0x38,
-
1721 /** @sa VST_EFFECT_OPCODE_38 */
-
1722 VST_EFFECT_OPCODE_GET_PARAMETER_PROPERTIES = 0x38,
+
1684 VST_EFFECT_OPCODE_GETTAILSAMPLES = 0x34,
+
1685 /** @sa VST_EFFECT_OPCODE_34 */
+
1686 VST_EFFECT_OPCODE_TAIL_SAMPLES = 0x34,
+
1687
+
1688 /** Notify effect that it is idle?
+
1689 *
+
1690 * @note (VST 2.0+) Available from VST 2.0 onwards.
+
1691 * @deprecated (VST 2.4+) As of VST 2.4 the default behavior is @ref VST_EFFECT_OPCODE_PROCESS_BEGIN and
+
1692 * @ref VST_EFFECT_OPCODE_PROCESS_END which allows cleaner control flows.
+
1693 * @sa vst_host_supports.startStopProcess
+
1694 */
+
1695 VST_EFFECT_OPCODE_35 = 0x35,
+
1696 /** @sa VST_EFFECT_OPCODE_35 */
+
1697 VST_EFFECT_OPCODE_IDLE = 0x35,
+
1698
+
1699 /**
+
1700 *
+
1701 *
+
1702 * @note (VST 2.0+) Available from VST 2.0 onwards.
+
1703 * @deprecated (VST 2.4) Invalid in all VST 2.4 and later hosts.
+
1704 */
+
1705 VST_EFFECT_OPCODE_36 = 0x36,
+
1706
+
1707 /**
+
1708 *
+
1709 *
+
1710 * @note (VST 2.0+) Available from VST 2.0 onwards.
+
1711 * @deprecated (VST 2.4) Invalid in all VST 2.4 and later hosts.
+
1712 */
+
1713 VST_EFFECT_OPCODE_37 = 0x37,
+
1714
+
1715 /** Parameter Properties
+
1716 *
+
1717 * @note (VST 2.0+) Available from VST 2.0 onwards.
+
1718 * @param p_int1 Parameter index to get properties for.
+
1719 * @param p_ptr Pointer to @ref vst_parameter_properties_t for the given parameter.
+
1720 * @return @ref VST_STATUS_YES if supported, otherwise @ref VST_STATUS_NO.
+
1721 */
+
1722 VST_EFFECT_OPCODE_38 = 0x38,
1723 /** @sa VST_EFFECT_OPCODE_38 */
-
1724 VST_EFFECT_OPCODE_PARAM_PROPERTIES = 0x38,
-
1725
-
1726 /**
-
1727 *
-
1728 * @note (VST 2.0+) Available from VST 2.0 onwards.
-
1729 * @deprecated (VST 2.4) Invalid in all VST 2.4 and later hosts.
-
1730 */
-
1731 VST_EFFECT_OPCODE_39 = 0x39,
-
1732
-
1733 /** Retrieve the VST Version supported.
-
1734 *
-
1735 * @note (VST 2.0+) Available from VST 2.0 onwards.
-
1736 * @sa VST_VERSION
-
1737 * @return One of the valid enums in @ref VST_VERSION
-
1738 */
-
1739 VST_EFFECT_OPCODE_3A = 0x3A,
-
1740 /** @sa VST_EFFECT_OPCODE_3A */
-
1741 VST_EFFECT_OPCODE_VST_VERSION = 0x3A,
-
1742
-
1743 //--------------------------------------------------------------------------------
-
1744 // VST 2.1
+
1724 VST_EFFECT_OPCODE_GET_PARAMETER_PROPERTIES = 0x38,
+
1725 /** @sa VST_EFFECT_OPCODE_38 */
+
1726 VST_EFFECT_OPCODE_PARAM_PROPERTIES = 0x38,
+
1727
+
1728 /**
+
1729 *
+
1730 * @note (VST 2.0+) Available from VST 2.0 onwards.
+
1731 * @deprecated (VST 2.4) Invalid in all VST 2.4 and later hosts.
+
1732 */
+
1733 VST_EFFECT_OPCODE_39 = 0x39,
+
1734
+
1735 /** Retrieve the VST Version supported.
+
1736 *
+
1737 * @note (VST 2.0+) Available from VST 2.0 onwards.
+
1738 * @sa VST_VERSION
+
1739 * @return One of the valid enums in @ref VST_VERSION
+
1740 */
+
1741 VST_EFFECT_OPCODE_3A = 0x3A,
+
1742 /** @sa VST_EFFECT_OPCODE_3A */
+
1743 VST_EFFECT_OPCODE_VST_VERSION = 0x3A,
+
1744
1745 //--------------------------------------------------------------------------------
-
1746
-
1747 /** Editor Virtual Key Down Input
-
1748 *
-
1749 * @note (VST 2.1+) Available from VST 2.1 onwards.
-
1750 * @param p_int1 ASCII character that represents the virtual key code.
-
1751 * @param p_int2 Virtual Key Code
-
1752 * @param p_float Modifiers being held down (bitfield)
-
1753 * @return @ref VST_STATUS_TRUE if we used the input, otherwise @ref VST_STATUS_FALSE
-
1754 */
-
1755 VST_EFFECT_OPCODE_3B = 0x3B,
-
1756 /** @sa VST_EFFECT_OPCODE_3B */
-
1757 VST_EFFECT_OPCODE_EDITOR_VKEY_DOWN = 0x3B,
-
1758
-
1759 /** Editor Virtual Key Up Event
-
1760 *
-
1761 * @note (VST 2.1+) Available from VST 2.1 onwards.
-
1762 * @param p_int1 ASCII character that represents the virtual key code.
-
1763 * @param p_int2 Virtual Key Code
-
1764 * @param p_float Modifiers being held down (bitfield)
-
1765 * @return @ref VST_STATUS_TRUE if we used the input, otherwise @ref VST_STATUS_FALSE
-
1766 */
-
1767 VST_EFFECT_OPCODE_3C = 0x3C,
-
1768 /** @sa VST_EFFECT_OPCODE_3C */
-
1769 VST_EFFECT_OPCODE_EDITOR_VKEY_UP = 0x3C,
-
1770
-
1771 /**
-
1772 *
-
1773 * @note (VST 2.1+) Available from VST 2.1 onwards.
-
1774 * @param p_int2 A value between 0 and 2.
-
1775 */
-
1776 VST_EFFECT_OPCODE_3D = 0x3D,
-
1777
-
1778 /**
-
1779 *
-
1780 * Midi related
-
1781 * @note (VST 2.1+) Available from VST 2.1 onwards.
-
1782 */
-
1783 VST_EFFECT_OPCODE_3E = 0x3E,
-
1784
-
1785 /**
-
1786 *
-
1787 * Midi related
-
1788 * @note (VST 2.1+) Available from VST 2.1 onwards.
-
1789 */
-
1790 VST_EFFECT_OPCODE_3F = 0x3F,
-
1791
-
1792 /**
-
1793 *
-
1794 * Midi related
-
1795 * @note (VST 2.1+) Available from VST 2.1 onwards.
-
1796 */
-
1797 VST_EFFECT_OPCODE_40 = 0x40,
-
1798
-
1799 /**
-
1800 *
-
1801 * Midi related
-
1802 * @note (VST 2.1+) Available from VST 2.1 onwards.
-
1803 */
-
1804 VST_EFFECT_OPCODE_41 = 0x41,
-
1805
-
1806 /**
-
1807 *
-
1808 * Midi related
-
1809 * @note (VST 2.1+) Available from VST 2.1 onwards.
-
1810 */
-
1811 VST_EFFECT_OPCODE_42 = 0x42,
-
1812
-
1813 /** Host is starting to set up a program.
-
1814 * Emitted prior to the host loading a program.
-
1815 *
-
1816 * @note (VST 2.1+) Available from VST 2.1 onwards.
-
1817 * @return @ref VST_STATUS_TRUE if we understood the notification, or @ref VST_STATUS_FALSE if not.
-
1818 */
-
1819 VST_EFFECT_OPCODE_43 = 0x43,
-
1820 /** @sa VST_EFFECT_OPCODE_43 */
-
1821 VST_EFFECT_OPCODE_PROGRAM_SET_BEGIN = 0x43,
-
1822
-
1823 /** Host is done setting up a program.
-
1824 * Emitted after the host finished loading a program.
-
1825 *
-
1826 * @note (VST 2.1+) Available from VST 2.1 onwards.
-
1827 * @return @ref VST_STATUS_TRUE if we understood the notification, or @ref VST_STATUS_FALSE if not.
-
1828 */
-
1829 VST_EFFECT_OPCODE_44 = 0x44,
-
1830 /** @sa VST_EFFECT_OPCODE_44 */
-
1831 VST_EFFECT_OPCODE_PROGRAM_SET_END = 0x44,
-
1832
-
1833 //--------------------------------------------------------------------------------
-
1834 // VST 2.3
+
1746 // VST 2.1
+
1747 //--------------------------------------------------------------------------------
+
1748
+
1749 /** Editor Virtual Key Down Input
+
1750 *
+
1751 * @note (VST 2.1+) Available from VST 2.1 onwards.
+
1752 * @param p_int1 ASCII character that represents the virtual key code.
+
1753 * @param p_int2 Virtual Key Code
+
1754 * @param p_float Modifiers being held down (bitfield)
+
1755 * @return @ref VST_STATUS_TRUE if we used the input, otherwise @ref VST_STATUS_FALSE
+
1756 */
+
1757 VST_EFFECT_OPCODE_3B = 0x3B,
+
1758 /** @sa VST_EFFECT_OPCODE_3B */
+
1759 VST_EFFECT_OPCODE_EDITOR_VKEY_DOWN = 0x3B,
+
1760
+
1761 /** Editor Virtual Key Up Event
+
1762 *
+
1763 * @note (VST 2.1+) Available from VST 2.1 onwards.
+
1764 * @param p_int1 ASCII character that represents the virtual key code.
+
1765 * @param p_int2 Virtual Key Code
+
1766 * @param p_float Modifiers being held down (bitfield)
+
1767 * @return @ref VST_STATUS_TRUE if we used the input, otherwise @ref VST_STATUS_FALSE
+
1768 */
+
1769 VST_EFFECT_OPCODE_3C = 0x3C,
+
1770 /** @sa VST_EFFECT_OPCODE_3C */
+
1771 VST_EFFECT_OPCODE_EDITOR_VKEY_UP = 0x3C,
+
1772
+
1773 /**
+
1774 *
+
1775 * @note (VST 2.1+) Available from VST 2.1 onwards.
+
1776 * @param p_int2 A value between 0 and 2.
+
1777 */
+
1778 VST_EFFECT_OPCODE_3D = 0x3D,
+
1779
+
1780 /**
+
1781 *
+
1782 * Midi related
+
1783 * @note (VST 2.1+) Available from VST 2.1 onwards.
+
1784 */
+
1785 VST_EFFECT_OPCODE_3E = 0x3E,
+
1786
+
1787 /**
+
1788 *
+
1789 * Midi related
+
1790 * @note (VST 2.1+) Available from VST 2.1 onwards.
+
1791 */
+
1792 VST_EFFECT_OPCODE_3F = 0x3F,
+
1793
+
1794 /**
+
1795 *
+
1796 * Midi related
+
1797 * @note (VST 2.1+) Available from VST 2.1 onwards.
+
1798 */
+
1799 VST_EFFECT_OPCODE_40 = 0x40,
+
1800
+
1801 /**
+
1802 *
+
1803 * Midi related
+
1804 * @note (VST 2.1+) Available from VST 2.1 onwards.
+
1805 */
+
1806 VST_EFFECT_OPCODE_41 = 0x41,
+
1807
+
1808 /**
+
1809 *
+
1810 * Midi related
+
1811 * @note (VST 2.1+) Available from VST 2.1 onwards.
+
1812 */
+
1813 VST_EFFECT_OPCODE_42 = 0x42,
+
1814
+
1815 /** Host is starting to set up a program.
+
1816 * Emitted prior to the host loading a program.
+
1817 *
+
1818 * @note (VST 2.1+) Available from VST 2.1 onwards.
+
1819 * @return @ref VST_STATUS_TRUE if we understood the notification, or @ref VST_STATUS_FALSE if not.
+
1820 */
+
1821 VST_EFFECT_OPCODE_43 = 0x43,
+
1822 /** @sa VST_EFFECT_OPCODE_43 */
+
1823 VST_EFFECT_OPCODE_PROGRAM_SET_BEGIN = 0x43,
+
1824
+
1825 /** Host is done setting up a program.
+
1826 * Emitted after the host finished loading a program.
+
1827 *
+
1828 * @note (VST 2.1+) Available from VST 2.1 onwards.
+
1829 * @return @ref VST_STATUS_TRUE if we understood the notification, or @ref VST_STATUS_FALSE if not.
+
1830 */
+
1831 VST_EFFECT_OPCODE_44 = 0x44,
+
1832 /** @sa VST_EFFECT_OPCODE_44 */
+
1833 VST_EFFECT_OPCODE_PROGRAM_SET_END = 0x44,
+
1834
1835 //--------------------------------------------------------------------------------
-
1836
-
1837 /** Host wants to know the current speaker arrangement.
-
1838 *
-
1839 * @note (VST 2.3+) Available from VST 2.3 onwards.
-
1840 * @param p_int2 Pointer to @ref vst_speaker_arrangement_t for the input.
-
1841 * @param p_ptr Pointer to @ref vst_speaker_arrangement_t for the output.
-
1842 * @return @ref VST_STATUS_TRUE if we were successful, otherwise @ref VST_STATUS_FALSE.
-
1843 */
-
1844 VST_EFFECT_OPCODE_45 = 0x45,
-
1845 /** @sa VST_EFFECT_OPCODE_45 */
-
1846 VST_EFFECT_OPCODE_GET_SPEAKER_ARRANGEMENT = 0x45,
-
1847
-
1848 /** Get the next effect contained in this effect.
-
1849 * This returns the next effect based on an effect internal counter, the host does not provide any index.
-
1850 *
-
1851 * Used in combination with @ref VST_EFFECT_CATEGORY_CONTAINER.
+
1836 // VST 2.3
+
1837 //--------------------------------------------------------------------------------
+
1838
+
1839 /** Host wants to know the current speaker arrangement.
+
1840 *
+
1841 * @note (VST 2.3+) Available from VST 2.3 onwards.
+
1842 * @param p_int2 Pointer to @ref vst_speaker_arrangement_t for the input.
+
1843 * @param p_ptr Pointer to @ref vst_speaker_arrangement_t for the output.
+
1844 * @return @ref VST_STATUS_TRUE if we were successful, otherwise @ref VST_STATUS_FALSE.
+
1845 */
+
1846 VST_EFFECT_OPCODE_45 = 0x45,
+
1847 /** @sa VST_EFFECT_OPCODE_45 */
+
1848 VST_EFFECT_OPCODE_GET_SPEAKER_ARRANGEMENT = 0x45,
+
1849
+
1850 /** Get the next effect contained in this effect.
+
1851 * This returns the next effect based on an effect internal counter, the host does not provide any index.
1852 *
-
1853 * @note (VST 2.3+) Available from VST 2.3 onwards.
-
1854 * @param p_ptr Pointer to a char buffer of size @ref VST_BUFFER_SIZE_EFFECT_NAME to store the name of the next effect.
-
1855 * @return Next effects unique_id
-
1856 */
-
1857 VST_EFFECT_OPCODE_46 = 0x46,
-
1858 /** @sa VST_EFFECT_OPCODE_46 */
-
1859 VST_EFFECT_OPCODE_CONTAINER_NEXT_EFFECT_ID = 0x46,
-
1860
-
1861 /** Begin processing of audio.
-
1862 *
-
1863 * Host is requesting that we prepare for a new section of audio separate from the previous section.
-
1864 * @note (VST 2.3+) Available from VST 2.3 onwards.
-
1865 */
-
1866 VST_EFFECT_OPCODE_47 = 0x47,
-
1867 /** @sa VST_EFFECT_OPCODE_47 */
-
1868 VST_EFFECT_OPCODE_PROCESS_BEGIN = 0x47,
-
1869
-
1870 /** End processing of audio.
-
1871 *
-
1872 * Host is requesting that we stop processing audio and go into idle instead.
-
1873 * @note (VST 2.3+) Available from VST 2.3 onwards.
-
1874 */
-
1875 VST_EFFECT_OPCODE_48 = 0x48,
-
1876 /** @sa VST_EFFECT_OPCODE_48 */
-
1877 VST_EFFECT_OPCODE_PROCESS_END = 0x48,
-
1878
-
1879 /**
-
1880 *
-
1881 *
-
1882 * @note (VST 2.3+) Available from VST 2.3 onwards.
-
1883 */
-
1884 VST_EFFECT_OPCODE_49 = 0x49,
-
1885
-
1886 /**
-
1887 *
-
1888 * @note (VST 2.3+) Available from VST 2.3 onwards.
-
1889 * @sa VST_EFFECT_CATEGORY_SPATIAL
-
1890 * @param p_int2 Unknown meaning.
-
1891 * @param p_float Unknown meaning, usually 1.0
-
1892 */
-
1893 VST_EFFECT_OPCODE_4A = 0x4A,
-
1894
-
1895 /** Host wants to know if we can load the provided bank data.
-
1896 * Should be emitted prior to @ref VST_EFFECT_OPCODE_SET_CHUNK_DATA by the host.
-
1897 *
-
1898 * @note (VST 2.3+) Available from VST 2.3 onwards.
-
1899 * @param p_ptr Unknown structured data.
-
1900 * @return @ref VST_STATUS_NO if we can't load the data, @ref VST_STATUS_YES if we can load the data,
-
1901 * @ref VST_STATUS_UNKNOWN if this isn't supported.
-
1902 */
-
1903 VST_EFFECT_OPCODE_4B = 0x4B,
-
1904 /** @sa VST_EFFECT_OPCODE_4B */
-
1905 VST_EFFECT_OPCODE_BANK_LOAD = 0x4B,
-
1906
-
1907 /** Host wants to know if we can load the provided program data.
-
1908 * Should be emitted prior to @ref VST_EFFECT_OPCODE_PROGRAM_SET_BEGIN by the host.
-
1909 *
-
1910 * @note (VST 2.3+) Available from VST 2.3 onwards.
-
1911 * @param p_ptr Unknown structured data.
-
1912 * @return @ref VST_STATUS_NO if we can't load the data, @ref VST_STATUS_YES if we can load the data,
-
1913 * @ref VST_STATUS_UNKNOWN if this isn't supported.
-
1914 */
-
1915 VST_EFFECT_OPCODE_4C = 0x4C,
-
1916 /** @sa VST_EFFECT_OPCODE_4C */
-
1917 VST_EFFECT_OPCODE_PROGRAM_LOAD = 0x4C,
-
1918
-
1919 //--------------------------------------------------------------------------------
-
1920 // VST 2.4
+
1853 * Used in combination with @ref VST_EFFECT_CATEGORY_CONTAINER.
+
1854 *
+
1855 * @note (VST 2.3+) Available from VST 2.3 onwards.
+
1856 * @param p_ptr Pointer to a char buffer of size @ref VST_BUFFER_SIZE_EFFECT_NAME to store the name of the next effect.
+
1857 * @return Next effects unique_id
+
1858 */
+
1859 VST_EFFECT_OPCODE_46 = 0x46,
+
1860 /** @sa VST_EFFECT_OPCODE_46 */
+
1861 VST_EFFECT_OPCODE_CONTAINER_NEXT_EFFECT_ID = 0x46,
+
1862
+
1863 /** Begin processing of audio.
+
1864 *
+
1865 * Host is requesting that we prepare for a new section of audio separate from the previous section.
+
1866 * @note (VST 2.3+) Available from VST 2.3 onwards.
+
1867 */
+
1868 VST_EFFECT_OPCODE_47 = 0x47,
+
1869 /** @sa VST_EFFECT_OPCODE_47 */
+
1870 VST_EFFECT_OPCODE_PROCESS_BEGIN = 0x47,
+
1871
+
1872 /** End processing of audio.
+
1873 *
+
1874 * Host is requesting that we stop processing audio and go into idle instead.
+
1875 * @note (VST 2.3+) Available from VST 2.3 onwards.
+
1876 */
+
1877 VST_EFFECT_OPCODE_48 = 0x48,
+
1878 /** @sa VST_EFFECT_OPCODE_48 */
+
1879 VST_EFFECT_OPCODE_PROCESS_END = 0x48,
+
1880
+
1881 /**
+
1882 *
+
1883 *
+
1884 * @note (VST 2.3+) Available from VST 2.3 onwards.
+
1885 */
+
1886 VST_EFFECT_OPCODE_49 = 0x49,
+
1887
+
1888 /**
+
1889 *
+
1890 * @note (VST 2.3+) Available from VST 2.3 onwards.
+
1891 * @sa VST_EFFECT_CATEGORY_SPATIAL
+
1892 * @param p_int2 Unknown meaning.
+
1893 * @param p_float Unknown meaning, usually 1.0
+
1894 */
+
1895 VST_EFFECT_OPCODE_4A = 0x4A,
+
1896
+
1897 /** Host wants to know if we can load the provided bank data.
+
1898 * Should be emitted prior to @ref VST_EFFECT_OPCODE_SET_CHUNK_DATA by the host.
+
1899 *
+
1900 * @note (VST 2.3+) Available from VST 2.3 onwards.
+
1901 * @param p_ptr Unknown structured data.
+
1902 * @return @ref VST_STATUS_NO if we can't load the data, @ref VST_STATUS_YES if we can load the data,
+
1903 * @ref VST_STATUS_UNKNOWN if this isn't supported.
+
1904 */
+
1905 VST_EFFECT_OPCODE_4B = 0x4B,
+
1906 /** @sa VST_EFFECT_OPCODE_4B */
+
1907 VST_EFFECT_OPCODE_BANK_LOAD = 0x4B,
+
1908
+
1909 /** Host wants to know if we can load the provided program data.
+
1910 * Should be emitted prior to @ref VST_EFFECT_OPCODE_PROGRAM_SET_BEGIN by the host.
+
1911 *
+
1912 * @note (VST 2.3+) Available from VST 2.3 onwards.
+
1913 * @param p_ptr Unknown structured data.
+
1914 * @return @ref VST_STATUS_NO if we can't load the data, @ref VST_STATUS_YES if we can load the data,
+
1915 * @ref VST_STATUS_UNKNOWN if this isn't supported.
+
1916 */
+
1917 VST_EFFECT_OPCODE_4C = 0x4C,
+
1918 /** @sa VST_EFFECT_OPCODE_4C */
+
1919 VST_EFFECT_OPCODE_PROGRAM_LOAD = 0x4C,
+
1920
1921 //--------------------------------------------------------------------------------
-
1922
-
1923 /**
-
1924 *
-
1925 *
-
1926 * @note (VST 2.4+) Available from VST 2.4 onwards.
-
1927 */
-
1928 VST_EFFECT_OPCODE_4D = 0x4D,
-
1929
-
1930 /**
-
1931 *
-
1932 *
-
1933 * @note (VST 2.4+) Available from VST 2.4 onwards.
-
1934 */
-
1935 VST_EFFECT_OPCODE_4E = 0x4E,
-
1936
-
1937 /**
-
1938 *
-
1939 *
-
1940 * @note (VST 2.4+) Available from VST 2.4 onwards.
-
1941 */
-
1942 VST_EFFECT_OPCODE_4F = 0x4F,
-
1943
-
1944 /** @private */
-
1945 VST_EFFECT_OPCODE_MAX,
-
1946
-
1947 /** @private */
-
1948 _VST_EFFECT_OPCODE_PAD = 0xFFFFFFFFul,
-
1949};
-
1950
-
1951/** Host to Plug-in support checks
-
1952 *
-
1953 * Provided as `char* p_ptr` in the VST_EFFECT_OPCODE_SUPPORTS op code.
+
1922 // VST 2.4
+
1923 //--------------------------------------------------------------------------------
+
1924
+
1925 /**
+
1926 *
+
1927 *
+
1928 * @note (VST 2.4+) Available from VST 2.4 onwards.
+
1929 */
+
1930 VST_EFFECT_OPCODE_4D = 0x4D,
+
1931
+
1932 /**
+
1933 *
+
1934 *
+
1935 * @note (VST 2.4+) Available from VST 2.4 onwards.
+
1936 */
+
1937 VST_EFFECT_OPCODE_4E = 0x4E,
+
1938
+
1939 /**
+
1940 *
+
1941 *
+
1942 * @note (VST 2.4+) Available from VST 2.4 onwards.
+
1943 */
+
1944 VST_EFFECT_OPCODE_4F = 0x4F,
+
1945
+
1946 /** @private */
+
1947 VST_EFFECT_OPCODE_MAX,
+
1948
+
1949 /** @private */
+
1950 _VST_EFFECT_OPCODE_PAD = 0xFFFFFFFFul,
+
1951};
+
1952
+
1953/** Host to Plug-in support checks
1954 *
-
1955 * Harvested via strings command and just checking what plug-ins actually responded to.
-
1956 */
-
1957struct vst_effect_supports_t {
-
1958 /** Effect supports alternative bypass.
-
1959 * The alternative bypass still has the host call process/process_float/process_double and expects us to compensate
-
1960 * for our delay/latency, copy inputs to outputs, and do minimal work. If we don't support it the host will not call
-
1961 * process/process_float/process_double at all while bypass is enabled.
-
1962 *
-
1963 * @note VST 2.3 or later only.
-
1964 * @return VST_STATUS_TRUE if we support this, otherwise VST_STATUS_FALSE.
-
1965 */
-
1966 const char* bypass;
-
1967
-
1968 const char* sendVstEvents;
-
1969 const char* receiveVstEvents;
-
1970 const char* sendVstMidiEvent;
-
1971 const char* receiveVstMidiEvent;
-
1972 const char* midiProgramNames; // VST 2.1 or later.
-
1973 const char* receiveVstTimeInfo;
-
1974 const char* offline;
-
1975 // The following were only found in VST 2.3 plug-ins
-
1976 const char* plugAsChannelInsert;
-
1977 const char* conformsToWindowRules; // Mac OS only, invalid in VST 2.4. Seems related to vst_host_supports.sizeWindow
-
1978 const char* plugAsSend;
-
1979 const char* mixDryWet;
-
1980 const char* noRealTime;
-
1981 const char* multipass;
-
1982 const char* metapass;
-
1983 const char* _1in1out;
-
1984 const char* _1in2out;
-
1985 const char* _2in1out;
-
1986 const char* _2in2out;
-
1987 const char* _2in4out;
-
1988 const char* _4in2out;
-
1989 const char* _4in4out;
-
1990 const char* _4in8out;
-
1991 const char* _8in4out;
-
1992 const char* _8in8out;
-
1993} /** @private */ vst_effect_supports = {
-
1994 .bypass = "bypass",
-
1995 .sendVstEvents = "sendVstEvents",
-
1996 .receiveVstEvents = "receiveVstEvents",
-
1997 .sendVstMidiEvent = "sendVstMidiEvent",
-
1998 .receiveVstMidiEvent = "receiveVstMidiEvent",
-
1999 .midiProgramNames = "midiProgramNames",
-
2000 .receiveVstTimeInfo = "receiveVstTimeInfo",
-
2001 .offline = "offline",
-
2002 .plugAsChannelInsert = "plugAsChannelInsert",
-
2003 .conformsToWindowRules = "conformsToWindowRules",
-
2004 .plugAsSend = "plugAsSend",
-
2005 .mixDryWet = "mixDryWet",
-
2006 .noRealTime = "noRealTime",
-
2007 .multipass = "multipass",
-
2008 .metapass = "metapass",
-
2009 ._1in1out = "1in1out",
-
2010 ._1in2out = "1in2out",
-
2011 ._2in1out = "2in1out",
-
2012 ._2in2out = "2in2out",
-
2013 ._2in4out = "2in4out",
-
2014 ._4in2out = "4in2out",
-
2015 ._4in4out = "4in4out",
-
2016 ._4in8out = "4in8out",
-
2017 ._8in4out = "8in4out",
-
2018 ._8in8out = "8in8out",
-
2019};
-
2020
-
2021/** Control the VST through an opcode and up to four parameters.
-
2022 *
-
2023 * @sa VST_EFFECT_OPCODE
+
1955 * Provided as `char* p_ptr` in the VST_EFFECT_OPCODE_SUPPORTS op code.
+
1956 *
+
1957 * Harvested via strings command and just checking what plug-ins actually responded to.
+
1958 */
+
1959struct vst_effect_supports_t {
+
1960 /** Effect supports alternative bypass.
+
1961 * The alternative bypass still has the host call process/process_float/process_double and expects us to compensate
+
1962 * for our delay/latency, copy inputs to outputs, and do minimal work. If we don't support it the host will not call
+
1963 * process/process_float/process_double at all while bypass is enabled.
+
1964 *
+
1965 * @note VST 2.3 or later only.
+
1966 * @return VST_STATUS_TRUE if we support this, otherwise VST_STATUS_FALSE.
+
1967 */
+
1968 const char* bypass;
+
1969
+
1970 const char* sendVstEvents;
+
1971 const char* receiveVstEvents;
+
1972 const char* sendVstMidiEvent;
+
1973 const char* receiveVstMidiEvent;
+
1974 const char* midiProgramNames; // VST 2.1 or later.
+
1975 const char* receiveVstTimeInfo;
+
1976 const char* offline;
+
1977 // The following were only found in VST 2.3 plug-ins
+
1978 const char* plugAsChannelInsert;
+
1979 const char* conformsToWindowRules; // Mac OS only, invalid in VST 2.4. Seems related to vst_host_supports.sizeWindow
+
1980 const char* plugAsSend;
+
1981 const char* mixDryWet;
+
1982 const char* noRealTime;
+
1983 const char* multipass;
+
1984 const char* metapass;
+
1985 const char* _1in1out;
+
1986 const char* _1in2out;
+
1987 const char* _2in1out;
+
1988 const char* _2in2out;
+
1989 const char* _2in4out;
+
1990 const char* _4in2out;
+
1991 const char* _4in4out;
+
1992 const char* _4in8out;
+
1993 const char* _8in4out;
+
1994 const char* _8in8out;
+
1995} /** @private */ vst_effect_supports = {
+
1996 .bypass = "bypass",
+
1997 .sendVstEvents = "sendVstEvents",
+
1998 .receiveVstEvents = "receiveVstEvents",
+
1999 .sendVstMidiEvent = "sendVstMidiEvent",
+
2000 .receiveVstMidiEvent = "receiveVstMidiEvent",
+
2001 .midiProgramNames = "midiProgramNames",
+
2002 .receiveVstTimeInfo = "receiveVstTimeInfo",
+
2003 .offline = "offline",
+
2004 .plugAsChannelInsert = "plugAsChannelInsert",
+
2005 .conformsToWindowRules = "conformsToWindowRules",
+
2006 .plugAsSend = "plugAsSend",
+
2007 .mixDryWet = "mixDryWet",
+
2008 .noRealTime = "noRealTime",
+
2009 .multipass = "multipass",
+
2010 .metapass = "metapass",
+
2011 ._1in1out = "1in1out",
+
2012 ._1in2out = "1in2out",
+
2013 ._2in1out = "2in1out",
+
2014 ._2in2out = "2in2out",
+
2015 ._2in4out = "2in4out",
+
2016 ._4in2out = "4in2out",
+
2017 ._4in4out = "4in4out",
+
2018 ._4in8out = "4in8out",
+
2019 ._8in4out = "8in4out",
+
2020 ._8in8out = "8in8out",
+
2021};
+
2022
+
2023/** Control the VST through an opcode and up to four parameters.
2024 *
-
2025 * @param self Pointer to the effect itself.
-
2026 * @param opcode The opcode to run, see @ref VST_EFFECT_OPCODE.
-
2027 * @param p_int1 Parameter, see @ref VST_EFFECT_OPCODE.
-
2028 * @param p_int2 Parameter, see @ref VST_EFFECT_OPCODE.
-
2029 * @param p_ptr Parameter, see @ref VST_EFFECT_OPCODE.
-
2030 * @param p_float Parameter, see @ref VST_EFFECT_OPCODE.
-
2031 */
-
2032typedef intptr_t (VST_FUNCTION_INTERFACE* vst_effect_control_t)(struct vst_effect_t* self, int32_t opcode, int32_t p_int1, intptr_t p_int2, void* p_ptr, float p_float);
-
2033
-
2034/** Process the given number of samples in inputs and outputs.
-
2035 *
-
2036 * Used to handle input data and provides output data. We seem to be the ones that provide the output buffer?
+
2025 * @sa VST_EFFECT_OPCODE
+
2026 *
+
2027 * @param self Pointer to the effect itself.
+
2028 * @param opcode The opcode to run, see @ref VST_EFFECT_OPCODE.
+
2029 * @param p_int1 Parameter, see @ref VST_EFFECT_OPCODE.
+
2030 * @param p_int2 Parameter, see @ref VST_EFFECT_OPCODE.
+
2031 * @param p_ptr Parameter, see @ref VST_EFFECT_OPCODE.
+
2032 * @param p_float Parameter, see @ref VST_EFFECT_OPCODE.
+
2033 */
+
2034typedef intptr_t (VST_FUNCTION_INTERFACE* vst_effect_control_t)(struct vst_effect_t* self, int32_t opcode, int32_t p_int1, intptr_t p_int2, void* p_ptr, float p_float);
+
2035
+
2036/** Process the given number of samples in inputs and outputs.
2037 *
-
2038 * @param self Pointer to the effect itself.
-
2039 * @param inputs Pointer to an array of 'const float[samples]' with size @ref vst_effect_t.num_inputs.
-
2040 * @param outputs Pointer to an array of 'float[samples]' with size @ref vst_effect_t.num_outputs.
-
2041 * @param samples Number of samples per channel in inputs and outputs.
-
2042 */
-
2043typedef void (VST_FUNCTION_INTERFACE* vst_effect_process_t) (struct vst_effect_t* self, const float* const* inputs, float** outputs, int32_t samples);
-
2044
-
2045/** Updates the value for the parameter at the given index, or does nothing if out of bounds.
-
2046 *
-
2047 * @param self Pointer to the effect itself.
-
2048 * @param index Parameter index.
-
2049 * @param value New value for the parameter.
-
2050 */
-
2051typedef void(VST_FUNCTION_INTERFACE* vst_effect_set_parameter_t)(struct vst_effect_t* self, uint32_t index, float value);
-
2052
-
2053/** Retrieve the current value of the parameter at the given index, or do nothing if out of bounds.
-
2054 *
-
2055 * @param self Pointer to the effect itself.
-
2056 * @param index Parameter index.
-
2057 * @return Current value of the parameter.
-
2058 */
-
2059typedef float(VST_FUNCTION_INTERFACE* vst_effect_get_parameter_t)(struct vst_effect_t* self, uint32_t index);
-
2060
-
2061/** Process the given number of single samples in inputs and outputs.
-
2062 *
-
2063 * Process input and overwrite the output in place. Host provides output buffers.
+
2038 * Used to handle input data and provides output data. We seem to be the ones that provide the output buffer?
+
2039 *
+
2040 * @param self Pointer to the effect itself.
+
2041 * @param inputs Pointer to an array of 'const float[samples]' with size @ref vst_effect_t.num_inputs.
+
2042 * @param outputs Pointer to an array of 'float[samples]' with size @ref vst_effect_t.num_outputs.
+
2043 * @param samples Number of samples per channel in inputs and outputs.
+
2044 */
+
2045typedef void (VST_FUNCTION_INTERFACE* vst_effect_process_t) (struct vst_effect_t* self, const float* const* inputs, float** outputs, int32_t samples);
+
2046
+
2047/** Updates the value for the parameter at the given index, or does nothing if out of bounds.
+
2048 *
+
2049 * @param self Pointer to the effect itself.
+
2050 * @param index Parameter index.
+
2051 * @param value New value for the parameter.
+
2052 */
+
2053typedef void(VST_FUNCTION_INTERFACE* vst_effect_set_parameter_t)(struct vst_effect_t* self, uint32_t index, float value);
+
2054
+
2055/** Retrieve the current value of the parameter at the given index, or do nothing if out of bounds.
+
2056 *
+
2057 * @param self Pointer to the effect itself.
+
2058 * @param index Parameter index.
+
2059 * @return Current value of the parameter.
+
2060 */
+
2061typedef float(VST_FUNCTION_INTERFACE* vst_effect_get_parameter_t)(struct vst_effect_t* self, uint32_t index);
+
2062
+
2063/** Process the given number of single samples in inputs and outputs.
2064 *
-
2065 * @important Not thread-safe on MacOS for some reason or another.
+
2065 * Process input and overwrite the output in place. Host provides output buffers.
2066 *
-
2067 * @param self Pointer to the effect itself.
-
2068 * @param inputs Pointer to an array of 'const float[samples]' with size numInputs.
-
2069 * @param outputs Pointer to an array of 'float[samples]' with size numOutputs.
-
2070 * @param samples Number of samples per channel in inputs.
-
2071 */
-
2072typedef void(VST_FUNCTION_INTERFACE* vst_effect_process_float_t)(struct vst_effect_t* self, const float* const* inputs, float** outputs, int32_t samples);
-
2073
-
2074/** Process the given number of double samples in inputs and outputs.
-
2075 *
-
2076 * Process input and overwrite the output in place. Host provides output buffers.
+
2067 * @important Not thread-safe on MacOS for some reason or another.
+
2068 *
+
2069 * @param self Pointer to the effect itself.
+
2070 * @param inputs Pointer to an array of 'const float[samples]' with size numInputs.
+
2071 * @param outputs Pointer to an array of 'float[samples]' with size numOutputs.
+
2072 * @param samples Number of samples per channel in inputs.
+
2073 */
+
2074typedef void(VST_FUNCTION_INTERFACE* vst_effect_process_float_t)(struct vst_effect_t* self, const float* const* inputs, float** outputs, int32_t samples);
+
2075
+
2076/** Process the given number of double samples in inputs and outputs.
2077 *
-
2078 * @note (VST 2.4+) Available from VST 2.4 and later.
+
2078 * Process input and overwrite the output in place. Host provides output buffers.
2079 *
-
2080 * @param self Pointer to the effect itself.
-
2081 * @param inputs Pointer to an array of 'const double[samples]' with size numInputs.
-
2082 * @param outputs Pointer to an array of 'double[samples]' with size numOutputs.
-
2083 * @param samples Number of samples per channel in inputs.
-
2084 */
-
2085typedef void (VST_FUNCTION_INTERFACE* vst_effect_process_double_t)(struct vst_effect_t* self, const double* const* inputs, double** outputs, int32_t samples);
-
2086
-
2087/** Plug-in Effect definition
-
2088 */
-
2089struct vst_effect_t {
-
2090 /** VST Magic Number
-
2091 *
-
2092 * Should always be VST_FOURCC('VstP')
+
2080 * @note (VST 2.4+) Available from VST 2.4 and later.
+
2081 *
+
2082 * @param self Pointer to the effect itself.
+
2083 * @param inputs Pointer to an array of 'const double[samples]' with size numInputs.
+
2084 * @param outputs Pointer to an array of 'double[samples]' with size numOutputs.
+
2085 * @param samples Number of samples per channel in inputs.
+
2086 */
+
2087typedef void (VST_FUNCTION_INTERFACE* vst_effect_process_double_t)(struct vst_effect_t* self, const double* const* inputs, double** outputs, int32_t samples);
+
2088
+
2089/** Plug-in Effect definition
+
2090 */
+
2091struct vst_effect_t {
+
2092 /** VST Magic Number
2093 *
-
2094 * @sa VST_MAGICNUMBER
-
2095 */
-
2096 int32_t magic_number;
-
2097
-
2098 /** Control Function
-
2099 * @sa vst_effect_control_t
-
2100 * @sa VST_EFFECT_OPCODE
-
2101 */
-
2102 vst_effect_control_t control;
-
2103
-
2104 /** Process Function
-
2105 * @sa vst_effect_process_t
-
2106 * @deprecated (VST 2.4+) Deprecated and practically unsupported in all VST 2.4 compatible hosts and may treat it
-
2107 * as just another @ref vst_effect_t.process_float.
-
2108 */
-
2109 vst_effect_process_t process;
-
2110
-
2111 /** Set Parameter Function
-
2112 * @sa vst_effect_set_parameter_t
-
2113 */
-
2114 vst_effect_set_parameter_t set_parameter;
-
2115
-
2116 /** Get Parameter Function
-
2117 * @sa vst_effect_get_parameter_t
-
2118 */
-
2119 vst_effect_get_parameter_t get_parameter;
-
2120
-
2121 /** Number of available pre-defined programs.
-
2122 *
-
2123 * @sa VST_EFFECT_OPCODE_PROGRAM_LOAD
-
2124 * @sa VST_EFFECT_OPCODE_PROGRAM_SET_BEGIN
-
2125 * @sa VST_EFFECT_OPCODE_PROGRAM_SET
-
2126 * @sa VST_EFFECT_OPCODE_PROGRAM_SET_NAME
-
2127 * @sa VST_EFFECT_OPCODE_PROGRAM_SET_END
-
2128 * @sa VST_EFFECT_OPCODE_PROGRAM_GET
-
2129 * @sa VST_EFFECT_OPCODE_PROGRAM_GET_NAME
-
2130 * @sa VST_EFFECT_FLAG_CHUNKS
-
2131 * @sa VST_EFFECT_OPCODE_SET_CHUNK_DATA
-
2132 * @sa VST_EFFECT_OPCODE_GET_CHUNK_DATA
-
2133 */
-
2134 int32_t num_programs;
-
2135
-
2136 /** Number of available parameters.
-
2137 * All programs must have at least this many parameters.
-
2138 *
-
2139 * @sa VST_HOST_OPCODE_IO_MODIFIED
-
2140 */
-
2141 int32_t num_params;
-
2142
-
2143 /** Number of available input streams.
-
2144 *
-
2145 *
-
2146 * @sa VST_EFFECT_OPCODE_GET_SPEAKER_ARRANGEMENT
-
2147 * @sa VST_EFFECT_OPCODE_INPUT_GET_PROPERTIES
-
2148 * @sa VST_HOST_OPCODE_IO_MODIFIED
-
2149 */
-
2150 int32_t num_inputs;
-
2151
-
2152 /** Number of available output streams.
-
2153 *
-
2154 * @sa VST_EFFECT_OPCODE_GET_SPEAKER_ARRANGEMENT
-
2155 * @sa VST_EFFECT_OPCODE_OUTPUT_GET_PROPERTIES
-
2156 * @sa VST_HOST_OPCODE_IO_MODIFIED
-
2157 */
-
2158 int32_t num_outputs;
-
2159
-
2160 /** Effect Flags
-
2161 *
-
2162 * @sa VST_EFFECT_FLAGS
-
2163 */
-
2164 int32_t flags;
-
2165
-
2166 void* _unknown_00; // Must be zero when created. Reserved for host?
-
2167 void* _unknown_01; // Must be zero when created. Reserved for host?
-
2168
-
2169 /** Initial delay before processing of samples can actually begin in Samples.
-
2170 *
-
2171 * @note The host can modify this at runtime so it is not safe.
-
2172 * @note Should be reinitialized when the effect is resumed.
-
2173 *
-
2174 * @sa VST_HOST_OPCODE_IO_MODIFIED
-
2175 */
-
2176 int32_t delay;
-
2177
-
2178 int32_t _unknown_02; // Unknown int32_t values.
-
2179 int32_t _unknown_03;
-
2180
-
2181 /** Ratio of Input to Output production
-
2182 * Defines how much output data is produced relative to input data when using 'process' instead of 'processFloat'.
-
2183 * Example: A ratio of 2.0 means we produce twice as much output as we receive input.
-
2184 *
-
2185 * Range: >0.0 to Infinity
-
2186 * Default: 1.0
-
2187 * @note Ignored in VST 2.4 or with VST_EFFECT_FLAG_SUPPORTS_FLOAT.
-
2188 */
-
2189 float input_output_ratio;
-
2190
-
2191 /** Effect Internal Pointer
-
2192 *
-
2193 * You can freely set this to point at some sort of class or similar for use in your own effect. The host must
-
2194 * never modify this or the data available through this.
-
2195 */
-
2196 void* effect_internal;
-
2197
-
2198 /** Host Internal Pointer
-
2199 *
-
2200 * The host may set this to point at data related to your effect instance that the host needs. The effect must
-
2201 * never modify this or the data available through this.
-
2202 */
-
2203 void* host_internal; // Pointer to Host internal data.
-
2204
-
2205 /** Id of the plugin.
-
2206 *
-
2207 * Due to this not being enough for uniqueness, it should not be used alone for indexing.
-
2208 * Ideally you want to index like this:
-
2209 * [unique_id][module_name][version][flags]
-
2210 * If any of the checks after unique_id fail, you default to the first possible choice.
-
2211 *
-
2212 * Used in combination with @ref VST_EFFECT_CATEGORY_CONTAINER.
+
2094 * Should always be VST_FOURCC('VstP')
+
2095 *
+
2096 * @sa VST_MAGICNUMBER
+
2097 */
+
2098 int32_t magic_number;
+
2099
+
2100 /** Control Function
+
2101 * @sa vst_effect_control_t
+
2102 * @sa VST_EFFECT_OPCODE
+
2103 */
+
2104 vst_effect_control_t control;
+
2105
+
2106 /** Process Function
+
2107 * @sa vst_effect_process_t
+
2108 * @deprecated (VST 2.4+) Deprecated and practically unsupported in all VST 2.4 compatible hosts and may treat it
+
2109 * as just another @ref vst_effect_t.process_float.
+
2110 */
+
2111 vst_effect_process_t process;
+
2112
+
2113 /** Set Parameter Function
+
2114 * @sa vst_effect_set_parameter_t
+
2115 */
+
2116 vst_effect_set_parameter_t set_parameter;
+
2117
+
2118 /** Get Parameter Function
+
2119 * @sa vst_effect_get_parameter_t
+
2120 */
+
2121 vst_effect_get_parameter_t get_parameter;
+
2122
+
2123 /** Number of available pre-defined programs.
+
2124 *
+
2125 * @sa VST_EFFECT_OPCODE_PROGRAM_LOAD
+
2126 * @sa VST_EFFECT_OPCODE_PROGRAM_SET_BEGIN
+
2127 * @sa VST_EFFECT_OPCODE_PROGRAM_SET
+
2128 * @sa VST_EFFECT_OPCODE_PROGRAM_SET_NAME
+
2129 * @sa VST_EFFECT_OPCODE_PROGRAM_SET_END
+
2130 * @sa VST_EFFECT_OPCODE_PROGRAM_GET
+
2131 * @sa VST_EFFECT_OPCODE_PROGRAM_GET_NAME
+
2132 * @sa VST_EFFECT_FLAG_CHUNKS
+
2133 * @sa VST_EFFECT_OPCODE_SET_CHUNK_DATA
+
2134 * @sa VST_EFFECT_OPCODE_GET_CHUNK_DATA
+
2135 */
+
2136 int32_t num_programs;
+
2137
+
2138 /** Number of available parameters.
+
2139 * All programs must have at least this many parameters.
+
2140 *
+
2141 * @sa VST_HOST_OPCODE_IO_MODIFIED
+
2142 */
+
2143 int32_t num_params;
+
2144
+
2145 /** Number of available input streams.
+
2146 *
+
2147 *
+
2148 * @sa VST_EFFECT_OPCODE_GET_SPEAKER_ARRANGEMENT
+
2149 * @sa VST_EFFECT_OPCODE_INPUT_GET_PROPERTIES
+
2150 * @sa VST_HOST_OPCODE_IO_MODIFIED
+
2151 */
+
2152 int32_t num_inputs;
+
2153
+
2154 /** Number of available output streams.
+
2155 *
+
2156 * @sa VST_EFFECT_OPCODE_GET_SPEAKER_ARRANGEMENT
+
2157 * @sa VST_EFFECT_OPCODE_OUTPUT_GET_PROPERTIES
+
2158 * @sa VST_HOST_OPCODE_IO_MODIFIED
+
2159 */
+
2160 int32_t num_outputs;
+
2161
+
2162 /** Effect Flags
+
2163 *
+
2164 * @sa VST_EFFECT_FLAGS
+
2165 */
+
2166 int32_t flags;
+
2167
+
2168 void* _unknown_00; // Must be zero when created. Reserved for host?
+
2169 void* _unknown_01; // Must be zero when created. Reserved for host?
+
2170
+
2171 /** Initial delay before processing of samples can actually begin in Samples.
+
2172 *
+
2173 * @note The host can modify this at runtime so it is not safe.
+
2174 * @note Should be reinitialized when the effect is resumed.
+
2175 *
+
2176 * @sa VST_HOST_OPCODE_IO_MODIFIED
+
2177 */
+
2178 int32_t delay;
+
2179
+
2180 int32_t _unknown_02; // Unknown int32_t values.
+
2181 int32_t _unknown_03;
+
2182
+
2183 /** Ratio of Input to Output production
+
2184 * Defines how much output data is produced relative to input data when using 'process' instead of 'processFloat'.
+
2185 * Example: A ratio of 2.0 means we produce twice as much output as we receive input.
+
2186 *
+
2187 * Range: >0.0 to Infinity
+
2188 * Default: 1.0
+
2189 * @note Ignored in VST 2.4 or with VST_EFFECT_FLAG_SUPPORTS_FLOAT.
+
2190 */
+
2191 float input_output_ratio;
+
2192
+
2193 /** Effect Internal Pointer
+
2194 *
+
2195 * You can freely set this to point at some sort of class or similar for use in your own effect. The host must
+
2196 * never modify this or the data available through this.
+
2197 */
+
2198 void* effect_internal;
+
2199
+
2200 /** Host Internal Pointer
+
2201 *
+
2202 * The host may set this to point at data related to your effect instance that the host needs. The effect must
+
2203 * never modify this or the data available through this.
+
2204 */
+
2205 void* host_internal; // Pointer to Host internal data.
+
2206
+
2207 /** Id of the plugin.
+
2208 *
+
2209 * Due to this not being enough for uniqueness, it should not be used alone for indexing.
+
2210 * Ideally you want to index like this:
+
2211 * [unique_id][module_name][version][flags]
+
2212 * If any of the checks after unique_id fail, you default to the first possible choice.
2213 *
-
2214 * BUG: Some broken hosts rely on this alone to save information about VST plug-ins.
-
2215 */
-
2216 int32_t unique_id;
-
2217
-
2218 /** Plugin version
-
2219 *
-
2220 * Unrelated to the minimum VST Version, but often the same.
-
2221 */
-
2222 int32_t version;
-
2223
-
2224 //--------------------------------------------------------------------------------
-
2225 // VST 2.x starts here.
+
2214 * Used in combination with @ref VST_EFFECT_CATEGORY_CONTAINER.
+
2215 *
+
2216 * BUG: Some broken hosts rely on this alone to save information about VST plug-ins.
+
2217 */
+
2218 int32_t unique_id;
+
2219
+
2220 /** Plugin version
+
2221 *
+
2222 * Unrelated to the minimum VST Version, but often the same.
+
2223 */
+
2224 int32_t version;
+
2225
2226 //--------------------------------------------------------------------------------
-
2227
-
2228 /** Process function for in-place single (32-bit float) processiong.
-
2229 * @sa vst_effect_process_single_t
-
2230 * @note (VST 2.0+) Available from VST 2.0 and later.
-
2231 */
-
2232 vst_effect_process_float_t process_float;
-
2233
-
2234 //--------------------------------------------------------------------------------
-
2235 // VST 2.4 starts here.
+
2227 // VST 2.x starts here.
+
2228 //--------------------------------------------------------------------------------
+
2229
+
2230 /** Process function for in-place single (32-bit float) processiong.
+
2231 * @sa vst_effect_process_single_t
+
2232 * @note (VST 2.0+) Available from VST 2.0 and later.
+
2233 */
+
2234 vst_effect_process_float_t process_float;
+
2235
2236 //--------------------------------------------------------------------------------
-
2237
-
2238 /** Process function for in-place double (64-bit float) processiong.
-
2239 * @sa vst_effect_process_double_t
-
2240 * @note (VST 2.4+) Available from VST 2.4 and later.
-
2241 */
-
2242 vst_effect_process_double_t process_double;
-
2243
-
2244 // Everything after this is unknown and was present in reacomp-standalone.dll.
-
2245 uint8_t _unknown[56]; // 56-bytes of something. Could also just be 52-bytes.
-
2246};
-
2247
-
2248/** VST 2.x Entry Point for all platforms
-
2249 *
-
2250 * Must be present in VST 2.x plug-ins but must not be present in VST 1.x plug-ins.
+
2237 // VST 2.4 starts here.
+
2238 //--------------------------------------------------------------------------------
+
2239
+
2240 /** Process function for in-place double (64-bit float) processiong.
+
2241 * @sa vst_effect_process_double_t
+
2242 * @note (VST 2.4+) Available from VST 2.4 and later.
+
2243 */
+
2244 vst_effect_process_double_t process_double;
+
2245
+
2246 // Everything after this is unknown and was present in reacomp-standalone.dll.
+
2247 uint8_t _unknown[56]; // 56-bytes of something. Could also just be 52-bytes.
+
2248};
+
2249
+
2250/** VST 2.x Entry Point for all platforms
2251 *
-
2252 * @return A new instance of the VST 2.x effect.
-
2253 */
-
2254#define VST_ENTRYPOINT
-
2255 vst_effect_t* VSTPluginMain(vst_host_callback_t callback)
-
2256
-
2257/** [DEPRECATED] VST 1.x Entry Point for Windows
-
2258 *
-
2259 * Do not implement in VST 2.1 or later plug-ins!
+
2252 * Must be present in VST 2.x plug-ins but must not be present in VST 1.x plug-ins.
+
2253 *
+
2254 * @return A new instance of the VST 2.x effect.
+
2255 */
+
2256#define VST_ENTRYPOINT
+
2257 vst_effect_t* VSTPluginMain(vst_host_callback_t callback)
+
2258
+
2259/** [DEPRECATED] VST 1.x Entry Point for Windows
2260 *
-
2261 * @return A new instance of the VST 1.x effect.
-
2262 */
-
2263#define VST_ENTRYPOINT_WINDOWS
-
2264 vst_effect_t* MAIN(vst_host_callback_t callback) { return VSTPluginMain(callback); }
-
2265
-
2266/** [DEPRECATED] VST 1.x Entry Point for MacOS
-
2267 *
-
2268 * Do not implement in VST 2.1 or later plug-ins!
+
2261 * Do not implement in VST 2.1 or later plug-ins!
+
2262 *
+
2263 * @return A new instance of the VST 1.x effect.
+
2264 */
+
2265#define VST_ENTRYPOINT_WINDOWS
+
2266 vst_effect_t* MAIN(vst_host_callback_t callback) { return VSTPluginMain(callback); }
+
2267
+
2268/** [DEPRECATED] VST 1.x Entry Point for MacOS
2269 *
-
2270 * @return A new instance of the VST 1.x effect.
-
2271 */
-
2272#define VST_ENTRYPOINT_MACOS
-
2273 vst_effect_t* main_macho(vst_host_callback_t callback) { return VSTPluginMain(callback); }
-
2274
-
2275/** [DEPRECATED] VST 2.3 Entry Point for PowerPC
-
2276 *
-
2277 * Present in some VST 2.3 and earlier compatible plug-ins that support MacOS.
+
2270 * Do not implement in VST 2.1 or later plug-ins!
+
2271 *
+
2272 * @return A new instance of the VST 1.x effect.
+
2273 */
+
2274#define VST_ENTRYPOINT_MACOS
+
2275 vst_effect_t* main_macho(vst_host_callback_t callback) { return VSTPluginMain(callback); }
+
2276
+
2277/** [DEPRECATED] VST 2.3 Entry Point for PowerPC
2278 *
-
2279 * @return A new instance of the VST 2.x effect.
-
2280 */
-
2281#define VST_ENTRYPOINT_MACOS_POWERPC
-
2282 vst_effect_t* main(vst_host_callback_t callback) { return VSTPluginMain(callback); }
-
2283
-
2284#ifdef __cplusplus
-
2285}
-
2286#endif
-
2287#pragma pack(pop)
+
2279 * Present in some VST 2.3 and earlier compatible plug-ins that support MacOS.
+
2280 *
+
2281 * @return A new instance of the VST 2.x effect.
+
2282 */
+
2283#define VST_ENTRYPOINT_MACOS_POWERPC
+
2284 vst_effect_t* main(vst_host_callback_t callback) { return VSTPluginMain(callback); }
+
2285
+
2286#ifdef __cplusplus
+
2287}
2288#endif
-
Host to Plug-in support checks.
Definition vst.h:1957
-
const char * _2in1out
Definition vst.h:1985
-
const char * _4in4out
Definition vst.h:1989
-
const char * plugAsChannelInsert
Definition vst.h:1976
-
const char * _1in1out
Definition vst.h:1983
-
const char * _4in8out
Definition vst.h:1990
-
const char * _2in2out
Definition vst.h:1986
-
const char * _8in4out
Definition vst.h:1991
-
const char * _1in2out
Definition vst.h:1984
-
const char * _2in4out
Definition vst.h:1987
-
const char * sendVstEvents
Definition vst.h:1968
-
const char * _4in2out
Definition vst.h:1988
-
const char * conformsToWindowRules
Definition vst.h:1977
-
const char * mixDryWet
Definition vst.h:1979
-
const char * receiveVstEvents
Definition vst.h:1969
-
const char * receiveVstTimeInfo
Definition vst.h:1973
-
const char * noRealTime
Definition vst.h:1980
-
const char * bypass
Effect supports alternative bypass.
Definition vst.h:1966
-
const char * _8in8out
Definition vst.h:1992
-
const char * plugAsSend
Definition vst.h:1978
-
const char * multipass
Definition vst.h:1981
-
const char * midiProgramNames
Definition vst.h:1972
-
const char * receiveVstMidiEvent
Definition vst.h:1971
-
const char * offline
Definition vst.h:1974
-
const char * metapass
Definition vst.h:1982
-
const char * sendVstMidiEvent
Definition vst.h:1970
-
Plug-in Effect definition.
Definition vst.h:2089
-
int32_t num_outputs
Number of available output streams.
Definition vst.h:2158
-
int32_t magic_number
VST Magic Number.
Definition vst.h:2096
-
vst_effect_process_double_t process_double
Process function for in-place double (64-bit float) processiong.
Definition vst.h:2242
-
int32_t _unknown_02
Definition vst.h:2178
-
int32_t unique_id
Id of the plugin.
Definition vst.h:2216
-
vst_effect_process_t process
Process Function.
Definition vst.h:2109
-
int32_t flags
Effect Flags.
Definition vst.h:2164
-
float input_output_ratio
Ratio of Input to Output production Defines how much output data is produced relative to input data w...
Definition vst.h:2189
-
int32_t num_programs
Number of available pre-defined programs.
Definition vst.h:2134
-
vst_effect_process_float_t process_float
Process function for in-place single (32-bit float) processiong.
Definition vst.h:2232
-
int32_t version
Plugin version.
Definition vst.h:2222
-
void * host_internal
Host Internal Pointer.
Definition vst.h:2203
-
vst_effect_set_parameter_t set_parameter
Set Parameter Function.
Definition vst.h:2114
-
uint8_t _unknown[56]
Definition vst.h:2245
-
void * _unknown_01
Definition vst.h:2167
-
int32_t _unknown_03
Definition vst.h:2179
-
int32_t num_params
Number of available parameters.
Definition vst.h:2141
-
void * effect_internal
Effect Internal Pointer.
Definition vst.h:2196
-
vst_effect_get_parameter_t get_parameter
Get Parameter Function.
Definition vst.h:2119
-
int32_t delay
Initial delay before processing of samples can actually begin in Samples.
Definition vst.h:2176
-
int32_t num_inputs
Number of available input streams.
Definition vst.h:2150
-
void * _unknown_00
Definition vst.h:2166
-
vst_effect_control_t control
Control Function.
Definition vst.h:2102
-
Plug-in to Host support checks.
Definition vst.h:740
-
const char * acceptIOChanges
Does the host support modifying input/output/params/delay when programs, banks or parameters are chan...
Definition vst.h:750
-
const char * openFileSelector
Definition vst.h:788
-
const char * receiveVstMidiEvent
Definition vst.h:780
-
const char * offline
Definition vst.h:786
-
const char * sendVstEvents
Definition vst.h:776
-
const char * sendVstMidiEventFlagIsRealtime
Definition vst.h:781
-
const char * reportConnectionChanges
Definition vst.h:784
-
const char * startStopProcess
Is the host using process begin/end instead of idle? The host may opt to emit VST_EFFECT_OPCODE_IDLE ...
Definition vst.h:762
-
const char * sendVstMidiEvent
Definition vst.h:779
-
const char * sizeWindow
Definition vst.h:785
-
const char * receiveVstEvents
Definition vst.h:777
-
const char * closeFileSelector
Definition vst.h:789
-
const char * sendVstTimeInfo
Definition vst.h:783
-
const char * shellCategory
Does the host support container plug-ins?
Definition vst.h:774
+
2289#pragma pack(pop)
+
2290#endif
+
Host to Plug-in support checks.
Definition vst.h:1959
+
const char * _2in1out
Definition vst.h:1987
+
const char * _4in4out
Definition vst.h:1991
+
const char * plugAsChannelInsert
Definition vst.h:1978
+
const char * _1in1out
Definition vst.h:1985
+
const char * _4in8out
Definition vst.h:1992
+
const char * _2in2out
Definition vst.h:1988
+
const char * _8in4out
Definition vst.h:1993
+
const char * _1in2out
Definition vst.h:1986
+
const char * _2in4out
Definition vst.h:1989
+
const char * sendVstEvents
Definition vst.h:1970
+
const char * _4in2out
Definition vst.h:1990
+
const char * conformsToWindowRules
Definition vst.h:1979
+
const char * mixDryWet
Definition vst.h:1981
+
const char * receiveVstEvents
Definition vst.h:1971
+
const char * receiveVstTimeInfo
Definition vst.h:1975
+
const char * noRealTime
Definition vst.h:1982
+
const char * bypass
Effect supports alternative bypass.
Definition vst.h:1968
+
const char * _8in8out
Definition vst.h:1994
+
const char * plugAsSend
Definition vst.h:1980
+
const char * multipass
Definition vst.h:1983
+
const char * midiProgramNames
Definition vst.h:1974
+
const char * receiveVstMidiEvent
Definition vst.h:1973
+
const char * offline
Definition vst.h:1976
+
const char * metapass
Definition vst.h:1984
+
const char * sendVstMidiEvent
Definition vst.h:1972
+
Plug-in Effect definition.
Definition vst.h:2091
+
int32_t num_outputs
Number of available output streams.
Definition vst.h:2160
+
int32_t magic_number
VST Magic Number.
Definition vst.h:2098
+
vst_effect_process_double_t process_double
Process function for in-place double (64-bit float) processiong.
Definition vst.h:2244
+
int32_t _unknown_02
Definition vst.h:2180
+
int32_t unique_id
Id of the plugin.
Definition vst.h:2218
+
vst_effect_process_t process
Process Function.
Definition vst.h:2111
+
int32_t flags
Effect Flags.
Definition vst.h:2166
+
float input_output_ratio
Ratio of Input to Output production Defines how much output data is produced relative to input data w...
Definition vst.h:2191
+
int32_t num_programs
Number of available pre-defined programs.
Definition vst.h:2136
+
vst_effect_process_float_t process_float
Process function for in-place single (32-bit float) processiong.
Definition vst.h:2234
+
int32_t version
Plugin version.
Definition vst.h:2224
+
void * host_internal
Host Internal Pointer.
Definition vst.h:2205
+
vst_effect_set_parameter_t set_parameter
Set Parameter Function.
Definition vst.h:2116
+
uint8_t _unknown[56]
Definition vst.h:2247
+
void * _unknown_01
Definition vst.h:2169
+
int32_t _unknown_03
Definition vst.h:2181
+
int32_t num_params
Number of available parameters.
Definition vst.h:2143
+
void * effect_internal
Effect Internal Pointer.
Definition vst.h:2198
+
vst_effect_get_parameter_t get_parameter
Get Parameter Function.
Definition vst.h:2121
+
int32_t delay
Initial delay before processing of samples can actually begin in Samples.
Definition vst.h:2178
+
int32_t num_inputs
Number of available input streams.
Definition vst.h:2152
+
void * _unknown_00
Definition vst.h:2168
+
vst_effect_control_t control
Control Function.
Definition vst.h:2104
+
Plug-in to Host support checks.
Definition vst.h:742
+
const char * acceptIOChanges
Does the host support modifying input/output/params/delay when programs, banks or parameters are chan...
Definition vst.h:752
+
const char * openFileSelector
Definition vst.h:790
+
const char * receiveVstMidiEvent
Definition vst.h:782
+
const char * offline
Definition vst.h:788
+
const char * sendVstEvents
Definition vst.h:778
+
const char * sendVstMidiEventFlagIsRealtime
Definition vst.h:783
+
const char * reportConnectionChanges
Definition vst.h:786
+
const char * startStopProcess
Is the host using process begin/end instead of idle? The host may opt to emit VST_EFFECT_OPCODE_IDLE ...
Definition vst.h:764
+
const char * sendVstMidiEvent
Definition vst.h:781
+
const char * sizeWindow
Definition vst.h:787
+
const char * receiveVstEvents
Definition vst.h:779
+
const char * closeFileSelector
Definition vst.h:791
+
const char * sendVstTimeInfo
Definition vst.h:785
+
const char * shellCategory
Does the host support container plug-ins?
Definition vst.h:776
Information about a parameter.
Definition vst.h:226
char label[VST_BUFFER_SIZE_PARAM_LABEL]
Short Human-readable label for this parameter.
Definition vst.h:294
char _reserved[16]
Definition vst.h:329
@@ -2512,31 +2514,31 @@ $(document).ready(function(){initNavTree('vst_8h_source.html',''); initResizable
@ VST_VERSION_2_4_0_0
Definition vst.h:143
@ VST_VERSION_1_0_0_0
Definition vst.h:136
@ VST_VERSION_1
Definition vst.h:135
-
void(VST_FUNCTION_INTERFACE * vst_effect_process_t)(struct vst_effect_t *self, const float *const *inputs, float **outputs, int32_t samples)
Process the given number of samples in inputs and outputs.
Definition vst.h:2043
+
void(VST_FUNCTION_INTERFACE * vst_effect_process_t)(struct vst_effect_t *self, const float *const *inputs, float **outputs, int32_t samples)
Process the given number of samples in inputs and outputs.
Definition vst.h:2045
#define VST_MAX_CHANNELS
Maximum number of channels/streams/inputs/outputs supported by VST 2.x.
Definition vst.h:50
-
void(VST_FUNCTION_INTERFACE * vst_effect_set_parameter_t)(struct vst_effect_t *self, uint32_t index, float value)
Updates the value for the parameter at the given index, or does nothing if out of bounds.
Definition vst.h:2051
+
void(VST_FUNCTION_INTERFACE * vst_effect_set_parameter_t)(struct vst_effect_t *self, uint32_t index, float value)
Updates the value for the parameter at the given index, or does nothing if out of bounds.
Definition vst.h:2053
VST_HOST_OPCODE
Plug-in to Host Op-Codes These Op-Codes are emitted by the plug-in and the host may handle them or re...
Definition vst.h:537
-
@ VST_HOST_OPCODE_28
Definition vst.h:696
+
@ VST_HOST_OPCODE_28
Crash the host if p_ptr isn't nullptr.
Definition vst.h:698
@ VST_HOST_OPCODE_04
Definition vst.h:578
@ VST_HOST_OPCODE_18
Definition vst.h:634
-
@ VST_HOST_OPCODE_EDITOR_UPDATE
Definition vst.h:705
+
@ VST_HOST_OPCODE_EDITOR_UPDATE
Definition vst.h:707
@ VST_HOST_OPCODE_CURRENT_EFFECT_ID
Definition vst.h:568
-
@ VST_HOST_OPCODE_PARAM_START_EDIT
Definition vst.h:713
-
@ VST_HOST_OPCODE_PARAM_STOP_EDIT
Definition vst.h:721
+
@ VST_HOST_OPCODE_PARAM_START_EDIT
Definition vst.h:715
+
@ VST_HOST_OPCODE_PARAM_STOP_EDIT
Definition vst.h:723
@ VST_HOST_OPCODE_06
Definition vst.h:586
@ VST_HOST_OPCODE_1A
Definition vst.h:638
@ VST_HOST_OPCODE_0F
Definition vst.h:616
-
@ VST_HOST_OPCODE_2F
Definition vst.h:725
-
@ VST_HOST_OPCODE_IO_MODIFIED
Definition vst.h:614
+
@ VST_HOST_OPCODE_2F
Definition vst.h:727
+
@ VST_HOST_OPCODE_IO_MODIFIED
Definition vst.h:612
@ VST_HOST_OPCODE_1B
Definition vst.h:640
@ VST_HOST_OPCODE_12
Definition vst.h:622
@ VST_HOST_OPCODE_KEEPALIVE_OR_IDLE
Definition vst.h:576
@ VST_HOST_OPCODE_07
Definition vst.h:588
@ VST_HOST_OPCODE_1C
Definition vst.h:642
@ VST_HOST_OPCODE_08
Definition vst.h:590
-
@ VST_HOST_OPCODE_27
Definition vst.h:694
+
@ VST_HOST_OPCODE_27
Crash the host if p_ptr isn't nullptr.
Definition vst.h:695
@ VST_HOST_OPCODE_20
Retrieve the vendor name into the ptr buffer.
Definition vst.h:654
-
@ VST_HOST_OPCODE_2B
Notify host that a parameter is being edited.
Definition vst.h:711
+
@ VST_HOST_OPCODE_2B
Notify host that a parameter is being edited.
Definition vst.h:713
@ VST_HOST_OPCODE_16
Definition vst.h:630
@ VST_HOST_OPCODE_25
Check if the host supports a certain feature.
Definition vst.h:688
@ VST_HOST_OPCODE_1D
Definition vst.h:644
@@ -2546,7 +2548,7 @@ $(document).ready(function(){initNavTree('vst_8h_source.html',''); initResizable
@ VST_HOST_OPCODE_19
Definition vst.h:636
@ VST_HOST_OPCODE_05
Definition vst.h:584
@ VST_HOST_OPCODE_1E
Definition vst.h:646
-
@ VST_HOST_OPCODE_29
Definition vst.h:698
+
@ VST_HOST_OPCODE_29
Definition vst.h:700
@ VST_HOST_OPCODE_01
Retrieve the Hosts VST Version.
Definition vst.h:556
@ VST_HOST_OPCODE_AUTOMATE
Definition vst.h:548
@ VST_HOST_OPCODE_0A
Definition vst.h:594
@@ -2554,24 +2556,24 @@ $(document).ready(function(){initNavTree('vst_8h_source.html',''); initResizable
@ VST_HOST_OPCODE_11
Definition vst.h:620
@ VST_HOST_OPCODE_0C
Definition vst.h:598
@ VST_HOST_OPCODE_10
Definition vst.h:618
-
@ VST_HOST_OPCODE_2C
Notify host that parameter is no longer being edited.
Definition vst.h:719
+
@ VST_HOST_OPCODE_2C
Notify host that parameter is no longer being edited.
Definition vst.h:721
@ VST_HOST_OPCODE_13
Definition vst.h:624
-
@ VST_HOST_OPCODE_0E
Notify the host that numInputs/numOutputs/delay/numParams has changed.
Definition vst.h:612
-
@ VST_HOST_OPCODE_2D
Definition vst.h:723
-
@ VST_HOST_OPCODE_0D
Definition vst.h:600
+
@ VST_HOST_OPCODE_0E
Definition vst.h:614
+
@ VST_HOST_OPCODE_2D
Definition vst.h:725
+
@ VST_HOST_OPCODE_0D
Notify the host that numInputs/numOutputs/delay/numParams has changed.
Definition vst.h:610
@ VST_HOST_OPCODE_00
Update automation for a given Parameter.
Definition vst.h:546
@ VST_HOST_OPCODE_17
Definition vst.h:632
@ VST_HOST_OPCODE_03
Some sort of idle keep-alive?
Definition vst.h:574
@ VST_HOST_OPCODE_PRODUCT_NAME
Definition vst.h:664
-
@ VST_HOST_OPCODE_2A
Request an update of the editor window.
Definition vst.h:703
+
@ VST_HOST_OPCODE_2A
Request an update of the editor window.
Definition vst.h:705
@ VST_HOST_OPCODE_02
Get the currently selected effect id in container plug-ins.
Definition vst.h:566
@ VST_HOST_OPCODE_VENDOR_VERSION
Definition vst.h:672
@ VST_HOST_OPCODE_14
Definition vst.h:626
@ VST_HOST_OPCODE_VENDOR_NAME
Definition vst.h:656
-
@ VST_HOST_OPCODE_2E
Definition vst.h:724
-
@ VST_HOST_OPCODE_MAX
Definition vst.h:728
+
@ VST_HOST_OPCODE_2E
Definition vst.h:726
+
@ VST_HOST_OPCODE_MAX
Definition vst.h:730
@ VST_HOST_OPCODE_22
Retrieve the vendor version in return value.
Definition vst.h:670
-
@ _VST_HOST_OPCODE_PAD
Definition vst.h:731
+
@ _VST_HOST_OPCODE_PAD
Definition vst.h:733
@ VST_HOST_OPCODE_21
Retrieve the product name into the ptr buffer.
Definition vst.h:662
@ VST_HOST_OPCODE_VST_VERSION
Definition vst.h:558
@ VST_HOST_OPCODE_SUPPORTS
Definition vst.h:690
@@ -2580,7 +2582,7 @@ $(document).ready(function(){initNavTree('vst_8h_source.html',''); initResizable
@ VST_HOST_OPCODE_1F
Definition vst.h:648
@ VST_HOST_OPCODE_0B
Definition vst.h:596
@ VST_HOST_OPCODE_09
Definition vst.h:592
-
void(VST_FUNCTION_INTERFACE * vst_effect_process_double_t)(struct vst_effect_t *self, const double *const *inputs, double **outputs, int32_t samples)
Process the given number of double samples in inputs and outputs.
Definition vst.h:2085
+
void(VST_FUNCTION_INTERFACE * vst_effect_process_double_t)(struct vst_effect_t *self, const double *const *inputs, double **outputs, int32_t samples)
Process the given number of double samples in inputs and outputs.
Definition vst.h:2087
VST_STATUS
Known Status Codes.
Definition vst.h:58
@ VST_STATUS_ERROR
Definition vst.h:69
@ VST_STATUS_0
Unknown / False We either don't know the answer or we can't handle the data/notification.
Definition vst.h:65
@@ -2636,42 +2638,42 @@ $(document).ready(function(){initNavTree('vst_8h_source.html',''); initResizable
@ VST_SPEAKER_TYPE_USER_14
Definition vst.h:371
@ VST_SPEAKER_TYPE_USER_16
Definition vst.h:369
@ VST_SPEAKER_TYPE_USER_03
Definition vst.h:382
-
VST_EFFECT_CATEGORY
Plug-in Categories Pre-defined category grouping that also affect host behavior when handling the plu...
Definition vst.h:846
-
@ VST_EFFECT_CATEGORY_0A
Container Plug-in This plug-in contains multiple effects in one and requires special handling on both...
Definition vst.h:1002
-
@ VST_EFFECT_CATEGORY_EFFECT
Definition vst.h:856
-
@ VST_EFFECT_CATEGORY_02
Instruments Examples: Instruments, Synths, Samplers, ...
Definition vst.h:863
-
@ VST_EFFECT_CATEGORY_METERING
Definition vst.h:875
-
@ VST_EFFECT_CATEGORY_01
Generic Effects Examples: Distortion, Pitch Shift, ...
Definition vst.h:854
-
@ VST_EFFECT_CATEGORY_08
Restoration Examples: Noise Filtering, Upsamplers, ...
Definition vst.h:912
-
@ VST_EFFECT_CATEGORY_WAVEGENERATOR
Definition vst.h:1016
-
@ VST_EFFECT_CATEGORY_09
Offline Processing Examples: Nothing Supports: Nothing.
Definition vst.h:920
-
@ VST_EFFECT_CATEGORY_SPATIAL
Definition vst.h:893
-
@ VST_EFFECT_CATEGORY_07
Definition vst.h:904
-
@ VST_EFFECT_CATEGORY_06
Delay/Echo Examples: Echo, Reverb, Room Simulation, Delay, ...
Definition vst.h:900
-
@ VST_EFFECT_CATEGORY_OFFLINE
Definition vst.h:922
-
@ VST_EFFECT_CATEGORY_0B
Waveform Generators Examples: Sine Wave Generator, ... Supports: Delay, Tail Samples.
Definition vst.h:1014
-
@ VST_EFFECT_CATEGORY_05
Spatializers Examples: Channel Panning, Expanders, ...
Definition vst.h:891
-
@ VST_EFFECT_CATEGORY_MASTERING
Definition vst.h:884
-
@ VST_EFFECT_CATEGORY_RESTORATION
Definition vst.h:914
-
@ VST_EFFECT_CATEGORY_UNCATEGORIZED
Definition vst.h:847
-
@ VST_EFFECT_CATEGORY_03
Metering Examples: Loudness Meters, Volume Analysis, ...
Definition vst.h:873
-
@ VST_EFFECT_CATEGORY_INSTRUMENT
Definition vst.h:865
-
@ VST_EFFECT_CATEGORY_DELAY_OR_ECHO
Definition vst.h:902
-
@ VST_EFFECT_CATEGORY_04
Mastering Examples: Compressors, Limiters, ...
Definition vst.h:882
-
@ VST_EFFECT_CATEGORY_CONTAINER
Definition vst.h:1004
-
VST_EFFECT_FLAG
Effect Flags.
Definition vst.h:1027
-
@ VST_EFFECT_FLAG_SILENT_TAIL
Definition vst.h:1095
-
@ VST_EFFECT_FLAG_1ls9
Effect does not produce tail samples when the input is silent.
Definition vst.h:1093
-
@ VST_EFFECT_FLAG_CHUNKS
Definition vst.h:1073
-
@ VST_EFFECT_FLAG_1ls4
Effect uses process_float.
Definition vst.h:1061
-
@ VST_EFFECT_FLAG_1ls5
Effect supports saving/loading programs/banks from unformatted chunk data.
Definition vst.h:1071
-
@ VST_EFFECT_FLAG_EDITOR
Definition vst.h:1049
-
@ VST_EFFECT_FLAG_SUPPORTS_FLOAT
Definition vst.h:1063
-
@ VST_EFFECT_FLAG_1ls0
Effect provides a custom editor.
Definition vst.h:1047
-
@ VST_EFFECT_FLAG_INSTRUMENT
Definition vst.h:1085
-
@ VST_EFFECT_FLAG_1ls12
Effect supports process_double.
Definition vst.h:1107
-
@ VST_EFFECT_FLAG_1ls8
Effect is an Instrument/Generator.
Definition vst.h:1083
-
@ VST_EFFECT_FLAG_SUPPORTS_DOUBLE
Definition vst.h:1109
+
VST_EFFECT_CATEGORY
Plug-in Categories Pre-defined category grouping that also affect host behavior when handling the plu...
Definition vst.h:848
+
@ VST_EFFECT_CATEGORY_0A
Container Plug-in This plug-in contains multiple effects in one and requires special handling on both...
Definition vst.h:1004
+
@ VST_EFFECT_CATEGORY_EFFECT
Definition vst.h:858
+
@ VST_EFFECT_CATEGORY_02
Instruments Examples: Instruments, Synths, Samplers, ...
Definition vst.h:865
+
@ VST_EFFECT_CATEGORY_METERING
Definition vst.h:877
+
@ VST_EFFECT_CATEGORY_01
Generic Effects Examples: Distortion, Pitch Shift, ...
Definition vst.h:856
+
@ VST_EFFECT_CATEGORY_08
Restoration Examples: Noise Filtering, Upsamplers, ...
Definition vst.h:914
+
@ VST_EFFECT_CATEGORY_WAVEGENERATOR
Definition vst.h:1018
+
@ VST_EFFECT_CATEGORY_09
Offline Processing Examples: Nothing Supports: Nothing.
Definition vst.h:922
+
@ VST_EFFECT_CATEGORY_SPATIAL
Definition vst.h:895
+
@ VST_EFFECT_CATEGORY_07
Definition vst.h:906
+
@ VST_EFFECT_CATEGORY_06
Delay/Echo Examples: Echo, Reverb, Room Simulation, Delay, ...
Definition vst.h:902
+
@ VST_EFFECT_CATEGORY_OFFLINE
Definition vst.h:924
+
@ VST_EFFECT_CATEGORY_0B
Waveform Generators Examples: Sine Wave Generator, ... Supports: Delay, Tail Samples.
Definition vst.h:1016
+
@ VST_EFFECT_CATEGORY_05
Spatializers Examples: Channel Panning, Expanders, ...
Definition vst.h:893
+
@ VST_EFFECT_CATEGORY_MASTERING
Definition vst.h:886
+
@ VST_EFFECT_CATEGORY_RESTORATION
Definition vst.h:916
+
@ VST_EFFECT_CATEGORY_UNCATEGORIZED
Definition vst.h:849
+
@ VST_EFFECT_CATEGORY_03
Metering Examples: Loudness Meters, Volume Analysis, ...
Definition vst.h:875
+
@ VST_EFFECT_CATEGORY_INSTRUMENT
Definition vst.h:867
+
@ VST_EFFECT_CATEGORY_DELAY_OR_ECHO
Definition vst.h:904
+
@ VST_EFFECT_CATEGORY_04
Mastering Examples: Compressors, Limiters, ...
Definition vst.h:884
+
@ VST_EFFECT_CATEGORY_CONTAINER
Definition vst.h:1006
+
VST_EFFECT_FLAG
Effect Flags.
Definition vst.h:1029
+
@ VST_EFFECT_FLAG_SILENT_TAIL
Definition vst.h:1097
+
@ VST_EFFECT_FLAG_1ls9
Effect does not produce tail samples when the input is silent.
Definition vst.h:1095
+
@ VST_EFFECT_FLAG_CHUNKS
Definition vst.h:1075
+
@ VST_EFFECT_FLAG_1ls4
Effect uses process_float.
Definition vst.h:1063
+
@ VST_EFFECT_FLAG_1ls5
Effect supports saving/loading programs/banks from unformatted chunk data.
Definition vst.h:1073
+
@ VST_EFFECT_FLAG_EDITOR
Definition vst.h:1051
+
@ VST_EFFECT_FLAG_SUPPORTS_FLOAT
Definition vst.h:1065
+
@ VST_EFFECT_FLAG_1ls0
Effect provides a custom editor.
Definition vst.h:1049
+
@ VST_EFFECT_FLAG_INSTRUMENT
Definition vst.h:1087
+
@ VST_EFFECT_FLAG_1ls12
Effect supports process_double.
Definition vst.h:1109
+
@ VST_EFFECT_FLAG_1ls8
Effect is an Instrument/Generator.
Definition vst.h:1085
+
@ VST_EFFECT_FLAG_SUPPORTS_DOUBLE
Definition vst.h:1111
VST_BUFFER_SIZE
Known Buffer Sizes.
Definition vst.h:102
@ VST_BUFFER_SIZE_SPEAKER_NAME
Definition vst.h:112
@ VST_BUFFER_SIZE_STREAM_NAME
Definition vst.h:113
@@ -2685,7 +2687,7 @@ $(document).ready(function(){initNavTree('vst_8h_source.html',''); initResizable
@ VST_BUFFER_SIZE_EFFECT_NAME
Definition vst.h:109
@ VST_BUFFER_SIZE_PARAM_LONG_NAME
Definition vst.h:110
@ VST_BUFFER_SIZE_PRODUCT_NAME
Definition vst.h:111
-
void(VST_FUNCTION_INTERFACE * vst_effect_process_float_t)(struct vst_effect_t *self, const float *const *inputs, float **outputs, int32_t samples)
Process the given number of single samples in inputs and outputs.
Definition vst.h:2072
+
void(VST_FUNCTION_INTERFACE * vst_effect_process_float_t)(struct vst_effect_t *self, const float *const *inputs, float **outputs, int32_t samples)
Process the given number of single samples in inputs and outputs.
Definition vst.h:2074
VST_PARAMETER_FLAG
Flags for parameters.
Definition vst.h:162
@ VST_PARAMETER_FLAG_SWITCH
Definition vst.h:169
@ VST_PARAMETER_FLAG_1ls6
Parameter can be gradually increased/decreased.
Definition vst.h:215
@@ -2703,185 +2705,185 @@ $(document).ready(function(){initNavTree('vst_8h_source.html',''); initResizable
@ VST_PARAMETER_FLAG_1ls1
Parameter limits are set as integers.
Definition vst.h:175
@ _VST_PARAMETER_FLAG_PAD
Definition vst.h:219
#define VST_FUNCTION_INTERFACE
Standard calling convention across plug-ins and hosts.
Definition vst.h:46
-
VST_EFFECT_OPCODE
Host to Plug-in Op-Codes These Op-Codes are emitted by the host and we must either handle them or ret...
Definition vst.h:1115
-
@ VST_EFFECT_OPCODE_WINDOW_MOUSE
Definition vst.h:1325
-
@ VST_EFFECT_OPCODE_2A
Host wants to change the speaker arrangement.
Definition vst.h:1571
-
@ VST_EFFECT_OPCODE_GETVENDORVERSION
Definition vst.h:1648
-
@ VST_EFFECT_OPCODE_20
Input disconnected.
Definition vst.h:1482
-
@ VST_EFFECT_OPCODE_14
Window Focus Event?
Definition vst.h:1361
-
@ VST_EFFECT_OPCODE_PARAM_VALUE_TO_STRING
Definition vst.h:1204
-
@ VST_EFFECT_OPCODE_PARAM_GETLABEL
Definition vst.h:1184
-
@ VST_EFFECT_OPCODE_4E
Definition vst.h:1935
-
@ VST_EFFECT_OPCODE_43
Host is starting to set up a program.
Definition vst.h:1819
-
@ VST_EFFECT_OPCODE_3E
Midi related.
Definition vst.h:1783
-
@ VST_EFFECT_OPCODE_32
User-defined Op-Code for VST extensions.
Definition vst.h:1659
-
@ VST_EFFECT_OPCODE_03
Get currently selected program number.
Definition vst.h:1150
-
@ VST_EFFECT_OPCODE_SET_CHUNK_DATA
Definition vst.h:1409
-
@ VST_EFFECT_OPCODE_21
Retrieve properties for the given input index.
Definition vst.h:1491
-
@ VST_EFFECT_OPCODE_PRODUCT_NAME
Definition vst.h:1639
-
@ VST_EFFECT_OPCODE_4B
Host wants to know if we can load the provided bank data.
Definition vst.h:1903
-
@ VST_EFFECT_OPCODE_PARAM_NAME
Definition vst.h:1218
-
@ VST_EFFECT_OPCODE_1C
Definition vst.h:1454
-
@ VST_EFFECT_OPCODE_41
Midi related.
Definition vst.h:1804
-
@ VST_EFFECT_OPCODE_SET_SAMPLE_RATE
Definition vst.h:1234
-
@ VST_EFFECT_OPCODE_CREATE
Definition vst.h:1122
-
@ VST_EFFECT_OPCODE_EDITOR_GET_RECT
Definition vst.h:1274
-
@ VST_EFFECT_OPCODE_SET_SPEAKER_ARRANGEMENT
Definition vst.h:1573
-
@ VST_EFFECT_OPCODE_PARAM_GETVALUE
Definition vst.h:1198
-
@ VST_EFFECT_OPCODE_PROGRAM_SET_NAME
Definition vst.h:1164
-
@ VST_EFFECT_OPCODE_06
Get the value? label for the parameter.
Definition vst.h:1182
-
@ VST_EFFECT_OPCODE_0A
Set the new sample rate for the plugin to use.
Definition vst.h:1230
-
@ VST_EFFECT_OPCODE_10
Window Draw Event?
Definition vst.h:1307
-
@ VST_EFFECT_OPCODE_2F
Retrieve the vendor name into the ptr buffer.
Definition vst.h:1624
-
@ VST_EFFECT_OPCODE_PROGRAM_GET
Definition vst.h:1154
-
@ VST_EFFECT_OPCODE_28
Seen in plug-ins with VST_EFFECT_CATEGORY_OFFLINE.
Definition vst.h:1550
-
@ VST_EFFECT_OPCODE_4D
Definition vst.h:1928
-
@ VST_EFFECT_OPCODE_01
Destroy the effect (if there is any) and free its memory.
Definition vst.h:1132
-
@ VST_EFFECT_OPCODE_3C
Editor Virtual Key Up Event.
Definition vst.h:1767
-
@ VST_EFFECT_OPCODE_1B
Set Parameter value from string representation.
Definition vst.h:1443
-
@ VST_EFFECT_OPCODE_SET_BLOCK_SIZE
Definition vst.h:1244
-
@ VST_EFFECT_OPCODE_IDLE
Definition vst.h:1695
-
@ VST_EFFECT_OPCODE_33
Test for support of a specific named feature.
Definition vst.h:1670
-
@ VST_EFFECT_OPCODE_04
Set the name of the currently selected program.
Definition vst.h:1160
-
@ VST_EFFECT_OPCODE_09
Definition vst.h:1224
-
@ VST_EFFECT_OPCODE_PARAM_GET_NAME
Definition vst.h:1216
-
@ VST_EFFECT_OPCODE_BANK_LOAD
Definition vst.h:1905
-
@ VST_EFFECT_OPCODE_EDITOR_MOUSE
Definition vst.h:1327
-
@ VST_EFFECT_OPCODE_WINDOW_CREATE
Definition vst.h:1283
-
@ VST_EFFECT_OPCODE_0B
Sets the block size, which is the maximum number of samples passed into the effect via process calls.
Definition vst.h:1240
-
@ VST_EFFECT_OPCODE_PARAM_GET_VALUE
Definition vst.h:1200
-
@ VST_EFFECT_OPCODE_39
Definition vst.h:1731
-
@ VST_EFFECT_OPCODE_05
Get the name of the currently selected program.
Definition vst.h:1170
-
@ VST_EFFECT_OPCODE_1A
Can the parameter be automated?
Definition vst.h:1428
-
@ VST_EFFECT_OPCODE_19
Appears to be related to midi and audio events.
Definition vst.h:1420
-
@ VST_EFFECT_OPCODE_PROGRAM_SET_END
Definition vst.h:1831
-
@ VST_EFFECT_OPCODE_GET_PROGRAM
Definition vst.h:1152
-
@ VST_EFFECT_OPCODE_12
Window Keyboard Event?
Definition vst.h:1339
-
@ VST_EFFECT_OPCODE_42
Midi related.
Definition vst.h:1811
-
@ VST_EFFECT_OPCODE_EFFECT_CATEGORY
Definition vst.h:1513
-
@ VST_EFFECT_OPCODE_PARAM_IS_AUTOMATABLE
Definition vst.h:1432
-
@ VST_EFFECT_OPCODE_WINDOW_DRAW
Definition vst.h:1309
-
@ VST_EFFECT_OPCODE_DESTROY
Definition vst.h:1134
-
@ VST_EFFECT_OPCODE_SETBLOCKSIZE
Definition vst.h:1242
-
@ VST_EFFECT_OPCODE_02
Set which program number is currently select.
Definition vst.h:1140
-
@ VST_EFFECT_OPCODE_48
End processing of audio.
Definition vst.h:1875
-
@ VST_EFFECT_OPCODE_GETNAME2
Definition vst.h:1637
-
@ VST_EFFECT_OPCODE_CUSTOM
Definition vst.h:1661
-
@ VST_EFFECT_OPCODE_2E
Translate an error code to a string.
Definition vst.h:1615
-
@ VST_EFFECT_OPCODE_3D
Definition vst.h:1776
-
@ VST_EFFECT_OPCODE_EDITOR_KEEP_ALIVE
Definition vst.h:1351
-
@ VST_EFFECT_OPCODE_PARAM_PROPERTIES
Definition vst.h:1724
-
@ VST_EFFECT_OPCODE_TAIL_SAMPLES
Definition vst.h:1684
-
@ VST_EFFECT_OPCODE_30
Retrieve the product name into the ptr buffer.
Definition vst.h:1635
-
@ VST_EFFECT_OPCODE_PARAM_VALUE
Definition vst.h:1202
-
@ VST_EFFECT_OPCODE_35
Notify effect that it is idle?
Definition vst.h:1693
-
@ VST_EFFECT_OPCODE_PROGRAM_GET_NAME
Definition vst.h:1174
-
@ VST_EFFECT_OPCODE_0D
Retrieve the client rect size of the plugins window.
Definition vst.h:1268
-
@ VST_EFFECT_OPCODE_1E
Definition vst.h:1468
-
@ VST_EFFECT_OPCODE_PROGRAM_LOAD
Definition vst.h:1917
-
@ VST_EFFECT_OPCODE_23
Retrieve category of this effect.
Definition vst.h:1511
-
@ VST_EFFECT_OPCODE_VST_VERSION
Definition vst.h:1741
-
@ VST_EFFECT_OPCODE_36
Definition vst.h:1703
-
@ VST_EFFECT_OPCODE_CATEGORY
Definition vst.h:1515
-
@ VST_EFFECT_OPCODE_EDITOR_OPEN
Definition vst.h:1285
-
@ VST_EFFECT_OPCODE_EDITOR_VKEY_DOWN
Definition vst.h:1757
-
@ VST_EFFECT_OPCODE_00
Create/Initialize the effect (if it has not been created already).
Definition vst.h:1120
-
@ VST_EFFECT_OPCODE_2B
Definition vst.h:1579
-
@ VST_EFFECT_OPCODE_SUSPEND_RESUME
Definition vst.h:1258
-
@ VST_EFFECT_OPCODE_24
Definition vst.h:1522
-
@ VST_EFFECT_OPCODE_PARAM_LABEL
Definition vst.h:1188
-
@ VST_EFFECT_OPCODE_40
Midi related.
Definition vst.h:1797
-
@ VST_EFFECT_OPCODE_22
Retrieve properties for the given output index.
Definition vst.h:1502
-
@ VST_EFFECT_OPCODE_4F
Definition vst.h:1942
-
@ VST_EFFECT_OPCODE_47
Begin processing of audio.
Definition vst.h:1866
-
@ VST_EFFECT_OPCODE_38
Parameter Properties.
Definition vst.h:1720
-
@ VST_EFFECT_OPCODE_GET_SPEAKER_ARRANGEMENT
Definition vst.h:1846
-
@ VST_EFFECT_OPCODE_0E
Create the window for the plugin.
Definition vst.h:1281
-
@ VST_EFFECT_OPCODE_3B
Editor Virtual Key Down Input.
Definition vst.h:1755
-
@ VST_EFFECT_OPCODE_BYPASS
Definition vst.h:1590
-
@ VST_EFFECT_OPCODE_EDITOR_KEYBOARD
Definition vst.h:1343
-
@ VST_EFFECT_OPCODE_INPUT_GET_PROPERTIES
Definition vst.h:1493
-
@ VST_EFFECT_OPCODE_VENDOR_NAME
Definition vst.h:1628
-
@ VST_EFFECT_OPCODE_PARAM_ISAUTOMATABLE
Definition vst.h:1430
-
@ VST_EFFECT_OPCODE_WINDOW_KEYBOARD
Definition vst.h:1341
-
@ VST_EFFECT_OPCODE_GET_PROGRAM_NAME
Definition vst.h:1172
-
@ VST_EFFECT_OPCODE_17
Get Chunk Data.
Definition vst.h:1393
-
@ VST_EFFECT_OPCODE_31
Retrieve the vendor version in return value.
Definition vst.h:1646
-
@ VST_EFFECT_OPCODE_2D
Retrieve the effect name into the ptr buffer.
Definition vst.h:1599
-
@ VST_EFFECT_OPCODE_07
Get the string representing the value for the parameter.
Definition vst.h:1196
-
@ VST_EFFECT_OPCODE_PROCESS_END
Definition vst.h:1877
-
@ VST_EFFECT_OPCODE_SET_PROGRAM
Definition vst.h:1142
-
@ VST_EFFECT_OPCODE_27
Seen in plug-ins with VST_EFFECT_CATEGORY_OFFLINE.
Definition vst.h:1543
-
@ VST_EFFECT_OPCODE_EDITOR_DRAW
Definition vst.h:1311
-
@ VST_EFFECT_OPCODE_15
Window Unfocus Event?
Definition vst.h:1371
-
@ VST_EFFECT_OPCODE_49
Definition vst.h:1884
-
@ VST_EFFECT_OPCODE_NAME
Definition vst.h:1605
-
@ VST_EFFECT_OPCODE_EDITOR_CLOSE
Definition vst.h:1295
-
@ VST_EFFECT_OPCODE_29
Seen in plug-ins with VST_EFFECT_CATEGORY_OFFLINE.
Definition vst.h:1557
-
@ VST_EFFECT_OPCODE_3A
Retrieve the VST Version supported.
Definition vst.h:1739
-
@ VST_EFFECT_OPCODE_11
Window Mouse Event?
Definition vst.h:1323
-
@ VST_EFFECT_OPCODE_PARAM_GET_LABEL
Definition vst.h:1186
-
@ VST_EFFECT_OPCODE_SETSAMPLERATE
Definition vst.h:1232
-
@ VST_EFFECT_OPCODE_0F
Destroy the plugins window.
Definition vst.h:1291
-
@ VST_EFFECT_OPCODE_GET_CHUNK_DATA
Definition vst.h:1395
-
@ VST_EFFECT_OPCODE_INITIALIZE
Definition vst.h:1124
-
@ VST_EFFECT_OPCODE_GETTAILSAMPLES
Definition vst.h:1682
-
@ VST_EFFECT_OPCODE_18
Set Chunk Data.
Definition vst.h:1407
-
@ VST_EFFECT_OPCODE_EFFECT_NAME
Definition vst.h:1603
-
@ VST_EFFECT_OPCODE_GET_PARAMETER_PROPERTIES
Definition vst.h:1722
-
@ VST_EFFECT_OPCODE_PARAM_AUTOMATABLE
Definition vst.h:1434
-
@ VST_EFFECT_OPCODE_PARAM_GETNAME
Definition vst.h:1214
-
@ VST_EFFECT_OPCODE_4A
Definition vst.h:1893
-
@ VST_EFFECT_OPCODE_08
Get the name for the parameter.
Definition vst.h:1212
-
@ VST_EFFECT_OPCODE_13
Window/Editor Idle/Keep-Alive Callback?
Definition vst.h:1349
-
@ VST_EFFECT_OPCODE_45
Host wants to know the current speaker arrangement.
Definition vst.h:1844
-
@ VST_EFFECT_OPCODE_WINDOW_GETRECT
Definition vst.h:1270
-
@ VST_EFFECT_OPCODE_OUTPUT_GET_PROPERTIES
Definition vst.h:1504
-
@ VST_EFFECT_OPCODE_PARAM_VALUE_FROM_STRING
Definition vst.h:1447
-
@ VST_EFFECT_OPCODE_GETVENDOR
Definition vst.h:1626
-
@ VST_EFFECT_OPCODE_PROCESS_BEGIN
Definition vst.h:1868
-
@ VST_EFFECT_OPCODE_1D
Definition vst.h:1461
-
@ VST_EFFECT_OPCODE_PAUSE_UNPAUSE
Definition vst.h:1256
-
@ VST_EFFECT_OPCODE_4C
Host wants to know if we can load the provided program data.
Definition vst.h:1915
-
@ VST_EFFECT_OPCODE_26
Seen in plug-ins with VST_EFFECT_CATEGORY_OFFLINE.
Definition vst.h:1536
-
@ VST_EFFECT_OPCODE_CONTAINER_NEXT_EFFECT_ID
Definition vst.h:1859
-
@ VST_EFFECT_OPCODE_GETNAME
Definition vst.h:1601
-
@ VST_EFFECT_OPCODE_VENDOR_VERSION
Definition vst.h:1650
-
@ VST_EFFECT_OPCODE_46
Get the next effect contained in this effect.
Definition vst.h:1857
-
@ VST_EFFECT_OPCODE_SET_PROGRAM_NAME
Definition vst.h:1162
-
@ VST_EFFECT_OPCODE_FOURCC
Definition vst.h:1381
-
@ VST_EFFECT_OPCODE_37
Definition vst.h:1711
-
@ VST_EFFECT_OPCODE_44
Host is done setting up a program.
Definition vst.h:1829
-
@ VST_EFFECT_OPCODE_3F
Midi related.
Definition vst.h:1790
-
@ VST_EFFECT_OPCODE_WINDOW_DESTROY
Definition vst.h:1293
-
@ VST_EFFECT_OPCODE_EDITOR_VKEY_UP
Definition vst.h:1769
-
@ VST_EFFECT_OPCODE_1F
Input connected.
Definition vst.h:1475
-
@ VST_EFFECT_OPCODE_34
Number of samples that are at the tail at the end of playback.
Definition vst.h:1680
-
@ VST_EFFECT_OPCODE_2C
Enable/Disable bypassing the effect.
Definition vst.h:1588
-
@ VST_EFFECT_OPCODE_PROGRAM_SET
Definition vst.h:1144
-
@ VST_EFFECT_OPCODE_SUPPORTS
Definition vst.h:1672
-
@ VST_EFFECT_OPCODE_PROGRAM_SET_BEGIN
Definition vst.h:1821
-
@ VST_EFFECT_OPCODE_16
Definition vst.h:1379
-
@ VST_EFFECT_OPCODE_TRANSLATE_ERROR
Definition vst.h:1617
-
@ VST_EFFECT_OPCODE_EDITOR_RECT
Definition vst.h:1272
-
@ VST_EFFECT_OPCODE_25
Definition vst.h:1529
-
@ VST_EFFECT_OPCODE_PARAM_SET_VALUE
Definition vst.h:1445
-
@ VST_EFFECT_OPCODE_SUSPEND
Definition vst.h:1260
-
@ VST_EFFECT_OPCODE_0C
Effect processing should be suspended/paused or resumed/unpaused.
Definition vst.h:1254
+
VST_EFFECT_OPCODE
Host to Plug-in Op-Codes These Op-Codes are emitted by the host and we must either handle them or ret...
Definition vst.h:1117
+
@ VST_EFFECT_OPCODE_WINDOW_MOUSE
Definition vst.h:1327
+
@ VST_EFFECT_OPCODE_2A
Host wants to change the speaker arrangement.
Definition vst.h:1573
+
@ VST_EFFECT_OPCODE_GETVENDORVERSION
Definition vst.h:1650
+
@ VST_EFFECT_OPCODE_20
Input disconnected.
Definition vst.h:1484
+
@ VST_EFFECT_OPCODE_14
Window Focus Event?
Definition vst.h:1363
+
@ VST_EFFECT_OPCODE_PARAM_VALUE_TO_STRING
Definition vst.h:1206
+
@ VST_EFFECT_OPCODE_PARAM_GETLABEL
Definition vst.h:1186
+
@ VST_EFFECT_OPCODE_4E
Definition vst.h:1937
+
@ VST_EFFECT_OPCODE_43
Host is starting to set up a program.
Definition vst.h:1821
+
@ VST_EFFECT_OPCODE_3E
Midi related.
Definition vst.h:1785
+
@ VST_EFFECT_OPCODE_32
User-defined Op-Code for VST extensions.
Definition vst.h:1661
+
@ VST_EFFECT_OPCODE_03
Get currently selected program number.
Definition vst.h:1152
+
@ VST_EFFECT_OPCODE_SET_CHUNK_DATA
Definition vst.h:1411
+
@ VST_EFFECT_OPCODE_21
Retrieve properties for the given input index.
Definition vst.h:1493
+
@ VST_EFFECT_OPCODE_PRODUCT_NAME
Definition vst.h:1641
+
@ VST_EFFECT_OPCODE_4B
Host wants to know if we can load the provided bank data.
Definition vst.h:1905
+
@ VST_EFFECT_OPCODE_PARAM_NAME
Definition vst.h:1220
+
@ VST_EFFECT_OPCODE_1C
Definition vst.h:1456
+
@ VST_EFFECT_OPCODE_41
Midi related.
Definition vst.h:1806
+
@ VST_EFFECT_OPCODE_SET_SAMPLE_RATE
Definition vst.h:1236
+
@ VST_EFFECT_OPCODE_CREATE
Definition vst.h:1124
+
@ VST_EFFECT_OPCODE_EDITOR_GET_RECT
Definition vst.h:1276
+
@ VST_EFFECT_OPCODE_SET_SPEAKER_ARRANGEMENT
Definition vst.h:1575
+
@ VST_EFFECT_OPCODE_PARAM_GETVALUE
Definition vst.h:1200
+
@ VST_EFFECT_OPCODE_PROGRAM_SET_NAME
Definition vst.h:1166
+
@ VST_EFFECT_OPCODE_06
Get the value? label for the parameter.
Definition vst.h:1184
+
@ VST_EFFECT_OPCODE_0A
Set the new sample rate for the plugin to use.
Definition vst.h:1232
+
@ VST_EFFECT_OPCODE_10
Window Draw Event?
Definition vst.h:1309
+
@ VST_EFFECT_OPCODE_2F
Retrieve the vendor name into the ptr buffer.
Definition vst.h:1626
+
@ VST_EFFECT_OPCODE_PROGRAM_GET
Definition vst.h:1156
+
@ VST_EFFECT_OPCODE_28
Seen in plug-ins with VST_EFFECT_CATEGORY_OFFLINE.
Definition vst.h:1552
+
@ VST_EFFECT_OPCODE_4D
Definition vst.h:1930
+
@ VST_EFFECT_OPCODE_01
Destroy the effect (if there is any) and free its memory.
Definition vst.h:1134
+
@ VST_EFFECT_OPCODE_3C
Editor Virtual Key Up Event.
Definition vst.h:1769
+
@ VST_EFFECT_OPCODE_1B
Set Parameter value from string representation.
Definition vst.h:1445
+
@ VST_EFFECT_OPCODE_SET_BLOCK_SIZE
Definition vst.h:1246
+
@ VST_EFFECT_OPCODE_IDLE
Definition vst.h:1697
+
@ VST_EFFECT_OPCODE_33
Test for support of a specific named feature.
Definition vst.h:1672
+
@ VST_EFFECT_OPCODE_04
Set the name of the currently selected program.
Definition vst.h:1162
+
@ VST_EFFECT_OPCODE_09
Definition vst.h:1226
+
@ VST_EFFECT_OPCODE_PARAM_GET_NAME
Definition vst.h:1218
+
@ VST_EFFECT_OPCODE_BANK_LOAD
Definition vst.h:1907
+
@ VST_EFFECT_OPCODE_EDITOR_MOUSE
Definition vst.h:1329
+
@ VST_EFFECT_OPCODE_WINDOW_CREATE
Definition vst.h:1285
+
@ VST_EFFECT_OPCODE_0B
Sets the block size, which is the maximum number of samples passed into the effect via process calls.
Definition vst.h:1242
+
@ VST_EFFECT_OPCODE_PARAM_GET_VALUE
Definition vst.h:1202
+
@ VST_EFFECT_OPCODE_39
Definition vst.h:1733
+
@ VST_EFFECT_OPCODE_05
Get the name of the currently selected program.
Definition vst.h:1172
+
@ VST_EFFECT_OPCODE_1A
Can the parameter be automated?
Definition vst.h:1430
+
@ VST_EFFECT_OPCODE_19
Appears to be related to midi and audio events.
Definition vst.h:1422
+
@ VST_EFFECT_OPCODE_PROGRAM_SET_END
Definition vst.h:1833
+
@ VST_EFFECT_OPCODE_GET_PROGRAM
Definition vst.h:1154
+
@ VST_EFFECT_OPCODE_12
Window Keyboard Event?
Definition vst.h:1341
+
@ VST_EFFECT_OPCODE_42
Midi related.
Definition vst.h:1813
+
@ VST_EFFECT_OPCODE_EFFECT_CATEGORY
Definition vst.h:1515
+
@ VST_EFFECT_OPCODE_PARAM_IS_AUTOMATABLE
Definition vst.h:1434
+
@ VST_EFFECT_OPCODE_WINDOW_DRAW
Definition vst.h:1311
+
@ VST_EFFECT_OPCODE_DESTROY
Definition vst.h:1136
+
@ VST_EFFECT_OPCODE_SETBLOCKSIZE
Definition vst.h:1244
+
@ VST_EFFECT_OPCODE_02
Set which program number is currently select.
Definition vst.h:1142
+
@ VST_EFFECT_OPCODE_48
End processing of audio.
Definition vst.h:1877
+
@ VST_EFFECT_OPCODE_GETNAME2
Definition vst.h:1639
+
@ VST_EFFECT_OPCODE_CUSTOM
Definition vst.h:1663
+
@ VST_EFFECT_OPCODE_2E
Translate an error code to a string.
Definition vst.h:1617
+
@ VST_EFFECT_OPCODE_3D
Definition vst.h:1778
+
@ VST_EFFECT_OPCODE_EDITOR_KEEP_ALIVE
Definition vst.h:1353
+
@ VST_EFFECT_OPCODE_PARAM_PROPERTIES
Definition vst.h:1726
+
@ VST_EFFECT_OPCODE_TAIL_SAMPLES
Definition vst.h:1686
+
@ VST_EFFECT_OPCODE_30
Retrieve the product name into the ptr buffer.
Definition vst.h:1637
+
@ VST_EFFECT_OPCODE_PARAM_VALUE
Definition vst.h:1204
+
@ VST_EFFECT_OPCODE_35
Notify effect that it is idle?
Definition vst.h:1695
+
@ VST_EFFECT_OPCODE_PROGRAM_GET_NAME
Definition vst.h:1176
+
@ VST_EFFECT_OPCODE_0D
Retrieve the client rect size of the plugins window.
Definition vst.h:1270
+
@ VST_EFFECT_OPCODE_1E
Definition vst.h:1470
+
@ VST_EFFECT_OPCODE_PROGRAM_LOAD
Definition vst.h:1919
+
@ VST_EFFECT_OPCODE_23
Retrieve category of this effect.
Definition vst.h:1513
+
@ VST_EFFECT_OPCODE_VST_VERSION
Definition vst.h:1743
+
@ VST_EFFECT_OPCODE_36
Definition vst.h:1705
+
@ VST_EFFECT_OPCODE_CATEGORY
Definition vst.h:1517
+
@ VST_EFFECT_OPCODE_EDITOR_OPEN
Definition vst.h:1287
+
@ VST_EFFECT_OPCODE_EDITOR_VKEY_DOWN
Definition vst.h:1759
+
@ VST_EFFECT_OPCODE_00
Create/Initialize the effect (if it has not been created already).
Definition vst.h:1122
+
@ VST_EFFECT_OPCODE_2B
Definition vst.h:1581
+
@ VST_EFFECT_OPCODE_SUSPEND_RESUME
Definition vst.h:1260
+
@ VST_EFFECT_OPCODE_24
Definition vst.h:1524
+
@ VST_EFFECT_OPCODE_PARAM_LABEL
Definition vst.h:1190
+
@ VST_EFFECT_OPCODE_40
Midi related.
Definition vst.h:1799
+
@ VST_EFFECT_OPCODE_22
Retrieve properties for the given output index.
Definition vst.h:1504
+
@ VST_EFFECT_OPCODE_4F
Definition vst.h:1944
+
@ VST_EFFECT_OPCODE_47
Begin processing of audio.
Definition vst.h:1868
+
@ VST_EFFECT_OPCODE_38
Parameter Properties.
Definition vst.h:1722
+
@ VST_EFFECT_OPCODE_GET_SPEAKER_ARRANGEMENT
Definition vst.h:1848
+
@ VST_EFFECT_OPCODE_0E
Create the window for the plugin.
Definition vst.h:1283
+
@ VST_EFFECT_OPCODE_3B
Editor Virtual Key Down Input.
Definition vst.h:1757
+
@ VST_EFFECT_OPCODE_BYPASS
Definition vst.h:1592
+
@ VST_EFFECT_OPCODE_EDITOR_KEYBOARD
Definition vst.h:1345
+
@ VST_EFFECT_OPCODE_INPUT_GET_PROPERTIES
Definition vst.h:1495
+
@ VST_EFFECT_OPCODE_VENDOR_NAME
Definition vst.h:1630
+
@ VST_EFFECT_OPCODE_PARAM_ISAUTOMATABLE
Definition vst.h:1432
+
@ VST_EFFECT_OPCODE_WINDOW_KEYBOARD
Definition vst.h:1343
+
@ VST_EFFECT_OPCODE_GET_PROGRAM_NAME
Definition vst.h:1174
+
@ VST_EFFECT_OPCODE_17
Get Chunk Data.
Definition vst.h:1395
+
@ VST_EFFECT_OPCODE_31
Retrieve the vendor version in return value.
Definition vst.h:1648
+
@ VST_EFFECT_OPCODE_2D
Retrieve the effect name into the ptr buffer.
Definition vst.h:1601
+
@ VST_EFFECT_OPCODE_07
Get the string representing the value for the parameter.
Definition vst.h:1198
+
@ VST_EFFECT_OPCODE_PROCESS_END
Definition vst.h:1879
+
@ VST_EFFECT_OPCODE_SET_PROGRAM
Definition vst.h:1144
+
@ VST_EFFECT_OPCODE_27
Seen in plug-ins with VST_EFFECT_CATEGORY_OFFLINE.
Definition vst.h:1545
+
@ VST_EFFECT_OPCODE_EDITOR_DRAW
Definition vst.h:1313
+
@ VST_EFFECT_OPCODE_15
Window Unfocus Event?
Definition vst.h:1373
+
@ VST_EFFECT_OPCODE_49
Definition vst.h:1886
+
@ VST_EFFECT_OPCODE_NAME
Definition vst.h:1607
+
@ VST_EFFECT_OPCODE_EDITOR_CLOSE
Definition vst.h:1297
+
@ VST_EFFECT_OPCODE_29
Seen in plug-ins with VST_EFFECT_CATEGORY_OFFLINE.
Definition vst.h:1559
+
@ VST_EFFECT_OPCODE_3A
Retrieve the VST Version supported.
Definition vst.h:1741
+
@ VST_EFFECT_OPCODE_11
Window Mouse Event?
Definition vst.h:1325
+
@ VST_EFFECT_OPCODE_PARAM_GET_LABEL
Definition vst.h:1188
+
@ VST_EFFECT_OPCODE_SETSAMPLERATE
Definition vst.h:1234
+
@ VST_EFFECT_OPCODE_0F
Destroy the plugins window.
Definition vst.h:1293
+
@ VST_EFFECT_OPCODE_GET_CHUNK_DATA
Definition vst.h:1397
+
@ VST_EFFECT_OPCODE_INITIALIZE
Definition vst.h:1126
+
@ VST_EFFECT_OPCODE_GETTAILSAMPLES
Definition vst.h:1684
+
@ VST_EFFECT_OPCODE_18
Set Chunk Data.
Definition vst.h:1409
+
@ VST_EFFECT_OPCODE_EFFECT_NAME
Definition vst.h:1605
+
@ VST_EFFECT_OPCODE_GET_PARAMETER_PROPERTIES
Definition vst.h:1724
+
@ VST_EFFECT_OPCODE_PARAM_AUTOMATABLE
Definition vst.h:1436
+
@ VST_EFFECT_OPCODE_PARAM_GETNAME
Definition vst.h:1216
+
@ VST_EFFECT_OPCODE_4A
Definition vst.h:1895
+
@ VST_EFFECT_OPCODE_08
Get the name for the parameter.
Definition vst.h:1214
+
@ VST_EFFECT_OPCODE_13
Window/Editor Idle/Keep-Alive Callback?
Definition vst.h:1351
+
@ VST_EFFECT_OPCODE_45
Host wants to know the current speaker arrangement.
Definition vst.h:1846
+
@ VST_EFFECT_OPCODE_WINDOW_GETRECT
Definition vst.h:1272
+
@ VST_EFFECT_OPCODE_OUTPUT_GET_PROPERTIES
Definition vst.h:1506
+
@ VST_EFFECT_OPCODE_PARAM_VALUE_FROM_STRING
Definition vst.h:1449
+
@ VST_EFFECT_OPCODE_GETVENDOR
Definition vst.h:1628
+
@ VST_EFFECT_OPCODE_PROCESS_BEGIN
Definition vst.h:1870
+
@ VST_EFFECT_OPCODE_1D
Definition vst.h:1463
+
@ VST_EFFECT_OPCODE_PAUSE_UNPAUSE
Definition vst.h:1258
+
@ VST_EFFECT_OPCODE_4C
Host wants to know if we can load the provided program data.
Definition vst.h:1917
+
@ VST_EFFECT_OPCODE_26
Seen in plug-ins with VST_EFFECT_CATEGORY_OFFLINE.
Definition vst.h:1538
+
@ VST_EFFECT_OPCODE_CONTAINER_NEXT_EFFECT_ID
Definition vst.h:1861
+
@ VST_EFFECT_OPCODE_GETNAME
Definition vst.h:1603
+
@ VST_EFFECT_OPCODE_VENDOR_VERSION
Definition vst.h:1652
+
@ VST_EFFECT_OPCODE_46
Get the next effect contained in this effect.
Definition vst.h:1859
+
@ VST_EFFECT_OPCODE_SET_PROGRAM_NAME
Definition vst.h:1164
+
@ VST_EFFECT_OPCODE_FOURCC
Definition vst.h:1383
+
@ VST_EFFECT_OPCODE_37
Definition vst.h:1713
+
@ VST_EFFECT_OPCODE_44
Host is done setting up a program.
Definition vst.h:1831
+
@ VST_EFFECT_OPCODE_3F
Midi related.
Definition vst.h:1792
+
@ VST_EFFECT_OPCODE_WINDOW_DESTROY
Definition vst.h:1295
+
@ VST_EFFECT_OPCODE_EDITOR_VKEY_UP
Definition vst.h:1771
+
@ VST_EFFECT_OPCODE_1F
Input connected.
Definition vst.h:1477
+
@ VST_EFFECT_OPCODE_34
Number of samples that are at the tail at the end of playback.
Definition vst.h:1682
+
@ VST_EFFECT_OPCODE_2C
Enable/Disable bypassing the effect.
Definition vst.h:1590
+
@ VST_EFFECT_OPCODE_PROGRAM_SET
Definition vst.h:1146
+
@ VST_EFFECT_OPCODE_SUPPORTS
Definition vst.h:1674
+
@ VST_EFFECT_OPCODE_PROGRAM_SET_BEGIN
Definition vst.h:1823
+
@ VST_EFFECT_OPCODE_16
Definition vst.h:1381
+
@ VST_EFFECT_OPCODE_TRANSLATE_ERROR
Definition vst.h:1619
+
@ VST_EFFECT_OPCODE_EDITOR_RECT
Definition vst.h:1274
+
@ VST_EFFECT_OPCODE_25
Definition vst.h:1531
+
@ VST_EFFECT_OPCODE_PARAM_SET_VALUE
Definition vst.h:1447
+
@ VST_EFFECT_OPCODE_SUSPEND
Definition vst.h:1262
+
@ VST_EFFECT_OPCODE_0C
Effect processing should be suspended/paused or resumed/unpaused.
Definition vst.h:1256
VST_STREAM_FLAG
Definition vst.h:485
@ VST_STREAM_FLAG_STEREO
Definition vst.h:495
@ VST_STREAM_FLAG_1ls2
Stream is defined by VST_SPEAKER_ARRANGEMENT_TYPE.
Definition vst.h:501
@ VST_STREAM_FLAG_1ls0
Ignored?
Definition vst.h:488
@ VST_STREAM_FLAG_1ls1
Stream is in Stereo.
Definition vst.h:494
@ VST_STREAM_FLAG_USE_TYPE
Definition vst.h:502
-
float(VST_FUNCTION_INTERFACE * vst_effect_get_parameter_t)(struct vst_effect_t *self, uint32_t index)
Retrieve the current value of the parameter at the given index, or do nothing if out of bounds.
Definition vst.h:2059
+
float(VST_FUNCTION_INTERFACE * vst_effect_get_parameter_t)(struct vst_effect_t *self, uint32_t index)
Retrieve the current value of the parameter at the given index, or do nothing if out of bounds.
Definition vst.h:2061
diff --git a/vst_8hpp.html b/vst_8hpp.html index cf8feb2..d62a708 100644 --- a/vst_8hpp.html +++ b/vst_8hpp.html @@ -133,7 +133,7 @@ Macros diff --git a/vst_8hpp_source.html b/vst_8hpp_source.html index c50b077..74f771b 100644 --- a/vst_8hpp_source.html +++ b/vst_8hpp_source.html @@ -149,7 +149,7 @@ $(document).ready(function(){initNavTree('vst_8hpp_source.html',''); initResizab