Source code for metawards.extractors._extract_default
from typing import List as _List
from ..utils._get_functions import MetaFunction
__all__ = ["extract_default"]
[docs]def extract_default(stage: str, **kwargs) -> _List[MetaFunction]:
"""This returns the default list of 'output_XXX' functions that
are called in sequence for each iteration of the model run.
These functions are used to output data to files for
future processing
Parameters
----------
stage: str
Which stage of the day is to be modelled
Returns
-------
funcs: List[MetaFunction]
The list of functions that will be called in sequence
"""
if stage == "initialise":
from ._output_core import setup_core, output_core
return [setup_core, output_core]
elif stage == "infect":
# this must be called at the end of the 'infect' stage to
# accumulate all of the new infections
from ._output_core import output_core
return [output_core]
elif stage == "analyse":
from ._output_basic import output_basic
from ._output_dispersal import output_dispersal
from ._output_incidence import output_incidence
from ._output_prevalence import output_prevalence
return [output_basic, output_dispersal,
output_incidence, output_prevalence]
elif stage == "finalise":
from ._output_trajectory import output_trajectory
return [output_trajectory]
elif stage == "summary":
# output the summary results.csv.bz2 file
from ._output_final_report import output_final_report
return [output_final_report]
else:
# we don't do anything at the "foi", "analyse" or "finalise" stages
return []