1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52
|
#ifndef INNER_FUNC_DECL_H
#define INNER_FUNC_DECL_H
#include <set>
namespace Ms {
class MidiChord;
class ReducedFraction;
namespace MidiTuplet {
struct TupletInfo;
bool isTupletAllowed(const TupletInfo &tupletInfo);
std::vector<int> findTupletNumbers(const ReducedFraction &divLen, const ReducedFraction &barFraction);
TupletInfo findTupletApproximation(const ReducedFraction &tupletLen,
int tupletNumber,
const ReducedFraction &quantValue,
const ReducedFraction &startTupletTime,
const std::multimap<ReducedFraction, MidiChord>::iterator &startChordIt,
const std::multimap<ReducedFraction, MidiChord>::iterator &endChordIt);
void splitFirstTupletChords(std::vector<TupletInfo> &tuplets,
std::multimap<ReducedFraction, MidiChord> &chords);
std::set<int> findLongestUncommonGroup(const std::vector<TupletInfo> &tuplets,
const ReducedFraction &basicQuant);
} // namespace MidiTuplet
namespace Meter {
struct MaxLevel;
struct DivisionInfo;
Meter::MaxLevel maxLevelBetween(const ReducedFraction &startTickInBar,
const ReducedFraction &endTickInBar,
const DivisionInfo &divInfo);
Meter::MaxLevel findMaxLevelBetween(const ReducedFraction &startTickInBar,
const ReducedFraction &endTickInBar,
const std::vector<DivisionInfo> &divsInfo);
} // namespace Meter
} // namespace Ms
#endif // INNER_FUNC_DECL_H
|