simtools.data.buffer
Class DelayedBuffer.DelayedObjectManipulator

java.lang.Object
  extended by simtools.data.buffer.Buffer.ObjectManipulator
      extended by simtools.data.buffer.SimpleBuffer.SimpleObjectManipulator
          extended by simtools.data.buffer.ResizeableBuffer.ResizeableObjectManipulator
              extended by simtools.data.buffer.DelayedBuffer.DelayedObjectManipulator
All Implemented Interfaces:
java.lang.Cloneable, Buffer.Manipulator
Enclosing class:
DelayedBuffer

public class DelayedBuffer.DelayedObjectManipulator
extends ResizeableBuffer.ResizeableObjectManipulator

This class handles optimization for Object objects.


Field Summary
 
Fields inherited from class simtools.data.buffer.SimpleBuffer.SimpleObjectManipulator
buffer
 
Constructor Summary
DelayedBuffer.DelayedObjectManipulator()
           
 
Method Summary
 void setSlice(long min, long max)
          Use this function to optimize the buffer on the given index range
 boolean setValue(long index, java.lang.Object 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.ResizeableObjectManipulator
getValue
 
Methods inherited from class simtools.data.buffer.SimpleBuffer.SimpleObjectManipulator
clone
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DelayedBuffer.DelayedObjectManipulator

public DelayedBuffer.DelayedObjectManipulator()
Method Detail

setValue

public boolean setValue(long index,
                        java.lang.Object 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.ResizeableObjectManipulator
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.ResizeableObjectManipulator