Scroll to navigation

ADDBDDCIRCUITIN(3) BDD FUNCTIONS ADDBDDCIRCUITIN(3)

NAME

addbddcircuitin - adds an input in a bdd circuit.

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 ∗addbddcircuitin( BddCircuit, InputName, Index, Mode )
  bddcircuit ∗BddCircuit;
  char       ∗InputName;
  bddindex    Index;
  long        Mode;

PARAMETERS

BddCircuit
The bdd circuit.
InputName
The name of the input.
Index
The bdd index of the input.
Mode
The mode.

DESCRIPTION

addbddcircuitin adds an input InputName in the bdd circuit BddCircuit. If a null pointer is given, the default bdd circuit is used. If the input InputName exists already, its node pointer is returned. The Mode parameter specifies how to create the new variable associated to the name InputName. The Index parameter is used with the BDD_IN_MODE_BEFORE and BDD_IN_MODE_AFTER mode. The Mode parameter can takes the following values :
BDD_IN_MODE_FIRST
adds a variable before all others.
BDD_IN_MODE_LAST
adds a variable after all others.
BDD_IN_MODE_BEFORE
adds a variable before the one specified by Index.
BDD_IN_MODE_AFTER
adds a variable after the one specified by Index.
BDD_IN_MODE_IMPOSE
if this flag is set, only the variables found in the BddCircuit are taken into account. It permits to merge variables from different circuit working on the same bdd system.
 

RETURN VALUE

addbddcircuitin returns a pointer to the new created node.

ERRORS

"unknwon in mode xxx error !"
The Mode parameter must be defined.

EXAMPLE

#include "bdd101.h"
   bddsystem  ∗BddSystem;
   bddcircuit ∗BddCircuit;
   bddnode    ∗BddNode;
   BddSystem  = createbddsystem( 100, 1000, 100, 50000 );
   BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
   addbddcircuitin ( (bddcircuit ∗)0, "i0", 0, BDD_IN_MODE_FIRST );
   ...
   BddNode = searchbddcircuitin( (bddcircuit ∗)0, "i0" );
   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