package ch.gtache.fro.practice; import ch.gtache.fro.Bird; /** * Runs a practice session */ public interface PracticeRunner { /** * Starts a practice run * * @param parameters The practice parameters * @return The practice run */ PracticeRun start(PracticeParameters parameters); /** * Runs a step in the practice run * * @param run The run * @param answer The answer * @return The run after the step */ PracticeRun step(PracticeRun run, Bird answer); /** * Finishes the practice run * * @param run The run * @return The result of the run */ PracticeResult finish(PracticeRun run); }