#include <link.h>

Collaboration diagram for Link:

List of all members.

Public Member Functions

 Link (CString name, CId id, Node *src, Node *dst, uint slotTableSize, TTime slotTablePeriod)
 ~Link ()
CId getId () const
CString getName () const
Node * getSrcNode () const
Node * getDstNode () const
SlotTablesIter slotTableSeqBegin ()
SlotTablesCIter slotTableSeqBegin () const
SlotTablesIter slotTableSeqEnd ()
SlotTablesCIter slotTableSeqEnd () const
SlotTableSeq * getSlotTableSeq () const
SlotReservations getUsedSlotsInSchedule ()
void setUsedSlots (SlotReservations &s, TTime startTime, TTime endTime)
void reserveSlots (NoCSchedulingEntity *e, SlotReservations &s, ulong seqNr)
void releaseSlots (NoCSchedulingEntity *e, ulong seqNr)
ostream & print (ostream &out) const

Public Attributes

vector< uint > preferredSlots

Private Attributes

CString name
CId id
Node * srcNode
Node * dstNode
SlotTableSeq * slotTableSeq

Detailed Description

Link A physical connection between two nodes


Constructor & Destructor Documentation

Link::Link ( CString  name,
CId  id,
Node *  src,
Node *  dst,
uint  slotTableSize,
TTime  slotTablePeriod 
)

Link Constructor.

References preferredSlots, and slotTableSeq.

Link::~Link (  ) 

Link Destructor.

References slotTableSeq.


Member Function Documentation

SlotTableSeq* Link::getSlotTableSeq (  )  const [inline]

References slotTableSeq.

SlotReservations Link::getUsedSlotsInSchedule (  ) 

getUsedSlotsInSchedule () The function returns a table of slot reservations for the link. A slot is considered to be reserved if it is at some point in time used for the problem that is scheduled on the link.

References SlotTableSeq::getSlotTableSize(), SlotTable::getUsedSlotsOfSchedule(), SlotTableSeq::seqBegin(), SlotTableSeq::seqEnd(), and slotTableSeq.

Referenced by SDFconvertToHTML::convertInterconnectMapping().

Here is the call graph for this function:

void Link::releaseSlots ( NoCSchedulingEntity *  e,
ulong  seqNr 
) [inline]
void Link::reserveSlots ( NoCSchedulingEntity *  e,
SlotReservations &  s,
ulong  seqNr 
) [inline]

References SlotTableSeq::reserveSlots(), and slotTableSeq.

Referenced by NoCScheduler::reserveResources().

Here is the call graph for this function:

void Link::setUsedSlots ( SlotReservations &  s,
TTime  startTime,
TTime  endTime 
)

setUsedSlots () The function marks the slots specified in s as occupied between the given start and end time by another schedule.

References SlotTableSeq::setUsedSlots(), and slotTableSeq.

Referenced by NoCScheduleProblem::constrainOtherSchedulingProblem(), and InterconnectGraph::setUsage().

Here is the call graph for this function:

SlotTablesCIter Link::slotTableSeqBegin (  )  const [inline]

References SlotTableSeq::seqBegin(), and slotTableSeq.

Here is the call graph for this function:

SlotTablesCIter Link::slotTableSeqEnd (  )  const [inline]

References SlotTableSeq::seqEnd(), and slotTableSeq.

Here is the call graph for this function:


Member Data Documentation

Node* Link::dstNode [private]

Referenced by getDstNode().

CId Link::id [private]
CString Link::name [private]
Node* Link::srcNode [private]

Referenced by getSrcNode().


The documentation for this class was generated from the following files: