C++:
VstIntPtr function dispatcher(AEffect* e, VstInt32 opcode, VstInt32 index, VstIntPtr value,
void* ptr, float opt);
Delphi:
function dispatcher(e: PAEffect; opcode, index: VstInt32; value: VstIntPtr; ptr: pointer;
opt: Single): VstIntPtr; cdecl;
always returns 0, unless otherwise defined.
all string-pointers points to zero terminated strings.
e[ ]: = plugin receives as entry parameter
x[ ]: = plugin returns to host
dispatcher() function using opcode 26:
26. effCanBeAutomated
>= VST2.0
@see AudioEffectX::canParameterBeAutomated()
hosts asks if parameter can be automated, this should be called each time before attempting to call SetParameter()
e[index]: parameter index
x[return]: 1 = parameter can be automated
C++ method:
bool AudioEffectX::canParameterBeAutomated(VstInt32 index)
Delphi method:
function AudioEffectX.canParameterBeAutomated(index: VstInt32): boolean;
comments:
Parameter values, like all VST parameters, are declared as floats with an inclusive range of
0.0 to 1.0. How data is presented to the user is merely in the user-interface handling. This is a
convention, but still worth regarding. Maybe the VST-Host's automation system depends on this range.