blob: e3abc26b9e062d3776242330dd7aedfa368313fb [file] [log] [blame]
#include "port.h"
typedef struct chanbox {
int from ;
int to ;
int foffset ;
int toffset ;
struct chanbox *next ;
} CHANBOX, *CHANBOXPTR ;
typedef struct altbox {
int *pinList ;
int distance ;
CHANBOXPTR chanList ;
} ALTBOX , *ALTBOXPTR ;
typedef struct nrbox {
ALTBOXPTR *alternate ;
int numRoutes ;
int currentRoute ;
int newRoute ;
} NRBOX , *NRBOXPTR ;
typedef struct gnode {
int node ;
int ilength ;
int length ;
int cost ;
int capacity ;
int inactive ;
int einactive ;
struct gnode *next ;
} GNODE , *GNODEPTR ;
typedef struct nnode {
int temp ;
int distance ;
short int from ;
short int from2 ;
} NNODE , *NNODEPTR ;
typedef struct list2 {
int node ;
struct list2 *next ;
} LIST2 , *LIST2PTR ;
typedef struct pnode {
int eptr ;
NNODEPTR nodeList ;
LIST2PTR equiv ;
} PNODE , *PNODEPTR ;
typedef struct quad {
int PorE ;
int node1 ;
int node2 ;
int distance ;
struct quad *next ;
struct quad *prev ;
} QUAD, *QUADPTR ;
typedef struct path {
short int *nodeset ;
int p ;
int q ;
int excluded ;
int exlist[5] ;
} PATH, *PATHPTR ;
short int *tempArray ;
GNODEPTR *gnodeArray ;
PNODEPTR pnodeArray ;
int numnodes ;
int numpins ;
int maxpnode ;
char **pnameArray ;
char **nnameArray ;
int *pinOffset ;
QUADPTR pinlist ;
int **pathList ;
short int **netSegArray ;
short int *segList ;
int segPtr ;
short int *sourceList ;
int sourcePtr ;
short int *targetList ;
int targetPtr ;
int Mpaths ;
short int *delSourceList ;
short int *addTargetList ;
int pathLength ;
short int **savePaths ;
int largestNet ;
NRBOXPTR netRoutes ;
short int **gtrace ;
PATHPTR pathArray ;
int MAXPATHS ;
int EXTRASOURCES;