本文整理汇总了C++中IParam::GetBounds方法的典型用法代码示例。如果您正苦于以下问题:C++ IParam::GetBounds方法的具体用法?C++ IParam::GetBounds怎么用?C++ IParam::GetBounds使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IParam
的用法示例。
在下文中一共展示了IParam::GetBounds方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: VSTDispatcher
//.........这里部分代码省略.........
return pGraphics->ProcessMouseWheel(opt);
}
}
break;
}
// Support Reaper VST extensions: http://www.reaper.fm/sdk/vst/
case effGetParamDisplay: {
if (ptr) {
if (value >= 0 && value < _this->NParams()) {
_this->GetParam(value)->GetDisplayForHost((double) opt, true, (char*) ptr);
}
return 0xbeef;
}
break;
}
case effString2Parameter: {
if (ptr && value >= 0 && value < _this->NParams()) {
if (*(char*) ptr != '\0') {
IParam* pParam = _this->GetParam(value);
sprintf((char*) ptr, "%.17f", pParam->GetNormalized(VSTString2Parameter(pParam, (char*) ptr)));
}
return 0xbeef;
}
break;
}
case kVstParameterUsesIntStep: {
if (value >= 0 && value < _this->NParams()) {
IParam* pParam = _this->GetParam(value);
switch (pParam->Type()) {
case IParam::kTypeBool: {
return 0xbeef;
}
case IParam::kTypeInt:
case IParam::kTypeEnum: {
double min, max;
pParam->GetBounds(&min, &max);
if (fabs(max - min) < 1.5) {
return 0xbeef;
}
break;
}
}
}
break;
}
}
return 0;
}
case effGetProgram: {
return _this->GetCurrentPresetIdx();
}
case effSetProgram: {
//if (!(_this->DoesStateChunks())) {
_this->ModifyCurrentPreset();
//}
_this->RestorePreset((int) value);
return 0;
}
case effGetProgramNameIndexed: {
strcpy((char*) ptr, _this->GetPresetName(idx));
return (CSTR_NOT_EMPTY((char*) ptr) ? 1 : 0);
}
case effSetProgramName: {
if (ptr) {
_this->ModifyCurrentPreset((char*) ptr);
}
return 0;
}
case effGetProgramName: {
if (ptr) {
int idx = _this->GetCurrentPresetIdx();
strcpy((char*) ptr, _this->GetPresetName(idx));
}
return 0;
}
case effGetMidiKeyName: {
if (ptr) {
MidiKeyName* pMKN = (MidiKeyName*) ptr;
pMKN->keyName[0] = '\0';
if (_this->MidiNoteName(pMKN->thisKeyNumber, pMKN->keyName)) {
return 1;
}
}
return 0;
}
case effGetVstVersion: {
return VST_VERSION;
}
case effBeginSetProgram:
case effEndSetProgram:
case effGetMidiProgramName:
case effHasMidiProgramsChanged:
case effGetMidiProgramCategory:
case effGetCurrentMidiProgram:
case effSetBypass:
default: {
return 0;
}
}
}