1 /* ###--------------------------------------------------------------------### */ 2 /* # # */ 3 /* # file : velo.h # */ 4 /* | date : Jun 27 1997 | */ 5 /* | version : 0.00 | */ 6 /* | author : Denis Hommais | */ 7 /* | | */ 8 /* # contents : structure definitions used in VEL library # */ 9 /* # # */ 10 /* ###--------------------------------------------------------------------### */ 11 12 #ifndef _VEL_H_ 13 #define _VEL_H_ 14 15 #define VEL_SIG 296651 /* ptype identifier for velosig */ 16 #define VEL_CON 296217 /* ptype identifier for velocon */ 17 #define VEL_CHAIN 296121 /* ptype identifier for chain */ 18 19 typedef struct Velosig { 20 struct Velosig * NEXT; 21 char * NAME; 22 long LEFT; 23 long RIGHT; 24 char TYPE; 25 struct chain * VSIG; 26 struct Velosig * SUPER; 27 struct chain * NAMECHAIN; 28 struct ptype * USER; 29 } velosig; 30 31 typedef struct Velocon { 32 struct Velocon * NEXT; 33 char * NAME; 34 long LEFT; 35 long RIGHT; 36 struct chain * VSIG; 37 struct chain * ROOT; 38 struct ptype * USER; 39 } velocon; 40 41 /* prototype of functions that come from velo.c */ 42 extern velosig *addvelosig (ptype_list *, char *, long, long, char); 43 extern velocon *addvelocon (ptype_list *, char *, long, long); 44 extern velosig *dupvelosig (ptype_list *, velosig *); 45 extern velosig *getvelosig (ptype_list *, char *, long, long); 46 extern int delvelocon (ptype_list *, velocon *); 47 48 /* prototype of functions that come from vel_util.c */ 49 extern void buildvelo (lofig_list *); 50 extern void vectorize_velo (lofig_list *); 51 extern char *mkvhdlname (char *); 52 extern void printvelosiglist (velosig *); 53 extern void printveloconlist (velocon *); 54 extern void makevelofig(lofig_list *); 55 extern velosig *getvelosigbyname(ptype_list *, char *); 56 #endif 57