|
NAMEaddlosig - create a logical signal See the file man1/alc_origin.1. SYNOPSIS#include "mlo.h" losig_list ∗addlosig(ptfig, index, namechain, type) lofig_list ∗ptfig; long index; chain_list ∗namechain; char type; PARAMETERSDESCRIPTIONaddlosig creates a new signal, and adds it to the list of
signals pointed to by ptfig->LOSIG. The new signal is added in
front of the list, and becomes itself the list head.
The namechain argument is a list of names, given in a chain_list. See chain(3) for details. RETURN VALUEaddlosig returns a pointer to the newly created signal. ERRORS"∗∗∗ mbk error ∗∗∗ addlosig impossible signal index already exist in figure ptfig->NAME" The index is already used in an other signal, and
since it's the signal identifier, it can't be.
EXAMPLE
#include "mlo.h"
losig_list ∗merge_and_create(pt, s0, s1) /∗ merge two signal in a third ∗/
lofig_list ∗pt;
losig_list ∗s0, ∗s1;
{
chain_list ∗c;
losig_list ∗s;
long max_index;
/∗ merge names ∗/
for (c = s0->NAMECHAIN; c; c = c->NEXT)
s1->NAMECHAIN = addchain(s1->NAMECHAIN, c);
/∗ find maximum index ∗/
for (s = pt->LOSIG; s; s = s->NEXT)
if (max_index < s->INDEX)
max_index = s->INDEX;
s = addlosig(pt, ++max_index, s1->NAMECHAIN,
s0->TYPE == EXTERNAL || s1->TYPE == EXTERNAL ?
EXTERNAL : INTERNAL);
dellosig(pt, s0);
dellosig(pt, s1);
return s;
}
SEE ALSOmbk(1), lofig(3), losig(3), getlosig(3), dellosig(3). See the file man1/alc_bug_report.1.
|