# HG changeset patch # User Chris Cannam # Date 1177924062 0 # Node ID 96a6dd889c6857a1ddfbfac225e69a54b1cd022d # Parent 46398ab6ff58b46d339fccfa42d36d4fa79abced * Fix #1706924 updates not happening on derived waveform generation diff -r 46398ab6ff58 -r 96a6dd889c68 data/fileio/WavFileReader.cpp --- a/data/fileio/WavFileReader.cpp Fri Apr 27 16:10:10 2007 +0000 +++ b/data/fileio/WavFileReader.cpp Mon Apr 30 09:07:42 2007 +0000 @@ -90,7 +90,10 @@ m_sampleRate = m_fileInfo.samplerate; } - if (m_frameCount != prevCount) emit frameCountChanged(); + if (m_frameCount != prevCount) { +// std::cerr << "frameCountChanged" << std::endl; + emit frameCountChanged(); + } } void diff -r 46398ab6ff58 -r 96a6dd889c68 data/model/WaveFileModel.cpp --- a/data/model/WaveFileModel.cpp Fri Apr 27 16:10:10 2007 +0000 +++ b/data/model/WaveFileModel.cpp Mon Apr 30 09:07:42 2007 +0000 @@ -148,8 +148,8 @@ if (!m_reader || !m_reader->isOK()) return 0; #ifdef DEBUG_WAVE_FILE_MODEL - std::cerr << "WaveFileModel::getValues(" << channel << ", " - << start << ", " << end << "): calling reader" << std::endl; +// std::cerr << "WaveFileModel::getValues(" << channel << ", " +// << start << ", " << end << "): calling reader" << std::endl; #endif SampleBlock frames; diff -r 46398ab6ff58 -r 96a6dd889c68 data/model/WaveFileModel.h --- a/data/model/WaveFileModel.h Fri Apr 27 16:10:10 2007 +0000 +++ b/data/model/WaveFileModel.h Mon Apr 30 09:07:42 2007 +0000 @@ -75,7 +75,7 @@ signals: void modelChanged(); - void modelChanged(size_t startFrame, size_t endFrame); + void modelChanged(size_t, size_t); void completionChanged(); protected slots: diff -r 46398ab6ff58 -r 96a6dd889c68 data/model/WritableWaveFileModel.cpp --- a/data/model/WritableWaveFileModel.cpp Fri Apr 27 16:10:10 2007 +0000 +++ b/data/model/WritableWaveFileModel.cpp Mon Apr 30 09:07:42 2007 +0000 @@ -26,6 +26,7 @@ #include #include +//#define DEBUG_WRITABLE_WAVE_FILE_MODEL 1 WritableWaveFileModel::WritableWaveFileModel(size_t sampleRate, size_t channels, @@ -75,8 +76,8 @@ return; } - connect(m_model, SLOT(modelChanged()), this, SIGNAL(modelChanged())); - connect(m_model, SLOT(modelChanged(size_t, size_t)), + connect(m_model, SIGNAL(modelChanged()), this, SIGNAL(modelChanged())); + connect(m_model, SIGNAL(modelChanged(size_t, size_t)), this, SIGNAL(modelChanged(size_t, size_t))); } @@ -92,6 +93,10 @@ { if (!m_writer) return false; +#ifdef DEBUG_WRITABLE_WAVE_FILE_MODEL +// std::cerr << "WritableWaveFileModel::addSamples(" << count << ")" << std::endl; +#endif + if (!m_writer->writeSamples(samples, count)) { std::cerr << "ERROR: WritableWaveFileModel::addSamples: writer failed: " << m_writer->getError().toStdString() << std::endl; return false; @@ -102,8 +107,14 @@ static int updateCounter = 0; if (m_reader && m_reader->getChannelCount() == 0) { +#ifdef DEBUG_WRITABLE_WAVE_FILE_MODEL + std::cerr << "WritableWaveFileModel::addSamples(" << count << "): calling updateFrameCount (initial)" << std::endl; +#endif m_reader->updateFrameCount(); } else if (++updateCounter == 100) { +#ifdef DEBUG_WRITABLE_WAVE_FILE_MODEL + std::cerr << "WritableWaveFileModel::addSamples(" << count << "): calling updateFrameCount (periodic)" << std::endl; +#endif if (m_reader) m_reader->updateFrameCount(); updateCounter = 0; }