Example #1
0
  /**
   * Make the circuit for simulation
   *
   * @return the equivalent circuit
   */
  public Circuit makeSimulationCircuit() {
    this.circuit = new Circuit();
    this.wirestable = new Hashtable<Link, Wire>();
    this.inputstable = new Hashtable<Node, Input>();
    this.outputstable = new Hashtable<Node, Output>();

    for (iterLinks = this.links.iterator(); iterLinks.hasNext(); )
      this.wirestable.put(iterLinks.next(), new Wire(this.circuit));

    for (iterNodes = this.nodes.iterator(); iterNodes.hasNext(); ) {
      Node n = iterNodes.next();
      Actor a = n.makeSimulationNode(this);

      if (a instanceof Input) {
        this.inputstable.put(n, (Input) a);
        this.circuit.addInput((Input) a);
      } else if (n instanceof OutputUI) {
        this.outputstable.put(n, (Output) a);
        this.circuit.addOutput((Output) a);
      }
    }

    return this.circuit;
  }