EXPORT int return_advance_front( Front *front, Front **newfront, int status, const char *fname) { if (front->pp_grid && front->pp_grid->nn > 1) status = syncronize_time_step_status(status,front->pp_grid); if (debugging("final_front")) { print_Front_structure(front); print_Front_structure(*newfront); } if (status != GOOD_STEP) { free_front(*newfront); *newfront = NULL; } else if (front->_EnforceFlowSpecifedStates != NULL) { (*front->_EnforceFlowSpecifedStates)(*newfront); } if (debugging("trace")) { int dim = front->rect_grid->dim; (void) printf("Maximum propagated scaled distance = %f\n", *(front->max_scaled_propagation)); print_general_vector("Max propagated point: ", front->max_prop_point,dim,"\n"); } debug_front("final_front","after EnforceFlowSpecifedStates():", *newfront); debug_print("front","Left %s\n",fname); return status; } /*end return_advance_front*/
EXPORT void FrontFreeAll( Front *front) { free_front(front); } /* end FrontFreeAll */