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

Method setReadNodeOriginalFrameRange

Engine/WriteNode.cpp:602–641  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

600}
601
602void
603WriteNodePrivate::setReadNodeOriginalFrameRange()
604{
605 NodePtr readNode = readBackNode.lock();
606
607 if (!readNode) {
608 return;
609 }
610 NodePtr writeNode = embeddedPlugin.lock();
611 if (!writeNode) {
612 return;
613 }
614 double first, last;
615 writeNode->getEffectInstance()->getFrameRange_public(writeNode->getEffectInstance()->getHash(), &first, &last);
616
617 {
618 KnobIPtr originalFrameRangeKnob = readNode->getKnobByName(kReaderParamNameOriginalFrameRange);
619 assert(originalFrameRangeKnob);
620 KnobInt* originalFrameRange = dynamic_cast<KnobInt*>( originalFrameRangeKnob.get() );
621 if (originalFrameRange) {
622 originalFrameRange->setValues(first, last, ViewSpec::all(), eValueChangedReasonNatronInternalEdited);
623 }
624 }
625 {
626 KnobIPtr firstFrameKnob = readNode->getKnobByName(kParamFirstFrame);
627 assert(firstFrameKnob);
628 KnobInt* firstFrame = dynamic_cast<KnobInt*>( firstFrameKnob.get() );
629 if (firstFrame) {
630 firstFrame->setValue(first);
631 }
632 }
633 {
634 KnobIPtr lastFrameKnob = readNode->getKnobByName(kParamLastFrame);
635 assert(lastFrameKnob);
636 KnobInt* lastFrame = dynamic_cast<KnobInt*>( lastFrameKnob.get() );
637 if (lastFrame) {
638 lastFrame->setValue(last);
639 }
640 }
641}
642
643void
644WriteNodePrivate::createReadNodeAndConnectGraph(const std::string& filename)

Callers 1

knobChangedMethod · 0.80

Calls 9

allFunction · 0.85
getFrameRange_publicMethod · 0.80
getEffectInstanceMethod · 0.80
setValuesMethod · 0.80
lockMethod · 0.45
getHashMethod · 0.45
getKnobByNameMethod · 0.45
getMethod · 0.45
setValueMethod · 0.45

Tested by

no test coverage detected