diva.graph.modular
Interface MutableEdgeModel

All Superinterfaces:
EdgeModel
All Known Implementing Classes:
ActorGraphModel.LinkModel, BasicModularGraphModel.BasicEdgeModel, FSMGraphModel.ArcModel, FSMGraphModel.ArcModel

public interface MutableEdgeModel
extends EdgeModel

An edge is an object that is contained by a graph and connects nodes. An edge has a "head" and a "tail" as if it was directed, but also has a method isDirected() that says whether or not the edge should be treated as directed (e.g. should there be an arrow drawn on the head). An edge has a semantic object that is its semantic equivalent in the application and may have a visual object which is its syntactic representation in the user interface.

Version:
$Id: MutableEdgeModel.java 38798 2005-07-08 20:00:01Z cxh $
Author:
Michael Shilman
Accepted Rating:
Red

Method Summary
 boolean acceptHead(java.lang.Object edge, java.lang.Object head)
          Return whether or not the given node is a valid head of this edge.
 boolean acceptTail(java.lang.Object edge, java.lang.Object tail)
          Return whether or not the given node is a valid tail of this edge.
 void setHead(java.lang.Object edge, java.lang.Object head)
          Set the node that this edge points to.
 void setTail(java.lang.Object edge, java.lang.Object tail)
          Set the node that this edge stems from.
 
Methods inherited from interface diva.graph.modular.EdgeModel
getHead, getTail, isDirected
 

Method Detail

acceptHead

boolean acceptHead(java.lang.Object edge,
                   java.lang.Object head)
Return whether or not the given node is a valid head of this edge.


acceptTail

boolean acceptTail(java.lang.Object edge,
                   java.lang.Object tail)
Return whether or not the given node is a valid tail of this edge.


setHead

void setHead(java.lang.Object edge,
             java.lang.Object head)
Set the node that this edge points to. Implementors of this method are also responsible for insuring that it is set properly as an "incoming" edge of the node, and that it is removed as an incoming edge from its previous head node.


setTail

void setTail(java.lang.Object edge,
             java.lang.Object tail)
Set the node that this edge stems from. Implementors of this method are also responsible for insuring that it is set properly as an "outgoing" edge of the node, and that it is removed as an outgoing edge from its previous tail node.