GraphPerspectiveEdgesHiddenEvent(Object source, Edge[] hiddenEdges) { super(source); m_hiddenEdges = hiddenEdges; m_hiddenEdgeInx = new int[m_hiddenEdges.length]; for (int i = 0; i < m_hiddenEdgeInx.length; i++) m_hiddenEdgeInx[i] = m_hiddenEdges[i].getRootGraphIndex(); }
/** * DOCUMENT ME! * * @param edge DOCUMENT ME! * * @return DOCUMENT ME! */ public int getIndex(Edge edge) { if ((edge.getRootGraph() == m_root) && (getRootGraphEdgeIndex(edge.getRootGraphIndex()) == edge.getRootGraphIndex())) { return edge.getRootGraphIndex(); } else { return 0; } }
/** * Return the requested Attribute for the given Edge */ public Object getEdgeAttributeValue(Edge edge, String attribute) { return getEdgeAttributeValue(edge.getRootGraphIndex(), attribute); }
/** * Return the requested Attribute for the given Edge */ public boolean setEdgeAttributeValue(Edge edge, String attribute, Object value) { return setEdgeAttributeValue(edge.getRootGraphIndex(), attribute, value); }
public int nextInt() { if ((edgeArr[index] == null) || (edgeArr[index].getRootGraph() != root)) throw new IllegalArgumentException(); return edgeArr[index++].getRootGraphIndex(); } });
public int nextInt() { if ((edgeArr[index] == null) || (edgeArr[index].getRootGraph() != root)) throw new IllegalArgumentException(); return edgeArr[index++].getRootGraphIndex(); } });
/** * DOCUMENT ME! * * @param edge DOCUMENT ME! * * @return DOCUMENT ME! */ public int getIndex(Edge edge) { if (edge.getRootGraph() == this) return edge.getRootGraphIndex(); else return 0; }
/** * Perform a simple set union on the sets of nodes * @param networkList a list of cyNetworks * @return an integer array containing the indices of edges in the union */ protected static int[] unionizeEdges(List networkList) { /* * This is the set of edges that will be in the final network */ Set<Integer> edges = new HashSet<Integer>(); for (Iterator it = networkList.iterator(); it.hasNext();) { CyNetwork currentNetwork = (CyNetwork) it.next(); for (Iterator edgeIt = currentNetwork.edgesIterator(); edgeIt.hasNext();) { edges.add(new Integer(((Edge) edgeIt.next()).getRootGraphIndex())); } } int[] result = new int[edges.size()]; int idx = 0; for (Iterator edgeIt = edges.iterator(); edgeIt.hasNext(); idx++) { result[idx] = ((Integer) edgeIt.next()).intValue(); } return result; } }
/** * DOCUMENT ME! * * @param edge DOCUMENT ME! * * @return DOCUMENT ME! */ public boolean containsEdge(Edge edge) { return (edge.getRootGraph() == this) && (getEdge(edge.getRootGraphIndex()) != null); }
/** * DOCUMENT ME! * * @param edge DOCUMENT ME! * * @return DOCUMENT ME! */ public java.util.List metaParentsList(Edge edge) { if (!(edge.getRootGraph() == m_root)) { return null; } return edgeMetaParentsList(edge.getRootGraphIndex()); }
/** * DOCUMENT ME! * * @param edge DOCUMENT ME! * * @return DOCUMENT ME! */ public java.util.List metaParentsList(Edge edge) { if (edge.getRootGraph() != this) return null; return edgeMetaParentsList(edge.getRootGraphIndex()); }
/** * DOCUMENT ME! * * @param edge DOCUMENT ME! * * @return DOCUMENT ME! */ public boolean containsEdge(Edge edge) { int nativeInx; return (edge.getRootGraph() == m_root) && ((nativeInx = m_rootToNativeEdgeInxMap.get(~(edge.getRootGraphIndex()))) >= 0) && (nativeInx != Integer.MAX_VALUE); }
/** * DOCUMENT ME! * * @param edge DOCUMENT ME! * * @return DOCUMENT ME! */ public Edge removeEdge(Edge edge) { if ((edge.getRootGraph() == this) && (removeEdge(edge.getRootGraphIndex()) != 0)) return edge; else return null; }
/** * DOCUMENT ME! * * @param edge DOCUMENT ME! * * @return DOCUMENT ME! */ public Edge hideEdge(Edge edge) { if ((edge.getRootGraph() == m_root) && (hideEdge(edge.getRootGraphIndex()) != 0)) { return edge; } else { return null; } }
/** * DOCUMENT ME! * * @param edge DOCUMENT ME! * * @return DOCUMENT ME! */ public Edge restoreEdge(Edge edge) { if ((edge.getRootGraph() == m_root) && (restoreEdge(edge.getRootGraphIndex()) != 0)) { return edge; } else { return null; } }
/** * DOCUMENT ME! * * @param edge DOCUMENT ME! * @param recurse DOCUMENT ME! * * @return DOCUMENT ME! */ public boolean containsEdge(Edge edge, boolean recurse) { if (edge.getRootGraph() != m_root) { return false; } final int nativeInx = m_rootToNativeEdgeInxMap.get(~(edge.getRootGraphIndex())); if ((nativeInx >= 0) && (nativeInx != Integer.MAX_VALUE)) { return true; } if (!recurse) { return false; } final int[] recursiveChildEdges = m_root.getEdgeMetaChildIndicesArray(getNodeIndicesArray()); for (int i = 0; i < recursiveChildEdges.length; i++) if (recursiveChildEdges[i] == edge.getRootGraphIndex()) { return true; } return false; }
/** * DOCUMENT ME! * * @param parent DOCUMENT ME! * @param child DOCUMENT ME! * * @return DOCUMENT ME! */ public boolean addMetaChild(Node parent, Edge child) { if ((parent.getRootGraph() != this) || (child.getRootGraph() != this)) return false; return addEdgeMetaChild(parent.getRootGraphIndex(), child.getRootGraphIndex()); }
/** * DOCUMENT ME! * * @param child DOCUMENT ME! * @param parent DOCUMENT ME! * * @return DOCUMENT ME! */ public boolean isMetaParent(Edge child, Node parent) { if ((child.getRootGraph() != this) || (parent.getRootGraph() != this)) return false; return isEdgeMetaParent(child.getRootGraphIndex(), parent.getRootGraphIndex()); }
/** * DOCUMENT ME! * * @param child DOCUMENT ME! * @param parent DOCUMENT ME! * * @return DOCUMENT ME! */ public boolean isMetaParent(Edge child, Node parent) { if (!((child.getRootGraph() == m_root) && (parent.getRootGraph() == m_root))) { return false; } return isEdgeMetaParent(child.getRootGraphIndex(), parent.getRootGraphIndex()); }
private final void hideEdges(Object source, Edge[] edges) { m_heap.empty(); final MinIntHeap successes = m_heap; // check to see if we can hide edges for (int i = 0; i < edges.length; i++) { if (edges[i] == null) continue; if (canHideEdge(edges[i].getRootGraphIndex()) != 0) successes.toss(i); } if (successes.size() > 0) { final GraphPerspectiveChangeListener listener = m_lis[0]; // notify listeners if (listener != null) { final Edge[] successArr = new Edge[successes.size()]; final IntEnumerator enumx = successes.elements(); int index = -1; while (enumx.numRemaining() > 0) successArr[++index] = edges[enumx.nextInt()]; listener.graphPerspectiveChanged(new GraphPerspectiveEdgesHiddenEvent(source, successArr)); } // now actually hide edges final IntEnumerator successEnum = successes.elements(); while (successEnum.numRemaining() > 0) actuallyHideEdge(edges[successEnum.nextInt()].getRootGraphIndex()); } } }