diff options
Diffstat (limited to 'pluginvst.cc')
-rw-r--r-- | pluginvst.cc | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/pluginvst.cc b/pluginvst.cc index 7de518e..66dc9b7 100644 --- a/pluginvst.cc +++ b/pluginvst.cc @@ -133,6 +133,9 @@ void PluginVST::init() AudioEffectX::isSynth(getNumberOfMidiInputs() > 0); + // We might produce output when there is no input. + AudioEffectX::noTail(false); + if(hasGUI()) { editor = std::make_shared<UI>(*this); @@ -217,6 +220,55 @@ void PluginVST::setBlockSize(VstInt32 blockSize) onFramesizeChange(blockSize); } +bool PluginVST::getEffectName(char* name) +{ + vst_strncpy (name, this->effectName().c_str(), kVstMaxEffectNameLen); + return true; +} + +bool PluginVST::getVendorString(char* text) +{ + vst_strncpy (text, this->vendorString().c_str(), kVstMaxVendorStrLen); + return true; +} + +bool PluginVST::getProductString(char* text) +{ + vst_strncpy (text, this->productString().c_str(), kVstMaxProductStrLen); + return true; +} + +VstPlugCategory PluginVST::getPlugCategory() +{ + switch(this->pluginCategory()) + { + case PluginCategory::Unknown: + return kPlugCategUnknown; + case PluginCategory::Effect: + return kPlugCategEffect; + case PluginCategory::Synth: + return kPlugCategSynth; + case PluginCategory::Analysis: + return kPlugCategAnalysis; + case PluginCategory::Mastering: + return kPlugCategMastering; + case PluginCategory::Spacializer: + return kPlugCategSpacializer; + case PluginCategory::RoomFx: + return kPlugCategRoomFx; + case PluginCategory::SurroundFx: + return kPlugSurroundFx; + case PluginCategory::Restoration: + return kPlugCategRestoration; + case PluginCategory::OfflineProcess: + return kPlugCategOfflineProcess; + case PluginCategory::Shell: + return kPlugCategShell; + case PluginCategory::Generator: + return kPlugCategGenerator; + } +} + VstInt32 PluginVST::processEvents(VstEvents* events) { // For each process cycle, processEvents() is called once before a |