Deluge Firmware
|
#include <playbackhandler.h>
Public Member Functions | |
PlaybackHandler () | |
void | routine () |
void | playButtonPressed (int buttonPressLatency) |
void | recordButtonPressed () |
void | setupPlaybackUsingInternalClock (int buttonPressLatencyForTempolessRecord=0, bool allowCountIn=true) |
void | setupPlaybackUsingExternalClock (bool switchingFromInternalClock=false, bool fromContinueCommand=false) |
void | setupPlayback (int newPlaybackState, int32_t playFromPos, bool doOneLastAudioRoutineCall=false, bool shouldShiftAccordingToClipInstance=true, int buttonPressLatencyForTempolessRecord=0) |
void | endPlayback () |
void | inputTick (bool fromTriggerClock=false, uint32_t time=0) |
void | startMessageReceived () |
void | continueMessageReceived () |
void | stopMessageReceived () |
void | clockMessageReceived (uint32_t time) |
void | tempoEncoderAction (int8_t offset, bool encoderButtonPressed, bool shiftButtonPressed) |
bool | isCurrentlyRecording () |
void | positionPointerReceived (uint8_t data1, uint8_t data2) |
void | programChangeReceived (int channel, int program) |
void | doSongSwap (bool preservePlayPosition=false) |
void | forceResetPlayPos (Song *song) |
void | expectEvent () |
void | setMidiInClockEnabled (bool newValue) |
int32_t | getActualArrangementRecordPos () |
int32_t | getArrangementRecordPosAtLastActionedSwungTick () |
void | slowRoutine () |
void | scheduleSwungTickFromExternalClock () |
int | getNumSwungTicksInSinceLastTimerTick (uint32_t *timeRemainder=NULL) |
int | getNumSwungTicksInSinceLastActionedSwungTick (uint32_t *timeRemainder=NULL) |
int64_t | getActualSwungTickCount (uint32_t *timeRemainder=NULL) |
int64_t | getCurrentInternalTickCount (uint32_t *remainder=NULL) |
void | scheduleSwungTick () |
int32_t | getInternalTickTime (int64_t internalTickCount) |
void | scheduleTriggerClockOutTick () |
void | scheduleMIDIClockOutTick () |
void | scheduleNextTimerTick (uint32_t doubleSwingInterval) |
void | setLedStates () |
void | tapTempoAutoSwitchOff () |
void | reassessInputTickScaling () |
void | resyncInternalTicksToInputTicks (Song *song) |
bool | shouldRecordNotesNow () |
void | stopAnyRecording () |
uint32_t | getTimePerInternalTick () |
uint64_t | getTimePerInternalTickBig () |
float | getTimePerInternalTickFloat () |
uint32_t | getTimePerInternalTickInverse (bool getStickyValue=false) |
void | tapTempoButtonPress () |
void | doTriggerClockOutTick () |
void | doMIDIClockOutTick () |
void | resyncAnalogOutTicksToInternalTicks () |
void | resyncMIDIClockOutTicksToInternalTicks () |
void | analogClockRisingEdge (uint32_t time) |
void | toggleMetronomeStatus () |
void | displayTempoByCalculation () |
void | displaySwingAmount () |
void | setMidiOutClockMode (bool newValue) |
void | pitchBendReceived (MIDIDevice *fromDevice, uint8_t channel, uint8_t data1, uint8_t data2, bool *doingMidiThru) |
void | midiCCReceived (MIDIDevice *fromDevice, uint8_t channel, uint8_t ccNumber, uint8_t value, bool *doingMidiThru) |
void | aftertouchReceived (MIDIDevice *fromDevice, int channel, int value, int noteCode, bool *doingMidiThru) |
void | loopCommand (int overdubNature) |
void | grabTempoFromClip (Clip *clip) |
int32_t | getTimeLeftInCountIn () |
void | noteMessageReceived (MIDIDevice *fromDevice, bool on, int channel, int note, int velocity, bool *doingMidiThru) |
bool | subModeAllowsRecording () |
void | songSelectReceived (uint8_t songId) |
float | calculateBPM (float timePerInternalTick) |
void | switchToArrangement () |
void | switchToSession () |
void | finishTempolessRecording (bool startPlaybackAgain, int buttonLatencyForTempolessRecord, bool shouldExitRecordMode=true) |
void | actionTimerTick () |
void | actionTimerTickPart2 () |
void | actionSwungTick () |
void | scheduleSwungTickFromInternalClock () |
bool | currentlySendingMIDIOutputClocks () |
bool | isEitherClockActive () |
PlaybackHandler::PlaybackHandler | ( | ) |
void PlaybackHandler::actionSwungTick | ( | ) |
void PlaybackHandler::actionTimerTick | ( | ) |
void PlaybackHandler::actionTimerTickPart2 | ( | ) |
void PlaybackHandler::aftertouchReceived | ( | MIDIDevice * | fromDevice, |
int | channel, | ||
int | value, | ||
int | noteCode, | ||
bool * | doingMidiThru | ||
) |
void PlaybackHandler::analogClockRisingEdge | ( | uint32_t | time | ) |
float PlaybackHandler::calculateBPM | ( | float | timePerInternalTick | ) |
void PlaybackHandler::clockMessageReceived | ( | uint32_t | time | ) |
void PlaybackHandler::continueMessageReceived | ( | ) |
bool PlaybackHandler::currentlySendingMIDIOutputClocks | ( | ) |
void PlaybackHandler::displaySwingAmount | ( | ) |
void PlaybackHandler::displayTempoByCalculation | ( | ) |
void PlaybackHandler::doMIDIClockOutTick | ( | ) |
void PlaybackHandler::doSongSwap | ( | bool | preservePlayPosition = false | ) |
void PlaybackHandler::doTriggerClockOutTick | ( | ) |
void PlaybackHandler::endPlayback | ( | ) |
void PlaybackHandler::expectEvent | ( | ) |
void PlaybackHandler::finishTempolessRecording | ( | bool | startPlaybackAgain, |
int | buttonLatencyForTempolessRecord, | ||
bool | shouldExitRecordMode = true |
||
) |
void PlaybackHandler::forceResetPlayPos | ( | Song * | song | ) |
int32_t PlaybackHandler::getActualArrangementRecordPos | ( | ) |
int64_t PlaybackHandler::getActualSwungTickCount | ( | uint32_t * | timeRemainder = NULL | ) |
int32_t PlaybackHandler::getArrangementRecordPosAtLastActionedSwungTick | ( | ) |
int64_t PlaybackHandler::getCurrentInternalTickCount | ( | uint32_t * | remainder = NULL | ) |
int32_t PlaybackHandler::getInternalTickTime | ( | int64_t | internalTickCount | ) |
int PlaybackHandler::getNumSwungTicksInSinceLastActionedSwungTick | ( | uint32_t * | timeRemainder = NULL | ) |
int PlaybackHandler::getNumSwungTicksInSinceLastTimerTick | ( | uint32_t * | timeRemainder = NULL | ) |
int32_t PlaybackHandler::getTimeLeftInCountIn | ( | ) |
uint32_t PlaybackHandler::getTimePerInternalTick | ( | ) |
uint64_t PlaybackHandler::getTimePerInternalTickBig | ( | ) |
float PlaybackHandler::getTimePerInternalTickFloat | ( | ) |
uint32_t PlaybackHandler::getTimePerInternalTickInverse | ( | bool | getStickyValue = false | ) |
void PlaybackHandler::grabTempoFromClip | ( | Clip * | clip | ) |
void PlaybackHandler::inputTick | ( | bool | fromTriggerClock = false , |
uint32_t | time = 0 |
||
) |
bool PlaybackHandler::isCurrentlyRecording | ( | ) |
|
inline |
void PlaybackHandler::loopCommand | ( | int | overdubNature | ) |
void PlaybackHandler::midiCCReceived | ( | MIDIDevice * | fromDevice, |
uint8_t | channel, | ||
uint8_t | ccNumber, | ||
uint8_t | value, | ||
bool * | doingMidiThru | ||
) |
void PlaybackHandler::noteMessageReceived | ( | MIDIDevice * | fromDevice, |
bool | on, | ||
int | channel, | ||
int | note, | ||
int | velocity, | ||
bool * | doingMidiThru | ||
) |
void PlaybackHandler::pitchBendReceived | ( | MIDIDevice * | fromDevice, |
uint8_t | channel, | ||
uint8_t | data1, | ||
uint8_t | data2, | ||
bool * | doingMidiThru | ||
) |
void PlaybackHandler::playButtonPressed | ( | int | buttonPressLatency | ) |
void PlaybackHandler::positionPointerReceived | ( | uint8_t | data1, |
uint8_t | data2 | ||
) |
void PlaybackHandler::programChangeReceived | ( | int | channel, |
int | program | ||
) |
void PlaybackHandler::reassessInputTickScaling | ( | ) |
void PlaybackHandler::recordButtonPressed | ( | ) |
void PlaybackHandler::resyncAnalogOutTicksToInternalTicks | ( | ) |
void PlaybackHandler::resyncInternalTicksToInputTicks | ( | Song * | song | ) |
void PlaybackHandler::resyncMIDIClockOutTicksToInternalTicks | ( | ) |
void PlaybackHandler::routine | ( | ) |
void PlaybackHandler::scheduleMIDIClockOutTick | ( | ) |
void PlaybackHandler::scheduleNextTimerTick | ( | uint32_t | doubleSwingInterval | ) |
void PlaybackHandler::scheduleSwungTick | ( | ) |
void PlaybackHandler::scheduleSwungTickFromExternalClock | ( | ) |
void PlaybackHandler::scheduleSwungTickFromInternalClock | ( | ) |
void PlaybackHandler::scheduleTriggerClockOutTick | ( | ) |
void PlaybackHandler::setLedStates | ( | ) |
void PlaybackHandler::setMidiInClockEnabled | ( | bool | newValue | ) |
void PlaybackHandler::setMidiOutClockMode | ( | bool | newValue | ) |
void PlaybackHandler::setupPlayback | ( | int | newPlaybackState, |
int32_t | playFromPos, | ||
bool | doOneLastAudioRoutineCall = false , |
||
bool | shouldShiftAccordingToClipInstance = true , |
||
int | buttonPressLatencyForTempolessRecord = 0 |
||
) |
void PlaybackHandler::setupPlaybackUsingExternalClock | ( | bool | switchingFromInternalClock = false , |
bool | fromContinueCommand = false |
||
) |
void PlaybackHandler::setupPlaybackUsingInternalClock | ( | int | buttonPressLatencyForTempolessRecord = 0 , |
bool | allowCountIn = true |
||
) |
bool PlaybackHandler::shouldRecordNotesNow | ( | ) |
void PlaybackHandler::slowRoutine | ( | ) |
void PlaybackHandler::songSelectReceived | ( | uint8_t | songId | ) |
void PlaybackHandler::startMessageReceived | ( | ) |
void PlaybackHandler::stopAnyRecording | ( | ) |
void PlaybackHandler::stopMessageReceived | ( | ) |
bool PlaybackHandler::subModeAllowsRecording | ( | ) |
void PlaybackHandler::switchToArrangement | ( | ) |
void PlaybackHandler::switchToSession | ( | ) |
void PlaybackHandler::tapTempoAutoSwitchOff | ( | ) |
void PlaybackHandler::tapTempoButtonPress | ( | ) |
void PlaybackHandler::tempoEncoderAction | ( | int8_t | offset, |
bool | encoderButtonPressed, | ||
bool | shiftButtonPressed | ||
) |
void PlaybackHandler::toggleMetronomeStatus | ( | ) |
bool PlaybackHandler::analogClockInputAutoStart |
uint32_t PlaybackHandler::analogInTicksPPQN |
uint32_t PlaybackHandler::analogOutTicksPPQN |
int32_t PlaybackHandler::arrangementPosToStartAtOnSwitch |
bool PlaybackHandler::countInEnabled |
int PlaybackHandler::currentVisualCountForCountIn |
bool PlaybackHandler::ignoringMidiClockInput |
int64_t PlaybackHandler::lastInputTickReceived |
int64_t PlaybackHandler::lastMIDIClockOutTickDone |
int64_t PlaybackHandler::lastSwungTickActioned |
int64_t PlaybackHandler::lastTimerTickActioned |
int64_t PlaybackHandler::lastTriggerClockOutTickDone |
int32_t PlaybackHandler::metronomeOffset |
bool PlaybackHandler::metronomeOn |
bool PlaybackHandler::midiClockOutTickScheduled |
bool PlaybackHandler::midiInClockEnabled |
bool PlaybackHandler::midiOutClockEnabled |
int64_t PlaybackHandler::nextTimerTickScheduled |
uint8_t PlaybackHandler::numInputTickTimesCounted |
uint8_t PlaybackHandler::playbackState |
int32_t PlaybackHandler::posToNextContinuePlaybackFrom |
uint8_t PlaybackHandler::recording |
uint32_t PlaybackHandler::scheduledSwungTickTime |
bool PlaybackHandler::songSwapShouldPreserveTempo |
bool PlaybackHandler::stopOutputRecordingAtLoopEnd |
bool PlaybackHandler::swungTickScheduled |
int32_t PlaybackHandler::swungTicksTilNextEvent |
unsigned long PlaybackHandler::targetedTimePerInputTick |
bool PlaybackHandler::tempoMagnitudeMatchingActiveNow |
bool PlaybackHandler::tempoMagnitudeMatchingEnabled |
int32_t PlaybackHandler::ticksLeftInCountIn |
uint32_t PlaybackHandler::timeLastAnalogClockInputRisingEdge |
uint32_t PlaybackHandler::timeLastInputTicks[NUM_INPUT_TICKS_FOR_MOVING_AVERAGE] |
uint32_t PlaybackHandler::timeLastMIDIStartOrContinueMessageSent |
uint64_t PlaybackHandler::timeLastTimerTickBig |
uint32_t PlaybackHandler::timeNextMIDIClockOutTick |
uint64_t PlaybackHandler::timeNextTimerTickBig |
uint32_t PlaybackHandler::timeNextTriggerClockOutTick |
uint32_t PlaybackHandler::timePerInputTickMovingAverage |
unsigned long PlaybackHandler::timeVeryFirstInputTick |
bool PlaybackHandler::triggerClockOutTickScheduled |
bool PlaybackHandler::usingAnalogClockInput |