FUNBEFIG(3)

NAME

beh_addbefig , beh_delbefig , beh_rmvbefig , beh_frebefig

SYNOPSYS

struct befig *beh_addbefig (list, name)
struct befig *list;
char *name;
struct befig *beh_delbefig (list, pnt, mode)
struct befig *list;
struct befig *pnt;
char mode;
struct befig *beh_rmvbefig (list, name, mode)
struct befig *list;
char *name;
char mode;
void beh_frebefig (list)
struct befig *list;

PARAMETERS

list
    pointer of a list of befig structures

name
    name of the behavioural figure to be added to or removed from the list pnt pointer of the befig structure to be removed from the list

pnt pointer of the befig to be removed form the list

mode
    recursive mode (Y or N)

DESCRIPTION

A befig is a data structure representing a complete behavioural description of a circuit.

beh_addbefig() adds a befig structure at the top of a list of befig structures. The name registred in the befig structure is produced by namealloc(). The function returns the pointer of the new list. No checks are made by this function.

beh_delbefig() deletes a befig structure (pointed by pnt) from a list of befig structures. The function returns the pointer of the new list. No action is made if the structure pointed by pnt doesn't belong to the list. If mode is set to 'Y' all objects (berin, bepor, bemsg, beout, bereg, bebus, bebux, beaux, binode, biabl, abl) pointed by the befig will also be deleted. If mode is set to 'N' and there is any object pointed by the structure a warning message is printed on the standard error output.

beh_rmvbefig() deletes a befig structure (named name) from a list of befig structures. name is supposed to be produced by namealloc(). The function returns the pointer of the new list. No action is made if no structure named name has been found in the list. If mode is set to 'Y' all objects (berin, bepor, bemsg, beout, bereg, bebus, bebux, beaux, binode, biabl, abl) pointed by the befig will also be deleted. If mode is set to 'N' and there is any object pointed by the structure a warning message is printed on the standard error output.

beh_frebefig() deletes a list of befig structures (pointed by list) and all objects pointed by any of befig structures of the list. No action is made if list is an empty list (NULL pointer). No checks are made by this function.

EXAMPLE

#include <beh108.h>
struct befig *list;
char *name;
name = namealloc ("adder");
list = beh_addbefig (list,"amd2901");
list = beh_rmvbefig (list,name);

SEE ALSO

beh(3), befig(3), namealloc(3)