.\" $Id: sortlosig.3,v 1.1 2002/03/08 13:51:04 fred Exp $ .\" @(#)sortlosig.2 2.11 91/08/22 ; Labo masi cao-vlsi; Author : Frederic Petrot .if t \{\ .XS \n% .ti 0.2i sortlosig .XE .XS2 \n% .ti 0.2i sortlosig .XE2 \} .TH SORTLOSIG 3 "October 1, 1997" "ASIM/LIP6" "MBK LOGICAL FUNCTIONS" .SH NAME sortlosig \- sort the logical signals of a figure by name .so buster/alliance/alc_origin.1.en.gz .SH SYNOPSYS .nf .if n \{\ .ft B \} .if t \{\ .ft CR \} #include "mlo.h" void sortlosig(signals) losig_list \(**\(**signals; .ft R .fi .SH PARAMETERS .TP 20 \fI\(**\(**signals\fP Pointer to the head of the list of signals that is to be sorted .SH DESCRIPTION \fBsortlosig\fP sorts the list of signals pointed to by \fIsignals\fP. The signals are sorted by names, but since names are not the signals identifier, the \fBgetsigname\fP(3) routine is called to retrieve a signal name. .br The standart \fBqsort\fP(3) function library is called for sorting. Therefore, a table the number of signal wide is created, requiring a lot of memory with big circuits. Also, even if \fBqsort\fP(3) runs in n log n time, \fBgetsigname\fP(3) is called twice, and the natural comparison function once, and this is quite time consuming with big circuits. It is recommended to use this function only if needed. .SH EXAMPLE .ta 3n 6n 9n 12n 15n 18n 21n .nf .if n \{\ .ft B \} .if t \{\ .ft CR \} #include "mlo.h" void savesorted(figname) char \(**figname; { lofig_list \(**figure = getlosig(figname, 'A'); sortlocon(&figure->LOCON); sortlosig(&figure->LOSIG); savelofig(figure); } .ft R .fi .SH SEE ALSO .BR mbk (1), .BR losig (3), .BR addlosig (3), .BR dellosig (3), .BR getsigname (3), .BR sortlocon (3), .BR qsort (3). .so buster/alliance/alc_bug_report.1.en.gz