|
auto | GetType () const -> TimingSegmentType override |
|
auto | GetEffectType () const -> SegmentEffectType override |
|
auto | IsNotable () const -> bool override |
|
void | DebugPrint () const override |
|
auto | Copy () const -> TimingSegment *override |
|
| TimeSignatureSegment (int iStartRow=ROW_INVALID, int iNum=4, int iDenom=4) |
|
| TimeSignatureSegment (const TimeSignatureSegment &other) |
|
auto | GetNum () const -> int |
|
void | SetNum (int num) |
|
auto | GetDen () const -> int |
|
void | SetDen (int den) |
|
void | Set (int num, int den) |
|
auto | ToString (int dec) const -> std::string override |
|
auto | GetValues () const -> std::vector< float > override |
|
auto | GetNoteRowsPerMeasure () const -> int |
| Retrieve the number of note rows per measure within the TimeSignatureSegment.
|
|
auto | operator== (const TimeSignatureSegment &other) const -> bool |
|
auto | operator== (const TimingSegment &other) const -> bool override |
|
| TimingSegment (int iRow=ROW_INVALID) |
|
| TimingSegment (float fBeat) |
|
| TimingSegment (const TimingSegment &other) |
|
virtual void | Scale (int start, int length, int newLength) |
| Scales itself.
|
|
auto | GetRow () const -> int |
|
void | SetRow (int iRow) |
|
auto | GetBeat () const -> float |
|
void | SetBeat (float fBeat) |
|
auto | operator< (const TimingSegment &other) const -> bool |
|
virtual auto | operator!= (const TimingSegment &other) const -> bool |
|
Identifies when a song changes its time signature.
This only supports simple time signatures. The upper number (called the numerator here, though this isn't properly a fraction) is the number of beats per measure. The lower number (denominator here) is the note value representing one beat.
auto TimeSignatureSegment::GetNoteRowsPerMeasure |
( |
| ) |
const -> int
|
|
inline |
Retrieve the number of note rows per measure within the TimeSignatureSegment.
With BeatToNoteRow(1) rows per beat, then we should have BeatToNoteRow(1)*m_iNumerator beats per measure. But if we assume that every BeatToNoteRow(1) rows is a quarter note, and we want the beats to be 1/m_iDenominator notes, then we should have BeatToNoteRow(1)*4 is rows per whole note and thus BeatToNoteRow(1)*4/m_iDenominator is rows per beat. Multiplying by m_iNumerator gives rows per measure.
- Returns
- the number of note rows per measure.