#include <dataGraphTraverser.h>
Public Member Functions | |
DataGraphTraverser () | |
~DataGraphTraverser () | |
void | traverse (PandaNode *node) |
Starts the traversal of the data graph at the indicated root node. | |
void | traverse_below (PandaNode *node, const DataNodeTransmit &output) |
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. | |
void | collect_leftovers () |
Pick up any nodes that didn't get completely traversed. | |
Private Types | |
typedef pvector< DataNodeTransmit > | DataVector |
typedef pmap< DataNode *, CollectedData > | MultipassData |
Private Member Functions | |
void | r_transmit (DataNode *data_node, const DataNodeTransmit inputs[]) |
Part of the recursive implementation of traverse(). | |
Private Attributes | |
MultipassData | _multipass_data |
The data graph is used to manage data from input devices, etc. See the overview of the data graph in dataNode.h.
Definition at line 49 of file dataGraphTraverser.h.
|
Definition at line 61 of file dataGraphTraverser.h. |
|
Definition at line 71 of file dataGraphTraverser.h. |
|
Definition at line 60 of file dataGraphTraverser.cxx. |
|
Definition at line 72 of file dataGraphTraverser.cxx. |
|
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. Definition at line 176 of file dataGraphTraverser.cxx. |
|
Part of the recursive implementation of traverse(). This transmits the given data into the indicated DataNode, and then sends the output data to each of the node's children. Definition at line 205 of file dataGraphTraverser.cxx. Referenced by traverse(). |
|
Starts the traversal of the data graph at the indicated root node.
Definition at line 86 of file dataGraphTraverser.cxx. References _multipass_data, DCAST, PandaNode::get_children(), DataNode::get_class_type(), PandaNode::get_num_parents(), TypedObject::is_of_type(), and r_transmit(). |
|
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.
Definition at line 115 of file dataGraphTraverser.cxx. |
|
Definition at line 72 of file dataGraphTraverser.h. Referenced by traverse(). |