HAL
hal::NetLayoutJunctionEntries Class Reference

#include <net_layout_junction.h>

Collaboration diagram for hal::NetLayoutJunctionEntries:
Collaboration graph

Public Member Functions

u32 id (NetLayoutDirection dir, int ilane) const
 
QString toString () const
 
void dumpToFile (const QPoint &pnt) const
 
bool isTrivial () const
 

Static Public Member Functions

static QString gridPointName (const QPoint &p)
 
static void resetFile ()
 

Public Attributes

QList< u32mEntries [4]
 

Detailed Description

List of nets entering the junction sorted by entry direction

Definition at line 260 of file net_layout_junction.h.

Member Function Documentation

◆ dumpToFile()

void hal::NetLayoutJunctionEntries::dumpToFile ( const QPoint pnt) const

Dump junction entries to file to debug junction routing

Parameters
pntNet grid point

Definition at line 921 of file net_layout_junction.cpp.

References QIODevice::Append, hal::ff, QTextStream::flush(), QString::fromStdString(), id(), hal::ProjectManager::instance(), hal::NetLayoutDirection::isMax(), mEntries, QIODevice::WriteOnly, QPoint::x(), and QPoint::y().

◆ gridPointName()

static QString hal::NetLayoutJunctionEntries::gridPointName ( const QPoint p)
static

◆ id()

u32 hal::NetLayoutJunctionEntries::id ( NetLayoutDirection  dir,
int  ilane 
) const
inline

Get net ID from junction entry list / array

Parameters
dirDirection (Left, Right, Up, Down)
ilaneLane index
Returns
Net ID

Definition at line 274 of file net_layout_junction.h.

References QList::at(), hal::NetLayoutDirection::index(), and mEntries.

Referenced by dumpToFile(), and hal::NetLayoutJunction::NetLayoutJunction().

◆ isTrivial()

bool hal::NetLayoutJunctionEntries::isTrivial ( ) const

Returns whether a junction is trivial and can be omitted

Returns
true if only one direction and inputs identical to outputs, false otherwise

Definition at line 912 of file net_layout_junction.cpp.

References hal::NetLayoutDirection::Down, hal::NetLayoutDirection::Left, mEntries, hal::NetLayoutDirection::Right, and hal::NetLayoutDirection::Up.

◆ resetFile()

void hal::NetLayoutJunctionEntries::resetFile ( )
static

Reset dump junction file, initialize file with timestamp

Definition at line 936 of file net_layout_junction.cpp.

References QDateTime::currentDateTime(), hal::ff, QString::fromStdString(), hal::ProjectManager::instance(), toString(), and QIODevice::WriteOnly.

Referenced by hal::GraphLayouter::layout().

◆ toString()

QString hal::NetLayoutJunctionEntries::toString ( ) const

String output for debugging purpose

Definition at line 943 of file net_layout_junction.cpp.

References QString::arg(), hal::NetLayoutDirection::isMax(), and mEntries.

Referenced by resetFile().

Member Data Documentation

◆ mEntries

QList<u32> hal::NetLayoutJunctionEntries::mEntries[4]

Entries sorted by direction (Left, Right, Up, Down)

Definition at line 266 of file net_layout_junction.h.

Referenced by dumpToFile(), id(), isTrivial(), hal::NetLayoutJunction::NetLayoutJunction(), and toString().


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