@Override public boolean hasGreenForAllToLinks() { if (qSignalizedItem != null) { return qSignalizedItem.hasGreenForAllToLinks(); } return true; //the lane is not signalized and thus always green }
@Override public final void setSignalStateAllTurningMoves( final SignalGroupState state) { qSignalizedItem.setSignalStateAllTurningMoves(state); thisTimeStepGreen = qSignalizedItem.hasGreenForAllToLinks(); // (this is only for capacity accumulation) }
@Override public final void setSignalStateForTurningMove( final SignalGroupState state, final Id<Link> toLinkId) { if (!qLink.getToNode().getOutLinks().containsKey(toLinkId)){ throw new IllegalArgumentException("ToLink " + toLinkId + " is not reachable from QLink Id " + this.id ); } qSignalizedItem.setSignalStateForTurningMove(state, toLinkId); thisTimeStepGreen = qSignalizedItem.hasGreenForAllToLinks(); // (this is only for capacity accumulation. As soon as at least one turning relation is green, the "link" is considered // green). }