public abstract class Simulator
extends java.lang.Object
Na zaciatku nainicializuje stav grafu, resp. modifikatorov.
Nasledne moze (nemusi) aplikovat ockovanie initialModifiers.
Po spusteni simulacie iteruje podla nastavenia a v kazdom kroku vykona
1. aktualizuje stav modifikatorov (HealthModifier) jednotlivych osob
2. aplikuje ockovanie. Rozdelenie modifikatorov ockovania manazuje VaccinationProvider. Ten rozdeli pridelene
ockovacie modifikatory.
3. modfikatory schopne sirenia sa rozsiria (strategiu sirenia definuje simulator).
4. applikuje modifikatory na osoby (PersonImpl).
Tato implementacia simulacie, simuluje paralelne sirenie modifikatorov v jednotlivych krokoch
| Constructor and Description |
|---|
Simulator(Environment environment,
VaccinationProvider vaccinationProvider)
Konstruktor
|
| Modifier and Type | Method and Description |
|---|---|
int |
getTime()
Vrati aktualny cas (den) simulacie
|
void |
initialModifiersApplication(java.util.Collection<org.fmph.knet.infection.Pair<org.fmph.knet.infection.simulator.PersonImpl,HealthModifier>> toApply)
Tato metoda applikuje pridelene modifikatory danym osobam.
|
abstract void |
logState(java.util.logging.Level level)
Metoda sluzi na logovanie stavu.
|
abstract HealthStatus |
resolveStatus(org.fmph.knet.infection.simulator.PersonImpl person)
Urcuje pravidla zdravotneho stavu.
|
void |
simulate()
Metoda bezi samotnu simulaciu.
|
public Simulator(Environment environment, VaccinationProvider vaccinationProvider)
environment - prostredie s nastaveniami a grafomvaccinationProvider - urcuje rozdelenie ockovacej latkypublic abstract HealthStatus resolveStatus(org.fmph.knet.infection.simulator.PersonImpl person)
person - public final void simulate()
public void initialModifiersApplication(java.util.Collection<org.fmph.knet.infection.Pair<org.fmph.knet.infection.simulator.PersonImpl,HealthModifier>> toApply)
toApply - public final int getTime()
public abstract void logState(java.util.logging.Level level)
level -