From a4eacf48f12bd6167465e03f1bcd921a2b49679b Mon Sep 17 00:00:00 2001 From: Javier Serrano Polo Date: Sun, 27 Aug 2006 21:36:56 +0000 Subject: [PATCH] removed start frame from play() methods git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@368 0778d3d1-df1d-0410-868b-ea421aaaa00d --- include/automation_track.h | 1 - include/bb_editor.h | 3 +-- include/bb_track.h | 1 - include/instrument_track.h | 1 - include/sample_track.h | 1 - src/core/bb_editor.cpp | 6 +++--- src/core/song_editor.cpp | 27 +++++++++++++++------------ src/tracks/automation_track.cpp | 1 - src/tracks/bb_track.cpp | 10 ++++------ src/tracks/sample_track.cpp | 6 ------ 10 files changed, 23 insertions(+), 34 deletions(-) diff --git a/include/automation_track.h b/include/automation_track.h index c15b3ec4f..854a564ed 100644 --- a/include/automation_track.h +++ b/include/automation_track.h @@ -47,7 +47,6 @@ private: virtual trackTypes type( void ) const; virtual bool FASTCALL play( const midiTime & _start, - const f_cnt_t _start_frame, const fpab_t _frames, const f_cnt_t _frame_base, Sint16 _tco_num = -1 ); diff --git a/include/bb_editor.h b/include/bb_editor.h index d559b619c..0fb9bea35 100644 --- a/include/bb_editor.h +++ b/include/bb_editor.h @@ -40,8 +40,7 @@ class bbEditor : public trackContainer { Q_OBJECT public: - virtual bool FASTCALL play( midiTime _start, const f_cnt_t _start_frame, - const f_cnt_t _frames, + virtual bool FASTCALL play( midiTime _start, const fpab_t _frames, const f_cnt_t _frame_base, Sint16 _tco_num = -1 ); diff --git a/include/bb_track.h b/include/bb_track.h index 1e05a6d56..312609b85 100644 --- a/include/bb_track.h +++ b/include/bb_track.h @@ -100,7 +100,6 @@ public: virtual trackTypes type( void ) const; virtual bool FASTCALL play( const midiTime & _start, - const f_cnt_t _start_frame, const fpab_t _frames, const f_cnt_t _frame_base, Sint16 _tco_num = -1 ); diff --git a/include/instrument_track.h b/include/instrument_track.h index 6d4ab7ed2..b0b2770be 100755 --- a/include/instrument_track.h +++ b/include/instrument_track.h @@ -143,7 +143,6 @@ public: // play everything in given frame-range - creates note-play-handles virtual bool FASTCALL play( const midiTime & _start, - const f_cnt_t _start_frame, const fpab_t _frames, const f_cnt_t _frame_base, Sint16 _tco_num = -1 ); diff --git a/include/sample_track.h b/include/sample_track.h index 3ae90f34d..ca8b1c061 100644 --- a/include/sample_track.h +++ b/include/sample_track.h @@ -136,7 +136,6 @@ public: virtual trackTypes type( void ) const; virtual bool FASTCALL play( const midiTime & _start, - const f_cnt_t _start_frame, const fpab_t _frames, const f_cnt_t _frame_base, Sint16 _tco_num = -1 ); diff --git a/src/core/bb_editor.cpp b/src/core/bb_editor.cpp index 6ab82c463..98ae99a4a 100644 --- a/src/core/bb_editor.cpp +++ b/src/core/bb_editor.cpp @@ -227,8 +227,8 @@ tact bbEditor::lengthOfBB( csize _bb ) -bool FASTCALL bbEditor::play( midiTime _start, f_cnt_t _start_frame, - f_cnt_t _frames, f_cnt_t _frame_base, +bool FASTCALL bbEditor::play( midiTime _start, fpab_t _frames, + f_cnt_t _frame_base, Sint16 _tco_num ) { bool played_a_note = FALSE; @@ -242,7 +242,7 @@ bool FASTCALL bbEditor::play( midiTime _start, f_cnt_t _start_frame, trackVector tv = tracks(); for( trackVector::iterator it = tv.begin(); it != tv.end(); ++it ) { - if( ( *it )->play( _start, _start_frame, _frames, _frame_base, + if( ( *it )->play( _start, _frames, _frame_base, _tco_num ) == TRUE ) { played_a_note = TRUE; diff --git a/src/core/song_editor.cpp b/src/core/song_editor.cpp index e76a016ef..18a84874b 100644 --- a/src/core/song_editor.cpp +++ b/src/core/song_editor.cpp @@ -1056,20 +1056,23 @@ void songEditor::processNextBuffer( void ) played_frames = last_frames; } - if( m_playMode == PLAY_SONG ) + if( (f_cnt_t)current_frame == 0 ) { - m_automation_track->play( m_playPos[m_playMode], - (f_cnt_t)current_frame, played_frames, - total_frames_played, tco_num ); - } + if( m_playMode == PLAY_SONG ) + { + m_automation_track->play( m_playPos[m_playMode], + played_frames, + total_frames_played, tco_num ); + } - // loop through all tracks and play them - for( trackVector::iterator it = tv.begin(); it != tv.end(); - ++it ) - { - ( *it )->play( m_playPos[m_playMode], - (f_cnt_t)current_frame, played_frames, - total_frames_played, tco_num ); + // loop through all tracks and play them + for( trackVector::iterator it = tv.begin(); + it != tv.end(); ++it ) + { + ( *it )->play( m_playPos[m_playMode], + played_frames, + total_frames_played, tco_num ); + } } // update frame-counters diff --git a/src/tracks/automation_track.cpp b/src/tracks/automation_track.cpp index fb9f64ba4..2f4c6ce33 100644 --- a/src/tracks/automation_track.cpp +++ b/src/tracks/automation_track.cpp @@ -55,7 +55,6 @@ track::trackTypes automationTrack::type( void ) const bool automationTrack::play( const midiTime & _start, - const f_cnt_t _start_frame, const fpab_t _frames, const f_cnt_t _frame_base, Sint16 _tco_num ) diff --git a/src/tracks/bb_track.cpp b/src/tracks/bb_track.cpp index b99a3b602..a25798b0a 100644 --- a/src/tracks/bb_track.cpp +++ b/src/tracks/bb_track.cpp @@ -368,9 +368,8 @@ track::trackTypes bbTrack::type( void ) const -// play _frames frames of given TCO within starting with _start/_start_frame +// play _frames frames of given TCO within starting with _start bool FASTCALL bbTrack::play( const midiTime & _start, - const f_cnt_t _start_frame, const fpab_t _frames, const f_cnt_t _frame_base, Sint16 _tco_num ) @@ -379,8 +378,7 @@ bool FASTCALL bbTrack::play( const midiTime & _start, if( _tco_num >= 0 ) { - return( eng()->getBBEditor()->play( _start, _start_frame, - _frames, + return( eng()->getBBEditor()->play( _start, _frames, _frame_base, s_infoMap[this] ) ); } @@ -388,7 +386,7 @@ bool FASTCALL bbTrack::play( const midiTime & _start, vlist tcos; getTCOsInRange( tcos, _start, _start + static_cast( _frames / eng()->framesPerTact64th() ) ); - + if ( tcos.size() == 0 ) { return( FALSE ); @@ -409,7 +407,7 @@ bool FASTCALL bbTrack::play( const midiTime & _start, if( _start - lastPosition < lastLen ) { return( eng()->getBBEditor()->play( _start - lastPosition, - _start_frame, _frames, + _frames, _frame_base, s_infoMap[this] ) ); } diff --git a/src/tracks/sample_track.cpp b/src/tracks/sample_track.cpp index 4156c32f9..1cb1b24ac 100644 --- a/src/tracks/sample_track.cpp +++ b/src/tracks/sample_track.cpp @@ -421,16 +421,10 @@ track::trackTypes sampleTrack::type( void ) const bool FASTCALL sampleTrack::play( const midiTime & _start, - const f_cnt_t _start_frame, const fpab_t _frames, const f_cnt_t _frame_base, Sint16 /*_tco_num*/ ) { - if ( _start_frame > 0 ) - { - return( FALSE ); - } - sendMidiTime( _start ); #ifdef LADSPA_SUPPORT