Math2mat

/home/ythoma/docs/math2mat/svn/wp1/framework/m2mGUI/src/m2m/backend/octaveparser/ReadWriteIndex.java

Go to the documentation of this file.
00001 
00018 package m2m.backend.octaveparser;
00019 
00020 import java.util.Vector;
00021 
00022 public class ReadWriteIndex
00023 {
00027         public int writeIndex;
00032         public Vector<Integer>  readIndex;
00033         
00034         
00038         public ReadWriteIndex() 
00039         {
00040                 writeIndex = 1;
00041                 readIndex = new Vector<Integer>();
00042         }
00043         
00047         public ReadWriteIndex(ReadWriteIndex rwi) 
00048         {
00049                 writeIndex = rwi.writeIndex;
00050                 readIndex = new Vector<Integer>(rwi.readIndex);
00051         }
00052         
00057         public ReadWriteIndex getNextVariable() {
00058                 readIndex.setElementAt(writeIndex, readIndex.size()-1);
00059                 writeIndex++;
00060                 return this;
00061         }
00062         
00063         
00068         public ReadWriteIndex getPreviousVariable() {
00069                 writeIndex--;
00070                 readIndex.setElementAt(writeIndex-1, readIndex.size()-1);
00071                 return this;
00072         }
00073         
00074         
00078         public void addReadIndex() 
00079         {
00080                 if(readIndex.size() == 0)
00081                         readIndex.add(0);
00082                 else
00083                         readIndex.add(readIndex.lastElement());
00084         }
00085         
00086         
00090         public void removeReadIndex() 
00091         {
00092                 if(readIndex.size() > 1)
00093                         readIndex.remove(readIndex.size()-1);
00094         }
00095 
00096         
00101         public int getReadIndex()
00102         {
00103                 if(readIndex.size() == 0)
00104                         readIndex.add(0);
00105                 return readIndex.lastElement();
00106         }
00107         
00112         public int getWriteIndex()
00113         {
00114                 return writeIndex;
00115         }
00116 }       
 All Classes Namespaces Files Functions Variables Enumerations