AMF-Placer  2.0
An Open-Source Timing-driven Analytical Mixed-size FPGA Placer
PlacementTimingInfo::TimingGraph< nodeType >::TimingEdge Class Reference

TimingEdge records a directed interconnection relationship between two TimingNode. It is a point-to-point information instead of HyperEdge. More...

#include <PlacementTimingInfo.h>

Collaboration diagram for PlacementTimingInfo::TimingGraph< nodeType >::TimingEdge:

Public Member Functions

 TimingEdge (TimingNode *srcNode, TimingNode *sinkNode, DesignInfo::DesignPin *srcPin, DesignInfo::DesignPin *sinkPin, DesignInfo::DesignNet *net=nullptr, int id=-1)
 Construct a new Timing Edge object. More...
 
 ~TimingEdge ()
 
int getId ()
 
void setDelay (float _delay)
 
float getDelay ()
 
TimingNodegetSink ()
 
TimingNodegetSource ()
 
DesignInfo::DesignPingetSinkPin ()
 
DesignInfo::DesignPingetSourcePin ()
 

Private Attributes

TimingNodesrcNode = nullptr
 
TimingNodesinkNode = nullptr
 
DesignInfo::DesignPinsrcPin = nullptr
 
DesignInfo::DesignPinsinkPin = nullptr
 
DesignInfo::DesignNetnet = nullptr
 
int id
 
float delay = 0
 

Detailed Description

template<typename nodeType>
class PlacementTimingInfo::TimingGraph< nodeType >::TimingEdge

TimingEdge records a directed interconnection relationship between two TimingNode. It is a point-to-point information instead of HyperEdge.

Definition at line 459 of file PlacementTimingInfo.h.

Constructor & Destructor Documentation

◆ TimingEdge()

template<typename nodeType >
PlacementTimingInfo::TimingGraph< nodeType >::TimingEdge::TimingEdge ( TimingNode srcNode,
TimingNode sinkNode,
DesignInfo::DesignPin srcPin,
DesignInfo::DesignPin sinkPin,
DesignInfo::DesignNet net = nullptr,
int  id = -1 
)
inline

Construct a new Timing Edge object.

Parameters
srcNodeinward TimingNode
sinkNodeoutward TimingNode
srcPininward DesignPin, each edge should be binded to pins for later evaluation
sinkPinoutward DesignPin, each edge should be binded to pins for later evaluation
netthe related DesignNet
idthe unique id for this TimingEdge

Definition at line 472 of file PlacementTimingInfo.h.

◆ ~TimingEdge()

template<typename nodeType >
PlacementTimingInfo::TimingGraph< nodeType >::TimingEdge::~TimingEdge ( )
inline

Definition at line 480 of file PlacementTimingInfo.h.

Member Function Documentation

◆ getDelay()

template<typename nodeType >
float PlacementTimingInfo::TimingGraph< nodeType >::TimingEdge::getDelay ( )
inline

Definition at line 492 of file PlacementTimingInfo.h.

◆ getId()

template<typename nodeType >
int PlacementTimingInfo::TimingGraph< nodeType >::TimingEdge::getId ( )
inline

Definition at line 482 of file PlacementTimingInfo.h.

◆ getSink()

template<typename nodeType >
TimingNode* PlacementTimingInfo::TimingGraph< nodeType >::TimingEdge::getSink ( )
inline

Definition at line 497 of file PlacementTimingInfo.h.

◆ getSinkPin()

template<typename nodeType >
DesignInfo::DesignPin* PlacementTimingInfo::TimingGraph< nodeType >::TimingEdge::getSinkPin ( )
inline

Definition at line 507 of file PlacementTimingInfo.h.

◆ getSource()

template<typename nodeType >
TimingNode* PlacementTimingInfo::TimingGraph< nodeType >::TimingEdge::getSource ( )
inline

Definition at line 502 of file PlacementTimingInfo.h.

◆ getSourcePin()

template<typename nodeType >
DesignInfo::DesignPin* PlacementTimingInfo::TimingGraph< nodeType >::TimingEdge::getSourcePin ( )
inline

Definition at line 512 of file PlacementTimingInfo.h.

◆ setDelay()

template<typename nodeType >
void PlacementTimingInfo::TimingGraph< nodeType >::TimingEdge::setDelay ( float  _delay)
inline

Definition at line 487 of file PlacementTimingInfo.h.

Member Data Documentation

◆ delay

template<typename nodeType >
float PlacementTimingInfo::TimingGraph< nodeType >::TimingEdge::delay = 0
private

◆ id

template<typename nodeType >
int PlacementTimingInfo::TimingGraph< nodeType >::TimingEdge::id
private

◆ net

template<typename nodeType >
DesignInfo::DesignNet* PlacementTimingInfo::TimingGraph< nodeType >::TimingEdge::net = nullptr
private

Definition at line 522 of file PlacementTimingInfo.h.

◆ sinkNode

template<typename nodeType >
TimingNode* PlacementTimingInfo::TimingGraph< nodeType >::TimingEdge::sinkNode = nullptr
private

◆ sinkPin

◆ srcNode

template<typename nodeType >
TimingNode* PlacementTimingInfo::TimingGraph< nodeType >::TimingEdge::srcNode = nullptr
private

◆ srcPin


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