routing_area.h

来自「简单迷宫布线器源码」· C头文件 代码 · 共 38 行

H
38
字号
#ifndef __ROUTING_AREA_H__
#define __ROUTING_AREA_H__

class CRoutingArea
{
public:
    CRoutingArea(int iXSize,int iYSize);
    ~CRoutingArea();
    void    initialize(int iNetAmount,int iMaxPortAmount);
    
    void    Print();
    bool    isFinished();
    void    ModifyPriority();
    void    SingleStepRouting(bool bBlackGrid);
private:
    int     isRouted(int iNet);
    bool    isnotBottleNeck(int iXPos, int iYPos);
    int     getCell(int iXPos,int iYPos, int *pArea=NULL);
    void    setCell(int iXPos,int iYPos, int iNet, int *pArea=NULL);
    bool    Occupy(int iNet, int iPosX, int iPosY);
    void    Expand(int iNet, int iPortX, int iPortY);
    int     isPortCell(int iXPos,int iYPos);
    bool    isHighPriority(int iSourceNet, int iNextNet);
private:
    int     m_iXSize, m_iYSize;
    int     m_iNetAmount;
    int     *m_iNetPriority;
    int     *m_iPortAmount;
    int     *m_pRoutingCells;


    int     *pTmpRoutingCells;
    int     *iXQueue;
    int     *iYQueue;
};

#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?