From c9843770ddee02dca46c6ba5d81cc84da32d06d4 Mon Sep 17 00:00:00 2001 From: Bennet Gerlach Date: Wed, 4 May 2011 16:23:10 +0200 Subject: Added interfaces for model classes git-svn-id: svn://sunsvr01.isp.uni-luebeck.de/swproj13/trunk@104 72836036-5685-4462-b002-a69064685172 --- src/jrummikub/model/IStoneTray.java | 40 +++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 src/jrummikub/model/IStoneTray.java (limited to 'src/jrummikub/model/IStoneTray.java') diff --git a/src/jrummikub/model/IStoneTray.java b/src/jrummikub/model/IStoneTray.java new file mode 100644 index 0000000..a9afed3 --- /dev/null +++ b/src/jrummikub/model/IStoneTray.java @@ -0,0 +1,40 @@ +package jrummikub.model; + +import jrummikub.util.Pair; + +public interface IStoneTray extends + Iterable> { + + /** + * Removes object from tray and returns it + * + * @param position + * position of the object that will be removed + * @return the picked up stone + */ + public E pickUp(Position position); + + /** + * Adds object to the tray + * + * @param object + * object to add to Hand + * @param position + * {@link Position} to put the object + */ + public void drop(E object, Position position); + + /** + * Returns the position of an object that is already on the tray + * + * @param object + * object whose position is requested + * @return position of the object or null when the object is not on the tray + */ + public Position getPosition(E object); + + public void pickUp(E object); + + public IStoneTray clone(); + +} \ No newline at end of file -- cgit v1.2.3