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

#include <StepRecorder.h>

Inheritance diagram for lmms::StepRecorder:

Classes

class  StepNote

Public Member Functions

 StepRecorder (gui::PianoRoll &pianoRoll, gui::StepRecorderWidget &stepRecorderWidget)
void initialize ()
void start (const TimePos &currentPosition, const TimePos &stepLength)
void stop ()
void notePressed (const Note &n)
void noteReleased (const Note &n)
bool keyPressEvent (QKeyEvent *ke)
bool mousePressEvent (QMouseEvent *ke)
void setCurrentMidiClip (MidiClip *newMidiClip)
void setStepsLength (const TimePos &newLength)
std::vector< Note * > getCurStepNotes ()
bool isRecording () const

Private Slots

void removeNotesReleasedForTooLong ()

Private Member Functions

void stepForwards ()
void stepBackwards ()
void applyStep ()
void dismissStep ()
void prepareNewStep ()
TimePos getCurStepEndPos ()
void updateCurStepNotes ()
void updateWidget ()
bool allCurStepNotesReleased ()
StepNotefindCurStepNote (const int key)

Private Attributes

gui::PianoRollm_pianoRoll
gui::StepRecorderWidgetm_stepRecorderWidget
bool m_isRecording = false
TimePos m_curStepStartPos = 0
TimePos m_curStepEndPos = 0
TimePos m_stepsLength
TimePos m_curStepLength
QTimer m_updateReleasedTimer
MidiClipm_midiClip
std::vector< StepNote * > m_curStepNotes
bool m_isStepInProgress = false

Constructor & Destructor Documentation

◆ StepRecorder()

lmms::StepRecorder::StepRecorder ( gui::PianoRoll & pianoRoll,
gui::StepRecorderWidget & stepRecorderWidget )

Member Function Documentation

◆ allCurStepNotesReleased()

bool lmms::StepRecorder::allCurStepNotesReleased ( )
private

◆ applyStep()

void lmms::StepRecorder::applyStep ( )
private

◆ dismissStep()

void lmms::StepRecorder::dismissStep ( )
private

◆ findCurStepNote()

StepRecorder::StepNote * lmms::StepRecorder::findCurStepNote ( const int key)
private

◆ getCurStepEndPos()

TimePos lmms::StepRecorder::getCurStepEndPos ( )
private

◆ getCurStepNotes()

std::vector< Note * > lmms::StepRecorder::getCurStepNotes ( )

◆ initialize()

void lmms::StepRecorder::initialize ( )

◆ isRecording()

bool lmms::StepRecorder::isRecording ( ) const
inline

◆ keyPressEvent()

bool lmms::StepRecorder::keyPressEvent ( QKeyEvent * ke)

◆ mousePressEvent()

bool lmms::StepRecorder::mousePressEvent ( QMouseEvent * ke)

◆ notePressed()

void lmms::StepRecorder::notePressed ( const Note & n)

◆ noteReleased()

void lmms::StepRecorder::noteReleased ( const Note & n)

◆ prepareNewStep()

void lmms::StepRecorder::prepareNewStep ( )
private

◆ removeNotesReleasedForTooLong

void lmms::StepRecorder::removeNotesReleasedForTooLong ( )
privateslot

◆ setCurrentMidiClip()

void lmms::StepRecorder::setCurrentMidiClip ( MidiClip * newMidiClip)

◆ setStepsLength()

void lmms::StepRecorder::setStepsLength ( const TimePos & newLength)

◆ start()

void lmms::StepRecorder::start ( const TimePos & currentPosition,
const TimePos & stepLength )

◆ stepBackwards()

void lmms::StepRecorder::stepBackwards ( )
private

◆ stepForwards()

void lmms::StepRecorder::stepForwards ( )
private

◆ stop()

void lmms::StepRecorder::stop ( )

◆ updateCurStepNotes()

void lmms::StepRecorder::updateCurStepNotes ( )
private

◆ updateWidget()

void lmms::StepRecorder::updateWidget ( )
private

Member Data Documentation

◆ m_curStepEndPos

TimePos lmms::StepRecorder::m_curStepEndPos = 0
private

◆ m_curStepLength

TimePos lmms::StepRecorder::m_curStepLength
private

◆ m_curStepNotes

std::vector<StepNote*> lmms::StepRecorder::m_curStepNotes
private

◆ m_curStepStartPos

TimePos lmms::StepRecorder::m_curStepStartPos = 0
private

◆ m_isRecording

bool lmms::StepRecorder::m_isRecording = false
private

◆ m_isStepInProgress

bool lmms::StepRecorder::m_isStepInProgress = false
private

◆ m_midiClip

MidiClip* lmms::StepRecorder::m_midiClip
private

◆ m_pianoRoll

gui::PianoRoll& lmms::StepRecorder::m_pianoRoll
private

◆ m_stepRecorderWidget

gui::StepRecorderWidget& lmms::StepRecorder::m_stepRecorderWidget
private

◆ m_stepsLength

TimePos lmms::StepRecorder::m_stepsLength
private

◆ m_updateReleasedTimer

QTimer lmms::StepRecorder::m_updateReleasedTimer
private

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