Class CircularBuffer


  • public class CircularBuffer
    extends Object
    This is a simple circular buffer so we don't need to "bucket brigade" copy old values.
    • Constructor Detail

      • CircularBuffer

        public CircularBuffer​(int size)
        Create a CircularBuffer with the provided size.
        Parameters:
        size - The size of the circular buffer.
    • Method Detail

      • addFirst

        public void addFirst​(double value)
        Push new value onto front of the buffer. The value at the back is overwritten if the buffer is full.
      • addLast

        public void addLast​(double value)
        Push new value onto back of the buffer. The value at the front is overwritten if the buffer is full.
      • removeFirst

        public double removeFirst()
        Pop value at front of buffer.
        Returns:
        value at front of buffer
      • removeLast

        public double removeLast()
        Pop value at back of buffer.
      • clear

        public void clear()
        Sets internal buffer contents to zero.
      • get

        public double get​(int index)
        Get the element at the provided index relative to the start of the buffer.
        Returns:
        Element at index starting from front of buffer.