Provided by: alliance_5.0-20120515-6_amd64 bug

NAME

       applybddnodeite - computes the IF-THEN-ELSE logical operation.

SYNOPSYS

       #include "bdd101.h"
       bddnode ∗applybddnodeite( BddSystem, BddIf, BddThen, BddElse )
         bddnode   ∗BddSystem;
         bddnode   ∗BddIf;
         bddnode   ∗BddThen;
         bddnode   ∗BddElse;

PARAMETERS

       BddSystem           The bdd system.

       BddIf               The IF bdd node.

       BddThen             The THEN bdd node.

       BddElse             The ELSE bdd node.

DESCRIPTION

       applybddnodeite  computes  the  following  logical  function  (BddIf AND BddThen) OR ((NOT
       BddIf) AND BddElse) in the bdd system BddSystem.  If a null pointer is given, the  default
       bdd system is used.

RETURN VALUE

       applybddnodeite  returns  a  pointer to the resulting bdd node with its number of external
       reference incremented.

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 );
          addbddcircuitin( (bddcircuit ∗)0, "i0", 0, BDD_IN_MODE_FIRST );
          addbddcircuitin( (bddcircuit ∗)0, "i1", 0, BDD_IN_MODE_FIRST );
          addbddcircuitin( (bddcircuit ∗)0, "i2", 0, BDD_IN_MODE_FIRST );
          BddNode = applybddnodeite( (bddsystem ∗)0,
                                     searchbddcircuitin( (bddcircuit ∗)0, "i0" ),
                                     searchbddcircuitin( (bddcircuit ∗)0, "i1" ),
                                     searchbddcircuitin( (bddcircuit ∗)0, "i2" ) );
          Expr = convertbddcircuitabl( (bddcircuit ∗)0, BddNode );
          /* displays ((i0 and i1) or ((not i0) and i2) */
          viewablexpr( Expr, ABL_VIEW_VHDL );
          freeablexpr( Expr );
          destroybddsystem( (bddsystem ∗)0 );
          destroybddcircuit( (bddcircuit ∗)0 );

SEE ALSO

       bdd(1)