MCPcopy Create free account
hub / github.com/NatronGitHub/Natron / getViewerArgsAndRenderViewer

Method getViewerArgsAndRenderViewer

Engine/ViewerInstance.cpp:412–602  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

410};
411
412ViewerInstance::ViewerRenderRetCode
413ViewerInstance::getViewerArgsAndRenderViewer(SequenceTime time,
414 bool canAbort,
415 ViewIdx view,
416 U64 viewerHash,
417 const NodePtr& rotoPaintNode,
418 const RotoStrokeItemPtr& activeStroke,
419 const RenderStatsPtr& stats,
420 ViewerArgsPtr* argsA,
421 ViewerArgsPtr* argsB)
422{
423 ///This is used only by the rotopaint while drawing. We must clear the action cache of the rotopaint node before calling
424 ///getRoD or this will not work
425 assert(rotoPaintNode);
426 if ( !rotoPaintNode->getEffectInstance() ) {
427 return eViewerRenderRetCodeFail;
428 }
429 rotoPaintNode->getEffectInstance()->clearActionsCache();
430
431 ViewerRenderRetCode status[2] = {
432 eViewerRenderRetCodeFail, eViewerRenderRetCodeFail
433 };
434 NodePtr thisNode = getNode();
435 ViewerArgsPtr args[2];
436 for (int i = 0; i < 2; ++i) {
437 args[i] = std::make_shared<ViewerArgs>();
438 if ( (i == 1) && (_imp->uiContext->getCompositingOperator() == eViewerCompositingOperatorNone) ) {
439 break;
440 }
441
442 AbortableRenderInfoPtr abortInfo = _imp->createNewRenderRequest(i, canAbort);
443
444
445 /*FrameRequestMap request;
446 RectI roi;
447 {
448 roi.x1 = args[i]->params->textureRect.x1;
449 roi.y1 = args[i]->params->textureRect.y1;
450 roi.x2 = args[i]->params->textureRect.x2;
451 roi.y2 = args[i]->params->textureRect.y2;
452 }
453 status[i] = EffectInstance::computeRequestPass(time, view, args[i]->params->mipMapLevel, roi, thisNode, request);
454 if (status[i] == eStatusFailed) {
455 continue;
456 }*/
457 ViewerParallelRenderArgsSetter tls(time,
458 view,
459 true,
460 false,
461 abortInfo,
462 thisNode,
463 i,
464 getTimeline().get(),
465 false,
466 rotoPaintNode,
467 NodePtr(),
468 false,
469 stats);

Callers 1

Calls 15

getAppFunction · 0.85
getEffectInstanceMethod · 0.80
clearActionsCacheMethod · 0.80
getRenderAgeMethod · 0.80
getNodeFunction · 0.70
getMethod · 0.45
getStrokeLastIndexMethod · 0.45

Tested by

no test coverage detected