lmms
Cross-platform music production software
Loading...
Searching...
No Matches
lmms::SfxrInstrument Class Reference

#include <Sfxr.h>

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

Public Member Functions

 SfxrInstrument (InstrumentTrack *_instrument_track)
 ~SfxrInstrument () override=default
void playNote (NotePlayHandle *_n, SampleFrame *_working_buffer) override
void deleteNotePluginData (NotePlayHandle *_n) override
void saveSettings (QDomDocument &_doc, QDomElement &_parent) override
void loadSettings (const QDomElement &_this) override
QString nodeName () const override
gui::PluginView * instantiateView (QWidget *_parent) override
 Create a view for the model.
void resetModels ()
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 play (SampleFrame *_working_buffer)
virtual auto midiPatch () const -> std::optional< MidiPatch >
 For applicable instruments: Provides host with current MIDI bank and program.
virtual auto childModel (std::string_view modelName) -> AutomatableModel *
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
virtual bool handleMidiEvent (const MidiEvent &, const TimePos &=TimePos(), f_cnt_t offset=0)
QString fullDisplayName () const override
virtual bool isFromTrack (const Track *_track) const
InstrumentTrack * instrumentTrack () const
Public Member Functions inherited from lmms::Plugin
 Plugin (const Descriptor *descriptor, Model *parent, const Descriptor::SubPluginFeatures::Key *key=nullptr)
 Constructor of a plugin.
 ~Plugin () override=default
QString displayName () const override
 Return display-name out of sub plugin or descriptor.
const PixmapLoader * logo () const
 Return logo out of sub plugin or descriptor.
Type type () const
 Return plugin type.
const Descriptor * descriptor () const
 Return plugin Descriptor.
const Descriptor::SubPluginFeatures::Key & key () const
virtual void loadFile (const QString &file)
gui::PluginView * createView (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
Model * parentModel () 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)
SerializingObjectHook * hook ()

Private Attributes

SfxrZeroToOneFloatModel m_attModel
SfxrZeroToOneFloatModel m_holdModel
SfxrZeroToOneFloatModel m_susModel
SfxrZeroToOneFloatModel m_decModel
SfxrZeroToOneFloatModel m_startFreqModel
SfxrZeroToOneFloatModel m_minFreqModel
SfxrNegPosOneFloatModel m_slideModel
SfxrNegPosOneFloatModel m_dSlideModel
SfxrZeroToOneFloatModel m_vibDepthModel
SfxrZeroToOneFloatModel m_vibSpeedModel
SfxrNegPosOneFloatModel m_changeAmtModel
SfxrZeroToOneFloatModel m_changeSpeedModel
SfxrZeroToOneFloatModel m_sqrDutyModel
SfxrNegPosOneFloatModel m_sqrSweepModel
SfxrZeroToOneFloatModel m_repeatSpeedModel
SfxrNegPosOneFloatModel m_phaserOffsetModel
SfxrNegPosOneFloatModel m_phaserSweepModel
SfxrZeroToOneFloatModel m_lpFilCutModel
SfxrNegPosOneFloatModel m_lpFilCutSweepModel
SfxrZeroToOneFloatModel m_lpFilResoModel
SfxrZeroToOneFloatModel m_hpFilCutModel
SfxrNegPosOneFloatModel m_hpFilCutSweepModel
IntModel m_waveFormModel

Friends

