LMMS
Loading...
Searching...
No Matches
lmms::ZynAddSubFxInstrument Class Reference

#include <ZynAddSubFx.h>

Inheritance diagram for lmms::ZynAddSubFxInstrument:
lmms::Instrument lmms::Plugin lmms::Model lmms::JournallingObject lmms::SerializingObject

Signals

void settingsChanged ()
Signals inherited from lmms::Model
void dataChanged ()
void dataUnchanged ()
void propertiesChanged ()

Public Member Functions

 ZynAddSubFxInstrument (InstrumentTrack *_instrument_track)
 ~ZynAddSubFxInstrument () override
void play (SampleFrame *_working_buffer) override
bool handleMidiEvent (const MidiEvent &event, const TimePos &time=TimePos(), f_cnt_t offset=0) override
void saveSettings (QDomDocument &_doc, QDomElement &_parent) override
void loadSettings (const QDomElement &_this) override
void loadFile (const QString &_file) override
QString nodeName () const override
gui::PluginViewinstantiateView (QWidget *_parent) override
 Create a view for the model.
Public Member Functions inherited from lmms::Instrument
 Instrument (InstrumentTrack *_instrument_track, const Descriptor *_descriptor, const Descriptor::SubPluginFeatures::Key *key=nullptr, Flags flags=Flag::NoFlags)
 ~Instrument () override=default
virtual bool hasNoteInput () const
virtual void playNote (NotePlayHandle *, SampleFrame *)
virtual void deleteNotePluginData (NotePlayHandle *_note_to_play)
virtual f_cnt_t beatLen (NotePlayHandle *_n) const
virtual float desiredReleaseTimeMs () const
f_cnt_t desiredReleaseFrames () const
sample_rate_t getSampleRate () const
bool isSingleStreamed () const
bool isMidiBased () const
bool isBendable () const
QString fullDisplayName () const override
virtual bool isFromTrack (const Track *_track) const
InstrumentTrackinstrumentTrack () const
Public Member Functions inherited from lmms::Plugin
 Plugin (const Descriptor *descriptor, Model *parent, const Descriptor::SubPluginFeatures::Key *key=nullptr)
 ~Plugin () override=default
QString displayName () const override
 Return display-name out of sub plugin or descriptor.
const PixmapLoaderlogo () const
 Return logo out of sub plugin or descriptor.
Type type () const
 Return plugin type.
const Descriptordescriptor () const
 Return plugin Descriptor.
const Descriptor::SubPluginFeatures::Keykey () const
virtual AutomatableModelchildModel (const QString &modelName)
gui::PluginViewcreateView (QWidget *parent)
 Create a view for the model.
Public Member Functions inherited from lmms::Model
 Model (Model *parent, QString displayName=QString(), bool defaultConstructed=false)
 ~Model () override=default
bool isDefaultConstructed () const
ModelparentModel () const
virtual void setDisplayName (const QString &displayName)
Public Member Functions inherited from lmms::JournallingObject
 JournallingObject ()
 ~JournallingObject () override
jo_id_t id () const
void saveJournallingState (const bool newState)
void restoreJournallingState ()
void addJournalCheckPoint ()
QDomElement saveState (QDomDocument &_doc, QDomElement &_parent) override
void restoreState (const QDomElement &_this) override
bool isJournalling () const
void setJournalling (const bool _sr)
bool testAndSetJournalling (const bool newState)
bool isJournallingStateStackEmpty () const
Public Member Functions inherited from lmms::SerializingObject
 SerializingObject ()
virtual ~SerializingObject ()
void setHook (SerializingObjectHook *_hook)
SerializingObjectHookhook ()

Private Slots

void reloadPlugin ()
void updatePitchRange ()
void updatePortamento ()
void updateFilterFreq ()
void updateFilterQ ()
void updateBandwidth ()
void updateFmGain ()
void updateResCenterFreq ()
void updateResBandwidth ()

Private Member Functions

void initPlugin ()
void sendControlChange (MidiControllers midiCtl, float value)

Private Attributes

bool m_hasGUI
QMutex m_pluginMutex
LocalZynAddSubFxm_plugin
ZynAddSubFxRemotePluginm_remotePlugin
FloatModel m_portamentoModel
FloatModel m_filterFreqModel
FloatModel m_filterQModel
FloatModel m_bandwidthModel
FloatModel m_fmGainModel
FloatModel m_resCenterFreqModel
FloatModel m_resBandwidthModel
BoolModel m_forwardMidiCcModel
QMap< int, bool > m_modifiedControllers

Friends

class gui::ZynAddSubFxView

Additional Inherited Members

Public Types inherited from lmms::Instrument
enum class  Flag { NoFlags = 0x00 , IsSingleStreamed = 0x01 , IsMidiBased = 0x02 , IsNotBendable = 0x04 }
using Flags = lmms::Flags<Flag>
Public Types inherited from lmms::Plugin
enum class  Type {
  Instrument , Effect , ImportFilter , ExportFilter ,
  Tool , Library , Other , Undefined = 255
}
using DescriptorList = QList<Descriptor*>
Static Public Member Functions inherited from lmms::Instrument
static Instrumentinstantiate (const QString &_plugin_name, InstrumentTrack *_instrument_track, const Plugin::Descriptor::SubPluginFeatures::Key *key, bool keyFromDnd=false)
Static Public Member Functions inherited from lmms::Plugin
static PlugininstantiateWithKey (const QString &pluginName, Model *parent, const Descriptor::SubPluginFeatures::Key *key, bool keyFromDnd=false)
static Plugininstantiate (const QString &pluginName, Model *parent, void *data)
Protected Member Functions inherited from lmms::Instrument
void applyFadeIn (SampleFrame *buf, NotePlayHandle *n)
void applyRelease (SampleFrame *buf, const NotePlayHandle *_n)
float computeReleaseTimeMsByFrameCount (f_cnt_t frames) const
Protected Member Functions inherited from lmms::Plugin
void collectErrorForUI (QString errMsg)
Protected Member Functions inherited from lmms::JournallingObject
void changeID (jo_id_t _id)

