simtools.data.buffer
Class DelayedBuffer.DelayedIntegerManipulator

java.lang.Object
  extended by simtools.data.buffer.Buffer.IntegerManipulator
      extended by simtools.data.buffer.SimpleBuffer.SimpleIntegerManipulator
          extended by simtools.data.buffer.ResizeableBuffer.ResizeableIntegerManipulator
              extended by simtools.data.buffer.DelayedBuffer.DelayedIntegerManipulator
All Implemented Interfaces:
java.lang.Cloneable, Buffer.Manipulator
Enclosing class:
DelayedBuffer

public class DelayedBuffer.DelayedIntegerManipulator
extends ResizeableBuffer.ResizeableIntegerManipulator

This class handles optimization for int objects.


Field Summary
 
Fields inherited from class simtools.data.buffer.SimpleBuffer.SimpleIntegerManipulator
buffer
 
Constructor Summary
DelayedBuffer.DelayedIntegerManipulator()
           
 
Method Summary
 void setSlice(long min, long max)
          Use this function to optimize the buffer on the given index range
 boolean setValue(long index, int value)
          Unlike parent's, this buffer deletes old elements and give priority to the newly set elements.
 
Methods inherited from class simtools.data.buffer.ResizeableBuffer.ResizeableIntegerManipulator
getValue
 
Methods inherited from class simtools.data.buffer.SimpleBuffer.SimpleIntegerManipulator
clone
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DelayedBuffer.DelayedIntegerManipulator

public DelayedBuffer.DelayedIntegerManipulator()
Method Detail

setValue

public boolean setValue(long index,
                        int value)
                 throws DataException
Unlike parent's, this buffer deletes old elements and give priority to the newly set elements. If buffer hasn't reached max size yet, let it grow by using parent's func.Also remember that setSlice sets a max size. If buffer has reached max size, paren'ts behaviour is to ignore the new value. We don't.

Overrides:
setValue in class ResizeableBuffer.ResizeableIntegerManipulator
Throws:
DataException

setSlice

public void setSlice(long min,
                     long max)
Use this function to optimize the buffer on the given index range

Overrides:
setSlice in class ResizeableBuffer.ResizeableIntegerManipulator