torc-master
|
An object that holds more complete path information for routing and tracing. More...
#include <RouteTreeNode.hpp>
Public Member Functions | |
RouteTreeNode () | |
Null Constructor. More... | |
RouteTreeNode (Tilewire inSource, Tilewire inSink, boost::int32_t inCost, RouteTreeNode *inParent) | |
Public Constructor. More... | |
RouteTreeNode (Arc inArc, boost::int32_t inCost, RouteTreeNode *inParent) | |
Public Constructor. More... | |
~RouteTreeNode () | |
Destructor. More... | |
void | addChildren (const std::vector< RouteTreeNode * > &newChildren) |
Add children to the node. More... | |
void | makeParent (const Tilewire &inSource, const Tilewire &inSink) |
Allocate a new node and make it the parent of this node. More... | |
boost::uint16_t | getNumChildren () |
Get the number of children. More... | |
RouteTreeNode * | getChild (unsigned int index) |
Get a child by index, returns 0 for invalid index. More... | |
void | normalizeDepth () |
Normalize depth of nodes. More... | |
const Arc & | getArc () const |
Get the associated Arc. More... | |
const Tilewire & | getSourceTilewire () const |
Get the source Tilewire. More... | |
const Tilewire & | getSinkTilewire () const |
Get the sink Tilewire. More... | |
const boost::int32_t | getCost () const |
Get the heuristic node cost. More... | |
void | setCost (boost::int32_t inHeuristicCost) |
Set the heuristic node cost. More... | |
const boost::int32_t | getPathCost () const |
Get the path cost. More... | |
void | setPathCost (boost::int32_t inPathCost) |
Set the path cost. More... | |
const boost::int32_t | getDepth () const |
Get the node depth. More... | |
void | setDepth (boost::int32_t inDepth) |
Set the node depth. More... | |
RouteNode * | getParent () const |
Get the node's parent. More... | |
RouteNode * | getTop () |
Return the top node by tracing parent pointers. More... | |
bool | operator< (const RouteNode *rhs) const |
Protected Types | |
typedef architecture::Tilewire | Tilewire |
Imported type name. More... | |
typedef architecture::Arc | Arc |
Imported type name. More... | |
Protected Member Functions | |
void | adjustDepth (int adjustment) |
Recursively adjust node depths. More... | |
Protected Attributes | |
RouteTreeNode * | mOnlyChild |
Pointer to a child node that is the only one. More... | |
std::vector< RouteTreeNode * > * | mChildren |
Pointer to a vector of child nodes that is dynamically allocated. More... | |
architecture::Arc | mArc |
Arc that this node describes. More... | |
boost::int32_t | mCost |
Cost associated with this arc. More... | |
boost::int32_t | mPathCost |
Path cost for this arc. More... | |
boost::int32_t | mDepth |
Depth of node from the source. More... | |
RouteNode * | mParent |
Pointer to parent node. More... | |
Private Types | |
typedef std::vector < RouteTreeNode * >::iterator | RouteTreeNodeIterator |
An object that holds more complete path information for routing and tracing.
A RouteTreeNode contains children pointers to allow tracing of arcs through a device to recover complete nets from the device usage information.
Definition at line 37 of file RouteTreeNode.hpp.
|
protectedinherited |
Imported type name.
Definition at line 46 of file RouteNode.hpp.
|
private |
Definition at line 39 of file RouteTreeNode.hpp.
|
protectedinherited |
Imported type name.
Definition at line 44 of file RouteNode.hpp.
|
inline |
Null Constructor.
Definition at line 50 of file RouteTreeNode.hpp.
|
inline |
Public Constructor.
Definition at line 52 of file RouteTreeNode.hpp.
|
inline |
Public Constructor.
Definition at line 63 of file RouteTreeNode.hpp.
|
inline |
Destructor.
Definition at line 72 of file RouteTreeNode.hpp.
|
inline |
Add children to the node.
Definition at line 85 of file RouteTreeNode.hpp.
|
inlineprotected |
Recursively adjust node depths.
Definition at line 143 of file RouteTreeNode.hpp.
|
inlineinherited |
Get the associated Arc.
Definition at line 80 of file RouteNode.hpp.
|
inline |
Get a child by index, returns 0 for invalid index.
Definition at line 129 of file RouteTreeNode.hpp.
|
inlineinherited |
Get the heuristic node cost.
Definition at line 86 of file RouteNode.hpp.
|
inlineinherited |
Get the node depth.
Definition at line 94 of file RouteNode.hpp.
|
inline |
Get the number of children.
Definition at line 123 of file RouteTreeNode.hpp.
|
inlineinherited |
Get the node's parent.
Definition at line 98 of file RouteNode.hpp.
|
inlineinherited |
Get the path cost.
Definition at line 90 of file RouteNode.hpp.
|
inlineinherited |
Get the sink Tilewire.
Definition at line 84 of file RouteNode.hpp.
|
inlineinherited |
Get the source Tilewire.
Definition at line 82 of file RouteNode.hpp.
|
inlineinherited |
Return the top node by tracing parent pointers.
Definition at line 100 of file RouteNode.hpp.
|
inline |
Allocate a new node and make it the parent of this node.
Definition at line 115 of file RouteTreeNode.hpp.
|
inline |
Normalize depth of nodes.
Definition at line 135 of file RouteTreeNode.hpp.
|
inlineinherited |
Definition at line 105 of file RouteNode.hpp.
|
inlineinherited |
Set the heuristic node cost.
Definition at line 88 of file RouteNode.hpp.
|
inlineinherited |
Set the node depth.
Definition at line 96 of file RouteNode.hpp.
|
inlineinherited |
Set the path cost.
Definition at line 92 of file RouteNode.hpp.
|
protectedinherited |
Arc that this node describes.
Definition at line 50 of file RouteNode.hpp.
|
protected |
Pointer to a vector of child nodes that is dynamically allocated.
Definition at line 45 of file RouteTreeNode.hpp.
|
protectedinherited |
Cost associated with this arc.
Definition at line 52 of file RouteNode.hpp.
|
protectedinherited |
Depth of node from the source.
Definition at line 56 of file RouteNode.hpp.
|
protected |
Pointer to a child node that is the only one.
Definition at line 43 of file RouteTreeNode.hpp.
|
protectedinherited |
Pointer to parent node.
Definition at line 58 of file RouteNode.hpp.
|
protectedinherited |
Path cost for this arc.
Definition at line 54 of file RouteNode.hpp.