|
|||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--Simulation
Diese Klasse kapselt die Simulation. Sie fuehrt die Simulation in einem Hintergrund-Thread aus und teilt entsprechende Aenderungen ueber das Interface KonfigurationsAenderung. Sie sorgt auch fuer die Ausgabe ueber Graph.
Inner Class Summary | |
(package private) class |
Simulation.SimThread
Diese Klasse implementiert das Thread |
Field Summary | |
protected KonfigurationsAenderung |
aenderung
das Interface, um die Aenderungen in der Konfiguration mitzuteilen |
protected Automat |
automat
der Automat der simuliert wird |
protected java.lang.String |
eingabewort
Das Eingabewort, fuer das simuliert wird |
protected Graph |
graph
der Graph zum Automaten |
protected java.util.Vector |
haltepunkte
Die Liste der Haltepunkte der Simulation |
protected Konfiguration |
konfiguration
Die aktuelle Konfiguration der Simualtion |
private boolean |
pauserequest
true, wenn die Simulation pausieren soll |
protected java.lang.Thread |
simthread
Das Hintergrundthread, welches simuliert |
protected int |
verzoegerung
die Simulationsverzoegerung der Simulation in Millisekunden |
protected SimulationsZustand |
zustand
der aktuelle Simulationszustand |
Constructor Summary | |
Simulation(Automat a,
Graph g,
KonfigurationsAenderung k,
java.lang.String s)
Legt eine Simulation an. |
Method Summary | |
void |
addHaltepunkt(int zustand,
char eingabe)
Fuegt einen Haltepunkt hinzu. |
boolean |
containsHaltepunkt(int zustand,
char eingabe)
Prueft ob ein Haltepunkt angemeldet ist. |
private boolean |
containsHaltepunkt(Zustand z,
char eingabe)
Testet ob ein Zustand enthalten ist, bloss nach Objekt |
private void |
executeStepSimulation()
fuehrt einen Schritt durch |
Automat |
getAutomat()
liefert den Automaten zurueck |
java.lang.String |
getEingabeWort()
liest das aktuelle Eingabewort aus |
Graph |
getGraph()
liefert den Graphen zurueck |
Konfiguration |
getKonfiguration()
leifert die Konfiguration zurueck |
int |
getVerzoegerung()
liefert die aktuelle Verzoegerung |
SimulationsZustand |
getZustand()
liefert den Zustand der Simulation |
void |
loescheHaltepunkt(int zustand,
char eingabe)
Loescht einen Haltepunkt. |
private void |
pause(boolean wait)
pausiert und wartet ggf. auf das Hintergrundthread |
void |
pauseSimulation()
toggelt zwischen Pause/Resume |
private void |
reset()
setzt die Simulation zurueck, es kann erneut simuliert werden |
private void |
resume()
setzt aus Pause-Modus fort |
private void |
rewind()
resettet und geht in Pause-Modus |
void |
setEingabeWort(java.lang.String eingabewort)
setzt das Eingabewort |
void |
setVerzoegerung(int time)
setzt die Verzoegerung der Simulation neu |
void |
startSimulation()
startet die Simulation |
void |
step()
fuehrt einen Schritt durch |
private void |
stepSimulation()
fuehrt einen Schritt aus und kuemmert sich um Ausgabe, Reaktion, Mitteilung an andere |
void |
stopSimulation()
stoppt die Simulation |
private void |
stopSimulation(boolean wait)
Stoppt die Simulation und wartet ggf. auf das Thread |
void |
toggleHaltepunkt(int zustand,
char eingabe)
Ist der Haltepunkt enhalten, so wird er geloescht, sonst wird er eingefuegt |
java.lang.String |
toString()
|
private void |
waitThread()
wartet auf das Hintergrundthread |
Methods inherited from class java.lang.Object |
|
Field Detail |
protected Automat automat
protected Konfiguration konfiguration
protected Graph graph
protected KonfigurationsAenderung aenderung
protected int verzoegerung
protected SimulationsZustand zustand
protected java.util.Vector haltepunkte
protected java.lang.String eingabewort
protected java.lang.Thread simthread
private boolean pauserequest
Constructor Detail |
public Simulation(Automat a, Graph g, KonfigurationsAenderung k, java.lang.String s)
a
- Automat der simuliert werden sollg
- Graph zum Automaten, um Ablauf darzustellenk
- Interface KonfigurationsAenderungs
- Eingabewort fuer den AutomatenMethod Detail |
public void setEingabeWort(java.lang.String eingabewort)
eingabewort
- das neue Eingabewortpublic java.lang.String getEingabeWort()
public Automat getAutomat()
public Graph getGraph()
public final Konfiguration getKonfiguration()
public void startSimulation()
public void stopSimulation()
public void step()
public void pauseSimulation()
public final SimulationsZustand getZustand()
public void setVerzoegerung(int time)
time
- Verzoegerung in mspublic int getVerzoegerung()
public java.lang.String toString()
private void reset()
private void rewind()
private void stopSimulation(boolean wait)
wait
- true, wenn gewartet werden sollprivate void waitThread()
private void pause(boolean wait)
wait
- true, wenn gewartet werden sollprivate void resume()
private void stepSimulation()
private void executeStepSimulation()
public void addHaltepunkt(int zustand, char eingabe)
zustand
- externe Zustandsnummer des Zustands, in dem gehalten werden solleingabe
- Zeichen, bei dem gestoppt werden sollpublic void loescheHaltepunkt(int zustand, char eingabe)
zustand
- externe Zustandsnummer des Zustands, in dem gehalten werden solleingabe
- Zeichen, bei dem gestoppt werden sollpublic boolean containsHaltepunkt(int zustand, char eingabe)
zustand
- externe Zustandsnummer des Zustands, in dem gehalten werden solleingabe
- Zeichen, bei dem gestoppt werden sollpublic void toggleHaltepunkt(int zustand, char eingabe)
zustand
- externe Zustandsnummer des Zustands, in dem gehalten werden solleingabe
- Zeichen, bei dem gestoppt werden sollprivate boolean containsHaltepunkt(Zustand z, char eingabe)
z
- Zustand des Haltepunkts, der geprueft werden soll
|
|||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |