class DataGraphTraverser

This object supervises the traversal of the data graph and the moving of data from one DataNode to its children. The data graph is used to manage data from input devices, etc. See the overview of the data graph in dataNode.h.

Inheritance diagram

Inheritance diagram of DataGraphTraverser

__init__(param0: DataGraphTraverser) → None
__init__(current_thread: Thread) → None
collectLeftovers() → None

Pick up any nodes that didn’t get completely traversed. These must be nodes that have multiple parents, with at least one parent completely outside of the data graph.

getCurrentThread() → Thread

Returns the currently-executing thread object, as passed to the DataGraphTraverser constructor.

Return type


traverse(node: PandaNode) → None

Starts the traversal of the data graph at the indicated root node.

traverseBelow(node: PandaNode, output: DataNodeTransmit) → None

Continues the traversal to all the children of the indicated node, passing in the given data, without actually calling transmit_data() on the given node.