|
LMMS
|
#include <Effect.h>
Static Public Member Functions | |
| static Effect * | instantiate (const QString &_plugin_name, Model *_parent, Descriptor::SubPluginFeatures::Key *_key) |
| Static Public Member Functions inherited from lmms::Plugin | |
| static Plugin * | instantiateWithKey (const QString &pluginName, Model *parent, const Descriptor::SubPluginFeatures::Key *key, bool keyFromDnd=false) |
| static Plugin * | instantiate (const QString &pluginName, Model *parent, void *data) |
Protected Types | |
| enum class | ProcessStatus { Continue , ContinueIfNotQuiet , Sleep } |
Protected Member Functions | |
| virtual ProcessStatus | processImpl (SampleFrame *buf, const f_cnt_t frames)=0 |
| virtual void | processBypassedImpl () |
| gui::PluginView * | instantiateView (QWidget *) override |
| Create a view for the model. | |
| void | goToSleep () |
| void | wakeUp () |
| virtual void | onEnabledChanged () |
| Protected Member Functions inherited from lmms::Plugin | |
| void | collectErrorForUI (QString errMsg) |
| Protected Member Functions inherited from lmms::JournallingObject | |
| void | changeID (jo_id_t _id) |
Private Member Functions | |
| void | handleAutoQuit (bool silentOutput) |
Private Attributes | |
| EffectChain * | m_parent |
| bool | m_okay |
| bool | m_noRun |
| bool | m_awake |
| f_cnt_t | m_quietBufferCount = 0 |
| The number of consecutive periods where output buffers remain below the silence threshold. | |
| BoolModel | m_enabledModel |
| FloatModel | m_wetDryModel |
| TempoSyncKnobModel | m_autoQuitModel |
| bool | m_autoQuitEnabled = false |
Friends | |
| class | gui::EffectView |
| class | EffectChain |
Additional Inherited Members | |
| Public Types inherited from lmms::Plugin | |
| enum class | Type { Instrument , Effect , ImportFilter , ExportFilter , Tool , Library , Other , Undefined = 255 } |
| using | DescriptorList = QList<Descriptor*> |
| Signals inherited from lmms::Model | |
| void | dataChanged () |
| void | dataUnchanged () |
| void | propertiesChanged () |
|
strongprotected |
| Effect::Effect | ( | const Plugin::Descriptor * | _desc, |
| Model * | _parent, | ||
| const Descriptor::SubPluginFeatures::Key * | _key ) |
|
inline |
|
inline |
|
pure virtual |
Implemented in lmms::AmplifierEffect, lmms::Analyzer, lmms::BassBoosterEffect, lmms::BitcrushEffect, lmms::CompressorEffect, lmms::CrossoverEQEffect, lmms::DelayEffect, lmms::DispersionEffect, lmms::DualFilterEffect, lmms::DummyEffect, lmms::DynProcEffect, lmms::EqEffect, lmms::FlangerEffect, lmms::FrequencyShifterEffect, lmms::GranularPitchShifterEffect, lmms::LadspaEffect, lmms::LOMMEffect, lmms::Lv2Effect, lmms::MultitapEchoEffect, lmms::PeakControllerEffect, lmms::ReverbSCEffect, lmms::SlewDistortion, lmms::StereoEnhancerEffect, lmms::StereoMatrixEffect, lmms::Vectorscope, lmms::VstEffect, and lmms::WaveShaperEffect.
|
inline |
|
inline |
|
inline |
|
inlineprotected |
|
private |
If auto-quit is enabled ("Keep effects running even without input" setting is disabled), after "decay" ms of the output buffer remaining below the silence threshold, the effect is turned off and won't be processed again until it receives new audio input.
|
static |
|
overrideprotectedvirtual |
Create a view for the model.
Implements lmms::Plugin.
|
inline |
"Awake" means the effect has not been put to sleep by auto-quit
|
inline |
|
inline |
|
inline |
Implements lmms::SerializingObject.
|
inlineoverridevirtual |
Implements lmms::SerializingObject.
|
inlineprotectedvirtual |
Reimplemented in lmms::DualFilterEffect.
| bool Effect::processAudioBuffer | ( | AudioBuffer & | inOut | ) |
Returns true if audio was processed and should continue being processed.
|
inlineprotectedvirtual |
Optional method that runs instead of processImpl when an effect is awake but not running.
Reimplemented in lmms::CompressorEffect, lmms::DynProcEffect, and lmms::StereoEnhancerEffect.
|
protectedpure virtual |
The main audio processing method that runs when plugin is awake and running
Implemented in lmms::AmplifierEffect, lmms::Analyzer, lmms::BassBoosterEffect, lmms::BitcrushEffect, lmms::CompressorEffect, lmms::CrossoverEQEffect, lmms::DelayEffect, lmms::DispersionEffect, lmms::DualFilterEffect, lmms::DummyEffect, lmms::DynProcEffect, lmms::EqEffect, lmms::FlangerEffect, lmms::FrequencyShifterEffect, lmms::GranularPitchShifterEffect, lmms::LadspaEffect, lmms::LOMMEffect, lmms::Lv2Effect, lmms::MultitapEchoEffect, lmms::PeakControllerEffect, lmms::ReverbSCEffect, lmms::SlewDistortion, lmms::StereoEnhancerEffect, lmms::StereoMatrixEffect, lmms::Vectorscope, lmms::VstEffect, and lmms::WaveShaperEffect.
|
overridevirtual |
Implements lmms::SerializingObject.
|
inline |
|
inline |
|
inline |
|
inlineprotected |
|
inline |
|
friend |
|
friend |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
The number of consecutive periods where output buffers remain below the silence threshold.
|
private |