Class AbstractPackedLongArray

java.lang.Object
org.HdrHistogram.packedarray.AbstractPackedLongArray
All Implemented Interfaces:
Serializable, Iterable<Long>
Direct Known Subclasses:
PackedLongArray

public abstract class AbstractPackedLongArray extends Object implements Iterable<Long>, Serializable
A Packed array of signed 64 bit values, and supports get(), set(), add() and increment() operations on the logical contents of the array.
See Also:
  • Constructor Details

    • AbstractPackedLongArray

      public AbstractPackedLongArray()
  • Method Details

    • getStartTimeStamp

      public long getStartTimeStamp()
      get the start time stamp [optionally] stored with this array
      Returns:
      the start time stamp [optionally] stored with this array
    • setStartTimeStamp

      public void setStartTimeStamp(long timeStampMsec)
      Set the start time stamp value associated with this array to a given value.
      Parameters:
      timeStampMsec - the value to set the time stamp to, [by convention] in msec since the epoch.
    • getEndTimeStamp

      public long getEndTimeStamp()
      get the end time stamp [optionally] stored with this array
      Returns:
      the end time stamp [optionally] stored with this array
    • setEndTimeStamp

      public void setEndTimeStamp(long timeStampMsec)
      Set the end time stamp value associated with this array to a given value.
      Parameters:
      timeStampMsec - the value to set the time stamp to, [by convention] in msec since the epoch.
    • setVirtualLength

      public abstract void setVirtualLength(int newVirtualArrayLength)
      Set a new virtual length for the array.
      Parameters:
      newVirtualArrayLength - the
    • copy

      public abstract AbstractPackedLongArray copy()
      Create a copy of this array, complete with data and everything.
      Returns:
      A distinct copy of this array.
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • get

      public long get(int index)
      Get value at virtual index in the array
      Parameters:
      index - the virtual array index
      Returns:
      the array value at the virtual index given
    • increment

      public void increment(int index)
      Increment value at a virtual index in the array
      Parameters:
      index - virtual index of value to increment
    • add

      public void add(int index, long value)
      Add to a value at a virtual index in the array
      Parameters:
      index - the virtual index of the value to be added to
      value - the value to add
    • set

      public void set(int index, long value)
      Set the value at a virtual index in the array
      Parameters:
      index - the virtual index of the value to set
      value - the value to set
    • add

      public void add(AbstractPackedLongArray other)
      Add the contents of the other array to this one
      Parameters:
      other - The to add to this array
    • clear

      public void clear()
      Clear the array contents
    • getPhysicalLength

      public int getPhysicalLength()
      Get the current physical length (in longs) of the array's backing storage
      Returns:
      the current physical length (in longs) of the array's current backing storage
    • length

      public int length()
      Get the (virtual) length of the array
      Returns:
      the (virtual) length of the array
    • iterator

      public Iterator<Long> iterator()
      An Iterator over all values in the array
      Specified by:
      iterator in interface Iterable<Long>
      Returns:
      an Iterator over all values in the array
    • nonZeroValues

      public Iterable<IterationValue> nonZeroValues()
      An Iterator over all non-Zero values in the array
      Returns:
      an Iterator over all non-Zero values in the array
    • equals

      public boolean equals(Object other)
      Determine if this array is equivalent to another.
      Overrides:
      equals in class Object
      Parameters:
      other - the other array to compare to
      Returns:
      True if this array are equivalent with the other.
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object