setbddrefext(3)

setbddrefext3

Increments the external reference, and decrements the internal reference of a bdd node.

Synopsys

#include "bdd101.h"
bddnode ∗setbddrefext( BddNode )
  bddnode ∗BddNode;

Parameters

BddNode

The bdd node.

Overview

setbddrefext increments the number of external reference of the bdd node BddNode and decrements its number of internal reference.

Return value

setbddrefext returns the BddNode pointer.

Errors

"negative reference, index xxx error !"

The BddNode must have a postive number of internal reference.

Examples

#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 );
   incbddrefint( BddNode );
   setbddrefext( BddNode );
   /* displays Node VAR: 0  INDEX: 2  MARK: 0  REF_EXT: 1  REF_INT: 0 */
   viewbddnode( (bddsystem ∗)0, BddNode );
   /* displays (not i0) */
   viewablexpr( Expr, ABL_VIEW_VHDL );
   freeablexpr( Expr );
   destroybddsystem( (bddsystem ∗)0 );
   destroybddcircuit( (bddcircuit ∗)0 );

Releases

4 releases since Debian 7 (Wheezy); the text changed 1 time.

  1. 7–8
  2. 9–10

From alliance 5.1.1-3 in Debian 10 (Buster). Parsed by carta from the page's man source.