addbddnode

ADDBDDNODE(3)                    BDD FUNCTIONS                   ADDBDDNODE(3)



NAME
       addbddnode - adds a new bdd node in the bdd system.


ORIGIN
       This software belongs to the  ALLIANCE CAD SYSTEM developed by the ASIM
       team at LIP6 laboratory of Université Pierre et Marie CURIE, in Paris,
       France.

       Web : http://asim.lip6.fr/recherche/alliance/
       E-mail : alliance-users@asim.lip6.fr


SYNOPSYS
       #include "bdd101.h"
       bddnode ∗addbddnode( BddSystem, Index, High, Low  )
         bddsystem ∗BddSystem;
         bddindex   Index;
         bddnode   ∗High;
         bddnode   ∗Low;

PARAMETERS
       BddSystem           The bdd system.

       Index               The bdd index.

       High                The bdd high pointer.

       Low                 The bdd low pointer.

DESCRIPTION
       addbddnode adds a new node with the index Index, High as HIGH pointer,
       and Low as LOW pointer in the bdd system BddSystem. If the bdd node
       exist already addbddnode return its pointer.  If a null pointer is
       given, the default bdd system is used.

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

ERRORS
       "index xxx out of range"
              The Index parameter must be a valid index.

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 );
          /* displays (not i0) */
          viewablexpr( Expr, ABL_VIEW_VHDL );
          freeablexpr( Expr );
          destroybddsystem( (bddsystem ∗)0 );
          destroybddcircuit( (bddcircuit ∗)0 );

SEE ALSO
       bdd(1)




BUG REPORT
       This tool is under development at the ASIM department of the LIP6
       laboratory.
       We need your feedback to improve documentation and tools.






ASIM/LIP6                       October 1, 1997                  ADDBDDNODE(3)