Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
DELBDDNODEASSOC(3)		 BDD FUNCTIONS		    DELBDDNODEASSOC(3)

NAME
       delbddnodeassoc - deletes a bdd node in a variable association.

SYNOPSIS
       #include	"bdd101.h"
       int delbddnodeassoc( BddSystem, BddAssoc, Variable )
	 bddsystem  *BddSystem;
	 bddassoc   *BddAssoc;
	 bddvar	     Variable;

PARAMETERS
       BddSystem	   The bdd system.

       BddAssoc		   The variable	association.

       Variable		   The variable	number.

DESCRIPTION
       delbddnodeassoc	deletes	the bdd	node associated	to the variable	number
       Variable, in the	variable  association  BddAssoc,  in  the  bdd	system
       BddSystem.  If a	null pointer is	given, the default bdd system is used.
       The  number  of external	reference of the associated bdd	node is	incre-
       mented.

RETURN VALUE
       delbddnodeassoc returns 1 if the	variable is found, 0 otherwise.

ERRORS
       "variable xxx out of range, error !"
	      The Variable parameter must be less  or  equal  to  the  BddSys-
	      tem->NUMBER_VAR field.

EXAMPLE
       #include	"bdd101.h"
	  bddsystem  *BddSystem;
	  bddcircuit *BddCircuit;
	  bddnode    *BddNode;
	  bddnode    *BddSubst;
	  bddnode    *BddVariable;
	  bddassoc   *Assoc;
	  chain_list *Expr;
	  bddvar	 Variable;
	  BddSystem  = createbddsystem(	100, 1000, 100,	50000 );
	  BddCircuit = createbddcircuit( "hello_world",	10, 10,	BddSystem );
	  Expr = createablbinexpr( ABL_AND,
				   createablatom( "i0" ),
				   createablatom( "i1" ) );
	  BddNode = addbddcircuitabl( BddCircuit, Expr );
	  freeablexpr( Expr );
	  Expr = createablbinexpr( ABL_OR,
				   createablatom( "i2" ),
				   createablatom( "i3" ) );
	  BddSubst = addbddcircuitabl( BddCircuit, Expr	);
	  freeablexpr( Expr );
	  BddVariable =	searchbddcircuitin( (bddcircuit	*)0, "i0" );
	  Variable = getbddvarbyindex( (bddsystem *)0, BddVariable->INDEX );
	  Assoc	= addbddassoc( (bddsystem *)0 );
	  addbddnodeassoc( (bddsystem *)0, Assoc, Variable, BddSubst );
	  BddNode = substbddnodeassoc( (bddsystem *)0, BddSubst, Assoc );
	  delbddnodeassoc( (bddsystem *)0, Assoc, Variable );
	  Expr = convertbddcircuitabl( BddCircuit, BddNode );
	  /* displays ((i3 or i2) and i1) */
	  viewablexpr( Expr, ABL_VIEW_VHDL );
	  freeablexpr( Expr );
	  destroybddassoc( (bddsystem *)0 );
	  destroybddsystem( (bddsystem *)0 );
	  destroybddcircuit( (bddcircuit *)0 );

SEE ALSO
       bdd(1)

ASIM/LIP6			October	1, 1997		    DELBDDNODEASSOC(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=delbddnodeassoc&sektion=3&manpath=FreeBSD+Ports+15.0>

home | help