Ejemplo n.º 1
0
t_fct			*fct_init(void)
{
	t_fct	*list;

	if (DEBUG)
		ft_putendl("fct init");
	list = new_fct(ft_printf_putchar, 'c');
	list = add_fct(list, ft_printf_putptr, 'p');
	list = add_fct(list, ft_printf_puthhoct, 'k');
	list = add_fct(list, ft_printf_puthoct, 'l');
	list = add_fct(list, ft_printf_putoct, 'o');
	list = add_fct(list, ft_printf_putloct, 'O');
	list = add_fct(list, ft_printf_putlloct, 'P');
	list = add_fct(list, ft_printf_putlchar, 'C');
	list = add_fct(list, ft_printf_putlstr, 'S');
	list = fct_initb(list);
	return (list);
}
Ejemplo n.º 2
0
factor *colorFactor (int nv, cvertex * vl)
{   /* - calculate color weight (two int n,d) - 08/01/90  */
    cgraph    * cg;
    int         n0,i,j;
    factor *f=(factor *)malloc(sizeof(factor));
    cgraph model;

    fct_init(f);

    SIZE= sizeof(model) + (nv)*((char*)&model.vl[1]-(char*)&model.vl[0]);
    MAXGLEN=nv+2;

    cg = (cgraph *) malloc(SIZE);

    initcg(cg);
    cg->gl=nv;
    cg->next=NULL;
    cg->en=0;
    for(i=0; i<nv; i++)
    {   cg->vl[i]=vl[i];
        for(j=0; j<3; j++) if(vl[i].e[j]>cg->en) cg->en=vl[i].e[j];
    }

#  if (CDEBLEV > DEBLEV)
    wrcg(cg);
#  endif
    remtv(cg);
#  if (CDEBLEV > DEBLEV)
    wrcg(cg);
#  endif
    while(cg)
    {   cgraph  * pgl;
        while (cg->gl && cg->sgn)
            if (findv(qg,cg,&n0)) remg(n0,&(cg));
            else if (findv(g3,cg,&n0)) exp3g(n0,&(cg));
            else cerror(251,"CWTarG: Invalid type of vertex.");

        pgl = cg;
        if(pgl->sgn)  add_fct(f,pgl->sgn,pgl->pow2,pgl->powN,pgl->powNN_1);
        cg = cg->next;
        free(pgl);
    }
    return f;
}
Ejemplo n.º 3
0
static t_fct	*fct_initb(t_fct *list)
{
	list = add_fct(list, ft_printf_putstr, 's');
	list = add_fct(list, ft_printf_puthhnbr, 'h');
	list = add_fct(list, ft_printf_putnbr, 'i');
	list = add_fct(list, ft_printf_putnbr, 'd');
	list = add_fct(list, ft_printf_putlnbr, 'D');
	list = add_fct(list, ft_printf_putllnbr, 'F');
	list = add_fct(list, ft_printf_putuhhnbr, 'a');
	list = add_fct(list, ft_printf_puthnbr, 'r');
	list = add_fct(list, ft_printf_putunbr, 'u');
	list = add_fct(list, ft_printf_putlunbr, 'U');
	list = add_fct(list, ft_printf_putllunbr, 'I');
	list = add_fct(list, ft_printf_puthhhexa, 'v');
	list = add_fct(list, ft_printf_puthexa, 'x');
	list = add_fct(list, ft_printf_puthexa, 'X');
	list = add_fct(list, ft_printf_putlhexa, 'H');
	list = add_fct(list, ft_printf_putllhexa, 'J');
	return (list);
}