Пример #1
0
void FractalGenerator::setEnabled( bool enabled )
{
    QMutexLocker locker( &m_mutex );

    if ( enabled != m_enabled ) {
        m_enabled = enabled;

        if ( enabled )
            handleState();
        else
            cancelJobs();
    }
}
Пример #2
0
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;
}
Пример #3
0
void CThreadPool::cancelJob(CJob* job) {
    std::set<CJob*> jobs;
    jobs.insert(job);
    cancelJobs(jobs);
}
Пример #4
0
void FractalGenerator::reset()
{
    m_update = ClearUpdate;
    cancelJobs();
}