org.fmph.knet.infection.simple

## Class SimpleSimulator

- java.lang.Object
- - org.fmph.knet.infection.simulator.Simulator
  - - org.fmph.knet.infection.simple.SimpleSimulator

-     public class SimpleSimulator
      extends Simulator

  Trivialna implementácia `Simulator`-a
  Definuje sposob akym stanovit stav jednica (`HealthStatus`), a sposob vypoctu vakcin dostupnych v jednotlivych krokoch simulacie.

  Osoba (`PersonImpl`) je zdrava `HealthStatus.NORMAL` ak nema ziadny `HealthModifier`
  Osoba (`PersonImpl`) je chora `HealthStatus.INFECTED` ak ma modifikator `RandomRangeInfector`
  Osoba (`PersonImpl`) je imunna `HealthStatus.IMMUNE` ak ma modifikator `FixedVaccinator`
  Logika aplikovania modifikatorov zabezpecuje, ze `PersonImpl` ma vzdy priradeny iba jeden modifikator
  Inicializacia
  nastavi sa percentualny pocet infikovanych osob

  Log
  Log obsahuje pocty a precenta zdravych, nakazenych a imunnych osob

  Produkcia ockovania
  urcuje kolko ockovacej latky je k dispozicii TODO: treba dorobit!!!!

  Author:
    peter nather

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `SimpleSimulator(SimpleEnvironment environment, SimpleVaccinationProvider provider)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `initalVaccination(java.util.Collection<org.fmph.knet.infection.simulator.PersonImpl> toVaccinate)` Rozdeli ockovanie na pred zaciatkom simulacie.
    `void` | `logState(java.util.logging.Level level)` Metoda sluzi na logovanie stavu.
    `HealthStatus` | `resolveStatus(org.fmph.knet.infection.simulator.PersonImpl person)` Urcuje pravidla zdravotneho stavu.

    - ### Methods inherited from class org.fmph.knet.infection.simulator.Simulator

      `getTime, initialModifiersApplication, simulate`

    - ### Methods inherited from class java.lang.Object

      `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### SimpleSimulator

          public SimpleSimulator(SimpleEnvironment environment,
                         SimpleVaccinationProvider provider)

  - ### Method Detail

    - #### resolveStatus

          public HealthStatus resolveStatus(org.fmph.knet.infection.simulator.PersonImpl person)

      Description copied from class: `Simulator`
      Urcuje pravidla zdravotneho stavu. Tuto metodu musi implementovat konkretna simulacia
      Specified by:
        `resolveStatus` in class `Simulator`
      Returns:

    - #### initalVaccination

          public void initalVaccination(java.util.Collection<org.fmph.knet.infection.simulator.PersonImpl> toVaccinate)

      Rozdeli ockovanie na pred zaciatkom simulacie. Tuto metodu treba volat pred metodou `simulate`, v opacnom pripade nebude mat ziadny effekt.
      Parameters:
        `toVaccinate` -

    - #### logState

          public void logState(java.util.logging.Level level)

      Description copied from class: `Simulator`
      Metoda sluzi na logovanie stavu. Vola sa v klucovych momentoch Pre logovanie na konci simulacie staci LEVEL - INFO Pre logovanie na konci kazdeho kroku je potrebny LEVEL - FINE Pre logovanie po kazdob sub-kroku (sirenie, ockovanie ...) je potrebny LEVEL - FINEST Samotny obsah logu, musia implementovat konkretne simulacie
      Specified by:
        `logState` in class `Simulator`