[docs]defnew_intervention(camp,reduced_acquire=0.6,distributed_event='',intervention_name:str=None,disqualifying_properties:List[str]=None,new_property_value:str=None):""" MaleCircumcision intervention wrapper. Just the intervention. No configuration yet. """intervention=s2c.get_class_with_defaults("MaleCircumcision",camp.schema_path)intervention.Circumcision_Reduced_Acquire=reduced_acquireifdistributed_event:intervention.Distributed_Event_Trigger=camp.get_send_trigger(distributed_event,True)set_intervention_properties(intervention,intervention_name=intervention_name,disqualifying_properties=disqualifying_properties,new_property_value=new_property_value)returnintervention
[docs]defnew_intervention_event(camp,start_day=1,coverage=1.0,node_ids=None,intervention_name:str=None,disqualifying_properties:List[str]=None,new_property_value:str=None):""" VMMC intervention as complete (scheduled) event. """iv=new_intervention(camp,intervention_name=intervention_name,disqualifying_properties=disqualifying_properties,new_property_value=new_property_value)# Coordinatorcoordinator=s2c.get_class_with_defaults("StandardEventCoordinator",camp.schema_path)coordinator.Intervention_Config=ivcoordinator.Demographic_Coverage=coverage# Eventevent=s2c.get_class_with_defaults("CampaignEvent",camp.schema_path)event.Event_Coordinator_Config=coordinatorevent.Start_Day=float(start_day)event.Nodeset_Config=utils.do_nodes(camp.schema_path,node_ids)from.importutilsashiv_utilshiv_utils.declutter(event)returnevent