bool SmartPhotometricOptimizer::runAlgorithm()
{
    AppBase::ProgressReporter* progRep;
    
    if(hasProgressDisplay()) {
        // is this correct? how much progress requierd?
        progRep = new AppBase::ProgressReporterAdaptor(*getProgressDisplay(), 0.0); 
    } else {
        progRep = new AppBase::DummyProgressReporter();
    }
    
    smartOptimizePhotometric(o_panorama,
                             o_optMode,
                             o_correspondences,
                             *progRep, o_resultError);
    
    delete progRep;
    
    // smartOptimizePhotometric does not tell us if it's cancelled
    if(hasProgressDisplay())
    {
        if(getProgressDisplay()->wasCancelled())
            cancelAlgorithm();
    }
    
    return !wasCancelled(); // let's hope so.
}
Beispiel #2
0
 bool NonaFileOutputStitcher::runStitcher()
 {
     Nona::stitchPanorama(o_panorama,
                    o_panoramaOptions,
                    getProgressDisplay(),
                    o_filename,
                    o_usedImages,
                    m_advOptions);
     
     return true;
 }
bool PhotometricOptimizer::runAlgorithm()
{
    // is this correct? how much progress requierd?
    AppBase::ProgressReporter* progRep = 
        AppBase::ProgressReporterAdaptor::newProgressReporter(getProgressDisplay(), 0.0);    
    
    optimizePhotometric(o_panorama, 
                        o_vars, o_correspondences,
                        *progRep, o_resultError);
    
    delete progRep;
    
    // optimizePhotometric does not tell us if it's cancelled
    if(hasProgressDisplay())
    {
        if(getProgressDisplay()->wasCancelled())
            cancelAlgorithm();
    }

    return wasCancelled(); // let's hope so.
}