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

Method hasOutputNodesConnectedInternal

Engine/Node.cpp:4926–4949  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

4924}
4925
4926void
4927Node::hasOutputNodesConnectedInternal(std::list<OutputEffectInstance* >* writers,
4928 std::list<const Node*>* markedNodes) const
4929{
4930 if (std::find(markedNodes->begin(), markedNodes->end(), this) != markedNodes->end()) {
4931 return;
4932 }
4933
4934 markedNodes->push_back(this);
4935
4936 OutputEffectInstance* thisWriter = dynamic_cast<OutputEffectInstance*>( _imp->effect.get() );
4937
4938 if ( thisWriter && thisWriter->isOutput() && !dynamic_cast<GroupOutput*>(thisWriter) ) {
4939 writers->push_back(thisWriter);
4940 } else {
4941 NodesList outputs;
4942 getOutputsWithGroupRedirection(outputs);
4943
4944 for (NodesList::iterator it = outputs.begin(); it != outputs.end(); ++it) {
4945 assert(*it);
4946 (*it)->hasOutputNodesConnectedInternal(writers, markedNodes);
4947 }
4948 }
4949}
4950
4951void
4952Node::hasOutputNodesConnected(std::list<OutputEffectInstance* >* writers) const

Callers

nothing calls this directly

Calls 5

beginMethod · 0.45
endMethod · 0.45
push_backMethod · 0.45
getMethod · 0.45
isOutputMethod · 0.45

Tested by

no test coverage detected