Constructor & Destructor Documentation

◆ ZynAddSubFxInstrument()

lmms::ZynAddSubFxInstrument::ZynAddSubFxInstrument ( InstrumentTrack * _instrument_track)

◆ ~ZynAddSubFxInstrument()

lmms::ZynAddSubFxInstrument::~ZynAddSubFxInstrument ( )
override

Member Function Documentation

◆ handleMidiEvent()

bool lmms::ZynAddSubFxInstrument::handleMidiEvent ( const MidiEvent & event,
const TimePos & time = TimePos(),
f_cnt_t offset = 0 )
overridevirtual

Reimplemented from lmms::Instrument.

◆ initPlugin()

void lmms::ZynAddSubFxInstrument::initPlugin ( )
private

◆ instantiateView()

gui::PluginView * lmms::ZynAddSubFxInstrument::instantiateView ( QWidget * )
overridevirtual

Create a view for the model.

Implements lmms::Plugin.

◆ loadFile()

void lmms::ZynAddSubFxInstrument::loadFile ( const QString & file)
overridevirtual

Can be called if a file matching supportedFileTypes should be loaded/processed with the help of this plugin

Reimplemented from lmms::Plugin.

◆ loadSettings()

void lmms::ZynAddSubFxInstrument::loadSettings ( const QDomElement & _this)
overridevirtual

◆ nodeName()

QString lmms::ZynAddSubFxInstrument::nodeName ( void ) const
overridevirtual

◆ play()

void lmms::ZynAddSubFxInstrument::play ( SampleFrame * _working_buffer)
overridevirtual

Reimplemented from lmms::Instrument.

◆ reloadPlugin

void lmms::ZynAddSubFxInstrument::reloadPlugin ( )
privateslot

◆ saveSettings()

void lmms::ZynAddSubFxInstrument::saveSettings ( QDomDocument & _doc,
QDomElement & _parent )
overridevirtual

◆ sendControlChange()

void lmms::ZynAddSubFxInstrument::sendControlChange ( MidiControllers midiCtl,
float value )
private

◆ settingsChanged

void lmms::ZynAddSubFxInstrument::settingsChanged ( )
signal

◆ updateBandwidth

void lmms::ZynAddSubFxInstrument::updateBandwidth ( )
privateslot

◆ updateFilterFreq

void lmms::ZynAddSubFxInstrument::updateFilterFreq ( )
privateslot

◆ updateFilterQ

void lmms::ZynAddSubFxInstrument::updateFilterQ ( )
privateslot

◆ updateFmGain

void lmms::ZynAddSubFxInstrument::updateFmGain ( )
privateslot

◆ updatePitchRange

void lmms::ZynAddSubFxInstrument::updatePitchRange ( )
privateslot

◆ updatePortamento

void lmms::ZynAddSubFxInstrument::updatePortamento ( )
privateslot

◆ updateResBandwidth

void lmms::ZynAddSubFxInstrument::updateResBandwidth ( )
privateslot

◆ updateResCenterFreq

void lmms::ZynAddSubFxInstrument::updateResCenterFreq ( )
privateslot

◆ gui::ZynAddSubFxView

friend class gui::ZynAddSubFxView
friend

Member Data Documentation

◆ m_bandwidthModel

FloatModel lmms::ZynAddSubFxInstrument::m_bandwidthModel
private

◆ m_filterFreqModel

FloatModel lmms::ZynAddSubFxInstrument::m_filterFreqModel
private

◆ m_filterQModel

FloatModel lmms::ZynAddSubFxInstrument::m_filterQModel
private

◆ m_fmGainModel

FloatModel lmms::ZynAddSubFxInstrument::m_fmGainModel
private

◆ m_forwardMidiCcModel

BoolModel lmms::ZynAddSubFxInstrument::m_forwardMidiCcModel
private

◆ m_hasGUI

bool lmms::ZynAddSubFxInstrument::m_hasGUI
private

◆ m_modifiedControllers

QMap<int, bool> lmms::ZynAddSubFxInstrument::m_modifiedControllers
private

◆ m_plugin

LocalZynAddSubFx* lmms::ZynAddSubFxInstrument::m_plugin
private

◆ m_pluginMutex

QMutex lmms::ZynAddSubFxInstrument::m_pluginMutex
private

◆ m_portamentoModel

FloatModel lmms::ZynAddSubFxInstrument::m_portamentoModel
private

◆ m_remotePlugin

ZynAddSubFxRemotePlugin* lmms::ZynAddSubFxInstrument::m_remotePlugin
private

◆ m_resBandwidthModel

FloatModel lmms::ZynAddSubFxInstrument::m_resBandwidthModel
private

◆ m_resCenterFreqModel

FloatModel lmms::ZynAddSubFxInstrument::m_resCenterFreqModel
private

The documentation for this class was generated from the following files: