Class DefaultGraphMatrix<N,​E>

    • Field Detail

      • directed

        private boolean directed
      • nodes

        private final java.util.List<N> nodes
      • edges

        private final java.util.Map<Coordinates,​E> edges
      • parents

        private final java.util.Map<java.lang.Long,​java.util.List<java.lang.Long>> parents
      • children

        private final java.util.Map<java.lang.Long,​java.util.List<java.lang.Long>> children
    • Constructor Detail

      • DefaultGraphMatrix

        public DefaultGraphMatrix()
      • DefaultGraphMatrix

        public DefaultGraphMatrix​(java.util.List<N> nodes)
    • Method Detail

      • getEdgeList

        public java.util.Collection<E> getEdgeList()
      • availableCoordinates

        public java.lang.Iterable<long[]> availableCoordinates()
        Description copied from interface: CoordinateFunctions
        Returns an Iterator that only goes over the coordinates in the Matrix that are stored. For most Matrices, this is the same as allCoordinates(). For sparse Matrices, it iterates only over the entries in it.
        Specified by:
        availableCoordinates in interface CoordinateFunctions
        Overrides:
        availableCoordinates in class AbstractGraphMatrix<N,​E>
        Returns:
        Iterable over the saved entries in a Matrix.
      • getNodeList

        public java.util.List<N> getNodeList()
      • addNode

        public void addNode​(N o)
      • removeNode

        public void removeNode​(N o)
      • getEdgeCount

        public int getEdgeCount()
      • getNodeCount

        public int getNodeCount()
      • clear

        public void clear()
      • getChildCount

        public int getChildCount​(long nodeIndex)
      • getNode

        public N getNode​(long index)
      • getParentCount

        public int getParentCount​(long nodeIndex)
      • getParentIndices

        public java.util.List<java.lang.Long> getParentIndices​(long index)
      • getChildIndices

        public java.util.List<java.lang.Long> getChildIndices​(long index)
      • removeNode

        public void removeNode​(long node)
      • isDirected

        public boolean isDirected()
      • setDirected

        public void setDirected​(boolean directed)
      • setNode

        public void setNode​(N node,
                            long index)
      • setEdge

        public void setEdge​(E edge,
                            long nodeIndex1,
                            long nodeIndex2)
      • setEdge

        public void setEdge​(E edge,
                            N node1,
                            N node2)
      • getEdge

        public E getEdge​(long nodeIndex1,
                         long nodeIndex2)
      • removeEdge

        public void removeEdge​(E edge)
      • removeEdge

        public void removeEdge​(N node1,
                               N node2)
      • removeEdge

        public void removeEdge​(long nodeIndex1,
                               long nodeIndex2)