Package org.apache.datasketches.tuple.arrayofdoubles

# Class ArrayOfDoublesUnion

java.lang.Object
org.apache.datasketches.tuple.arrayofdoubles.ArrayOfDoublesUnion

public abstract class ArrayOfDoublesUnion extends Object
The base class for unions of tuple sketches of type ArrayOfDoubles.

## Method Summary

Modifier and Type
Method
Description
`static int`
`getMaxBytes(int nomEntries, int numValues)`
`ArrayOfDoublesCompactSketch`
`getResult()`
Returns the resulting union in the form of a compact sketch
`ArrayOfDoublesCompactSketch`
`getResult(org.apache.datasketches.memory.WritableMemory dstMem)`
Returns the resulting union in the form of a compact sketch
`static ArrayOfDoublesUnion`
`heapify(org.apache.datasketches.memory.Memory srcMem)`
Heapify the given Memory as an ArrayOfDoublesUnion
`static ArrayOfDoublesUnion`
`heapify(org.apache.datasketches.memory.Memory srcMem, long seed)`
Heapify the given Memory and seed as an ArrayOfDoublesUnion
`void`
`reset()`
Resets the union to an empty state
`byte[]`
`toByteArray()`
`void`
`union(ArrayOfDoublesSketch tupleSketch)`
Updates the union by adding a set of entries from a given sketch, which can be on-heap or off-heap.
`static ArrayOfDoublesUnion`
`wrap(org.apache.datasketches.memory.Memory srcMem)`
Wrap the given Memory as an ArrayOfDoublesUnion
`static ArrayOfDoublesUnion`
`wrap(org.apache.datasketches.memory.Memory srcMem, long seed)`
Wrap the given Memory and seed as an ArrayOfDoublesUnion
`static ArrayOfDoublesUnion`
`wrap(org.apache.datasketches.memory.WritableMemory srcMem)`
Wrap the given WritableMemory as an ArrayOfDoublesUnion
`static ArrayOfDoublesUnion`
`wrap(org.apache.datasketches.memory.WritableMemory srcMem, long seed)`
Wrap the given WritableMemory and seed as an ArrayOfDoublesUnion

### Methods inherited from class java.lang.Object

`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Method Details

### heapify

public static ArrayOfDoublesUnion heapify(org.apache.datasketches.memory.Memory srcMem)
Heapify the given Memory as an ArrayOfDoublesUnion

Parameters:
  `srcMem` - the given source Memory
Returns:
  an ArrayOfDoublesUnion

### heapify

public static ArrayOfDoublesUnion heapify(org.apache.datasketches.memory.Memory srcMem, long seed)
Heapify the given Memory and seed as an ArrayOfDoublesUnion

Parameters:
  `srcMem` - the given source Memory
  `seed` - the given seed
Returns:
  an ArrayOfDoublesUnion

### wrap

public static ArrayOfDoublesUnion wrap(org.apache.datasketches.memory.Memory srcMem)
Wrap the given Memory as an ArrayOfDoublesUnion

Parameters:
  `srcMem` - the given source Memory
Returns:
  an ArrayOfDoublesUnion

### wrap

public static ArrayOfDoublesUnion wrap(org.apache.datasketches.memory.Memory srcMem, long seed)
Wrap the given Memory and seed as an ArrayOfDoublesUnion

Parameters:
  `srcMem` - the given source Memory
  `seed` - the given seed
Returns:
  an ArrayOfDoublesUnion

### wrap

public static ArrayOfDoublesUnion wrap(org.apache.datasketches.memory.WritableMemory srcMem)
Wrap the given WritableMemory as an ArrayOfDoublesUnion

Parameters:
  `srcMem` - the given source Memory
Returns:
  an ArrayOfDoublesUnion

### wrap

public static ArrayOfDoublesUnion wrap(org.apache.datasketches.memory.WritableMemory srcMem, long seed)
Wrap the given WritableMemory and seed as an ArrayOfDoublesUnion

Parameters:
  `srcMem` - the given source Memory
  `seed` - the given seed
Returns:
  an ArrayOfDoublesUnion

### union

public void union(ArrayOfDoublesSketch tupleSketch)
Updates the union by adding a set of entries from a given sketch, which can be on-heap or off-heap. Both the given tupleSketch and the internal state of the Union must have the same numValues.

Nulls and empty sketches are ignored.

Parameters:
  `tupleSketch` - sketch to add to the union

### getResult

public ArrayOfDoublesCompactSketch getResult(org.apache.datasketches.memory.WritableMemory dstMem)
Returns the resulting union in the form of a compact sketch

Parameters:
  `dstMem` - memory for the result (can be null)
Returns:
  compact sketch representing the union (off-heap if memory is provided)

### getResult

public ArrayOfDoublesCompactSketch getResult()
Returns the resulting union in the form of a compact sketch

Returns:
  on-heap compact sketch representing the union

### reset

public void reset()
Resets the union to an empty state

### toByteArray

public byte[] toByteArray()

Returns:
  a byte array representation of this object

### getMaxBytes

public static int getMaxBytes(int nomEntries, int numValues)

Parameters:
  `nomEntries` - Nominal number of entries. Forced to the nearest power of 2 greater than or equal to given value.
  `numValues` - Number of double values to keep for each key
Returns:
  maximum required storage bytes given nomEntries and numValues