19 #ifndef TORC_ROUTER_ROUTENODE_HPP
20 #define TORC_ROUTER_ROUTENODE_HPP
24 #include <boost/cstdint.hpp>
68 boost::int32_t inPathCost, boost::int32_t inDepth,
RouteNode* inParent)
75 RouteNode(
Arc inArc, boost::int32_t inCost, boost::int32_t inPathCost,
88 void setCost(boost::int32_t inHeuristicCost) {
mCost = inHeuristicCost; }
106 return (mCost < rhs->
mCost);
136 #endif // TORC_ROUTER_ROUTENODE_HPP
const boost::int32_t getPathCost() const
Get the path cost.
architecture::Arc Arc
Imported type name.
Encapsulation of an arc between two tilewires.
architecture::Tilewire Tilewire
Imported type name.
std::vector< RouteNode * > RouteNodePtrVector
Vector of RouteNode pointers.
RouteNode * getParent() const
Get the node's parent.
bool operator()(const RouteNode *a, const RouteNode *b) const
Header for the Arc class.
const boost::int32_t getDepth() const
Get the node depth.
bool operator<(const RouteNode *rhs) const
Binary predicate for comparing RouteNode pointers based on cost.
void setDepth(boost::int32_t inDepth)
Set the node depth.
RouteNode(Tilewire inSource, Tilewire inSink, boost::int32_t inCost, boost::int32_t inPathCost, boost::int32_t inDepth, RouteNode *inParent)
Complete Tilewire based constructor.
const Tilewire & getSourceTilewire(void) const
Returns the source tilewire.
const Tilewire & getSinkTilewire() const
Get the sink Tilewire.
const Tilewire & getSinkTilewire(void) const
Returns the sink tilewire.
void setCost(boost::int32_t inHeuristicCost)
Set the heuristic node cost.
Encapsulation of a device tile and wire pair.
boost::int32_t mPathCost
Path cost for this arc.
const Tilewire & getSourceTilewire() const
Get the source Tilewire.
RouteNode(Arc inArc, boost::int32_t inDepth, RouteNode *inParent)
Public Constructor.
const Arc & getArc() const
Get the associated Arc.
boost::int32_t mDepth
Depth of node from the source.
architecture::Arc mArc
Arc that this node describes.
RouteNode * getTop()
Return the top node by tracing parent pointers.
boost::int32_t mCost
Cost associated with this arc.
An object that holds an arc and path information for routing.
RouteNode(Tilewire inSource, Tilewire inSink, boost::int32_t inDepth, RouteNode *inParent)
Arc only constructor.
void setPathCost(boost::int32_t inPathCost)
Set the path cost.
RouteNode()
Null Constructor.
RouteNode * mParent
Pointer to parent node.
RouteNode(Arc inArc, boost::int32_t inCost, boost::int32_t inPathCost, boost::int32_t inDepth, RouteNode *inParent)
Public Constructor.
Header for the EncapsulatedInteger template.
const boost::int32_t getCost() const
Get the heuristic node cost.