From 8b3e5b94bcd3167278eb972b2be37086d3bd2996 Mon Sep 17 00:00:00 2001
From: Sven Gothel <sgothel@jausoft.com>
Date: Mon, 31 Dec 2012 14:52:36 +0100
Subject: PrimitiveStack: Add 'void position(int)' to set new position. Add
 test case w/ initialSizeElem:=0.

---
 src/java/com/jogamp/common/util/PrimitiveStack.java | 18 +++++++++++++-----
 1 file changed, 13 insertions(+), 5 deletions(-)

(limited to 'src/java/com/jogamp/common/util/PrimitiveStack.java')

diff --git a/src/java/com/jogamp/common/util/PrimitiveStack.java b/src/java/com/jogamp/common/util/PrimitiveStack.java
index 23447e3..89ae72e 100644
--- a/src/java/com/jogamp/common/util/PrimitiveStack.java
+++ b/src/java/com/jogamp/common/util/PrimitiveStack.java
@@ -41,16 +41,24 @@ public interface PrimitiveStack {
     int capacity();
     
     /** 
-     * Returns the current position where the next put operation will store the next element.
+     * Returns the current position of this stack.
      * <p>
-     * The position equals to the number of elements already stored.
+     * Position is in the range: 0 &le; position &lt; {@link #capacity()}. 
      * </p>
-     * <p> 
-     * 0 denotes an empty stack.
+     * <p>
+     * The position equals to the number of elements stored.
      * </p>
      **/
     int position();
     
+    /**
+     * Sets the position of this stack.
+     * 
+     * @param newPosition the new position
+     * @throws IndexOutOfBoundsException if <code>newPosition</code> is outside of range: 0 &le; position &lt; {@link #capacity()}.
+     */
+    void position(int newPosition) throws IndexOutOfBoundsException;
+    
     /** 
      * Returns the remaining elements left before stack will grow about {@link #getGrowSize()}.
      * <pre>
@@ -68,5 +76,5 @@ public interface PrimitiveStack {
     int getGrowSize();
 
     /** Set new {@link #growSize(). */
-    void setGrowSize(int newGrowSize);
+    void setGrowSize(int newGrowSize);    
 }
-- 
cgit v1.2.3