org.rubato.math.yoneda
Class Diagram

java.lang.Object
  extended by org.rubato.math.yoneda.Diagram
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, Yoneda, XMLInputOutput<Diagram>
Direct Known Subclasses:
FormDiagram, MathDiagram

public abstract class Diagram
extends java.lang.Object
implements Yoneda, XMLInputOutput<Diagram>

Abstract base class for diagrams.

Author:
Gérard Milmeister, Stefan Müller, Stefan Göller
See Also:
Serialized Form

Field Summary
 
Fields inherited from interface org.rubato.math.yoneda.Yoneda
COLIMIT, LIMIT, LIST, POWER, SIMPLE
 
Constructor Summary
Diagram()
           
 
Method Summary
 void appendArrow(int i, int j, Morphism morphism)
          Appends an arrow from vertex i to vertex j.
abstract  java.lang.Object clone()
          Returns a copy of this diagram.
abstract  int compareTo(Yoneda object)
           
abstract  void deleteArrow(int i, int j, int n)
          Deletes the n-th arrow from vertex i to vertex j.
 void deleteArrows(int i, int j)
          Deletes all arrows from vertex i to vertex j.
abstract  void deleteVertex(int i)
          Deletes the vertex at position i.
 void deleteVertexes()
          Deletes all vertexes in this diagram.
 boolean equals(java.lang.Object object)
          Returns true if this diagram is equal to the specified object.
abstract  boolean fullEquals(Diagram d, java.util.IdentityHashMap<java.lang.Object,java.lang.Object> s)
           
abstract  Morphism getArrow(int i, int j, int n)
          Returns the n-th arrow from vertex i to vertex j.
abstract  int getArrowCount(int i, int j)
          Returns the number of arrows from vertex i to vertex j.
abstract  java.util.LinkedList<Denotator> getDenotatorDependencies(java.util.LinkedList<Denotator> list)
           
abstract  java.util.LinkedList<Form> getFormDependencies(java.util.LinkedList<Form> list)
           
abstract  Yoneda getVertex(int i)
          Returns the vertex at position i.
abstract  int getVertexCount()
          Returns the number of vertexes.
abstract  int hashCode()
          Returns a hash code for this diagram.
abstract  void insertArrow(int i, int j, int n, Morphism morphism)
          Inserts an arrow from vertex i to vertex j at position n.
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.rubato.xml.XMLInputOutput
fromXML, getElementTypeName, toXML
 

Constructor Detail

Diagram

public Diagram()
Method Detail

getVertex

public abstract Yoneda getVertex(int i)
Returns the vertex at position i.


getVertexCount

public abstract int getVertexCount()
Returns the number of vertexes.


deleteVertex

public abstract void deleteVertex(int i)
Deletes the vertex at position i.


deleteVertexes

public void deleteVertexes()
Deletes all vertexes in this diagram.


getArrow

public abstract Morphism getArrow(int i,
                                  int j,
                                  int n)
Returns the n-th arrow from vertex i to vertex j.


getArrowCount

public abstract int getArrowCount(int i,
                                  int j)
Returns the number of arrows from vertex i to vertex j.


insertArrow

public abstract void insertArrow(int i,
                                 int j,
                                 int n,
                                 Morphism morphism)
Inserts an arrow from vertex i to vertex j at position n.


appendArrow

public void appendArrow(int i,
                        int j,
                        Morphism morphism)
Appends an arrow from vertex i to vertex j.


deleteArrow

public abstract void deleteArrow(int i,
                                 int j,
                                 int n)
Deletes the n-th arrow from vertex i to vertex j.


deleteArrows

public void deleteArrows(int i,
                         int j)
Deletes all arrows from vertex i to vertex j.


getFormDependencies

public abstract java.util.LinkedList<Form> getFormDependencies(java.util.LinkedList<Form> list)

getDenotatorDependencies

public abstract java.util.LinkedList<Denotator> getDenotatorDependencies(java.util.LinkedList<Denotator> list)

compareTo

public abstract int compareTo(Yoneda object)

clone

public abstract java.lang.Object clone()
Returns a copy of this diagram.

Specified by:
clone in interface Yoneda
Overrides:
clone in class java.lang.Object

hashCode

public abstract int hashCode()
Returns a hash code for this diagram.

Overrides:
hashCode in class java.lang.Object

equals

public boolean equals(java.lang.Object object)
Returns true if this diagram is equal to the specified object.

Overrides:
equals in class java.lang.Object

fullEquals

public abstract boolean fullEquals(Diagram d,
                                   java.util.IdentityHashMap<java.lang.Object,java.lang.Object> s)