Route Class Reference
#include <route.h>

Public Member Functions | |
| Route () | |
| ~Route () | |
| LinksIter | linksBegin () |
| LinksIter | linksEnd () |
| LinksCIter | linksBegin () const |
| LinksCIter | linksEnd () const |
| void | clear () |
| uint | length () const |
| void | insertLink (LinksIter pos, Link *l) |
| void | appendLink (Link *l) |
| void | removeLink (Link *l) |
| bool | containsNode (const Node *n) const |
| void | setCost (double c) |
| double | getCost () const |
| bool | operator< (const Route &r) |
| bool | operator== (const Route &r) const |
| ostream & | print (ostream &out) const |
Private Attributes | |
| Links | links |
| double | cost |
Detailed Description
Route A route is a sequence of links
Constructor & Destructor Documentation
| Route::Route | ( | ) | [inline] |
| Route::~Route | ( | ) | [inline] |
Member Function Documentation
| void Route::appendLink | ( | Link * | l | ) |
appendLink () Insert a link at the end of the route.
References links.
Referenced by NoCScheduler::assignSchedulingEntities(), and NoCScheduler::findRoutes().
| void Route::clear | ( | ) | [inline] |
References links.
| bool Route::containsNode | ( | const Node * | n | ) | const |
containsNode () The function returns true if the route goes through the node n. Otherwise it returns false.
References Link::getDstNode(), Link::getSrcNode(), linksBegin(), and linksEnd().
Referenced by NoCScheduler::findRoutes().

| double Route::getCost | ( | ) | const [inline] |
References cost.
Referenced by operator<().
insertLink () Insert a link after the given iterator position into the route.
References links.
| uint Route::length | ( | ) | const [inline] |
References links.
Referenced by NoCScheduler::findRoutes(), NoCScheduler::findScheduleEntityForMessage(), ClassicNoCScheduler::findScheduleEntityForMessageUsingClassic(), KnowledgeNoCScheduler::findScheduleEntityForMessageUsingKnowledge(), RandomNoCScheduler::findScheduleEntityForMessageUsingRandom(), NoCScheduler::findSlotsOnRoute(), NoCScheduler::maximalDuration(), operator==(), and NoCScheduler::severityConflict().
| LinksIter Route::linksBegin | ( | ) | [inline] |
References links.
Referenced by containsNode(), SetOfNoCScheduleProblems::createNetworkMappingNode(), NoCScheduler::findFreeSlotsForStream(), NoCScheduler::findFreeSlotsOnFirstLinkRoute(), NoCScheduler::findFreeSlotsOnRoute(), NoCScheduler::findSlotsAllocatedForStream(), NoCScheduler::findSlotsOnRoute(), NoCScheduler::lowerPreferenceLevelSlotsOnRoute(), operator==(), print(), NoCScheduler::raisePreferenceLevelSlotsOnRoute(), NoCScheduler::releaseResources(), NoCScheduler::reserveResources(), KnowledgeNoCScheduler::setRequirementsMessage(), NoCScheduler::severityConflict(), NoCScheduler::sortRoutesOnCost(), ClassicNoCScheduler::sortRoutesOnCostUsingClassic(), and KnowledgeNoCScheduler::sortRoutesOnMessageRequirements().
| LinksCIter Route::linksBegin | ( | ) | const [inline] |
References links.
| LinksCIter Route::linksEnd | ( | ) | const [inline] |
References links.
| LinksIter Route::linksEnd | ( | ) | [inline] |
References links.
Referenced by containsNode(), SetOfNoCScheduleProblems::createNetworkMappingNode(), NoCScheduler::findFreeSlotsForStream(), NoCScheduler::findFreeSlotsOnRoute(), NoCScheduler::findSlotsOnRoute(), NoCScheduler::lowerPreferenceLevelSlotsOnRoute(), operator==(), print(), NoCScheduler::raisePreferenceLevelSlotsOnRoute(), NoCScheduler::releaseResources(), NoCScheduler::reserveResources(), KnowledgeNoCScheduler::setRequirementsMessage(), NoCScheduler::severityConflict(), NoCScheduler::sortRoutesOnCost(), ClassicNoCScheduler::sortRoutesOnCostUsingClassic(), and KnowledgeNoCScheduler::sortRoutesOnMessageRequirements().
| bool Route::operator< | ( | const Route & | r | ) | [inline] |
| bool Route::operator== | ( | const Route & | r | ) | const |
operator== Two routes are equal if all links are equal.
References length(), linksBegin(), and linksEnd().

| ostream & Route::print | ( | ostream & | out | ) | const |
print () Output a route to the given stream.
References Link::getDstNode(), Node::getId(), linksBegin(), and linksEnd().
Referenced by NoCSchedulingEntity::print().

| void Route::setCost | ( | double | c | ) | [inline] |
Member Data Documentation
double Route::cost [private] |
Links Route::links [private] |
Referenced by appendLink(), clear(), insertLink(), length(), linksBegin(), linksEnd(), and removeLink().
The documentation for this class was generated from the following files:


