MCPcopy Create free account
hub / github.com/MrKepzie/Natron / restartTask

Method restartTask

Gui/ProgressTaskInfo.cpp:283–328  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

281} // ProgressTaskInfo::cancelTask
282
283void
284ProgressTaskInfo::restartTask()
285{
286 {
287 QMutexLocker k(&_imp->canceledMutex);
288 _imp->canceled = false;
289 }
290 _imp->updatedProgressOnce = false;
291 _imp->timer.reset(new TimeLapse);
292 _imp->refreshLabelTimer->start(NATRON_PROGRESS_DIALOG_ETA_REFRESH_MS);
293
294 _imp->pauseTasksButton->setEnabled(true);
295 _imp->restartTasksButton->setEnabled(false);
296
297
298 NodePtr node = _imp->getNode();
299 if (!node) {
300 return;
301 }
302 EffectInstPtr effect = node->getEffectInstance();
303 if (!effect) {
304 return;
305 }
306 if ( effect->isOutput() ) {
307 int firstFrame;
308 if ( (_imp->lastRenderedFrame == _imp->lastFrame) || (_imp->lastRenderedFrame == -1) ) {
309 firstFrame = _imp->firstFrame;
310 _imp->nFramesRendered = 0;
311 } else {
312 firstFrame = _imp->lastRenderedFrame;
313 }
314 AppInstance::RenderWork w( dynamic_cast<OutputEffectInstance*>( node->getEffectInstance().get() ),
315 firstFrame,
316 _imp->lastFrame,
317 _imp->frameStep,
318 node->getApp()->isRenderStatsActionChecked() );
319 w.isRestart = true;
320 _imp->statusItem->setTextColor(Qt::yellow);
321 _imp->status = eProgressTaskStatusQueued;
322 _imp->statusItem->setText( tr("Queued") );
323 _imp->refreshButtons();
324 std::list<AppInstance::RenderWork> works;
325 works.push_back(w);
326 node->getApp()->startWritersRendering(false, works);
327 }
328}
329
330void
331ProgressTaskInfo::onRenderEngineFrameComputed(int frame,

Callers

nothing calls this directly

Calls 13

startMethod · 0.80
getEffectInstanceMethod · 0.80
refreshButtonsMethod · 0.80
startWritersRenderingMethod · 0.80
resetMethod · 0.45
setEnabledMethod · 0.45
getNodeMethod · 0.45
isOutputMethod · 0.45
getMethod · 0.45
getAppMethod · 0.45
setTextMethod · 0.45

Tested by

no test coverage detected