VST2.4 specs 
HOME   |   Software       VST2.4 specs :: FIRST   -   PREV   -   NEXT

effVendorSpecific / vendorSpecific()


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 50:
50. effVendorSpecific   >= VST2.0   @see AudioEffectX::vendorSpecific()
no definition, vendor specific handling

C++ method:
 VstIntPtr AudioEffectX::vendorSpecific(VstInt32 lArg, VstIntPtr lArg2, void* ptrArg, float floatArg)

Delphi method:
 function AudioEffectX.vendorSpecific(lArg1: VstInt32; lArg2: VstIntPtr; ptrArg: pointer; floatArg: Single): VstInt32;

Comments:
The MouseWheel handling is a bit of an after thought, and has been implemented by Stenberg via the effVendorSpecific call as follows:
e[index]: 'stCA' / $73744341
e[value]: 'Whee' / $57686565
e[ptr]: 1.0 = wheel-up, -1.0 = wheel-down
x[return]: 1 = MouseWheel is processed by plugin

FIRST   -   PREV   -   NEXT   -   TOP