|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objecthades.models.fsm.FSM
Finite State Machine - Endlicher Automat
Field Summary | |
java.util.Vector |
aktivierteTransitionen
Vektor, der die bei der aktuellen Belegung aktivierten Transitionen enthält wird in calculateTransitionen berechnet, nachdem Input-Werte verändert wurden |
(package private) boolean |
blocked
Gibt an, ob die FSM blockiert ist |
Zustand |
currentState
aktueller Zustand des Automaten |
java.util.Vector |
inputs
Vektor, der die Inputs enthält |
java.util.Vector |
kommentare
Vektor, der die Kommentare enthält |
static int |
MEALY
Konstante für Machine-Type = Mealy |
int |
mealy_moore
gibt den Machine-Type an (kann die Werte MEALY oder MOORE annehmen) |
static int |
MOORE
Konstante für Machine-Type = Moore |
java.util.Vector |
outputs
Vektor, der die Outputs enthält |
protected Statuszeile |
status
Statuszeile im MainFrame |
java.util.Vector |
transitionen
Vektor, der die Transitionen enthält |
java.util.Vector |
zustaende
Vektor, der die Zustände enthält |
Constructor Summary | |
FSM()
Konstruktor |
Method Summary | |
void |
calculateTransition()
berechnet die bei der aktuellen Belegung aktivierten Transitionen (enthalten im Vektor aktivierteTransitionen) |
void |
calculateZustand()
berechnet den Folgezustand (wird zum Vektor zustandsfolge addiert) |
void |
deleteInput(Signal in)
löscht einen Input |
void |
deleteKommentar(Kommentar k)
löscht einen Kommentar |
void |
deleteOutput(Signal out)
löscht einen Output |
void |
deleteTransition(Transition t)
löscht eine Transition |
void |
deleteZustand(Zustand z)
löscht einen Zustand und alle anliegenden Transitionen |
void |
drawFSM(int xPos,
int yPos,
int width,
int height,
java.awt.Graphics g,
java.lang.Object active)
zeichnet einen skalierten Automaten ohne Beschriftung (max. |
void |
drawFSM(int xPos,
int yPos,
int width,
int height,
java.awt.Graphics g,
java.lang.Object active,
java.util.Vector active_trans)
zeichnet einen skalierten Automaten ohne Beschriftung (mit mehreren aktivierten Transitionen) |
void |
edit()
|
void |
edit(FsmWrapper wrapper)
|
boolean |
existsStartzustand()
ermittelt, ob bereits ein Startzustand definiert wurde |
int |
findTransition(Zustand z1,
Zustand z2)
sucht eine bestimmte Transition |
java.util.Vector |
getAktivierteTransitionen()
|
static FSM |
getDefaultFSM()
gibt eine deafult FSM fuer HADES zurueck |
EditFrame |
getEditFrame()
|
FsmWrapper |
getFsmWrapper()
|
int |
getInputSize()
gibt die Anzahl der Eingänge zurück |
int |
getMachineType()
ermittelt den Automaten-Typ |
java.lang.String |
getName()
gibt den Automaten-Namen zurück |
int |
getOutputSize()
gibt die Anzahl der Ausgänge zurück |
java.lang.String |
getResourceName()
gibt den File Namen zurück |
Zustand |
getStartzustand()
liefert den derzeit definierten Startzustand |
int |
getZustaendeSize()
gibt die Anzahl der Zustände zurück |
java.lang.String |
loadFSM(java.io.Reader reader)
Lädt einen Automaten aus einem Reader |
void |
message(java.lang.String msg)
|
Signal |
newInput()
fügt einen neuen Input hinzu |
Kommentar |
newKommentar(java.lang.String txt,
int x,
int y)
fügt einen neuen Kommentar hinzu |
void |
newMachine()
Löscht den bisherigen Automaten |
Signal |
newOutput()
fügt einen neuen Output hinzu |
Transition |
newTransition(Zustand z1,
Zustand z2)
fügt eine neue Transition hinzu |
Zustand |
newZustand(java.lang.String name,
int x,
int y)
fügt einen neuen Zustand hinzu |
protected void |
rebuild()
|
void |
reset()
führt einen Reset aus setzt Eingänge auf ihre Initialwerte zurück und den Startzustand als aktuellen Zustand |
java.lang.String |
saveFSM()
Liefert die Automatenbeschreibung als String zurueck |
void |
setMealy()
setzt den Automaten-Typ auf Mealy |
void |
setMoore()
setzt den Automaten-Typ auf Moore |
void |
setName(java.lang.String name)
setzt den Automaten Namen |
void |
setResourceName(java.lang.String name)
setzt den File Namen |
void |
setStart(Zustand z)
definiert einen Zustand als Startzustand |
void |
setStatuszeile(Statuszeile sz)
|
void |
takt()
generiert einen Takt, berechnet den Folgezustand und setzt daraufhin die Outputwerte |
void |
zwischentakt()
generiert beim Mealy Automaten einen Zwischen-Takt, wenn die Eingangswerte verändert werden, und setzt daraufhin die Outputwerte |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
boolean blocked
public java.util.Vector inputs
public java.util.Vector outputs
public java.util.Vector zustaende
public java.util.Vector transitionen
public java.util.Vector kommentare
public Zustand currentState
public java.util.Vector aktivierteTransitionen
public int mealy_moore
public static final int MOORE
public static final int MEALY
protected Statuszeile status
Constructor Detail |
public FSM()
Method Detail |
public void edit()
public FsmWrapper getFsmWrapper()
public void edit(FsmWrapper wrapper)
public EditFrame getEditFrame()
protected void rebuild()
public void newMachine()
public static FSM getDefaultFSM()
public void setStatuszeile(Statuszeile sz)
public Signal newInput()
public Signal newOutput()
public Zustand newZustand(java.lang.String name, int x, int y)
name
- Name des neuen Zustandes (String)x
- horizontale Position des Zustandesy
- vertikale Position des Zustandes
public Transition newTransition(Zustand z1, Zustand z2)
z1
- Ausgangszustand der Transition (Zustand)z2
- Zielzustand der Transition (Zustand)
public Kommentar newKommentar(java.lang.String txt, int x, int y)
txt
- Kommentar-Text (String)x
- horiz. Position des Kommentares (int)y
- vert. Position des Kommentares (int)
public int findTransition(Zustand z1, Zustand z2)
z1
- Ausgangszustand der Transition (Zustand)z2
- Zielzustand der Transition (Zustand)
public void deleteInput(Signal in)
in
- Input, der gelöscht werden sollpublic void deleteOutput(Signal out)
out
- Output, der gelöscht werden sollpublic void deleteZustand(Zustand z)
z
- Zustand, der gelöscht werden sollpublic void deleteTransition(Transition t)
t
- Transition, die gelöscht werden sollpublic void deleteKommentar(Kommentar k)
k
- Kommentar, der gelöscht werden sollpublic java.lang.String getName()
public void setName(java.lang.String name)
public java.lang.String getResourceName()
public void setResourceName(java.lang.String name)
public int getInputSize()
public int getOutputSize()
public int getZustaendeSize()
public java.util.Vector getAktivierteTransitionen()
public void takt()
public void zwischentakt()
public void reset()
public void setMealy()
public void setMoore()
public int getMachineType()
public void setStart(Zustand z)
z
- Zustand, der als Startzustand definiert werden soll (Zustand)public boolean existsStartzustand()
public Zustand getStartzustand()
public void calculateZustand()
public void calculateTransition()
public java.lang.String saveFSM()
public java.lang.String loadFSM(java.io.Reader reader)
reader
- Reader, aus dem die Automatenbeschreibung gelesen wird (Reader)
public void drawFSM(int xPos, int yPos, int width, int height, java.awt.Graphics g, java.lang.Object active)
xPos
- horizontale Position, ab der gezeichnet wird (int)yPos
- vertikale Position, ab der gezeichnet wird (int)width
- Breite, die zur Verfügung steht (int)height
- Höhe, die zur Verfügung steht (int)g
- graphischer Kontext, in den gezeichnet werden soll (Graphics)active
- Objekt (Zustand, Transition oder null), das rot (aktiviert) gezeichnet wird (Object)public void drawFSM(int xPos, int yPos, int width, int height, java.awt.Graphics g, java.lang.Object active, java.util.Vector active_trans)
xPos
- horizontale Position, ab der gezeichnet wird (int)yPos
- vertikale Position, ab der gezeichnet wird (int)width
- Breite, die zur Verfügung steht (int)height
- Höhe, die zur Verfügung steht (int)g
- graphischer Kontext, in den gezeichnet werden soll (Graphics)active
- Objekt (Zustand, Transition oder null), das rot (aktiviert) gezeichnet wird (Object)active_trans
- Vector, der die aktivierten Transitionen enthält (Vector)public void message(java.lang.String msg)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |