1 /* -*- tab-width: 4 -*- 2 * 3 * Electric(tm) VLSI Design System 4 * 5 * File: tecfpga.h 6 * FPGA technology header file 7 * Written by: Steven M. Rubin, Static Free Software 8 * 9 * Copyright (c) 2000 Static Free Software. 10 * 11 * Electric(tm) is free software; you can redistribute it and/or modify 12 * it under the terms of the GNU General Public License as published by 13 * the Free Software Foundation; either version 2 of the License, or 14 * (at your option) any later version. 15 * 16 * Electric(tm) is distributed in the hope that it will be useful, 17 * but WITHOUT ANY WARRANTY; without even the implied warranty of 18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 19 * GNU General Public License for more details. 20 * 21 * You should have received a copy of the GNU General Public License 22 * along with Electric(tm); see the file COPYING. If not, write to 23 * the Free Software Foundation, Inc., 59 Temple Place, Suite 330, 24 * Boston, Mass 02111-1307, USA. 25 * 26 * Static Free Software 27 * 4119 Alpine Road 28 * Portola Valley, California 94028 29 * info@staticfreesoft.com 30 */ 31 32 #if defined(__cplusplus) && !defined(ALLCPLUSPLUS) 33 extern "C" 34 { 35 #endif 36 37 /* prototypes for technology routines */ 38 BOOLEAN fpga_initprocess(TECHNOLOGY*, INTBIG); 39 void fpga_termprocess(void); 40 void fpga_setmode(INTBIG, CHAR*[]); 41 INTBIG fpga_nodepolys(NODEINST*, INTBIG*, WINDOWPART*); 42 void fpga_shapenodepoly(NODEINST*, INTBIG, POLYGON*); 43 INTBIG fpga_allnodepolys(NODEINST*, POLYLIST*, WINDOWPART*, BOOLEAN); 44 INTBIG fpga_nodeEpolys(NODEINST*, INTBIG*, WINDOWPART*); 45 void fpga_shapeEnodepoly(NODEINST*, INTBIG, POLYGON*); 46 INTBIG fpga_allnodeEpolys(NODEINST *ni, POLYLIST *plist, WINDOWPART *win, BOOLEAN onlyreasonable); 47 void fpga_shapeportpoly(NODEINST*, PORTPROTO*, POLYGON*, XARRAY, BOOLEAN); 48 INTBIG fpga_arcpolys(ARCINST*, WINDOWPART*); 49 void fpga_shapearcpoly(ARCINST*, INTBIG, POLYGON*); 50 INTBIG fpga_allarcpolys(ARCINST*, POLYLIST*, WINDOWPART*); 51 52 #if defined(__cplusplus) && !defined(ALLCPLUSPLUS) 53 }; 54 #endif 55