index | 変更する変数 | 変更内容 |
TREMOLO_SPEED(=1 宣言部で定義済み。) | fTremoloSpeed | トレモロのスピードを変更。 0.0~1.0の範囲で与えられたvalueを1秒~30秒(1Hz~30Hz)に変更し代入する。 |
TREMOLO_DEPTH(=2 宣言部で定義済み。) | fTremoloDepth | トレモロの深さを変更。 valueの値をそのまま代入。 |
- void MyTremoloVST::setParameter (VstInt32 index, float value)
- {
- //indexで指定されたパラメータに値を設定する。
- //valueは0.0f~1.0fで与えられる。
- switch (index)
- {
- case TREMOLO_SPEED:
- fTremoloSpeed = 1.0f / (29.0f*value +1.0f); //1秒~1/30秒の範囲にする
- break;
- case TREMOLO_DEPTH:
- fTremoloDepth = value;
- break;
- }
- }
-
index | 返す値の内容 |
TREMOLO_SPEED(=1 宣言部で定義済み。) | トレモロのスピードを返す。 1秒~30秒(1Hz~30Hz)に設定されたfTremoloSpeedを0.0~1.0の範囲にして返す |
TREMOLO_DEPTH(=2 宣言部で定義済み。) | トレモロの深さを変更。 fTremoloDepthの値をそのまま返す。 |
- float MyTremoloVST::getParameter (VstInt32 index)
- {
- //indexで指定されたパラメータの値を
- //0.0f~1.0fの範囲で返す
- float value = 0.0f;
- switch (index)
- {
- case TREMOLO_SPEED:
- value = (1 / fTremoloSpeed - 1.0f) / 29.0f; //1秒~1/30秒を0.0f~1.0fの範囲にする
- break;
- case TREMOLO_DEPTH:
- value = fTremoloDepth;
- break;
- }
- return value;
- }
- void MyTremoloVST::getParameterName (VstInt32 index, char* text)
- {
- //indexで指定されたパラメータの名前をtextに格納する
- //kVstMaxParamStrLenは「vstsdk2.4\pluginterfaces\vst2.x\aeffect.h」に
- //定義されている。(kVstMaxParamStrLen = 8)
- switch (index)
- {
- case TREMOLO_SPEED:
- vst_strncpy (text, "Speed", kVstMaxParamStrLen);
- break;
- case TREMOLO_DEPTH:
- vst_strncpy (text, "Depth", kVstMaxParamStrLen);
- break;
- }
- }
- void MyTremoloVST::getParameterLabel (VstInt32 index, char* label)
- {
- //indexで指定されたパラメータの単位をlabelに格納する
- //kVstMaxParamStrLenは「vstsdk2.4\pluginterfaces\vst2.x\aeffect.h」に
- //定義されている。(kVstMaxParamStrLen = 8)
- switch (index)
- {
- case TREMOLO_SPEED:
- vst_strncpy (label, "Hz", kVstMaxParamStrLen);
- break;
- case TREMOLO_DEPTH:
- vst_strncpy (label, "dB", kVstMaxParamStrLen);
- break;
- }
- }
- void MyTremoloVST::getParameterDisplay (VstInt32 index, char* text)
- {
- //indexで指定されたパラメータの表示内容をtextに格納する
- //kVstMaxParamStrLenは「vstsdk2.4\pluginterfaces\vst2.x\aeffect.h」に
- //定義されている。(kVstMaxParamStrLen = 8)
- switch (index)
- {
- case TREMOLO_SPEED:
- float2string (1.0f / fTremoloSpeed, text, kVstMaxParamStrLen);
- break;
- case TREMOLO_DEPTH:
- float2string (fTremoloDepth, text, kVstMaxParamStrLen);
- break;
- }
- }
関数 | 戻り値 | 引数 | 説明 |
dB2string | なし | float value, char* text, VstInt32 maxLen |
valueの値をデシベル単位に変換してchar* textにmaxLen文字分書き込む |
float2string | なし | float value, char* text, VstInt32 maxLen |
valueの値を文字列に変換してchar* textにmaxLen文字分書き込む |
Hz2string | なし | float samples, char* text, VstInt32 maxLen |
samplesの値を周波数に変換してchar* textにmaxLen文字分書き込む |
int2string | なし | VstInt32 value, char* text, VstInt32 maxLen |
valueの値を文字列に変換してchar* textにmaxLen文字分書き込む |
ms2string | なし | float samples, char* text, VstInt32 maxLen |
samplesの値をミリ秒単位に変換してchar* textにmaxLen文字分書き込む |