public boolean containsView(final IAddress priFunctionAddr, final IAddress secFunctionAddr) {
    for (final ViewData view : views) {
      if (view.isFlowGraphView()) {
        final FlowGraphViewData flowGraphView = (FlowGraphViewData) view;

        boolean priIsEqual =
            priFunctionAddr == null && flowGraphView.getRawGraph(ESide.PRIMARY) == null;
        IAddress priAddr = null;
        if (flowGraphView.getRawGraph(ESide.PRIMARY) != null) {
          priAddr = flowGraphView.getRawGraph(ESide.PRIMARY).getAddress();
        }

        if (priFunctionAddr != null && priAddr != null) {
          priIsEqual = priFunctionAddr.equals(priAddr);
        }

        boolean secIsEqual =
            secFunctionAddr == null && flowGraphView.getRawGraph(ESide.SECONDARY) == null;
        IAddress secAddr = null;
        if (flowGraphView.getRawGraph(ESide.SECONDARY) != null) {
          secAddr = flowGraphView.getRawGraph(ESide.SECONDARY).getAddress();
        }

        if (secFunctionAddr != null && secAddr != null) {
          secIsEqual = secFunctionAddr.equals(secAddr);
        }

        if (priIsEqual && secIsEqual) {
          return true;
        }
      }
      if (view.isCallGraphView()) {
        if (view.getAddress(ESide.PRIMARY) == null
            && priFunctionAddr == null
            && view.getAddress(ESide.SECONDARY) == null
            && secFunctionAddr == null) {
          return true;
        }
      }
    }
    return false;
  }
Contains view data for each opened view of a Diff object.
java/ui/src/main/java/com/google/security/zynamics/bindiff/project/userview/ViewManager.java