MuseScore
3.4
Music composition and notation
|
Classes | |
struct | TiedTuplet |
struct | TupletCommon |
struct | TupletData |
class | TupletErrorResult |
struct | TupletInfo |
struct | TupletLimits |
class | ValidTuplets |
Functions | |
bool | haveIntersection (const std::pair< ReducedFraction, ReducedFraction > &interval1, const std::pair< ReducedFraction, ReducedFraction > &interval2, bool strictComparison) |
bool | haveIntersection (const std::pair< ReducedFraction, ReducedFraction > &interval, const std::vector< std::pair< ReducedFraction, ReducedFraction >> &intervals, bool strictComparison) |
const std::map< int, TupletLimits > & | tupletsLimits () |
const TupletLimits & | tupletLimits (int tupletNumber) |
const TupletInfo & | tupletFromId (int id, const std::vector< TupletInfo > &tuplets) |
TupletInfo & | tupletFromId (int id, std::vector< TupletInfo > &tuplets) |
bool | hasNonTrivialChord (const ReducedFraction &chordOnTime, const QList< MidiNote > ¬es, const ReducedFraction &tupletOnTime, const ReducedFraction &tupletLen) |
bool | isTupletUseless (int voice, const ReducedFraction &onTime, const ReducedFraction &len, const ReducedFraction &maxChordLength, const std::multimap< ReducedFraction, MidiChord > &chords) |
std::multimap< ReducedFraction, TupletData >::iterator | removeTuplet (const std::multimap< ReducedFraction, TupletData >::iterator &tupletIt, std::multimap< ReducedFraction, TupletData > &tuplets, const ReducedFraction &maxChordLength, std::multimap< ReducedFraction, MidiChord > &chords) |
std::multimap< ReducedFraction, TupletData >::iterator | removeTupletIfEmpty (const std::multimap< ReducedFraction, TupletData >::iterator &tupletIt, std::multimap< ReducedFraction, TupletData > &tuplets, const ReducedFraction &maxChordLength, std::multimap< ReducedFraction, MidiChord > &chords) |
void | removeEmptyTuplets (MTrack &track) |
int | averagePitch (const std::map< ReducedFraction, std::multimap< ReducedFraction, MidiChord >::iterator > &chords) |
void | sortNotesByPitch (const std::multimap< ReducedFraction, MidiChord >::iterator &startBarChordIt, const std::multimap< ReducedFraction, MidiChord >::iterator &endBarChordIt) |
void | sortTupletsByAveragePitch (std::vector< TupletInfo > &tuplets) |
std::pair< ReducedFraction, ReducedFraction > | tupletInterval (const TupletInfo &tuplet, const ReducedFraction &basicQuant) |
std::vector< std::pair< ReducedFraction, ReducedFraction > > | findTupletIntervals (const std::vector< TupletInfo > &tuplets, const ReducedFraction &basicQuant) |
std::vector< TupletData > | findTupletsInBarForDuration (int voice, const ReducedFraction &barStartTick, const ReducedFraction &durationOnTime, const ReducedFraction &durationLen, const std::multimap< ReducedFraction, TupletData > &tupletEvents) |
std::vector< std::multimap< ReducedFraction, TupletData >::const_iterator > | findTupletsForTimeRange (int voice, const ReducedFraction &onTime, const ReducedFraction &len, const std::multimap< ReducedFraction, TupletData > &tupletEvents, bool strictComparison) |
std::multimap< ReducedFraction, TupletData >::const_iterator | findTupletContainingTime (int voice, const ReducedFraction &time, const std::multimap< ReducedFraction, TupletData > &tupletEvents, bool strictComparison) |
std::set< std::pair< const ReducedFraction, MidiChord > * > | findTupletChords (const std::vector< TupletInfo > &tuplets) |
std::list< std::multimap< ReducedFraction, MidiChord >::iterator > | findNonTupletChords (const std::vector< TupletInfo > &tuplets, const std::multimap< ReducedFraction, MidiChord >::iterator &startBarChordIt, const std::multimap< ReducedFraction, MidiChord >::iterator &endBarChordIt) |
void | splitTupletChord (const std::vector< TupletInfo >::iterator &lastMatch, std::multimap< ReducedFraction, MidiChord > &chords) |
void | splitFirstTupletChords (std::vector< TupletInfo > &tuplets, std::multimap< ReducedFraction, MidiChord > &chords) |
void | minimizeOffTimeError (std::vector< TupletInfo > &tuplets, std::multimap< ReducedFraction, MidiChord > &chords, std::list< std::multimap< ReducedFraction, MidiChord >::iterator > &nonTuplets, const ReducedFraction &startBarTick, const ReducedFraction &basicQuant) |
void | addChordsBetweenTupletNotes (std::vector< TupletInfo > &tuplets, std::list< std::multimap< ReducedFraction, MidiChord >::iterator > &nonTuplets, const std::multimap< ReducedFraction, MidiChord > &chords, const ReducedFraction &startBarTick, const ReducedFraction &basicQuant) |
void | addTupletEvents (std::multimap< ReducedFraction, TupletData > &tupletEvents, const std::vector< TupletInfo > &tuplets, const std::list< TiedTuplet > &backTiedTuplets) |
void | markStaccatoTupletNotes (std::vector< TupletInfo > &tuplets) |
void | cleanStaccatoOfNonTuplets (std::list< std::multimap< ReducedFraction, MidiChord >::iterator > &nonTuplets) |
ReducedFraction | findOnTimeBetweenChords (const std::pair< const ReducedFraction, MidiChord > &chord, const std::multimap< ReducedFraction, MidiChord > &chords, const ReducedFraction &basicQuant, const ReducedFraction &barStart) |
ReducedFraction | findPrevBarStart (const ReducedFraction &barStart, const ReducedFraction &barLen) |
void | setBarIndexesOfNextBarChords (std::vector< TupletInfo > &tuplets, std::list< std::multimap< ReducedFraction, MidiChord >::iterator > &nonTuplets, int barIndex) |
void | findTuplets (const std::multimap< ReducedFraction, MidiChord >::iterator &startBarChordIt, const std::multimap< ReducedFraction, MidiChord >::iterator &endBarChordIt, std::multimap< ReducedFraction, MidiChord > &chords, const ReducedFraction &basicQuant, std::multimap< ReducedFraction, TupletData > &tupletEvents, const TimeSigMap *sigmap, int barIndex) |
void | setAllTupletOffTimes (std::multimap< ReducedFraction, TupletData > &tupletEvents, std::multimap< ReducedFraction, MidiChord > &chords, const TimeSigMap *sigmap) |
void | findAllTuplets (std::multimap< ReducedFraction, TupletData > &tuplets, std::multimap< ReducedFraction, MidiChord > &chords, const TimeSigMap *sigmap, const ReducedFraction &basicQuant) |
bool | isTupletAllowed (const TupletInfo &tupletInfo) |
std::vector< int > | findTupletNumbers (const ReducedFraction &divLen, const ReducedFraction &barFraction) |
ReducedFraction | findSumLengthOfRests (const TupletInfo &tupletInfo, const ReducedFraction &startBarTick) |
TupletInfo | findTupletApproximation (const ReducedFraction &tupletLen, int tupletNumber, const ReducedFraction &basicQuant, const ReducedFraction &startTupletTime, const std::multimap< ReducedFraction, MidiChord >::iterator &startChordIt, const std::multimap< ReducedFraction, MidiChord >::iterator &endChordIt) |
void | detectStaccato (TupletInfo &tuplet) |
bool | haveChordsInTheMiddleBetweenTupletChords (const std::multimap< ReducedFraction, MidiChord >::iterator startDivChordIt, const std::multimap< ReducedFraction, MidiChord >::iterator endDivChordIt, const TupletInfo &tuplet) |
bool | isTupletLenAllowed (const ReducedFraction &tupletLen, int tupletNumber, const std::multimap< ReducedFraction, MidiChord >::const_iterator beg, const std::multimap< ReducedFraction, MidiChord >::const_iterator end, const ReducedFraction &basicQuant) |
bool | isNextBarOwnershipOk (const std::multimap< ReducedFraction, MidiChord >::iterator &startIt, const std::multimap< ReducedFraction, MidiChord >::iterator &endIt, const std::multimap< ReducedFraction, MidiChord > &chords, int barIndex) |
std::vector< TupletInfo > | detectTuplets (const std::multimap< ReducedFraction, MidiChord >::iterator &startBarChordIt, const std::multimap< ReducedFraction, MidiChord >::iterator &endBarChordIt, const ReducedFraction &startBarTick, const ReducedFraction &barFraction, std::multimap< ReducedFraction, MidiChord > &chords, const ReducedFraction &basicQuant, int barIndex) |
bool | isMoreTupletVoicesAllowed (int voicesInUse, int availableVoices) |
bool | haveCommonChords (int i, int j, const std::vector< TupletInfo > &tuplets) |
void | removeUselessTuplets (std::vector< TupletInfo > &tuplets) |
std::set< int > | findLongestUncommonGroup (const std::vector< TupletInfo > &tuplets, const ReducedFraction &basicQuant) |
bool | areInCommons (const TupletInfo &t1, const TupletInfo &t2) |
std::vector< TupletCommon > | findTupletCommons (const std::vector< TupletInfo > &tuplets) |
bool | isInCommonIndexes (int indexToCheck, const std::vector< int > &selectedTuplets, const std::vector< TupletCommon > &tupletCommons) |
TupletErrorResult | findTupletError (const std::vector< int > &tupletIndexes, const std::vector< TupletInfo > &tuplets, size_t voiceCount, const ReducedFraction &basicQuant) |
int | findAvailableVoice (size_t tupletIndex, const std::vector< std::pair< ReducedFraction, ReducedFraction >> &tupletIntervals, const std::map< int, std::vector< std::pair< ReducedFraction, ReducedFraction >>> &voiceIntervals) |
std::map< std::pair< const ReducedFraction, MidiChord > *, int > | prepareUsedFirstChords (const std::vector< int > &selectedTuplets, const std::vector< TupletInfo > &tuplets) |
std::vector< int > | findUnusedIndexes (const std::vector< int > &selectedTuplets) |
bool | canUseIndex (int indexToCheck, const std::vector< TupletInfo > &tuplets, const std::vector< std::pair< ReducedFraction, ReducedFraction > > &tupletIntervals, const std::map< int, std::vector< std::pair< ReducedFraction, ReducedFraction >>> &voiceIntervals, const std::map< std::pair< const ReducedFraction, MidiChord > *, int > &usedFirstChords) |
void | tryUpdateBestIndexes (std::vector< int > &bestTupletIndexes, TupletErrorResult &minCurrentError, const std::vector< int > &selectedTuplets, const std::vector< TupletInfo > &tuplets, const std::map< int, std::vector< std::pair< ReducedFraction, ReducedFraction >>> &voiceIntervals, const ReducedFraction &basicQuant) |
std::map< int, std::vector< std::pair< ReducedFraction, ReducedFraction > > > | prepareVoiceIntervals (const std::vector< int > &selectedTuplets, const std::vector< std::pair< ReducedFraction, ReducedFraction > > &tupletIntervals) |
void | findNextTuplet (std::vector< int > &selectedTuplets, ValidTuplets &validTuplets, std::vector< int > &bestTupletIndexes, TupletErrorResult &minCurrentError, const std::vector< TupletCommon > &tupletCommons, const std::vector< TupletInfo > &tuplets, const std::vector< std::pair< ReducedFraction, ReducedFraction > > &tupletIntervals, size_t commonsSize, const ReducedFraction &basicQuant) |
void | moveUncommonTupletsToEnd (std::vector< TupletInfo > &tuplets, std::set< int > &uncommons) |
std::vector< int > | findBestTuplets (const std::vector< TupletCommon > &tupletCommons, const std::vector< TupletInfo > &tuplets, size_t commonsSize, const ReducedFraction &basicQuant) |
void | removeExtraTuplets (std::vector< TupletInfo > &tuplets) |
void | filterTuplets (std::vector< TupletInfo > &tuplets, const ReducedFraction &basicQuant) |
void | addElementToTuplet (int voice, const ReducedFraction &onTime, const ReducedFraction &len, DurationElement *el, std::multimap< ReducedFraction, TupletData > &tuplets) |
void | createTupletNotes (Staff *staff, const std::multimap< ReducedFraction, TupletData > &tuplets) |
int | tupletVoiceLimit () |
std::pair< ReducedFraction, ReducedFraction > | chordInterval (const std::pair< const ReducedFraction, MidiChord > &chord, const std::multimap< ReducedFraction, MidiChord > &chords, const ReducedFraction &basicQuant, const ReducedFraction &barStart) |
int | findTupletWithChord (const MidiChord &midiChord, const std::vector< TupletInfo > &tuplets) |
std::pair< ReducedFraction, ReducedFraction > | backTiedInterval (const TiedTuplet &tiedTuplet, const std::vector< TupletInfo > &tuplets, const std::multimap< ReducedFraction, MidiChord > &chords, const ReducedFraction &basicQuant, const ReducedFraction &barStart) |
void | setTupletVoice (std::map< ReducedFraction, std::multimap< ReducedFraction, MidiChord >::iterator > &tupletChords, int voice) |
void | setTupletVoices (std::vector< TupletInfo > &tuplets, std::set< int > &pendingTuplets, std::map< int, std::vector< std::pair< ReducedFraction, ReducedFraction >>> &tupletIntervals, const ReducedFraction &basicQuant) |
int | findPitchDist (const QList< MidiNote > ¬es, const std::vector< TupletInfo > &tuplets, int voice) |
void | setNonTupletVoices (std::set< std::pair< const ReducedFraction, MidiChord > *> &pendingNonTuplets, const std::map< int, std::vector< std::pair< ReducedFraction, ReducedFraction >>> &tupletIntervals, const std::vector< TupletInfo > &tuplets, const std::multimap< ReducedFraction, MidiChord > &chords, const ReducedFraction &basicQuant, const ReducedFraction &barStart) |
void | eraseBackTiedTuplet (int tupletId, std::list< TiedTuplet > &backTiedTuplets) |
bool | excludeExtraVoiceTuplets (std::vector< TupletInfo > &tuplets, std::list< std::multimap< ReducedFraction, MidiChord >::iterator > &nonTuplets, std::list< TiedTuplet > &backTiedTuplets, const std::multimap< ReducedFraction, MidiChord > &chords, const ReducedFraction &basicQuant, const ReducedFraction &barStart, int barIndex) |
void | removeUnusedTuplets (std::vector< TupletInfo > &tuplets, std::list< std::multimap< ReducedFraction, MidiChord >::iterator > &nonTuplets, std::set< int > &pendingTuplets, std::list< TiedTuplet > &backTiedTuplets, std::set< std::pair< const ReducedFraction, MidiChord > *> &pendingNonTuplets, int barIndex) |
std::set< int > | findPendingTuplets (const std::vector< TupletInfo > &tuplets) |
std::set< std::pair< const ReducedFraction, MidiChord > * > | findPendingNonTuplets (const std::list< std::multimap< ReducedFraction, MidiChord >::iterator > &nonTuplets) |
std::list< TiedTuplet >::iterator | eraseBackTiedTuplet (const std::list< TiedTuplet >::iterator &it, std::list< TiedTuplet > &backTiedTuplets, const TupletInfo &tuplet) |
void | setVoicesFromPrevBars (std::list< TiedTuplet > &backTiedTuplets, std::vector< TupletInfo > &tuplets, std::set< int > &pendingTuplets, const std::set< std::pair< const ReducedFraction, MidiChord > *> &pendingNonTuplets, std::map< int, std::vector< std::pair< ReducedFraction, ReducedFraction >>> &tupletIntervals, std::map< int, std::vector< std::pair< ReducedFraction, ReducedFraction >>> &backTupletIntervals, const std::multimap< ReducedFraction, MidiChord > &chords, const ReducedFraction &basicQuant, const ReducedFraction &barStart) |
void | setTiedChordVoice (std::list< TiedTuplet > &backTiedTuplets, std::vector< TupletInfo > &tuplets, std::set< int > &pendingTuplets, std::set< std::pair< const ReducedFraction, MidiChord > *> &pendingNonTuplets, std::map< int, std::vector< std::pair< ReducedFraction, ReducedFraction >>> &tupletIntervals, std::map< int, std::vector< std::pair< ReducedFraction, ReducedFraction >>> &backTupletIntervals, const std::multimap< ReducedFraction, MidiChord > &chords, const std::list< TiedTuplet >::iterator &backTiedIt, bool isNonTupletBackChord, const ReducedFraction &basicQuant, const ReducedFraction &barStart) |
void | setVoiceOfConnectedBackTied (std::list< TiedTuplet > &backTiedTuplets, int tiedTupletVoice, const std::set< int > &pendingTuplets, const TupletInfo &tuplet, const std::list< TiedTuplet >::iterator &backTiedIt) |
int | findVoiceForBackTied (const std::pair< const ReducedFraction, MidiChord > &tiedTupletChord, int voiceLimit, const std::pair< ReducedFraction, ReducedFraction > &backInterval, std::map< int, std::vector< std::pair< ReducedFraction, ReducedFraction >>> &backTupletIntervals, const std::multimap< ReducedFraction, MidiChord > &chords, bool isNonTupletBackChord, const ReducedFraction &basicQuant, const ReducedFraction &barStart) |
std::map< int, std::vector< std::pair< ReducedFraction, ReducedFraction > > > | findBackTupletIntervals (const std::list< TiedTuplet > &backTiedTuplets, const std::vector< TupletInfo > &tuplets) |
void | setBackTiedVoices (std::list< TiedTuplet > &backTiedTuplets, std::vector< TupletInfo > &tuplets, std::set< int > &pendingTuplets, std::set< std::pair< const ReducedFraction, MidiChord > *> &pendingNonTuplets, std::map< int, std::vector< std::pair< ReducedFraction, ReducedFraction >>> &tupletIntervals, const std::multimap< ReducedFraction, MidiChord > &chords, const ReducedFraction &basicQuant, const ReducedFraction &barStart) |
std::map< std::pair< const ReducedFraction, MidiChord > *, int > | findMappedTupletChords (const std::vector< TupletInfo > &tuplets) |
bool | areTupletsIntersect (const TupletInfo &t1, const TupletInfo &t2) |
std::vector< int > | findTiedNotes (const TupletInfo &tuplet, const std::multimap< ReducedFraction, MidiChord >::iterator &chordIt, const std::multimap< ReducedFraction, MidiChord > &chords, const ReducedFraction &startBarTick, const ReducedFraction &basicQuant) |
std::list< TiedTuplet > | findBackTiedTuplets (const std::multimap< ReducedFraction, MidiChord > &chords, const std::vector< TupletInfo > &tuplets, const ReducedFraction &prevBarStart, const ReducedFraction &startBarTick, const ReducedFraction &basicQuant, int currentBarIndex) |
void | assignVoices (std::vector< TupletInfo > &tuplets, std::list< std::multimap< ReducedFraction, MidiChord >::iterator > &nonTuplets, std::list< TiedTuplet > &backTiedTuplets, const std::multimap< ReducedFraction, MidiChord > &chords, const ReducedFraction &basicQuant, const ReducedFraction &barStart, int barIndex) |
void Ms::MidiTuplet::addChordsBetweenTupletNotes | ( | std::vector< TupletInfo > & | tuplets, |
std::list< std::multimap< ReducedFraction, MidiChord >::iterator > & | nonTuplets, | ||
const std::multimap< ReducedFraction, MidiChord > & | chords, | ||
const ReducedFraction & | startBarTick, | ||
const ReducedFraction & | basicQuant | ||
) |
void Ms::MidiTuplet::addElementToTuplet | ( | int | voice, |
const ReducedFraction & | onTime, | ||
const ReducedFraction & | len, | ||
DurationElement * | el, | ||
std::multimap< ReducedFraction, TupletData > & | tuplets | ||
) |
void Ms::MidiTuplet::addTupletEvents | ( | std::multimap< ReducedFraction, TupletData > & | tupletEvents, |
const std::vector< TupletInfo > & | tuplets, | ||
const std::list< TiedTuplet > & | backTiedTuplets | ||
) |
bool Ms::MidiTuplet::areInCommons | ( | const TupletInfo & | t1, |
const TupletInfo & | t2 | ||
) |
bool Ms::MidiTuplet::areTupletsIntersect | ( | const TupletInfo & | t1, |
const TupletInfo & | t2 | ||
) |
void Ms::MidiTuplet::assignVoices | ( | std::vector< TupletInfo > & | tuplets, |
std::list< std::multimap< ReducedFraction, MidiChord >::iterator > & | nonTuplets, | ||
std::list< TiedTuplet > & | backTiedTuplets, | ||
const std::multimap< ReducedFraction, MidiChord > & | chords, | ||
const ReducedFraction & | basicQuant, | ||
const ReducedFraction & | barStart, | ||
int | barIndex | ||
) |
int Ms::MidiTuplet::averagePitch | ( | const std::map< ReducedFraction, std::multimap< ReducedFraction, MidiChord >::iterator > & | chords | ) |
std::pair<ReducedFraction, ReducedFraction> Ms::MidiTuplet::backTiedInterval | ( | const TiedTuplet & | tiedTuplet, |
const std::vector< TupletInfo > & | tuplets, | ||
const std::multimap< ReducedFraction, MidiChord > & | chords, | ||
const ReducedFraction & | basicQuant, | ||
const ReducedFraction & | barStart | ||
) |
bool Ms::MidiTuplet::canUseIndex | ( | int | indexToCheck, |
const std::vector< TupletInfo > & | tuplets, | ||
const std::vector< std::pair< ReducedFraction, ReducedFraction > > & | tupletIntervals, | ||
const std::map< int, std::vector< std::pair< ReducedFraction, ReducedFraction >>> & | voiceIntervals, | ||
const std::map< std::pair< const ReducedFraction, MidiChord > *, int > & | usedFirstChords | ||
) |
std::pair< ReducedFraction, ReducedFraction > Ms::MidiTuplet::chordInterval | ( | const std::pair< const ReducedFraction, MidiChord > & | chord, |
const std::multimap< ReducedFraction, MidiChord > & | chords, | ||
const ReducedFraction & | basicQuant, | ||
const ReducedFraction & | barStart | ||
) |
void Ms::MidiTuplet::cleanStaccatoOfNonTuplets | ( | std::list< std::multimap< ReducedFraction, MidiChord >::iterator > & | nonTuplets | ) |
void Ms::MidiTuplet::createTupletNotes | ( | Staff * | staff, |
const std::multimap< ReducedFraction, TupletData > & | tuplets | ||
) |
void Ms::MidiTuplet::detectStaccato | ( | TupletInfo & | tuplet | ) |
std::vector< TupletInfo > Ms::MidiTuplet::detectTuplets | ( | const std::multimap< ReducedFraction, MidiChord >::iterator & | startBarChordIt, |
const std::multimap< ReducedFraction, MidiChord >::iterator & | endBarChordIt, | ||
const ReducedFraction & | startBarTick, | ||
const ReducedFraction & | barFraction, | ||
std::multimap< ReducedFraction, MidiChord > & | chords, | ||
const ReducedFraction & | basicQuant, | ||
int | barIndex | ||
) |
void Ms::MidiTuplet::eraseBackTiedTuplet | ( | int | tupletId, |
std::list< TiedTuplet > & | backTiedTuplets | ||
) |
std::list<TiedTuplet>::iterator Ms::MidiTuplet::eraseBackTiedTuplet | ( | const std::list< TiedTuplet >::iterator & | it, |
std::list< TiedTuplet > & | backTiedTuplets, | ||
const TupletInfo & | tuplet | ||
) |
bool Ms::MidiTuplet::excludeExtraVoiceTuplets | ( | std::vector< TupletInfo > & | tuplets, |
std::list< std::multimap< ReducedFraction, MidiChord >::iterator > & | nonTuplets, | ||
std::list< TiedTuplet > & | backTiedTuplets, | ||
const std::multimap< ReducedFraction, MidiChord > & | chords, | ||
const ReducedFraction & | basicQuant, | ||
const ReducedFraction & | barStart, | ||
int | barIndex | ||
) |
void Ms::MidiTuplet::filterTuplets | ( | std::vector< TupletInfo > & | tuplets, |
const ReducedFraction & | basicQuant | ||
) |
void Ms::MidiTuplet::findAllTuplets | ( | std::multimap< ReducedFraction, TupletData > & | tuplets, |
std::multimap< ReducedFraction, MidiChord > & | chords, | ||
const TimeSigMap * | sigmap, | ||
const ReducedFraction & | basicQuant | ||
) |
int Ms::MidiTuplet::findAvailableVoice | ( | size_t | tupletIndex, |
const std::vector< std::pair< ReducedFraction, ReducedFraction >> & | tupletIntervals, | ||
const std::map< int, std::vector< std::pair< ReducedFraction, ReducedFraction >>> & | voiceIntervals | ||
) |
std::list< TiedTuplet > Ms::MidiTuplet::findBackTiedTuplets | ( | const std::multimap< ReducedFraction, MidiChord > & | chords, |
const std::vector< TupletInfo > & | tuplets, | ||
const ReducedFraction & | prevBarStart, | ||
const ReducedFraction & | startBarTick, | ||
const ReducedFraction & | basicQuant, | ||
int | currentBarIndex | ||
) |
std::map<int, std::vector<std::pair<ReducedFraction, ReducedFraction> > > Ms::MidiTuplet::findBackTupletIntervals | ( | const std::list< TiedTuplet > & | backTiedTuplets, |
const std::vector< TupletInfo > & | tuplets | ||
) |
std::vector<int> Ms::MidiTuplet::findBestTuplets | ( | const std::vector< TupletCommon > & | tupletCommons, |
const std::vector< TupletInfo > & | tuplets, | ||
size_t | commonsSize, | ||
const ReducedFraction & | basicQuant | ||
) |
std::set<int> Ms::MidiTuplet::findLongestUncommonGroup | ( | const std::vector< TupletInfo > & | tuplets, |
const ReducedFraction & | basicQuant | ||
) |
std::map<std::pair<const ReducedFraction, MidiChord> *, int> Ms::MidiTuplet::findMappedTupletChords | ( | const std::vector< TupletInfo > & | tuplets | ) |
void Ms::MidiTuplet::findNextTuplet | ( | std::vector< int > & | selectedTuplets, |
ValidTuplets & | validTuplets, | ||
std::vector< int > & | bestTupletIndexes, | ||
TupletErrorResult & | minCurrentError, | ||
const std::vector< TupletCommon > & | tupletCommons, | ||
const std::vector< TupletInfo > & | tuplets, | ||
const std::vector< std::pair< ReducedFraction, ReducedFraction > > & | tupletIntervals, | ||
size_t | commonsSize, | ||
const ReducedFraction & | basicQuant | ||
) |
std::list<std::multimap<ReducedFraction, MidiChord>::iterator> Ms::MidiTuplet::findNonTupletChords | ( | const std::vector< TupletInfo > & | tuplets, |
const std::multimap< ReducedFraction, MidiChord >::iterator & | startBarChordIt, | ||
const std::multimap< ReducedFraction, MidiChord >::iterator & | endBarChordIt | ||
) |
ReducedFraction Ms::MidiTuplet::findOnTimeBetweenChords | ( | const std::pair< const ReducedFraction, MidiChord > & | chord, |
const std::multimap< ReducedFraction, MidiChord > & | chords, | ||
const ReducedFraction & | basicQuant, | ||
const ReducedFraction & | barStart | ||
) |
std::set<std::pair<const ReducedFraction, MidiChord> *> Ms::MidiTuplet::findPendingNonTuplets | ( | const std::list< std::multimap< ReducedFraction, MidiChord >::iterator > & | nonTuplets | ) |
std::set<int> Ms::MidiTuplet::findPendingTuplets | ( | const std::vector< TupletInfo > & | tuplets | ) |
int Ms::MidiTuplet::findPitchDist | ( | const QList< MidiNote > & | notes, |
const std::vector< TupletInfo > & | tuplets, | ||
int | voice | ||
) |
ReducedFraction Ms::MidiTuplet::findPrevBarStart | ( | const ReducedFraction & | barStart, |
const ReducedFraction & | barLen | ||
) |
ReducedFraction Ms::MidiTuplet::findSumLengthOfRests | ( | const TupletInfo & | tupletInfo, |
const ReducedFraction & | startBarTick | ||
) |
std::vector<int> Ms::MidiTuplet::findTiedNotes | ( | const TupletInfo & | tuplet, |
const std::multimap< ReducedFraction, MidiChord >::iterator & | chordIt, | ||
const std::multimap< ReducedFraction, MidiChord > & | chords, | ||
const ReducedFraction & | startBarTick, | ||
const ReducedFraction & | basicQuant | ||
) |
TupletInfo Ms::MidiTuplet::findTupletApproximation | ( | const ReducedFraction & | tupletLen, |
int | tupletNumber, | ||
const ReducedFraction & | basicQuant, | ||
const ReducedFraction & | startTupletTime, | ||
const std::multimap< ReducedFraction, MidiChord >::iterator & | startChordIt, | ||
const std::multimap< ReducedFraction, MidiChord >::iterator & | endChordIt | ||
) |
std::set<std::pair<const ReducedFraction, MidiChord> *> Ms::MidiTuplet::findTupletChords | ( | const std::vector< TupletInfo > & | tuplets | ) |
std::vector<TupletCommon> Ms::MidiTuplet::findTupletCommons | ( | const std::vector< TupletInfo > & | tuplets | ) |
std::multimap< ReducedFraction, TupletData >::const_iterator Ms::MidiTuplet::findTupletContainingTime | ( | int | voice, |
const ReducedFraction & | time, | ||
const std::multimap< ReducedFraction, TupletData > & | tupletEvents, | ||
bool | strictComparison | ||
) |
TupletErrorResult Ms::MidiTuplet::findTupletError | ( | const std::vector< int > & | tupletIndexes, |
const std::vector< TupletInfo > & | tuplets, | ||
size_t | voiceCount, | ||
const ReducedFraction & | basicQuant | ||
) |
std::vector< std::pair< ReducedFraction, ReducedFraction > > Ms::MidiTuplet::findTupletIntervals | ( | const std::vector< TupletInfo > & | tuplets, |
const ReducedFraction & | basicQuant | ||
) |
std::vector<int> Ms::MidiTuplet::findTupletNumbers | ( | const ReducedFraction & | divLen, |
const ReducedFraction & | barFraction | ||
) |
void Ms::MidiTuplet::findTuplets | ( | const std::multimap< ReducedFraction, MidiChord >::iterator & | startBarChordIt, |
const std::multimap< ReducedFraction, MidiChord >::iterator & | endBarChordIt, | ||
std::multimap< ReducedFraction, MidiChord > & | chords, | ||
const ReducedFraction & | basicQuant, | ||
std::multimap< ReducedFraction, TupletData > & | tupletEvents, | ||
const TimeSigMap * | sigmap, | ||
int | barIndex | ||
) |
std::vector< std::multimap< ReducedFraction, TupletData >::const_iterator > Ms::MidiTuplet::findTupletsForTimeRange | ( | int | voice, |
const ReducedFraction & | onTime, | ||
const ReducedFraction & | len, | ||
const std::multimap< ReducedFraction, TupletData > & | tupletEvents, | ||
bool | strictComparison | ||
) |
std::vector< TupletData > Ms::MidiTuplet::findTupletsInBarForDuration | ( | int | voice, |
const ReducedFraction & | barStartTick, | ||
const ReducedFraction & | durationOnTime, | ||
const ReducedFraction & | durationLen, | ||
const std::multimap< ReducedFraction, TupletData > & | tupletEvents | ||
) |
int Ms::MidiTuplet::findTupletWithChord | ( | const MidiChord & | midiChord, |
const std::vector< TupletInfo > & | tuplets | ||
) |
std::vector<int> Ms::MidiTuplet::findUnusedIndexes | ( | const std::vector< int > & | selectedTuplets | ) |
int Ms::MidiTuplet::findVoiceForBackTied | ( | const std::pair< const ReducedFraction, MidiChord > & | tiedTupletChord, |
int | voiceLimit, | ||
const std::pair< ReducedFraction, ReducedFraction > & | backInterval, | ||
std::map< int, std::vector< std::pair< ReducedFraction, ReducedFraction >>> & | backTupletIntervals, | ||
const std::multimap< ReducedFraction, MidiChord > & | chords, | ||
bool | isNonTupletBackChord, | ||
const ReducedFraction & | basicQuant, | ||
const ReducedFraction & | barStart | ||
) |
bool Ms::MidiTuplet::hasNonTrivialChord | ( | const ReducedFraction & | chordOnTime, |
const QList< MidiNote > & | notes, | ||
const ReducedFraction & | tupletOnTime, | ||
const ReducedFraction & | tupletLen | ||
) |
bool Ms::MidiTuplet::haveChordsInTheMiddleBetweenTupletChords | ( | const std::multimap< ReducedFraction, MidiChord >::iterator | startDivChordIt, |
const std::multimap< ReducedFraction, MidiChord >::iterator | endDivChordIt, | ||
const TupletInfo & | tuplet | ||
) |
bool Ms::MidiTuplet::haveCommonChords | ( | int | i, |
int | j, | ||
const std::vector< TupletInfo > & | tuplets | ||
) |
bool Ms::MidiTuplet::haveIntersection | ( | const std::pair< ReducedFraction, ReducedFraction > & | interval1, |
const std::pair< ReducedFraction, ReducedFraction > & | interval2, | ||
bool | strictComparison | ||
) |
bool Ms::MidiTuplet::haveIntersection | ( | const std::pair< ReducedFraction, ReducedFraction > & | interval, |
const std::vector< std::pair< ReducedFraction, ReducedFraction >> & | intervals, | ||
bool | strictComparison | ||
) |
bool Ms::MidiTuplet::isInCommonIndexes | ( | int | indexToCheck, |
const std::vector< int > & | selectedTuplets, | ||
const std::vector< TupletCommon > & | tupletCommons | ||
) |
bool Ms::MidiTuplet::isMoreTupletVoicesAllowed | ( | int | voicesInUse, |
int | availableVoices | ||
) |
bool Ms::MidiTuplet::isNextBarOwnershipOk | ( | const std::multimap< ReducedFraction, MidiChord >::iterator & | startIt, |
const std::multimap< ReducedFraction, MidiChord >::iterator & | endIt, | ||
const std::multimap< ReducedFraction, MidiChord > & | chords, | ||
int | barIndex | ||
) |
bool Ms::MidiTuplet::isTupletAllowed | ( | const TupletInfo & | tupletInfo | ) |
bool Ms::MidiTuplet::isTupletLenAllowed | ( | const ReducedFraction & | tupletLen, |
int | tupletNumber, | ||
const std::multimap< ReducedFraction, MidiChord >::const_iterator | beg, | ||
const std::multimap< ReducedFraction, MidiChord >::const_iterator | end, | ||
const ReducedFraction & | basicQuant | ||
) |
bool Ms::MidiTuplet::isTupletUseless | ( | int | voice, |
const ReducedFraction & | onTime, | ||
const ReducedFraction & | len, | ||
const ReducedFraction & | maxChordLength, | ||
const std::multimap< ReducedFraction, MidiChord > & | chords | ||
) |
void Ms::MidiTuplet::markStaccatoTupletNotes | ( | std::vector< TupletInfo > & | tuplets | ) |
void Ms::MidiTuplet::minimizeOffTimeError | ( | std::vector< TupletInfo > & | tuplets, |
std::multimap< ReducedFraction, MidiChord > & | chords, | ||
std::list< std::multimap< ReducedFraction, MidiChord >::iterator > & | nonTuplets, | ||
const ReducedFraction & | startBarTick, | ||
const ReducedFraction & | basicQuant | ||
) |
void Ms::MidiTuplet::moveUncommonTupletsToEnd | ( | std::vector< TupletInfo > & | tuplets, |
std::set< int > & | uncommons | ||
) |
std::map<std::pair<const ReducedFraction, MidiChord> *, int> Ms::MidiTuplet::prepareUsedFirstChords | ( | const std::vector< int > & | selectedTuplets, |
const std::vector< TupletInfo > & | tuplets | ||
) |
std::map<int, std::vector<std::pair<ReducedFraction, ReducedFraction> > > Ms::MidiTuplet::prepareVoiceIntervals | ( | const std::vector< int > & | selectedTuplets, |
const std::vector< std::pair< ReducedFraction, ReducedFraction > > & | tupletIntervals | ||
) |
void Ms::MidiTuplet::removeEmptyTuplets | ( | MTrack & | track | ) |
void Ms::MidiTuplet::removeExtraTuplets | ( | std::vector< TupletInfo > & | tuplets | ) |
std::multimap< ReducedFraction, TupletData >::iterator Ms::MidiTuplet::removeTuplet | ( | const std::multimap< ReducedFraction, TupletData >::iterator & | tupletIt, |
std::multimap< ReducedFraction, TupletData > & | tuplets, | ||
const ReducedFraction & | maxChordLength, | ||
std::multimap< ReducedFraction, MidiChord > & | chords | ||
) |
std::multimap< ReducedFraction, TupletData >::iterator Ms::MidiTuplet::removeTupletIfEmpty | ( | const std::multimap< ReducedFraction, TupletData >::iterator & | tupletIt, |
std::multimap< ReducedFraction, TupletData > & | tuplets, | ||
const ReducedFraction & | maxChordLength, | ||
std::multimap< ReducedFraction, MidiChord > & | chords | ||
) |
void Ms::MidiTuplet::removeUnusedTuplets | ( | std::vector< TupletInfo > & | tuplets, |
std::list< std::multimap< ReducedFraction, MidiChord >::iterator > & | nonTuplets, | ||
std::set< int > & | pendingTuplets, | ||
std::list< TiedTuplet > & | backTiedTuplets, | ||
std::set< std::pair< const ReducedFraction, MidiChord > *> & | pendingNonTuplets, | ||
int | barIndex | ||
) |
void Ms::MidiTuplet::removeUselessTuplets | ( | std::vector< TupletInfo > & | tuplets | ) |
void Ms::MidiTuplet::setAllTupletOffTimes | ( | std::multimap< ReducedFraction, TupletData > & | tupletEvents, |
std::multimap< ReducedFraction, MidiChord > & | chords, | ||
const TimeSigMap * | sigmap | ||
) |
void Ms::MidiTuplet::setBackTiedVoices | ( | std::list< TiedTuplet > & | backTiedTuplets, |
std::vector< TupletInfo > & | tuplets, | ||
std::set< int > & | pendingTuplets, | ||
std::set< std::pair< const ReducedFraction, MidiChord > *> & | pendingNonTuplets, | ||
std::map< int, std::vector< std::pair< ReducedFraction, ReducedFraction >>> & | tupletIntervals, | ||
const std::multimap< ReducedFraction, MidiChord > & | chords, | ||
const ReducedFraction & | basicQuant, | ||
const ReducedFraction & | barStart | ||
) |
void Ms::MidiTuplet::setBarIndexesOfNextBarChords | ( | std::vector< TupletInfo > & | tuplets, |
std::list< std::multimap< ReducedFraction, MidiChord >::iterator > & | nonTuplets, | ||
int | barIndex | ||
) |
void Ms::MidiTuplet::setNonTupletVoices | ( | std::set< std::pair< const ReducedFraction, MidiChord > *> & | pendingNonTuplets, |
const std::map< int, std::vector< std::pair< ReducedFraction, ReducedFraction >>> & | tupletIntervals, | ||
const std::vector< TupletInfo > & | tuplets, | ||
const std::multimap< ReducedFraction, MidiChord > & | chords, | ||
const ReducedFraction & | basicQuant, | ||
const ReducedFraction & | barStart | ||
) |
void Ms::MidiTuplet::setTiedChordVoice | ( | std::list< TiedTuplet > & | backTiedTuplets, |
std::vector< TupletInfo > & | tuplets, | ||
std::set< int > & | pendingTuplets, | ||
std::set< std::pair< const ReducedFraction, MidiChord > *> & | pendingNonTuplets, | ||
std::map< int, std::vector< std::pair< ReducedFraction, ReducedFraction >>> & | tupletIntervals, | ||
std::map< int, std::vector< std::pair< ReducedFraction, ReducedFraction >>> & | backTupletIntervals, | ||
const std::multimap< ReducedFraction, MidiChord > & | chords, | ||
const std::list< TiedTuplet >::iterator & | backTiedIt, | ||
bool | isNonTupletBackChord, | ||
const ReducedFraction & | basicQuant, | ||
const ReducedFraction & | barStart | ||
) |
void Ms::MidiTuplet::setTupletVoice | ( | std::map< ReducedFraction, std::multimap< ReducedFraction, MidiChord >::iterator > & | tupletChords, |
int | voice | ||
) |
void Ms::MidiTuplet::setTupletVoices | ( | std::vector< TupletInfo > & | tuplets, |
std::set< int > & | pendingTuplets, | ||
std::map< int, std::vector< std::pair< ReducedFraction, ReducedFraction >>> & | tupletIntervals, | ||
const ReducedFraction & | basicQuant | ||
) |
void Ms::MidiTuplet::setVoiceOfConnectedBackTied | ( | std::list< TiedTuplet > & | backTiedTuplets, |
int | tiedTupletVoice, | ||
const std::set< int > & | pendingTuplets, | ||
const TupletInfo & | tuplet, | ||
const std::list< TiedTuplet >::iterator & | backTiedIt | ||
) |
void Ms::MidiTuplet::setVoicesFromPrevBars | ( | std::list< TiedTuplet > & | backTiedTuplets, |
std::vector< TupletInfo > & | tuplets, | ||
std::set< int > & | pendingTuplets, | ||
const std::set< std::pair< const ReducedFraction, MidiChord > *> & | pendingNonTuplets, | ||
std::map< int, std::vector< std::pair< ReducedFraction, ReducedFraction >>> & | tupletIntervals, | ||
std::map< int, std::vector< std::pair< ReducedFraction, ReducedFraction >>> & | backTupletIntervals, | ||
const std::multimap< ReducedFraction, MidiChord > & | chords, | ||
const ReducedFraction & | basicQuant, | ||
const ReducedFraction & | barStart | ||
) |
void Ms::MidiTuplet::sortNotesByPitch | ( | const std::multimap< ReducedFraction, MidiChord >::iterator & | startBarChordIt, |
const std::multimap< ReducedFraction, MidiChord >::iterator & | endBarChordIt | ||
) |
void Ms::MidiTuplet::sortTupletsByAveragePitch | ( | std::vector< TupletInfo > & | tuplets | ) |
void Ms::MidiTuplet::splitFirstTupletChords | ( | std::vector< TupletInfo > & | tuplets, |
std::multimap< ReducedFraction, MidiChord > & | chords | ||
) |
void Ms::MidiTuplet::splitTupletChord | ( | const std::vector< TupletInfo >::iterator & | lastMatch, |
std::multimap< ReducedFraction, MidiChord > & | chords | ||
) |
void Ms::MidiTuplet::tryUpdateBestIndexes | ( | std::vector< int > & | bestTupletIndexes, |
TupletErrorResult & | minCurrentError, | ||
const std::vector< int > & | selectedTuplets, | ||
const std::vector< TupletInfo > & | tuplets, | ||
const std::map< int, std::vector< std::pair< ReducedFraction, ReducedFraction >>> & | voiceIntervals, | ||
const ReducedFraction & | basicQuant | ||
) |
const TupletInfo & Ms::MidiTuplet::tupletFromId | ( | int | id, |
const std::vector< TupletInfo > & | tuplets | ||
) |
TupletInfo & Ms::MidiTuplet::tupletFromId | ( | int | id, |
std::vector< TupletInfo > & | tuplets | ||
) |
std::pair< ReducedFraction, ReducedFraction > Ms::MidiTuplet::tupletInterval | ( | const TupletInfo & | tuplet, |
const ReducedFraction & | basicQuant | ||
) |
const TupletLimits & Ms::MidiTuplet::tupletLimits | ( | int | tupletNumber | ) |
const std::map<int, TupletLimits>& Ms::MidiTuplet::tupletsLimits | ( | ) |
int Ms::MidiTuplet::tupletVoiceLimit | ( | ) |