Stato
Stato

Implementa il concetto di stato nel grafico della simulazione

Variables
state
int state

Stato (1 = P, 2 = D, 3 = E , 4 = M , 5 = S , 6 = X ).

state_span
float state_span

Variabile usata in fase di ingresso e uscita dello stato dal grafico per allargare/schiacciare il rettangolo dello stato.

Coordinate dell'oggetto
X_coord

Coordinata X

Y_coord

Coordinata Y

isExiting
boolean isExiting

Si attiva quando lo stato arriva al limite del grafico

active
boolean active

Si disattiva quando lo stato è uscito dal grafico

speed
int speed

Velocità di movimento dell'oggetto nel grafico

Functions
Stato
stato(
int state,
float x,
float y,
int speed
)

Costruttore della classe

Parameters
state
int

Valore tra 1 e 6 che indica lo stato dell'oggetto(1 : Fase di Fetch, 2 : Fase di decodifica, 3 : Fase di esecuzione, 4: fase di accesso in memoria, 5: fase di write back)

x
float

Coordinata x della posizione iniziale dell'oggetto

y
float

Coordinata y della posizione iniziale dell'oggetto

speed
int

velocità di movimento dell'oggetto

create
void create()

Costruisce l'oggetto Stato.Consiste in un rettangolo con colore e etichetta che dipende dallo stato rappresentato

checkState
boolean checkState(
int clock
)

Controlla lo stato dell'oggetto Stato.

Parameters

clock -Ciclo di clock corrente.E' usato dal metodo nella modalità di esecuzione singola.Appena l'oggetto ha superato la casella del ciclo di clock corrente, esso viene immobilizzato fino all'inizio del passo d'esecuzione successivo

move
void move()

Muove il rettangolo di N pixel ad ogni ciclo di draw.N dipende dalla velocità della simulazione (x1 = 1, x2 = 2, x5 = 5).

run
boolean run(
boolean isPaused,
int clock
)

Include tutte le funzioni necessarie all'esecuzione di un'oggetto stato

Parameters
isPaused
boolean

Se l'oggetto è stato messo in pausa(variabile posta a TRUE) allora non si muoverà

clock
int

Ciclo di clock corrente.Viene passato a checkState()

deactivate
void deactivate()

Forza la disattivazione dello stato