Package epidemic.managers
Class MortalityManager
java.lang.Object
epidemic.managers.MortalityManager
Moduł zarządzający cyklem życia i śmierci agentów.
Wykorzystuje wstrzykniętą z zewnątrz strategię śmiertelności (wzorzec Strategy,
np. krzywa sigmoidalna wieku) do obiektywnej ewaluacji ryzyka zgonu.
Odpowiada za zarządzanie czasem trwania infekcji oraz proces usuwania
martwych jednostek ze środowiska.
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionMortalityManager(MortalityStrategy mortalityStrategy) Inicjalizuje menedżera z podaną strategią obliczania śmiertelności. -
Method Summary
Modifier and TypeMethodDescriptionintprocessLifeCycles(WorldMap world, List<Agent> agents) Główna metoda przetwarzająca stan biologiczny agentów w obrębie jednej epoki.private booleanprocessSickness(Agent agent)
-
Field Details
-
mortalityStrategy
-
-
Constructor Details
-
MortalityManager
Inicjalizuje menedżera z podaną strategią obliczania śmiertelności.- Parameters:
mortalityStrategy- Implementacja interfejsu ewaluującego szanse na śmierć naturalną oraz wirusową (wzorzec Dependency Injection).
-
-
Method Details
-
processLifeCycles
Główna metoda przetwarzająca stan biologiczny agentów w obrębie jednej epoki. Zleca usunięcie z pamięci mapy ciał martwych agentów oraz zlicza zgony spowodowane bezpośrednio przez wirusa w bieżącym kroku czasowym.- Parameters:
world- Stan mapy udostępniający metody modyfikacji kolekcji agentów.agents- Lista agentów zakwalifikowanych do przetworzenia w bieżącym kroku.- Returns:
- Liczba agentów, którzy zmarli na skutek wirusa w trakcie wykonywania tej metody.
-
processSickness
-