/** * Runs this model. * * @param self the model. * @param herds a herd list. * @param zones a zone list. * @param event the event that caused the model to run. * @param rng a random number generator. * @param queue for any new events the model creates. */ void run (struct naadsm_model_t_ *self, HRD_herd_list_t * herds, ZON_zone_list_t * zones, EVT_event_t * event, RAN_gen_t * rng, EVT_event_queue_t * queue) { #if DEBUG g_debug ("----- ENTER run (%s)", MODEL_NAME); #endif switch (event->type) { case EVT_BeforeAnySimulations: handle_before_any_simulations_event (queue); break; case EVT_Detection: handle_detection_event (self, herds, &(event->u.detection), queue); break; default: g_error ("%s has received a %s event, which it does not listen for. This should never happen. Please contact the developer.", MODEL_NAME, EVT_event_type_name[event->type]); } #if DEBUG g_debug ("----- EXIT run (%s)", MODEL_NAME); #endif }
/** * Runs this model. * * @param self the model. * @param herds a herd list. * @param zones a zone list. * @param event the event that caused the model to run. * @param rng a random number generator. * @param queue for any new events the model creates. */ void run (struct ergadm_model_t_ *self, HRD_herd_list_t * herds, ZON_zone_list_t * zones, EVT_event_t * event, RAN_gen_t * rng, EVT_event_queue_t * queue) { #if DEBUG g_log (G_LOG_DOMAIN, G_LOG_LEVEL_DEBUG, "----- ENTER run (%s)", MODEL_NAME); #endif switch (event->type) { case EVT_Detection: handle_detection_event (self, &(event->u.detection)); break; default: g_error ("%s has received a %s event, which it does not listen for. This should never happen. Please contact the developer.", MODEL_NAME, EVT_event_type_name[event->type]); } #if DEBUG g_log (G_LOG_DOMAIN, G_LOG_LEVEL_DEBUG, "----- EXIT run (%s)", MODEL_NAME); #endif }