// TSDSymbol.java package simulator; import java.awt.*; import support.ProtocolEvent; /** This is the class for a general time sequence diagram symbol. @author Kenneth J. Turner @version 1.0 (1st September 1999, IAR): initial version

1.5 (22nd July 2010, KJT): minor tidying */ public abstract class TSDSymbol { /** Y-coordinate for symbol top */ protected int top; /** Destination column number */ protected int col; /** Symbol height */ protected int height = 15; /** Inset around diagram */ protected static int inset; /** Diagram column width */ protected static int columnWidth; /** Primitive arrow width */ protected static int arrowWidth; /** Protocol event */ protected ProtocolEvent event; /** Constructor for the TSDSymbol object * @param event protocol event @param col symbol column @param top symbol top */ public TSDSymbol(ProtocolEvent event, int col, int top) { this.event = event; this.col = col; this.top = top; } /** Sets the parameters attribute of the TSDSymbol class @param i The new parameters value @param c The new parameters value @param w The new parameters value */ public static void setParameters(int i, int c, int w) { inset = i; columnWidth = c; arrowWidth = w; } /** Get the event attribute of a time sequence diagram symbol. @return The event value */ public ProtocolEvent getEvent() { return event; } /** Get the top attribute of a time sequence diagram symbol. @return The top value */ public int getTop() { return top; } /** Get the column attribute of a time sequence diagram symbol. @return The col value */ public int getCol() { return col; } /** Get the height attribute of a time sequence diagram symbol. @return The height value */ public int getHeight() { return height; } /** Empty draw method to be overridden. @param g graphics object */ public abstract void draw(Graphics g); }