package com.srbenoit.math.delaunay;

/**
 * An interface for classes that can display a visualization of the process as it occurs.
 */
public interface DelaunayVisualizerInt {

    /**
     * Notifies that another step in the process has completed, and visualization can be updated.
     * Processing will not continue until this method returns, allowing a visualizer to show a slow,
     * step-by-step process.
     *
     * @param  points  the list of points being triangulated
     * @param  sub     the subdivision to draw
     * @param  phase   a string description of the phase just completed
     */
    void update(Vertex[] points, Delaunay sub, String phase);
}
