#include <RouteNet.hpp>
Public Types | |
typedef ArcVector::const_iterator | ArcConstIterator |
typedef ArcVector::iterator | ArcIterator |
typedef TilewireVector::const_iterator | TilewireConstIterator |
typedef TilewireVector::iterator | TilewireIterator |
typedef RouteNodePtrVector::const_iterator | RouteNodePtrConstIterator |
typedef RouteNodePtrVector::iterator | RouteNodePtrIterator |
Public Member Functions | |
RouteNet (string &inName) | |
Name only constructor. | |
RouteNet (string &inName, const TilewireVector &inSources, const TilewireVector &inSinks) | |
Populated constructor. | |
bool | containsSource (Tilewire inTilewire) const |
Determines whether the given Tilewire is a source of this net. | |
bool | containsSink (Tilewire inTilewire) const |
Determines whether the given Tilewire is a sink of this net. | |
bool | containsArc (const Arc &inArc) const |
Determines whether the net contains the given arc. | |
void | addSource (Tilewire inTilewire) |
Adds the given Tilewire as a source for this net. | |
void | addSink (Tilewire inTilewire) |
Adds the given Tilewire as a sink for this net. | |
bool | removeSource (Tilewire inTilewire) |
Removes the given Tilewire from the sources of this net. | |
bool | removeSink (Tilewire inTilewire) |
Removes the given instance pin from the sinks of this net. | |
void | addArc (const Arc &inArc) |
Adds the given arc to this net. | |
bool | removeArc (const Arc &inArc) |
Removes the given arc from this net. | |
void | unroute (void) |
Unroute the net. | |
bool | hasAnySources (void) const |
Returns true if the net has any sources. | |
bool | hasOneSource (void) const |
Returns true if the net has exactly one source. | |
bool | hasMultipleSources (void) const |
Returns true if the net has more than one source. | |
size_t | getSourceCount (void) const |
Returns the number of sources on the net. | |
bool | hasAnySinks (void) const |
Returns true if the net has any sinks. | |
bool | hasOneSink (void) const |
Returns true if the net has exactly one sink. | |
bool | hasMultipleSinks (void) const |
Returns true if the next has more than one sink. | |
size_t | getSinkCount (void) const |
Returns the number of sinks on the net. | |
bool | hasAnyArcs (void) const |
Returns true if the net has any arcs. | |
size_t | getArcCount (void) const |
Returns the number of arcs on the net. | |
bool | isRouted (void) const |
Returns true if the net has any arcs. | |
bool | isUnrouted (void) const |
Returns true if the net has no arcs. | |
TilewireConstIterator | sourcesBegin (void) const |
Returns the begin constant iterator for source Tilewires. | |
TilewireConstIterator | sourcesEnd (void) const |
Returns the end constant iterator for source Tilewires. | |
TilewireIterator | sourcesBegin (void) |
Returns the begin non-constant iterator for source Tilewires. | |
TilewireIterator | sourcesEnd (void) |
Returns the end non-constant iterator for source Tilewires. | |
TilewireConstIterator | sinksBegin (void) const |
Returns the begin constant iterator for sink Tilewires. | |
TilewireConstIterator | sinksEnd (void) const |
Returns the end constant iterator for sink Tilewires. | |
TilewireIterator | sinksBegin (void) |
Returns the begin non-constant iterator for sink Tilewires. | |
TilewireIterator | sinksEnd (void) |
Returns the end non-constant iterator for sink Tilewires. | |
ArcConstIterator | arcsBegin (void) const |
Returns the begin constant iterator for arcs. | |
ArcConstIterator | arcsEnd (void) const |
Returns the end constant iterator for arcs. | |
ArcIterator | arcsBegin (void) |
Returns the begin non-constant iterator for arcs. | |
ArcIterator | arcsEnd (void) |
Returns the end non-constant iterator for arcs. | |
const string & | getName () const |
Returns the name of the net. | |
RouteNodePtrVector & | routeNodes () |
Returns a reference to the RouteNodePtrVector. | |
Public Attributes | |
boost::unordered_map < boost::uint32_t, boost::any > | mProperties |
Net annotation structure. | |
Protected Attributes | |
string | mName |
Name of the net. | |
TilewireVector | mSources |
Vector of net source Tilewires. | |
TilewireVector | mSinks |
Vector of net sink Tilewires. | |
ArcVector | mArcs |
Vector of arcs representing net connectivity. | |
RouteNodePtrVector | mRouteNodes |
Vector of RouteNodes representing net connectivity. | |
Private Types | |
typedef std::string | string |
Imported type names. | |
typedef architecture::Tilewire | Tilewire |
typedef architecture::TilewireVector | TilewireVector |
typedef architecture::Arc | Arc |
typedef architecture::ArcVector | ArcVector |
The RouteNet class contains architecture specific sources and sinks.
Definition at line 40 of file RouteNet.hpp.
typedef std::string torc::router::RouteNet::string [private] |
torc::router::RouteNet::RouteNet | ( | string & | inName | ) | [inline] |
torc::router::RouteNet::RouteNet | ( | string & | inName, | |
const TilewireVector & | inSources, | |||
const TilewireVector & | inSinks | |||
) | [inline] |
Populated constructor.
Copies the contents of the input vectors.
Definition at line 78 of file RouteNet.hpp.
bool torc::router::RouteNet::containsSource | ( | Tilewire | inTilewire | ) | const [inline] |
Determines whether the given Tilewire is a source of this net.
Definition at line 83 of file RouteNet.hpp.
bool torc::router::RouteNet::containsSink | ( | Tilewire | inTilewire | ) | const [inline] |
Determines whether the given Tilewire is a sink of this net.
Definition at line 88 of file RouteNet.hpp.
bool torc::router::RouteNet::containsArc | ( | const Arc & | inArc | ) | const [inline] |
Determines whether the net contains the given arc.
Definition at line 93 of file RouteNet.hpp.
void torc::router::RouteNet::addSource | ( | Tilewire | inTilewire | ) | [inline] |
Adds the given Tilewire as a source for this net.
Duplicate sources are not currently discarded.
Definition at line 98 of file RouteNet.hpp.
void torc::router::RouteNet::addSink | ( | Tilewire | inTilewire | ) | [inline] |
Adds the given Tilewire as a sink for this net.
Duplicate sinks are not currently discarded.
Definition at line 103 of file RouteNet.hpp.
bool torc::router::RouteNet::removeSource | ( | Tilewire | inTilewire | ) | [inline] |
Removes the given Tilewire from the sources of this net.
Definition at line 109 of file RouteNet.hpp.
bool torc::router::RouteNet::removeSink | ( | Tilewire | inTilewire | ) | [inline] |
Removes the given instance pin from the sinks of this net.
Definition at line 119 of file RouteNet.hpp.
void torc::router::RouteNet::addArc | ( | const Arc & | inArc | ) | [inline] |
Adds the given arc to this net.
Duplicate arcs are not currently discarded.
Definition at line 128 of file RouteNet.hpp.
bool torc::router::RouteNet::removeArc | ( | const Arc & | inArc | ) | [inline] |
Removes the given arc from this net.
Definition at line 133 of file RouteNet.hpp.
void torc::router::RouteNet::unroute | ( | void | ) | [inline] |
Unroute the net.
The net is unrouted by clearing its arc list.
Definition at line 144 of file RouteNet.hpp.
bool torc::router::RouteNet::hasAnySources | ( | void | ) | const [inline] |
bool torc::router::RouteNet::hasOneSource | ( | void | ) | const [inline] |
bool torc::router::RouteNet::hasMultipleSources | ( | void | ) | const [inline] |
size_t torc::router::RouteNet::getSourceCount | ( | void | ) | const [inline] |
bool torc::router::RouteNet::hasAnySinks | ( | void | ) | const [inline] |
bool torc::router::RouteNet::hasOneSink | ( | void | ) | const [inline] |
bool torc::router::RouteNet::hasMultipleSinks | ( | void | ) | const [inline] |
size_t torc::router::RouteNet::getSinkCount | ( | void | ) | const [inline] |
bool torc::router::RouteNet::hasAnyArcs | ( | void | ) | const [inline] |
size_t torc::router::RouteNet::getArcCount | ( | void | ) | const [inline] |
bool torc::router::RouteNet::isRouted | ( | void | ) | const [inline] |
bool torc::router::RouteNet::isUnrouted | ( | void | ) | const [inline] |
TilewireConstIterator torc::router::RouteNet::sourcesBegin | ( | void | ) | const [inline] |
Returns the begin constant iterator for source Tilewires.
Definition at line 174 of file RouteNet.hpp.
TilewireConstIterator torc::router::RouteNet::sourcesEnd | ( | void | ) | const [inline] |
Returns the end constant iterator for source Tilewires.
Definition at line 176 of file RouteNet.hpp.
TilewireIterator torc::router::RouteNet::sourcesBegin | ( | void | ) | [inline] |
Returns the begin non-constant iterator for source Tilewires.
Definition at line 178 of file RouteNet.hpp.
TilewireIterator torc::router::RouteNet::sourcesEnd | ( | void | ) | [inline] |
Returns the end non-constant iterator for source Tilewires.
Definition at line 180 of file RouteNet.hpp.
TilewireConstIterator torc::router::RouteNet::sinksBegin | ( | void | ) | const [inline] |
Returns the begin constant iterator for sink Tilewires.
Definition at line 182 of file RouteNet.hpp.
TilewireConstIterator torc::router::RouteNet::sinksEnd | ( | void | ) | const [inline] |
TilewireIterator torc::router::RouteNet::sinksBegin | ( | void | ) | [inline] |
Returns the begin non-constant iterator for sink Tilewires.
Definition at line 186 of file RouteNet.hpp.
TilewireIterator torc::router::RouteNet::sinksEnd | ( | void | ) | [inline] |
Returns the end non-constant iterator for sink Tilewires.
Definition at line 188 of file RouteNet.hpp.
ArcConstIterator torc::router::RouteNet::arcsBegin | ( | void | ) | const [inline] |
ArcConstIterator torc::router::RouteNet::arcsEnd | ( | void | ) | const [inline] |
ArcIterator torc::router::RouteNet::arcsBegin | ( | void | ) | [inline] |
ArcIterator torc::router::RouteNet::arcsEnd | ( | void | ) | [inline] |
const string& torc::router::RouteNet::getName | ( | void | ) | const [inline] |
RouteNodePtrVector& torc::router::RouteNet::routeNodes | ( | ) | [inline] |
string torc::router::RouteNet::mName [protected] |
TilewireVector torc::router::RouteNet::mSources [protected] |
TilewireVector torc::router::RouteNet::mSinks [protected] |
ArcVector torc::router::RouteNet::mArcs [protected] |
RouteNodePtrVector torc::router::RouteNet::mRouteNodes [protected] |
boost::unordered_map<boost::uint32_t, boost::any> torc::router::RouteNet::mProperties |