Mercurial > hg > svcore
comparison data/fft/FFTDataServer.cpp @ 411:52303ec15cd2
* Permit holding Shift while dragging an instant or other edited thing,
to override the initial drag resistance (for #1928943 sticky time
instants)
* better handling of updates during progressive decode load
* ready() signal from model (used by vect)
author | Chris Cannam |
---|---|
date | Mon, 19 May 2008 17:23:11 +0000 |
parents | 115f60df1e4d |
children | cff476cfce77 |
comparison
equal
deleted
inserted
replaced
410:9c7ebf2cd956 | 411:52303ec15cd2 |
---|---|
664 if (m_fillThread) { | 664 if (m_fillThread) { |
665 if (m_fillThread->isFinished()) { | 665 if (m_fillThread->isFinished()) { |
666 delete m_fillThread; | 666 delete m_fillThread; |
667 m_fillThread = 0; | 667 m_fillThread = 0; |
668 deleteProcessingData(); | 668 deleteProcessingData(); |
669 } else if (!m_fillThread->isRunning()) { | |
670 m_fillThread->start(); | |
669 } else { | 671 } else { |
670 m_condition.wakeAll(); | 672 m_condition.wakeAll(); |
671 } | 673 } |
672 } | 674 } |
673 } | 675 } |
1128 | 1130 |
1129 if (x >= m_width) { | 1131 if (x >= m_width) { |
1130 std::cerr << "WARNING: FFTDataServer::fillColumn(" << x << "): " | 1132 std::cerr << "WARNING: FFTDataServer::fillColumn(" << x << "): " |
1131 << "x > width (" << x << " > " << m_width << ")" | 1133 << "x > width (" << x << " > " << m_width << ")" |
1132 << std::endl; | 1134 << std::endl; |
1135 // abort(); //!!! | |
1133 return; | 1136 return; |
1134 } | 1137 } |
1135 | 1138 |
1136 size_t col; | 1139 size_t col; |
1137 #ifdef DEBUG_FFT_SERVER_FILL | 1140 #ifdef DEBUG_FFT_SERVER_FILL |
1313 } | 1316 } |
1314 | 1317 |
1315 void | 1318 void |
1316 FFTDataServer::FillThread::run() | 1319 FFTDataServer::FillThread::run() |
1317 { | 1320 { |
1321 #ifdef DEBUG_FFT_SERVER_FILL | |
1322 std::cerr << "FFTDataServer::FillThread::run()" << std::endl; | |
1323 #endif | |
1324 | |
1318 m_extent = 0; | 1325 m_extent = 0; |
1319 m_completion = 0; | 1326 m_completion = 0; |
1320 | 1327 |
1321 while (!m_server.m_model->isReady() && !m_server.m_exiting) { | 1328 while (!m_server.m_model->isReady() && !m_server.m_exiting) { |
1329 #ifdef DEBUG_FFT_SERVER_FILL | |
1330 std::cerr << "FFTDataServer::FillThread::run(): waiting for model " << m_server.m_model << " to be ready" << std::endl; | |
1331 #endif | |
1322 sleep(1); | 1332 sleep(1); |
1323 } | 1333 } |
1324 if (m_server.m_exiting) return; | 1334 if (m_server.m_exiting) return; |
1325 | 1335 |
1326 size_t start = m_server.m_model->getStartFrame(); | 1336 size_t start = m_server.m_model->getStartFrame(); |