addbddcircuitin.3alc man page

addbddcircuitin — adds an input in a bdd circuit.

Synopsis

#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)

Referenced By

searchbddcircuitin.3alc(3).

October 1, 1997 ASIM/LIP6 BDD FUNCTIONS