|
LMMS
|
#include <InstrumentTrack.h>
Signals | |
| void | instrumentChanged () |
| void | midiNoteOn (const lmms::Note &) |
| void | midiNoteOff (const lmms::Note &) |
| void | newNote () |
| void | endNote () |
| Signals inherited from lmms::Track | |
| void | destroyedTrack () |
| void | nameChanged () |
| void | clipAdded (lmms::Clip *) |
| void | colorChanged () |
| void | dataChanged () |
| Signals inherited from lmms::Model | |
| void | dataChanged () |
| void | dataUnchanged () |
| void | propertiesChanged () |
Public Member Functions | |
| InstrumentTrack (TrackContainer *tc) | |
| ~InstrumentTrack () override | |
| void | processAudioBuffer (SampleFrame *_buf, const f_cnt_t _frames, NotePlayHandle *_n) |
| MidiEvent | applyMasterKey (const MidiEvent &event) |
| void | processInEvent (const MidiEvent &event, const TimePos &time=TimePos(), f_cnt_t offset=0) override |
| void | processOutEvent (const MidiEvent &event, const TimePos &time=TimePos(), f_cnt_t offset=0) override |
| void | silenceAllNotes (bool removeIPH=false) |
| bool | isSustainPedalPressed () const |
| f_cnt_t | beatLen (NotePlayHandle *_n) const |
| void | playNote (NotePlayHandle *_n, SampleFrame *_working_buffer) |
| QString | instrumentName () const |
| const Instrument * | instrument () const |
| Instrument * | instrument () |
| void | deleteNotePluginData (NotePlayHandle *_n) |
| void | setName (const QString &_new_name) override |
| int | masterKey (int _midi_key) const |
| int | midiPitch () const |
| int | midiPitchRange () const |
| Returns current range for pitch bend in semitones. | |
| bool | play (const TimePos &_start, const f_cnt_t _frames, const f_cnt_t _frame_base, int _clip_num=-1) override |
| gui::TrackView * | createView (gui::TrackContainerView *tcv) override |
| Clip * | createClip (const TimePos &pos) override |
| void | saveTrackSpecificSettings (QDomDocument &doc, QDomElement &parent, bool presetMode) override |
| void | loadTrackSpecificSettings (const QDomElement &_this) override |
| Instrument * | loadInstrument (const QString &_instrument_name, const Plugin::Descriptor::SubPluginFeatures::Key *key=nullptr, bool keyFromDnd=false) |
| AudioBusHandle * | audioBusHandle () |
| MidiPort * | midiPort () |
| const IntModel * | baseNoteModel () const |
| IntModel * | baseNoteModel () |
| IntModel * | firstKeyModel () |
| IntModel * | lastKeyModel () |
| bool | keyRangeImport () const |
| bool | isKeyMapped (int key) const |
| Check if there is a valid mapping for the given key and it is within defined of range. | |
| int | firstKey () const |
| Return first mapped key, based on currently selected keymap or user selection. | |
| int | lastKey () const |
| Return last mapped key, based on currently selected keymap or user selection. | |
| int | baseNote () const |
| Return base key number, based on currently selected keymap or user selection. | |
| float | baseFreq () const |
| Return frequency assigned to the base key, based on currently selected keymap. | |
| Piano * | pianoModel () |
| Microtuner * | microtuner () |
| bool | isArpeggioEnabled () const |
| FloatModel * | pitchModel () |
| FloatModel * | volumeModel () |
| FloatModel * | panningModel () |
| IntModel * | pitchRangeModel () |
| IntModel * | mixerChannelModel () |
| BoolModel * | useMasterPitchModel () |
| void | setPreviewMode (const bool) |
| bool | isPreviewMode () const |
| void | replaceInstrument (DataFile dataFile) |
| void | autoAssignMidiDevice (bool) |
| Automatically assign a midi controller to this track, based on the midiautoassign setting. | |
| Public Member Functions inherited from lmms::Track | |
| Track (Type type, TrackContainer *tc) | |
| Create a new (empty) track object. | |
| ~Track () override | |
| Destroy this track. | |
| Track * | clone () |
| Clone a track from this track. | |
| Type | type () const |
| void | savePreset (QDomDocument &doc, QDomElement &element) |
| void | loadPreset (const QDomElement &element) |
| void | saveSettings (QDomDocument &doc, QDomElement &element) override |
| void | loadSettings (const QDomElement &element) override |
| Clip * | addClip (Clip *clip) |
| Add another Clip into this track. | |
| void | removeClip (Clip *clip) |
| Remove a given Clip from this track. | |
| void | deleteClips () |
| Remove all Clips from this track. | |
| int | numOfClips () |
| Return the number of clips we contain. | |
| auto | getClip (std::size_t clipNum) -> Clip * |
| Get a Clip by number. | |
| int | getClipNum (const Clip *clip) |
| Determine the given Clip's number in our array. | |
| const clipVector & | getClips () const |
| void | getClipsInRange (clipVector &clipV, const TimePos &start, const TimePos &end) |
| Retrieve a list of clips that fall within a period. | |
| void | swapPositionOfClips (int clipNum1, int clipNum2) |
| Swap the position of two clips. | |
| void | createClipsForPattern (int pattern) |
| void | insertBar (const TimePos &pos) |
| Move all the clips after a certain time later by one bar. | |
| void | removeBar (const TimePos &pos) |
| Move all the clips after a certain time earlier by one bar. | |
| bar_t | length () const |
| Return the length of the entire track in bars. | |
| TrackContainer * | trackContainer () const |
| virtual const QString & | name () const |
| QString | displayName () const override |
| int | getHeight () |
| void | setHeight (int height) |
| void | lock () |
| void | unlock () |
| bool | tryLock () |
| auto | color () const -> const std::optional< QColor > & |
| void | setColor (const std::optional< QColor > &color) |
| bool | isMutedBeforeSolo () const |
| BoolModel * | getMutedModel () |
| 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) |
| virtual QString | fullDisplayName () const |
| 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 () |
| Public Member Functions inherited from lmms::MidiEventProcessor | |
| MidiEventProcessor ()=default | |
| virtual | ~MidiEventProcessor ()=default |
Static Public Member Functions | |
| static void | removeMidiPortNode (DataFile &dataFile) |
| Static Public Member Functions inherited from lmms::Track | |
| static Track * | create (Type tt, TrackContainer *tc) |
| Create a track based on the given track type and container. | |
| static Track * | create (const QDomElement &element, TrackContainer *tc) |
| Create a track inside TrackContainer from track type in a QDomElement and restore state from XML. | |
Protected Slots | |
| void | updateBaseNote () |
| void | updatePitch () |
| void | updatePitchRange () |
| void | updateMixerChannel () |
Protected Member Functions | |
| QString | nodeName () const override |
| QString | getSavedInstrumentName (const QDomElement &thisElement) const |
| Protected Member Functions inherited from lmms::JournallingObject | |
| void | changeID (jo_id_t _id) |
Private Member Functions | |
| mapPropertyFromModel (int, getVolume, setVolume, m_volumeModel) | |
| void | processCCEvent (int controller) |
Private Attributes | |
| MidiPort | m_midiPort |
| NotePlayHandle * | m_notes [NumKeys] |
| NotePlayHandleList | m_sustainedNotes |
| int | m_runningMidiNotes [NumKeys] |
| QMutex | m_midiNotesMutex |
| bool | m_sustainPedalPressed |
| bool | m_silentBuffersProcessed |
| bool | m_previewMode |
| IntModel | m_baseNoteModel |
| The "A4" or "440 Hz" key (default 69). | |
| IntModel | m_firstKeyModel |
| First key the instrument reacts to. | |
| IntModel | m_lastKeyModel |
| Last key the instrument reacts to. | |
| bool | m_hasAutoMidiDev |
| NotePlayHandleList | m_processHandles |
| FloatModel | m_volumeModel |
| FloatModel | m_panningModel |
| AudioBusHandle | m_audioBusHandle |
| FloatModel | m_pitchModel |
| IntModel | m_pitchRangeModel |
| IntModel | m_mixerChannelModel |
| BoolModel | m_useMasterPitchModel |
| Instrument * | m_instrument |
| InstrumentSoundShaping | m_soundShaping |
| InstrumentFunctionArpeggio | m_arpeggio |
| InstrumentFunctionNoteStacking | m_noteStacking |
| Piano | m_piano |
| Microtuner | m_microtuner |
| std::unique_ptr< BoolModel > | m_midiCCEnable |
| std::unique_ptr< FloatModel > | m_midiCCModel [MidiControllerCount] |
Static Private Attributes | |
| static InstrumentTrack * | s_autoAssignedTrack = nullptr |
Friends | |
| class | gui::InstrumentTrackView |
| class | gui::InstrumentTrackWindow |
| class | NotePlayHandle |
| class | gui::InstrumentTuningView |
| class | gui::MidiCCRackView |
Additional Inherited Members | |
| Public Types inherited from lmms::Track | |
| enum class | Type { Instrument , Pattern , Sample , Event , Video , Automation , HiddenAutomation , Count } |
| using | clipVector = std::vector<Clip*> |
| Public Slots inherited from lmms::Track | |
| void | setMutedBeforeSolo (const bool muted) |
| void | toggleSolo () |
| Invert the track's solo state. | |
| Protected Attributes inherited from lmms::Track | |
| BoolModel | m_mutedModel |
| BoolModel | m_soloModel |
| lmms::InstrumentTrack::InstrumentTrack | ( | TrackContainer * | tc | ) |
|
override |
|
inline |
| void lmms::InstrumentTrack::autoAssignMidiDevice | ( | bool | assign | ) |
Automatically assign a midi controller to this track, based on the midiautoassign setting.
| assign | set to true to connect the midi device, set to false to disconnect |
| float lmms::InstrumentTrack::baseFreq | ( | ) | const |
Return frequency assigned to the base key, based on currently selected keymap.
| int lmms::InstrumentTrack::baseNote | ( | ) | const |
Return base key number, based on currently selected keymap or user selection.
|
inline |
| f_cnt_t lmms::InstrumentTrack::beatLen | ( | NotePlayHandle * | _n | ) | const |
Implements lmms::Track.
|
overridevirtual |
Implements lmms::Track.
| void lmms::InstrumentTrack::deleteNotePluginData | ( | NotePlayHandle * | _n | ) |
|
signal |
| int lmms::InstrumentTrack::firstKey | ( | ) | const |
Return first mapped key, based on currently selected keymap or user selection.
|
inline |
|
protected |
|
inline |
|
inline |
|
signal |
| QString lmms::InstrumentTrack::instrumentName | ( | ) | const |
|
inline |
| bool lmms::InstrumentTrack::isKeyMapped | ( | int | key | ) | const |
Check if there is a valid mapping for the given key and it is within defined of range.
|
inline |
|
inline |
| bool lmms::InstrumentTrack::keyRangeImport | ( | ) | const |
| int lmms::InstrumentTrack::lastKey | ( | ) | const |
Return last mapped key, based on currently selected keymap or user selection.
|
inline |
| Instrument * lmms::InstrumentTrack::loadInstrument | ( | const QString & | _instrument_name, |
| const Plugin::Descriptor::SubPluginFeatures::Key * | key = nullptr, | ||
| bool | keyFromDnd = false ) |
Implements lmms::Track.
|
private |
|
inline |
|
signal |
|
signal |
|
inline |
|
inline |
Returns current range for pitch bend in semitones.
|
inline |
|
inline |
|
signal |
|
inlineoverrideprotectedvirtual |
Implements lmms::SerializingObject.
|
inline |
|
inline |
|
inline |
|
inline |
|
overridevirtual |
Implements lmms::Track.
| void lmms::InstrumentTrack::playNote | ( | NotePlayHandle * | _n, |
| SampleFrame * | _working_buffer ) |
| void lmms::InstrumentTrack::processAudioBuffer | ( | SampleFrame * | _buf, |
| const f_cnt_t | _frames, | ||
| NotePlayHandle * | _n ) |
|
overridevirtual |
Implements lmms::MidiEventProcessor.
|
overridevirtual |
Implements lmms::MidiEventProcessor.
|
overridevirtual |
Implements lmms::Track.
Reimplemented from lmms::Track.
|
protectedslot |
|
protectedslot |
|
protectedslot |
|
protectedslot |
|
inline |
|
inline |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
private |
|
private |
|
private |
The "A4" or "440 Hz" key (default 69).
|
private |
First key the instrument reacts to.
|
private |
|
private |
|
private |
Last key the instrument reacts to.
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
staticprivate |