void FractalGenerator::setEnabled( bool enabled ) { QMutexLocker locker( &m_mutex ); if ( enabled != m_enabled ) { m_enabled = enabled; if ( enabled ) handleState(); else cancelJobs(); } }
FractalGenerator::~FractalGenerator() { QMutexLocker locker( &m_mutex ); cancelJobs(); m_enabled = false; while ( m_activeJobs > 0 ) m_allJobsDone.wait( &m_mutex ); delete m_functor; #if defined( HAVE_SSE2 ) delete m_functorSSE2; #endif delete[] m_buffer; delete[] m_previewBuffer; }
void CThreadPool::cancelJob(CJob* job) { std::set<CJob*> jobs; jobs.insert(job); cancelJobs(jobs); }
void FractalGenerator::reset() { m_update = ClearUpdate; cancelJobs(); }