emodpy.campaign.event_coordinator module#

class emodpy.campaign.event_coordinator.BaseEventCoordinator(campaign: <module 'emod_api.campaign' from '/home/docs/checkouts/readthedocs.org/user_builds/institute-for-disease-modeling-emodpy/envs/latest/lib/python3.9/site-packages/emod_api/campaign.py'>, event_coordinator_class_name: str)[source]#

Bases: object

The EventCoordinator class is the base class for all event coordinators. It is not intended for direct use.

to_schema_dict() ReadOnlyDict[source]#

Returns the EventCoordinator object as a dictionary that match the schema and can be used in the campaign.

class emodpy.campaign.event_coordinator.InterventionDistributorEventCoordinator(campaign: <module 'emod_api.campaign' from '/home/docs/checkouts/readthedocs.org/user_builds/institute-for-disease-modeling-emodpy/envs/latest/lib/python3.9/site-packages/emod_api/campaign.py'>, event_coordinator_class_name: str, intervention_list: list[emodpy.campaign.base_intervention.IndividualIntervention] | list[emodpy.campaign.base_intervention.NodeIntervention])[source]#

Bases: BaseEventCoordinator

The InterventionDistributorEventCoordinator class is a base class for all event coordinators that distribute list of interventions and has a parameter Intervention_Config.

validate_intervention_list()[source]#

Check that the intervention_list is not empty and should be a list of IndividualIntervention or NodeIntervention

set_intervention_list(campaign)[source]#

Set the intervention list in the coordinator using the MultiInterventionDistributor or MultiNodeInterventionDistributor

class emodpy.campaign.event_coordinator.StandardEventCoordinator(campaign: <module 'emod_api.campaign' from '/home/docs/checkouts/readthedocs.org/user_builds/institute-for-disease-modeling-emodpy/envs/latest/lib/python3.9/site-packages/emod_api/campaign.py'>, intervention_list: list[emodpy.campaign.base_intervention.IndividualIntervention] | list[emodpy.campaign.base_intervention.NodeIntervention], target_demographics_config: ~emodpy.campaign.common.TargetDemographicsConfig | None = None, repetition_config: ~emodpy.campaign.common.RepetitionConfig | None = None, property_restrictions: ~emodpy.campaign.common.PropertyRestrictions | None = None, targeting_config: ~emodpy.utils.targeting_config.AbstractTargetingConfig | None = None)[source]#

Bases: InterventionDistributorEventCoordinator

The StandardEventCoordinator coordinator class distributes an individual-level or node-level intervention to a specified fraction of individuals or nodes within a node set. Recurring campaigns can be created by specifying the number of times distributions should occur and the time between repetitions.

Demographic restrictions such as Demographic_Coverage and Target_Gender do not apply when distributing node-level interventions. The node-level intervention must handle the demographic restrictions.