[splittiming] Write out the #SPEEDS tag.

We're not incrementing the version due to 0.70
being the main one with Split Timing.

If requested, maybe a version 0.64 or something.
This commit is contained in:
Jason Felds
2011-05-15 15:24:36 -04:00
parent e2da0c4527
commit 3b684e8c20
5 changed files with 95 additions and 0 deletions
+9
View File
@@ -76,6 +76,7 @@ struct TimingTagWriter {
void Write( const int row, const float value ) { Write( row, ssprintf( "%.6f", value ) ); }
void Write( const int row, const int value ) { Write( row, ssprintf( "%d", value ) ); }
void Write( const int row, const int a, const int b ) { Write( row, ssprintf( "%d=%d", a, b ) ); }
void Write( const int row, const float a, const float b ) { Write( row, ssprintf( "%.6f=%.6f", a, b) ); }
void Init( const RString sTag ) { m_sNext = "#" + sTag + ":"; }
void Finish( ) { m_pvsLines->push_back( ( m_sNext != "," ? m_sNext : "" ) + ";" ); }
@@ -131,6 +132,14 @@ static void GetTimingTags( vector<RString> &lines, TimingData timing, bool bIsSo
w.Write( cs->m_iStartRow, cs->m_iCombo );
w.Finish();
if( !bIsSong )
{
w.Init( "SPEEDS" );
FOREACH_CONST( SpeedSegment, timing.m_SpeedSegments, ss )
w.Write( ss->m_iStartRow, ss->m_fPercent, ss->m_fWait );
w.Finish();
}
w.Init( "LABELS" );
FOREACH_CONST( LabelSegment, timing.m_LabelSegments, ls )
w.Write( ls->m_iStartRow, ls->m_sLabel.c_str() );