1 /****************************************************************************/
3 /* Chaine de CAO & VLSI Alliance */
5 /* Produit : TTV Version 1 */
6 /* Fichier : ttv_alloc.h */
8 /* (c) copyright 1995-1998 Laboratoire LIP6 equipe ASIM */
9 /* Tous droits reserves */
10 /* Support : e-mail alliance-support@asim.lip6.fr */
12 /* Auteur(s) : Karim DIOURY */
14 /****************************************************************************/
16 extern ttvfig_list
*TTV_LIST_TTVFIG
;
17 extern chain_list
*TTV_HEAD_TTVFIG
;
18 extern ttvsbloc_list
*TTV_FREE_SBLOC
;
19 extern ttvlbloc_list
*TTV_FREE_LBLOC
;
20 extern ttvcritic_list
*TTV_FREE_CRITIC
;
21 extern ttvfind_list
*TTV_FREE_FIND
;
22 extern ttvpath_list
*TTV_FREE_PATH
;
23 extern long TTV_NUMB_SIG
;
24 extern long TTV_MAX_SIG
;
25 extern long TTV_NUMB_LINE
;
26 extern long TTV_MAX_LINE
;
28 extern ttvfig_list
* ttv_allocttvfig
__P(( char*,
32 extern void ttv_allocinfottvfig
__P(( ttvfig_list
* ));
33 extern void ttv_lockttvfig
__P(( ttvfig_list
* ));
34 extern void ttv_unlockttvfig
__P(( ttvfig_list
* ));
35 extern int ttv_freettvfig
__P(( ttvfig_list
* ));
36 extern int ttv_freettvfiglist
__P(( chain_list
* ));
37 extern int ttv_freettvfigtree
__P(( ttvfig_list
* ));
38 extern void ttv_freeall
__P(( ));
39 extern int ttv_freeallttvfig
__P(( ttvfig_list
* ));
40 extern ttvsbloc_list
* ttv_allocsbloc
__P(( ttvfig_list
*,
43 int ttv_freesbloclist(ttvsbloc_list
*pthead
);
44 extern int ttv_getsbloclist
__P(( ttvfig_list
* ));
45 extern long ttv_cleansbloclist
__P(( ttvsbloc_list
*, long ));
46 extern ttvlbloc_list
* ttv_alloclbloc
__P(( ttvfig_list
*,
50 extern int ttv_freelbloclist
__P(( ttvlbloc_list
* ));
51 extern int ttv_getlbloclist
__P(( ttvfig_list
*, long ));
52 extern ttvpath_list
* ttv_allocpath
__P(( ttvpath_list
*,
76 extern int ttv_freepathlist
__P(( ttvpath_list
* ));
78 ttvcritic_list
*ttv_alloccritic(ttvcritic_list
*headcritic
,ttvfig_list
*ttvfigh
,ttvfig_list
*ttvfig
,ttvevent_list
*node
,long type
,long data
,long delay
,long slope
,long newdelay
,long newslope
, char nodeflags
, char *linemodelname
, ttvline_list
*line
);
81 extern int ttv_freecriticlist
__P(( ttvcritic_list
* ));
82 extern ttvfind_list
* ttv_allocfind
__P(( ttvevent_list
* ));
83 extern int ttv_freefindlist
__P(( ttvfind_list
* ));
84 extern ttvsig_list
** ttv_allocreflist
__P(( chain_list
*, long ));
85 extern int ttv_freereflist
__P(( ttvfig_list
*,
89 extern chain_list
* ttv_chainreflist
__P(( ttvfig_list
*,
93 extern void ttv_tagttvfigfree
__P(( ttvfig_list
*,
98 extern void ttv_cleantagttvfig
__P(( long ));
99 extern void ttv_addinfreelist
__P(( ttvfig_list
*, long ));
100 extern int ttv_delinfreelist
__P(( ptype_list
*, ttvfig_list
* ));
101 extern int ttv_freememoryifmax
__P(( ttvfig_list
*, long ));
102 extern int ttv_freememoryiffull
__P(( ttvfig_list
*, long ));
103 extern int ttv_freettvfigmemory
__P(( ttvfig_list
*, long ));
104 extern void ttv_allocdualline
__P(( ttvfig_list
*, long ));
105 extern void ttv_freedualline
__P(( ttvfig_list
*, long ));
107 extern ttvdelay_list
*ttv_alloclinedelay
__P(( ttvline_list
*));
108 extern ttvdelay_list
*ttv_allocdelayline
__P(( ttvfig_list
*,int,int,int));
109 extern void ttv_freettvfigdelay
__P(( ttvfig_list
*));
110 extern void ttv_alloclineindex
__P(( ttvfig_list
*, long ));
111 extern ttvsig_capas
*ttv_allocsigcapas
__P(( float cu
, float cumin
, float cumax
,
112 float cd
, float cdmin
, float cdmax
));
114 void ttv_freenodeuserdata(ptype_list
*ptype
);
116 ttvfind_stb_stuff
*ttv_allocfindstb();
117 void ttv_freefindstblist(ttvfind_stb_stuff
*head
);
118 void ttv_initfindstb(ttvfind_stb_stuff
*sfs
);
120 ttvpath_stb_stuff
*ttv_allocpath_stb_stuff();
121 void ttv_freepathstblist(ttvpath_stb_stuff
*head
);