Esempio n. 1
0
  public void visit(Component component) {
    unbreakableGateDepth = Math.max(unbreakableGateDepth, component.getExitGateDepth());

    if (!findUnknownGateDepthOnInputs(component)) {
      preFilter(component);
      final Integer currentGateDepth =
          new Integer(getMaxInputGateDepth(component) + component.getExitGateDepth());
      for (Bus bus : component.getBuses()) {
        exitToGateDepthMap.put(bus.getOwner(), currentGateDepth);
      }
      if (currentGateDepth.intValue() >= taskMaxGateDepth) {
        taskMaxGateDepth = currentGateDepth.intValue();
      }
      if (_schedule.db)
        _schedule.ln(
            _schedule.GDA, component + ", current gate depth: " + currentGateDepth.intValue());
      postFilter(component);
    }
  }