Merge header back to normal.
This commit is contained in:
@@ -109,6 +109,38 @@ void TimingData::SetDelayAtRow( int iRow, float fSeconds )
|
|||||||
SetStopAtRow(iRow,fSeconds,true);
|
SetStopAtRow(iRow,fSeconds,true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void TimingData::SetTimeSignatureAtRow( int iRow, int iNumerator, int iDenominator )
|
||||||
|
{
|
||||||
|
unsigned i;
|
||||||
|
for( i = 0; i < m_vTimeSignatureSegments.size(); i++ )
|
||||||
|
{
|
||||||
|
if( m_vTimeSignatureSegments[i].m_iStartRow >= iRow)
|
||||||
|
break; // We found our segment.
|
||||||
|
}
|
||||||
|
TimeSignatureSegment &ts = m_vTimeSignatureSegments[i];
|
||||||
|
TimeSignatureSegment &prev = m_vTimeSignatureSegments[i-1];
|
||||||
|
if( i == m_vTimeSignatureSegments.size() || ts.m_iStartRow != iRow )
|
||||||
|
{
|
||||||
|
// There is no TimeSignatureSegment at the specified beat.
|
||||||
|
// If the TimeSignatureSegment being set differs
|
||||||
|
// from the last TimeSignature, create a new TimeSignatureSegment.
|
||||||
|
if( i == 0 || ( prev.m_iNumerator != iNumerator || prev.m_iDenominator != iDenominator ) )
|
||||||
|
AddTimeSignatureSegment( TimeSignatureSegment(iRow, iNumerator, iDenominator) );
|
||||||
|
}
|
||||||
|
else // TimeSignatureSegment being modified is m_vTimeSignatureSegments[i]
|
||||||
|
{
|
||||||
|
if( i > 0 && prev.m_iNumerator == iNumerator
|
||||||
|
&& prev.m_iDenominator == iDenominator )
|
||||||
|
m_vTimeSignatureSegments.erase( m_vTimeSignatureSegments.begin()+i,
|
||||||
|
m_vTimeSignatureSegments.begin()+i+1 );
|
||||||
|
else
|
||||||
|
{
|
||||||
|
ts.m_iNumerator = iNumerator;
|
||||||
|
ts.m_iDenominator = iDenominator;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
void TimingData::SetWarpAtRow( int iRowAt, float fLengthBeats )
|
void TimingData::SetWarpAtRow( int iRowAt, float fLengthBeats )
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user