FUNBINOD(3)

NAME

beh_addbinode , beh_delbinode , beh_frebinode

SYNOPSYS

struct binode *beh_addbinode (list, cond, value)
struct binode *list;
struct node *cond;
struct node *value;
struct binode *beh_delbinode (list, pnt, mode)
struct binode *list;
struct binode *pnt;
char mode;
void beh_frebinode (list)
struct binode *list;

PARAMETERS

list
    pointer of a list of binode structures

cond
    bdd representing the expression of the connection condition of the driver

value
    bdd representing the expression of the value emitted by the driver

pnt pointer of the binode structure to be removed from the list

mode
    recursive mode (Y or N)

DESCRIPTION

A binode is a data structure representing a one-bit deconnectable VHDL driver.

beh_addbinode() adds a binode structure at the top of a list of binode structures. cond is a pointer on the bdd representing the condition that makes the driver active. value is the bdd of the expression of the value produced by the driver. The function returns the pointer of the new list. No checks are made by this function.

beh_delbinode() deletes a binode structure (pointed by pnt) from a list of binode 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.

beh_frebinode() deletes a list of binode structures (pointed by list). No action is made if list is an empty list (NULL pointer). No checks are made by this function. If mode is set to 'Y' all objects (bdd) pointed by the binode will also be deleted. If mode is set to 'N' and there is any object (bdd) pointed by the structure a warning message is printed on the standard error output.

EXAMPLE

#include <beh108.h>
struct binode *list;
list = beh_addbinode (list, NULL, NULL);

SEE ALSO

beh(3), binode(3)