1ADDBDDNODE(3) BDD FUNCTIONS ADDBDDNODE(3)
2
3
4
6 addbddnode - adds a new bdd node in the bdd system.
7
9 #include "bdd101.h"
10 bddnode ∗addbddnode( BddSystem, Index, High, Low )
11 bddsystem ∗BddSystem;
12 bddindex Index;
13 bddnode ∗High;
14 bddnode ∗Low;
15
17 BddSystem The bdd system.
18
19 Index The bdd index.
20
21 High The bdd high pointer.
22
23 Low The bdd low pointer.
24
26 addbddnode adds a new node with the index Index, High as HIGH pointer,
27 and Low as LOW pointer in the bdd system BddSystem. If the bdd node
28 exist already addbddnode return its pointer. If a null pointer is
29 given, the default bdd system is used.
30
32 addbddnode returns a pointer to the resulting bdd node with its number
33 of external reference incremented.
34
36 "index xxx out of range"
37 The Index parameter must be a valid index.
38
40 #include "bdd101.h"
41 bddsystem ∗BddSystem;
42 bddcircuit ∗BddCircuit;
43 bddnode ∗BddNode;
44 chain_list ∗Expr;
45 BddSystem = createbddsystem( 100, 1000, 100, 50000 );
46 BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
47 BddNode = addbddcircuitin( (bddcircuit ∗)0, "i0", 0, BDD_IN_MODE_FIRST );
48 BddNode = addbddnode( (bddsystem ∗)0, BddNode->INDEX, BddNode->LOW, BddNode->HIGH );
49 Expr = convertbddcircuitabl( (bddcircuit ∗)0, BddNode );
50 /* displays (not i0) */
51 viewablexpr( Expr, ABL_VIEW_VHDL );
52 freeablexpr( Expr );
53 destroybddsystem( (bddsystem ∗)0 );
54 destroybddcircuit( (bddcircuit ∗)0 );
55
57 bdd(1)
58
59
60
61
62
63
64ASIM/LIP6 October 1, 1997 ADDBDDNODE(3)