class gui::SfxrInstrumentView
class SfxrSynth

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*>
Signals inherited from lmms::Model
void dataChanged ()
void dataUnchanged ()
void propertiesChanged ()
Static Public Member Functions inherited from lmms::Instrument
static Instrument * instantiate (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 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 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

◆ SfxrInstrument()

lmms::SfxrInstrument::SfxrInstrument ( InstrumentTrack * _instrument_track)

◆ ~SfxrInstrument()

lmms::SfxrInstrument::~SfxrInstrument ( )
overridedefault

Member Function Documentation

◆ deleteNotePluginData()

void lmms::SfxrInstrument::deleteNotePluginData ( NotePlayHandle * _n)
overridevirtual

Reimplemented from lmms::Instrument.

◆ instantiateView()

gui::PluginView * lmms::SfxrInstrument::instantiateView ( QWidget * _parent)
overridevirtual

Create a view for the model.

Implements lmms::Plugin.

◆ loadSettings()

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

◆ nodeName()

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

◆ playNote()

void lmms::SfxrInstrument::playNote ( NotePlayHandle * _n,
SampleFrame * _working_buffer )
overridevirtual

Reimplemented from lmms::Instrument.

◆ resetModels()

void lmms::SfxrInstrument::resetModels ( )

◆ saveSettings()

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

◆ gui::SfxrInstrumentView

friend class gui::SfxrInstrumentView
friend

◆ SfxrSynth

friend class SfxrSynth
friend

Member Data Documentation

◆ m_attModel

SfxrZeroToOneFloatModel lmms::SfxrInstrument::m_attModel
private

◆ m_changeAmtModel

SfxrNegPosOneFloatModel lmms::SfxrInstrument::m_changeAmtModel
private

◆ m_changeSpeedModel

SfxrZeroToOneFloatModel lmms::SfxrInstrument::m_changeSpeedModel
private

◆ m_decModel

SfxrZeroToOneFloatModel lmms::SfxrInstrument::m_decModel
private

◆ m_dSlideModel

SfxrNegPosOneFloatModel lmms::SfxrInstrument::m_dSlideModel
private

◆ m_holdModel

SfxrZeroToOneFloatModel lmms::SfxrInstrument::m_holdModel
private

◆ m_hpFilCutModel

SfxrZeroToOneFloatModel lmms::SfxrInstrument::m_hpFilCutModel
private

◆ m_hpFilCutSweepModel

SfxrNegPosOneFloatModel lmms::SfxrInstrument::m_hpFilCutSweepModel
private

◆ m_lpFilCutModel

SfxrZeroToOneFloatModel lmms::SfxrInstrument::m_lpFilCutModel
private

◆ m_lpFilCutSweepModel

SfxrNegPosOneFloatModel lmms::SfxrInstrument::m_lpFilCutSweepModel
private

◆ m_lpFilResoModel

SfxrZeroToOneFloatModel lmms::SfxrInstrument::m_lpFilResoModel
private

◆ m_minFreqModel

SfxrZeroToOneFloatModel lmms::SfxrInstrument::m_minFreqModel
private

◆ m_phaserOffsetModel

SfxrNegPosOneFloatModel lmms::SfxrInstrument::m_phaserOffsetModel
private

◆ m_phaserSweepModel

SfxrNegPosOneFloatModel lmms::SfxrInstrument::m_phaserSweepModel
private

◆ m_repeatSpeedModel

SfxrZeroToOneFloatModel lmms::SfxrInstrument::m_repeatSpeedModel
private

◆ m_slideModel

SfxrNegPosOneFloatModel lmms::SfxrInstrument::m_slideModel
private

◆ m_sqrDutyModel

SfxrZeroToOneFloatModel lmms::SfxrInstrument::m_sqrDutyModel
private

◆ m_sqrSweepModel

SfxrNegPosOneFloatModel lmms::SfxrInstrument::m_sqrSweepModel
private

◆ m_startFreqModel

SfxrZeroToOneFloatModel lmms::SfxrInstrument::m_startFreqModel
private

◆ m_susModel

SfxrZeroToOneFloatModel lmms::SfxrInstrument::m_susModel
private

◆ m_vibDepthModel

SfxrZeroToOneFloatModel lmms::SfxrInstrument::m_vibDepthModel
private

◆ m_vibSpeedModel

SfxrZeroToOneFloatModel lmms::SfxrInstrument::m_vibSpeedModel
private

◆ m_waveFormModel

IntModel lmms::SfxrInstrument::m_waveFormModel
private

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