"Fossies" - the Fresh Open Source Software Archive  

Source code changes of the file "include/InstrumentPlayHandle.h" between
lmms-1.2.0-rc7.tar.gz and lmms-1.2.0-rc8.tar.gz

About: LMMS (Linux MultiMedia Studio) is a sound generation system (creation of melodies and beats, synthesis and mixing of sounds, arranging of samples; full MIDI support). Release candidate.

InstrumentPlayHandle.h  (lmms-1.2.0-rc7):InstrumentPlayHandle.h  (lmms-1.2.0-rc8)
skipping to change at line 44 skipping to change at line 44
{ {
public: public:
InstrumentPlayHandle( Instrument * instrument, InstrumentTrack* instrumen tTrack ); InstrumentPlayHandle( Instrument * instrument, InstrumentTrack* instrumen tTrack );
virtual ~InstrumentPlayHandle() virtual ~InstrumentPlayHandle()
{ {
} }
virtual void play( sampleFrame * _working_buffer ) virtual void play( sampleFrame * _working_buffer )
{ {
// if the instrument is midi-based, we can safely render right aw // ensure that all our nph's have been processed first
ay
if( m_instrument->flags() & Instrument::IsMidiBased )
{
m_instrument->play( _working_buffer );
return;
}
// if not, we need to ensure that all our nph's have been process
ed first
ConstNotePlayHandleList nphv = NotePlayHandle::nphsOfInstrumentTr ack( m_instrument->instrumentTrack(), true ); ConstNotePlayHandleList nphv = NotePlayHandle::nphsOfInstrumentTr ack( m_instrument->instrumentTrack(), true );
bool nphsLeft; bool nphsLeft;
do do
{ {
nphsLeft = false; nphsLeft = false;
for( const NotePlayHandle * constNotePlayHandle : nphv ) for( const NotePlayHandle * constNotePlayHandle : nphv )
{ {
NotePlayHandle * notePlayHandle = const_cast<Note PlayHandle *>( constNotePlayHandle ); NotePlayHandle * notePlayHandle = const_cast<Note PlayHandle *>( constNotePlayHandle );
if( notePlayHandle->state() != ThreadableJob::Don e && ! notePlayHandle->isFinished() ) if( notePlayHandle->state() != ThreadableJob::Don e && ! notePlayHandle->isFinished() )
 End of changes. 1 change blocks. 
10 lines changed or deleted 1 lines changed or added

Home  |  About  |  Features  |  All  |  Newest  |  Dox  |  Diffs  |  RSS Feeds  |  Screenshots  |  Comments  |  Imprint  |  Privacy  |  HTTP(S)