torc-master
|
An object that holds more complete path information for routing and tracing. More...
#include <TraceNode.hpp>
Public Types | |
typedef std::vector< TraceNode * > | TraceNodePtrVector |
Vector of TraceNode pointers. More... | |
typedef std::list< TraceNode * > | TraceNodePtrList |
List of TraceNode pointers. More... | |
typedef std::pair< Tilewire, TraceNode * > | TilewireTraceNodePtrPair |
Pair consisting of a Tilewire and TraceNode pointer. More... | |
typedef TraceNodePtrVector::iterator | TraceNodePtrVectorIterator |
Iterator for vector of TraceNode pointers. More... | |
typedef std::pair< Arc, TraceNode * > | ArcTraceNodePtrPair |
Pair consiting of an Arc and a TraceNode pointer. More... | |
typedef std::vector < TilewireTraceNodePtrPair > | TilewireTraceNodePtrPairVector |
Vector of pairs of source Tilewires and TraceNode pointers. More... | |
typedef std::vector < ArcTraceNodePtrPair > | ArcTraceNodePtrPairVector |
Vector of paires of Arcs and TraceNode pointers. More... | |
Public Member Functions | |
TraceNode () | |
Null Constructor. More... | |
TraceNode (Tilewire inTilewire) | |
Public Constructor. More... | |
~TraceNode () | |
Destructor. More... | |
Tilewire | getTilewire () |
Get the Tilewire associated with this node. More... | |
boost::int32_t | getDepth () const |
Get the depth of this node from the furthest node with no parent. More... | |
void | setDepth (boost::int32_t inDepth) |
Set the depth of this node. More... | |
void | addChildren (const TraceNodePtrVector &newChildren) |
Add children to the node. More... | |
void | addChild (TraceNode *newChild) |
brief Add child to the node. More... | |
void | addParent (TraceNode *newParent) |
Add parent to the node. More... | |
boost::uint32_t | getNumChildren () |
Get the number of children. More... | |
boost::uint32_t | getNumParents () |
Get the number of parents. More... | |
TraceNode * | getChild (boost::uint32_t index) |
Get a child by index, returns 0 for invalid index. More... | |
TraceNode * | getParent (boost::uint32_t index) |
Get a parent by index, returns 0 for invalid index. More... | |
TraceNode * | removeChild (boost::uint32_t index) |
Remove a child by index, returns 0 for invalid index. More... | |
TraceNode * | removeParent (boost::uint32_t index) |
Remove a parent by index, returns 0 for invalid index. More... | |
Static Public Attributes | |
static boost::int32_t | sLiveNodes = 0 |
Static allocation and deallocation count. More... | |
Protected Attributes | |
Tilewire | mTilewire |
TraceNodePtrVector | mChildren |
TilewireVector representing this node. More... | |
TraceNodePtrVector | mParents |
Vector of parent pointers. More... | |
boost::int32_t | mDepth |
Depth from furthest parent with no parent. More... | |
Private Types | |
typedef architecture::Tilewire | Tilewire |
Imported type name. More... | |
typedef architecture::Arc | Arc |
Imported type name. More... | |
typedef architecture::TilewireVector | TilewireVector |
Imported type name. More... | |
Friends | |
class | Trace |
The TraceNode allows access to protected functions from Trace objects. More... | |
An object that holds more complete path information for routing and tracing.
A TraceNode contains children pointers to allow tracing of arcs through a device to recover complete nets from the device usage information.
Definition at line 44 of file TraceNode.hpp.
|
private |
Imported type name.
Definition at line 52 of file TraceNode.hpp.
typedef std::pair<Arc, TraceNode*> torc::router::TraceNode::ArcTraceNodePtrPair |
Pair consiting of an Arc and a TraceNode pointer.
Definition at line 65 of file TraceNode.hpp.
typedef std::vector<ArcTraceNodePtrPair> torc::router::TraceNode::ArcTraceNodePtrPairVector |
Vector of paires of Arcs and TraceNode pointers.
Definition at line 69 of file TraceNode.hpp.
|
private |
Imported type name.
Definition at line 50 of file TraceNode.hpp.
typedef std::pair<Tilewire, TraceNode*> torc::router::TraceNode::TilewireTraceNodePtrPair |
Pair consisting of a Tilewire and TraceNode pointer.
Definition at line 61 of file TraceNode.hpp.
typedef std::vector<TilewireTraceNodePtrPair> torc::router::TraceNode::TilewireTraceNodePtrPairVector |
Vector of pairs of source Tilewires and TraceNode pointers.
Definition at line 67 of file TraceNode.hpp.
|
private |
Imported type name.
Definition at line 54 of file TraceNode.hpp.
typedef std::list<TraceNode*> torc::router::TraceNode::TraceNodePtrList |
List of TraceNode pointers.
Definition at line 59 of file TraceNode.hpp.
typedef std::vector<TraceNode*> torc::router::TraceNode::TraceNodePtrVector |
Vector of TraceNode pointers.
Definition at line 57 of file TraceNode.hpp.
typedef TraceNodePtrVector::iterator torc::router::TraceNode::TraceNodePtrVectorIterator |
Iterator for vector of TraceNode pointers.
Definition at line 63 of file TraceNode.hpp.
|
inline |
Null Constructor.
Definition at line 90 of file TraceNode.hpp.
|
inline |
Public Constructor.
Definition at line 94 of file TraceNode.hpp.
|
inline |
Destructor.
Recursively deletes all connected nodes.
Definition at line 99 of file TraceNode.hpp.
|
inline |
brief Add child to the node.
Definition at line 145 of file TraceNode.hpp.
|
inline |
Add children to the node.
Definition at line 137 of file TraceNode.hpp.
|
inline |
Add parent to the node.
Definition at line 150 of file TraceNode.hpp.
|
inline |
Get a child by index, returns 0 for invalid index.
Definition at line 162 of file TraceNode.hpp.
|
inline |
Get the depth of this node from the furthest node with no parent.
Definition at line 133 of file TraceNode.hpp.
|
inline |
Get the number of children.
Definition at line 154 of file TraceNode.hpp.
|
inline |
Get the number of parents.
Definition at line 158 of file TraceNode.hpp.
|
inline |
Get a parent by index, returns 0 for invalid index.
Definition at line 167 of file TraceNode.hpp.
|
inline |
Get the Tilewire associated with this node.
Definition at line 130 of file TraceNode.hpp.
|
inline |
Remove a child by index, returns 0 for invalid index.
Definition at line 172 of file TraceNode.hpp.
|
inline |
Remove a parent by index, returns 0 for invalid index.
Definition at line 179 of file TraceNode.hpp.
|
inline |
Set the depth of this node.
Definition at line 135 of file TraceNode.hpp.
|
friend |
The TraceNode allows access to protected functions from Trace objects.
Definition at line 47 of file TraceNode.hpp.
|
protected |
TilewireVector representing this node.
Vector of child pointers.
Definition at line 77 of file TraceNode.hpp.
|
protected |
Depth from furthest parent with no parent.
Definition at line 82 of file TraceNode.hpp.
|
protected |
Vector of parent pointers.
Definition at line 80 of file TraceNode.hpp.
|
protected |
Definition at line 73 of file TraceNode.hpp.
|
static |
Static allocation and deallocation count.
Definition at line 85 of file TraceNode.hpp.