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

#include <AudioFileProcessor.h>

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

Public Slots

void setAudioFile (const QString &_audio_file, bool _rename=true)

Signals

void isPlaying (lmms::f_cnt_t _current_frame)
void sampleUpdated ()
Signals inherited from lmms::Model
void dataChanged ()
void dataUnchanged ()
void propertiesChanged ()

Public Member Functions

 AudioFileProcessor (InstrumentTrack *_instrument_track)
void playNote (NotePlayHandle *_n, SampleFrame *_working_buffer) override
void deleteNotePluginData (NotePlayHandle *_n) override
void saveSettings (QDomDocument &doc, QDomElement &elem) override
void loadSettings (const QDomElement &elem) override
void loadFile (const QString &_file) override
QString nodeName () const override
auto beatLen (NotePlayHandle *note) const -> f_cnt_t override
float desiredReleaseTimeMs () const override
gui::PluginView * instantiateView (QWidget *_parent) override
 Create a view for the model.
Sample const & sample () const
FloatModel & ampModel ()
FloatModel & startPointModel ()
FloatModel & endPointModel ()
FloatModel & loopPointModel ()
BoolModel & reverseModel ()
IntModel & loopModel ()
BoolModel & stutterModel ()
ComboBoxModel & interpolationModel ()
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 *
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
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 Slots

void reverseModelChanged ()
void ampModelChanged ()
void loopPointChanged ()
void startPointChanged ()
void endPointChanged ()
void pointChanged ()
void stutterModelChanged ()

Private Attributes

Sample m_sample
FloatModel m_ampModel
FloatModel m_startPointModel
FloatModel m_endPointModel
FloatModel m_loopPointModel
BoolModel m_reverseModel
IntModel m_loopModel
BoolModel m_stutterModel
ComboBoxModel m_interpolationModel
f_cnt_t m_nextPlayStartPoint
bool m_nextPlayBackwards

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 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

◆ AudioFileProcessor()

lmms::AudioFileProcessor::AudioFileProcessor ( InstrumentTrack * _instrument_track)

Member Function Documentation

◆ ampModel()

FloatModel & lmms::AudioFileProcessor::ampModel ( )
inline

◆ ampModelChanged

void lmms::AudioFileProcessor::ampModelChanged ( )
privateslot

◆ beatLen()

auto lmms::AudioFileProcessor::beatLen ( NotePlayHandle * note) const -> f_cnt_t
overridevirtual

Reimplemented from lmms::Instrument.

◆ deleteNotePluginData()

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

Reimplemented from lmms::Instrument.

◆ desiredReleaseTimeMs()

float lmms::AudioFileProcessor::desiredReleaseTimeMs ( ) const
inlineoverridevirtual

Reimplemented from lmms::Instrument.

◆ endPointChanged

void lmms::AudioFileProcessor::endPointChanged ( )
privateslot

◆ endPointModel()

FloatModel & lmms::AudioFileProcessor::endPointModel ( )
inline

◆ instantiateView()

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

Create a view for the model.

Implements lmms::Plugin.

◆ interpolationModel()

ComboBoxModel & lmms::AudioFileProcessor::interpolationModel ( )
inline

◆ isPlaying

void lmms::AudioFileProcessor::isPlaying ( lmms::f_cnt_t _current_frame)
signal

◆ loadFile()

void lmms::AudioFileProcessor::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::AudioFileProcessor::loadSettings ( const QDomElement & elem)
overridevirtual

◆ loopModel()

IntModel & lmms::AudioFileProcessor::loopModel ( )
inline

◆ loopPointChanged

void lmms::AudioFileProcessor::loopPointChanged ( )
privateslot

◆ loopPointModel()

FloatModel & lmms::AudioFileProcessor::loopPointModel ( )
inline

◆ nodeName()

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

◆ playNote()

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

Reimplemented from lmms::Instrument.

◆ pointChanged

void lmms::AudioFileProcessor::pointChanged ( )
privateslot

◆ reverseModel()

BoolModel & lmms::AudioFileProcessor::reverseModel ( )
inline

◆ reverseModelChanged

void lmms::AudioFileProcessor::reverseModelChanged ( )
privateslot

◆ sample()

Sample const & lmms::AudioFileProcessor::sample ( ) const
inline

◆ sampleUpdated

void lmms::AudioFileProcessor::sampleUpdated ( )
signal

◆ saveSettings()

void lmms::AudioFileProcessor::saveSettings ( QDomDocument & doc,
QDomElement & elem )
overridevirtual

◆ setAudioFile

void lmms::AudioFileProcessor::setAudioFile ( const QString & _audio_file,
bool _rename = true )
slot

◆ startPointChanged

void lmms::AudioFileProcessor::startPointChanged ( )
privateslot

◆ startPointModel()

FloatModel & lmms::AudioFileProcessor::startPointModel ( )
inline

◆ stutterModel()

BoolModel & lmms::AudioFileProcessor::stutterModel ( )
inline

◆ stutterModelChanged

void lmms::AudioFileProcessor::stutterModelChanged ( )
privateslot

Member Data Documentation

◆ m_ampModel

FloatModel lmms::AudioFileProcessor::m_ampModel
private

◆ m_endPointModel

FloatModel lmms::AudioFileProcessor::m_endPointModel
private

◆ m_interpolationModel

ComboBoxModel lmms::AudioFileProcessor::m_interpolationModel
private

◆ m_loopModel

IntModel lmms::AudioFileProcessor::m_loopModel
private

◆ m_loopPointModel

FloatModel lmms::AudioFileProcessor::m_loopPointModel
private

◆ m_nextPlayBackwards

bool lmms::AudioFileProcessor::m_nextPlayBackwards
private

◆ m_nextPlayStartPoint

f_cnt_t lmms::AudioFileProcessor::m_nextPlayStartPoint
private

◆ m_reverseModel

BoolModel lmms::AudioFileProcessor::m_reverseModel
private

◆ m_sample

Sample lmms::AudioFileProcessor::m_sample
private

◆ m_startPointModel

FloatModel lmms::AudioFileProcessor::m_startPointModel
private

◆ m_stutterModel

BoolModel lmms::AudioFileProcessor::m_stutterModel
private

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