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

Method createDefaultWriteNode

Engine/WriteNode.cpp:530–557  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

528} // WriteNodePrivate::destroyWriteNode
529
530void
531WriteNodePrivate::createDefaultWriteNode()
532{
533 NodeGroupPtr isNodeGroup = std::dynamic_pointer_cast<NodeGroup>( _publicInterface->shared_from_this() );
534 CreateNodeArgs args( WRITE_NODE_DEFAULT_WRITER, isNodeGroup );
535 args.setProperty(kCreateNodeArgsPropNoNodeGUI, true);
536 args.setProperty(kCreateNodeArgsPropOutOfProject, true);
537 args.setProperty(kCreateNodeArgsPropSilent, true);
538 args.setProperty(kCreateNodeArgsPropMetaNodeContainer, _publicInterface->getNode());
539 args.setProperty<std::string>(kCreateNodeArgsPropNodeInitialName, "defaultWriteNodeWriter");
540 args.setProperty<bool>(kCreateNodeArgsPropAllowNonUserCreatablePlugins, true);
541 //args.paramValues.push_back(createDefaultValueForParam<std::string>(kOfxImageEffectFileParamName, filePattern));
542 embeddedPlugin = _publicInterface->getApp()->createNode(args);
543
544 if ( !embeddedPlugin.lock() ) {
545 QString error = tr("The IO.ofx.bundle OpenFX plug-in is required to use this node, make sure it is installed.");
546 throw std::runtime_error( error.toStdString() );
547 }
548
549
550 //We need to explcitly refresh the Python knobs since we attached the embedded node knobs into this node.
551 _publicInterface->getNode()->declarePythonFields();
552
553 //Destroy it to keep the default parameters
554 destroyWriteNode();
555 placeWriteNodeKnobsInPage();
556 separatorKnob.lock()->setSecret(true);
557}
558
559bool
560WriteNodePrivate::checkEncoderCreated(double time,

Callers

nothing calls this directly

Calls 8

setPropertyMethod · 0.80
toStdStringMethod · 0.80
getNodeMethod · 0.45
createNodeMethod · 0.45
getAppMethod · 0.45
lockMethod · 0.45
declarePythonFieldsMethod · 0.45
setSecretMethod · 0.45

Tested by

no test coverage detected