package jrummikub.control;

import jrummikub.util.IEvent;

/**
 * Interface for the {@link TurnTimer}
 */
public interface ITurnTimer {

	/**
	 * Starts the timer
	 */
	public abstract void startTimer();

	/**
	 * Stops the timer. Stopping an already stopped timer is a no-op.
	 */
	public abstract void stopTimer();

	/**
	 * Returns the event that is emitted if the timer timed out.
	 * 
	 * @return time out event
	 */
	public abstract IEvent getTimeRunOutEvent();

}