Scroll to navigation

GETBDDNODESUPPORT(3) BDD FUNCTIONS GETBDDNODESUPPORT(3)

NAME

getbddnodesupport - gives the variable support of a bdd node.

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"
void ∗getbddnodesupport( BddSystem, BddNode, Mode )

bddsystem ∗BddSystem;
bddnode ∗BddNode;
int Mode;

PARAMETERS

The bdd system.
The bdd node.
The type of support.

DESCRIPTION

getbddnodesupport gives the support of the bdd node BddNode in the bdd system BddSystem. If a null pointer is given, the default bdd system is used. If Mode is BDD_SUPPORT_CHAIN the support is returned using chain_list else it is returned using ptype_list. The support must be freed using the freechain or freeptype functions.

RETURN VALUE

getablexprsupport returns a pointer to a chain_list or a ptype_list.

EXAMPLE

#include "bdd101.h"

bddsystem ∗BddSystem;
bddcircuit ∗BddCircuit;
bddnode ∗BddNode;
chain_list ∗Expr;
chain_list ∗Support;
chain_list ∗ScanSupport;
bddindex Index;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
Expr = createablbinexpr( ABL_AND,
createablatom( "i0" ),
createablatom( "i1" ) );
BddNode = addbddcircuitabl( BddCircuit, Expr );
freeablexpr( Expr );
Support = getablbddnodesupport( (bddsystem ∗0), BddNode, BDD_SUPPORT_CHAIN );
for ( ScanSupport = Support;
ScanSupport != (chain_list ∗)0;
ScanSupport = ScanSupport->NEXT )
{
Index = (bddnode ∗)ScanSupport->INDEX;
printf( "%s ", BddCircuit->NAME_IN[ Index - BDD_INDEX_MIN ] );
}
freechain( Support );
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.

October 1, 1997 ASIM/LIP6