package iiuf.util.graph; import java.util.Collection; import iiuf.util.Attributable; import iiuf.util.AttributeFactory; /** Graph model interface. (c) 2000, 2001, IIUF, DIUF<p> @author $Author: ohitz $ @version $Name: $ */ public interface GraphModel extends Attributable { public void addGraphModelListener(GraphModelListener l); public void removeGraphModelListener(GraphModelListener l); public void add(GraphEdge edge); public void add(GraphEdge edge, Object[] args); public void add(GraphEdge[] edges); public void remove(GraphEdge edge); public void remove(GraphEdge[] edges); public void add(GraphNode node); public void add(GraphNode node, Object[] args); public void add(GraphNode[] nodes); public void remove(GraphNode node); public void remove(GraphNode[] nodes); public Collection edges(); public Collection nodes(); public GraphEdge[] edgesArray(); public GraphNode[] nodesArray(); public int portAttribute(String id, AttributeFactory factory); public int nodeAttribute(String id, AttributeFactory factory); public int edgeAttribute(String id, AttributeFactory factory); public int graphAttribute(String id, AttributeFactory factory); public boolean isEdgeAttribute(int id); public boolean isNodeAttribute(int id); public boolean isGraphAttribute(int id); public boolean isPortAttribute(int id); public String getId(int id); public int[] getIds(String id); } /* $Log: GraphModel.java,v $ Revision 1.1 2002/07/11 12:00:11 ohitz Initial checkin Revision 1.4 2001/04/30 07:33:17 schubige added webcom to cvstree Revision 1.3 2001/01/04 16:28:43 schubige Header update for 2001 and DIUF Revision 1.2 2000/12/18 12:39:09 schubige Added ports to iiuf.util.graph Revision 1.1 2000/11/10 07:33:22 schubige iiuf tree cleanup iter 1 */