convertbddnodesumabl(3)
converts a bdd node to an abl expression.
SYNOPSYS
#include "bdd101.h"
chain_list *convertbddnodesumabl( BddSystem, NameArray, IndexArray, BddNode )
bddsystem *BddSystem;
char **NameArray;
bddindex *IndexArray;
bddnode *BddNode;
PARAMETERS
- BddSystem
-
The bdd system.
- NameArray
-
The array of names.
- IndexArray
-
The array of indexes.
- BddNode
-
The bdd node to convert.
DESCRIPTION
convertbddnodesumabl converts the bdd node
to a non optimal abl expression in the bdd system BddSystem.
If a null pointer is given, the default bdd system is used.
The NameArray, and IndexArray parameters are used
to translate the variable nodes into atomic expressions.
The array NameArray is list of names.
The array IndexArray does the correspondence between a bdd node
index and a slot in the NameArray. If the IndexArray parameter
is a null pointer, then the name of the bdd index BDD_INDEX_MIN is assumed
to be the first slot of the NameArray, and so on.
RETURN VALUE
convertbddnodesumabl returns a pointer to the abl expression translated.
EXAMPLE
#include "bdd101.h"
bddsystem *BddSystem;
bddnode *BddNode;
chain_list *Expr;
char *NameArray[ 1 ];
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddNode = addbddvarlast( BddSystem );
NameArray[ 0 ] = namealloc( "i0" );
Expr = convertbddnodesumabl( BddSystem, NameArray, (bddindex *)0, BddNode );
/* displays i0 */
viewablexpr( Expr, ABL_VIEW_VHDL );
freeablexpr( Expr );
destroybddsystem( (bddsystem *)0 );