#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
NodegetSrcNode () const
NodegetDstNode () const
SlotTablesIter slotTableSeqBegin ()
SlotTablesCIter slotTableSeqBegin () const
SlotTablesIter slotTableSeqEnd ()
SlotTablesCIter slotTableSeqEnd () const
SlotTableSeqgetSlotTableSeq () 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< uintpreferredSlots

Private Attributes

CString name
CId id
NodesrcNode
NodedstNode
SlotTableSeqslotTableSeq

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: