Provided by: alliance_5.1.1-1.1build1_amd64 

NAME
unsetbddrefext - increments the internal reference, and decrements the external reference of a bdd node.
SYNOPSYS
#include "bdd101.h"
bddnode ∗unsetbddrefext( BddNode )
bddnode ∗BddNode;
PARAMETERS
BddNode The bdd node.
DESCRIPTION
unsetbddrefext increments the number of internal reference of the bdd node BddNode and decrements its
number of external reference.
RETURN VALUE
unsetbddrefext returns the BddNode pointer.
ERRORS
"negative reference, index xxx error !"
The BddNode must have a postive number of external reference.
EXAMPLE
#include "bdd101.h"
bddsystem ∗BddSystem;
bddcircuit ∗BddCircuit;
bddnode ∗BddNode;
chain_list ∗Expr;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
BddNode = addbddcircuitin( (bddcircuit ∗)0, "i0", 0, BDD_IN_MODE_FIRST );
BddNode = addbddnode( (bddsystem ∗)0, BddNode->INDEX, BddNode->LOW, BddNode->HIGH );
Expr = convertbddcircuitabl( (bddcircuit ∗)0, BddNode );
incbddrefext( BddNode );
unsetbddrefext( BddNode );
/* displays Node VAR: 0 INDEX: 2 MARK: 0 REF_EXT: 0 REF_INT: 1 */
viewbddnode( (bddsystem ∗)0, BddNode );
/* displays (not i0) */
viewablexpr( Expr, ABL_VIEW_VHDL );
freeablexpr( Expr );
destroybddsystem( (bddsystem ∗)0 );
destroybddcircuit( (bddcircuit ∗)0 );
SEE ALSO
bdd(1)
ASIM/LIP6 October 1, 1997 UNSETBDDREFEXT(3)