<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_162) on Thu Oct 25 17:06:10 PDT 2018 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>DoublesUnion (com.yahoo.datasketches:sketches-core 0.12.1-SNAPSHOT API)</title>
<meta name="date" content="2018-10-25">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="DoublesUnion (com.yahoo.datasketches:sketches-core 0.12.1-SNAPSHOT API)";
        }
    }
    catch(err) {
    }
//-->
var methods = {"i0":9,"i1":6,"i2":6,"i3":6,"i4":6,"i5":6,"i6":9,"i7":9,"i8":6,"i9":6,"i10":6,"i11":6,"i12":6,"i13":6,"i14":6,"i15":6,"i16":6,"i17":6,"i18":9,"i19":9};
var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/DoublesUnion.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../com/yahoo/sketches/quantiles/DoublesSketchIterator.html" title="class in com.yahoo.sketches.quantiles"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../com/yahoo/sketches/quantiles/DoublesUnionBuilder.html" title="class in com.yahoo.sketches.quantiles"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?com/yahoo/sketches/quantiles/DoublesUnion.html" target="_top">Frames</a></li>
<li><a href="DoublesUnion.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">com.yahoo.sketches.quantiles</div>
<h2 title="Class DoublesUnion" class="title">Class DoublesUnion</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li>com.yahoo.sketches.quantiles.DoublesUnion</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<br>
<pre>public abstract class <span class="typeNameLabel">DoublesUnion</span>
extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
<div class="block">The API for Union operations for quantiles DoublesSketches</div>
<dl>
<dt><span class="simpleTagLabel">Author:</span></dt>
<dd>Lee Rhodes</dd>
</dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!--   -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../com/yahoo/sketches/quantiles/DoublesUnion.html#DoublesUnion--">DoublesUnion</a></span>()</code>&nbsp;</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>static <a href="../../../../com/yahoo/sketches/quantiles/DoublesUnionBuilder.html" title="class in com.yahoo.sketches.quantiles">DoublesUnionBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/yahoo/sketches/quantiles/DoublesUnion.html#builder--">builder</a></span>()</code>
<div class="block">Returns a new UnionBuilder</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>abstract int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/yahoo/sketches/quantiles/DoublesUnion.html#getEffectiveK--">getEffectiveK</a></span>()</code>
<div class="block">Returns the effective <i>k</i> of this Union.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>abstract int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/yahoo/sketches/quantiles/DoublesUnion.html#getMaxK--">getMaxK</a></span>()</code>
<div class="block">Returns the configured <i>maxK</i> of this Union.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>abstract <a href="../../../../com/yahoo/sketches/quantiles/UpdateDoublesSketch.html" title="class in com.yahoo.sketches.quantiles">UpdateDoublesSketch</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/yahoo/sketches/quantiles/DoublesUnion.html#getResult--">getResult</a></span>()</code>
<div class="block">Gets the result of this Union as an UpdateDoublesSketch, which enables further update
 operations on the resulting sketch.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>abstract <a href="../../../../com/yahoo/sketches/quantiles/UpdateDoublesSketch.html" title="class in com.yahoo.sketches.quantiles">UpdateDoublesSketch</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/yahoo/sketches/quantiles/DoublesUnion.html#getResult-com.yahoo.memory.WritableMemory-">getResult</a></span>(com.yahoo.memory.WritableMemory&nbsp;dstMem)</code>
<div class="block">Places the result of this Union into the provided memory as an UpdateDoublesSketch,
 which enables further update operations on the resulting sketch.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>abstract <a href="../../../../com/yahoo/sketches/quantiles/UpdateDoublesSketch.html" title="class in com.yahoo.sketches.quantiles">UpdateDoublesSketch</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/yahoo/sketches/quantiles/DoublesUnion.html#getResultAndReset--">getResultAndReset</a></span>()</code>
<div class="block">Gets the result of this Union  as an UpdateDoublesSketch, which enables further update
 operations on the resulting sketch.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>static <a href="../../../../com/yahoo/sketches/quantiles/DoublesUnion.html" title="class in com.yahoo.sketches.quantiles">DoublesUnion</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/yahoo/sketches/quantiles/DoublesUnion.html#heapify-com.yahoo.sketches.quantiles.DoublesSketch-">heapify</a></span>(<a href="../../../../com/yahoo/sketches/quantiles/DoublesSketch.html" title="class in com.yahoo.sketches.quantiles">DoublesSketch</a>&nbsp;sketch)</code>
<div class="block">Returns a Heap Union object that has been initialized with the data from the given sketch.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>static <a href="../../../../com/yahoo/sketches/quantiles/DoublesUnion.html" title="class in com.yahoo.sketches.quantiles">DoublesUnion</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/yahoo/sketches/quantiles/DoublesUnion.html#heapify-com.yahoo.memory.Memory-">heapify</a></span>(com.yahoo.memory.Memory&nbsp;srcMem)</code>
<div class="block">Returns a Heap Union object that has been initialized with the data from the given memory
 image of a sketch.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>abstract boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/yahoo/sketches/quantiles/DoublesUnion.html#isDirect--">isDirect</a></span>()</code>
<div class="block">Returns true if this union is direct</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>abstract boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/yahoo/sketches/quantiles/DoublesUnion.html#isEmpty--">isEmpty</a></span>()</code>
<div class="block">Returns true if this union is empty</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>abstract boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/yahoo/sketches/quantiles/DoublesUnion.html#isSameResource-com.yahoo.memory.Memory-">isSameResource</a></span>(com.yahoo.memory.Memory&nbsp;that)</code>
<div class="block">Returns true if the backing resource of <i>this</i> is identical with the backing resource
 of <i>that</i>.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/yahoo/sketches/quantiles/DoublesUnion.html#reset--">reset</a></span>()</code>
<div class="block">Resets this Union to a virgin state.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>abstract byte[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/yahoo/sketches/quantiles/DoublesUnion.html#toByteArray--">toByteArray</a></span>()</code>
<div class="block">Serialize this union to a byte array.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>abstract <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/yahoo/sketches/quantiles/DoublesUnion.html#toString--">toString</a></span>()</code>
<div class="block">Returns summary information about the backing sketch.</div>
</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>abstract <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/yahoo/sketches/quantiles/DoublesUnion.html#toString-boolean-boolean-">toString</a></span>(boolean&nbsp;sketchSummary,
        boolean&nbsp;dataDetail)</code>
<div class="block">Returns summary information about the backing sketch.</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code>abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/yahoo/sketches/quantiles/DoublesUnion.html#update-double-">update</a></span>(double&nbsp;dataItem)</code>
<div class="block">Update this union with the given double (or float) data Item.</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code>abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/yahoo/sketches/quantiles/DoublesUnion.html#update-com.yahoo.sketches.quantiles.DoublesSketch-">update</a></span>(<a href="../../../../com/yahoo/sketches/quantiles/DoublesSketch.html" title="class in com.yahoo.sketches.quantiles">DoublesSketch</a>&nbsp;sketchIn)</code>
<div class="block">Iterative union operation, which means this method can be repeatedly called.</div>
</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code>abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/yahoo/sketches/quantiles/DoublesUnion.html#update-com.yahoo.memory.Memory-">update</a></span>(com.yahoo.memory.Memory&nbsp;mem)</code>
<div class="block">Iterative union operation, which means this method can be repeatedly called.</div>
</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code>static <a href="../../../../com/yahoo/sketches/quantiles/DoublesUnion.html" title="class in com.yahoo.sketches.quantiles">DoublesUnion</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/yahoo/sketches/quantiles/DoublesUnion.html#wrap-com.yahoo.memory.Memory-">wrap</a></span>(com.yahoo.memory.Memory&nbsp;mem)</code>
<div class="block">Returns a read-only Union object that wraps off-heap data of the given memory image of
 a sketch.</div>
</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code>static <a href="../../../../com/yahoo/sketches/quantiles/DoublesUnion.html" title="class in com.yahoo.sketches.quantiles">DoublesUnion</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/yahoo/sketches/quantiles/DoublesUnion.html#wrap-com.yahoo.memory.WritableMemory-">wrap</a></span>(com.yahoo.memory.WritableMemory&nbsp;mem)</code>
<div class="block">Returns an updatable Union object that wraps off-heap data of the given memory image of
 a sketch.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!--   -->
</a>
<h3>Constructor Detail</h3>
<a name="DoublesUnion--">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>DoublesUnion</h4>
<pre>public&nbsp;DoublesUnion()</pre>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a name="builder--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>builder</h4>
<pre>public static&nbsp;<a href="../../../../com/yahoo/sketches/quantiles/DoublesUnionBuilder.html" title="class in com.yahoo.sketches.quantiles">DoublesUnionBuilder</a>&nbsp;builder()</pre>
<div class="block">Returns a new UnionBuilder</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a new UnionBuilder</dd>
</dl>
</li>
</ul>
<a name="heapify-com.yahoo.sketches.quantiles.DoublesSketch-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>heapify</h4>
<pre>public static&nbsp;<a href="../../../../com/yahoo/sketches/quantiles/DoublesUnion.html" title="class in com.yahoo.sketches.quantiles">DoublesUnion</a>&nbsp;heapify(<a href="../../../../com/yahoo/sketches/quantiles/DoublesSketch.html" title="class in com.yahoo.sketches.quantiles">DoublesSketch</a>&nbsp;sketch)</pre>
<div class="block">Returns a Heap Union object that has been initialized with the data from the given sketch.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>sketch</code> - A DoublesSketch to be used as a source of data only and will not be modified.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a DoublesUnion object</dd>
</dl>
</li>
</ul>
<a name="heapify-com.yahoo.memory.Memory-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>heapify</h4>
<pre>public static&nbsp;<a href="../../../../com/yahoo/sketches/quantiles/DoublesUnion.html" title="class in com.yahoo.sketches.quantiles">DoublesUnion</a>&nbsp;heapify(com.yahoo.memory.Memory&nbsp;srcMem)</pre>
<div class="block">Returns a Heap Union object that has been initialized with the data from the given memory
 image of a sketch.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>srcMem</code> - A memory image of a DoublesSketch to be used as a source of data,
 but will not be modified.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a Union object</dd>
</dl>
</li>
</ul>
<a name="wrap-com.yahoo.memory.Memory-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>wrap</h4>
<pre>public static&nbsp;<a href="../../../../com/yahoo/sketches/quantiles/DoublesUnion.html" title="class in com.yahoo.sketches.quantiles">DoublesUnion</a>&nbsp;wrap(com.yahoo.memory.Memory&nbsp;mem)</pre>
<div class="block">Returns a read-only Union object that wraps off-heap data of the given memory image of
 a sketch. The data structures of the Union remain off-heap.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>mem</code> - A memory region to be used as the data structure for the sketch
 and will be modified.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a Union object</dd>
</dl>
</li>
</ul>
<a name="wrap-com.yahoo.memory.WritableMemory-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>wrap</h4>
<pre>public static&nbsp;<a href="../../../../com/yahoo/sketches/quantiles/DoublesUnion.html" title="class in com.yahoo.sketches.quantiles">DoublesUnion</a>&nbsp;wrap(com.yahoo.memory.WritableMemory&nbsp;mem)</pre>
<div class="block">Returns an updatable Union object that wraps off-heap data of the given memory image of
 a sketch. The data structures of the Union remain off-heap.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>mem</code> - A memory region to be used as the data structure for the sketch
 and will be modified.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a Union object</dd>
</dl>
</li>
</ul>
<a name="isEmpty--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isEmpty</h4>
<pre>public abstract&nbsp;boolean&nbsp;isEmpty()</pre>
<div class="block">Returns true if this union is empty</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if this union is empty</dd>
</dl>
</li>
</ul>
<a name="isDirect--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isDirect</h4>
<pre>public abstract&nbsp;boolean&nbsp;isDirect()</pre>
<div class="block">Returns true if this union is direct</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if this union is direct</dd>
</dl>
</li>
</ul>
<a name="getMaxK--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMaxK</h4>
<pre>public abstract&nbsp;int&nbsp;getMaxK()</pre>
<div class="block">Returns the configured <i>maxK</i> of this Union.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the configured <i>maxK</i> of this Union.</dd>
</dl>
</li>
</ul>
<a name="getEffectiveK--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getEffectiveK</h4>
<pre>public abstract&nbsp;int&nbsp;getEffectiveK()</pre>
<div class="block">Returns the effective <i>k</i> of this Union.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the effective <i>k</i> of this Union.</dd>
</dl>
</li>
</ul>
<a name="update-com.yahoo.sketches.quantiles.DoublesSketch-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>update</h4>
<pre>public abstract&nbsp;void&nbsp;update(<a href="../../../../com/yahoo/sketches/quantiles/DoublesSketch.html" title="class in com.yahoo.sketches.quantiles">DoublesSketch</a>&nbsp;sketchIn)</pre>
<div class="block">Iterative union operation, which means this method can be repeatedly called.
 Merges the given sketch into this union object.
 The given sketch is not modified.
 It is required that the ratio of the two K values be a power of 2.
 This is easily satisfied if each of the K values is already a power of 2.
 If the given sketch is null or empty it is ignored.

 <p>It is required that the results of the union operation, which can be obtained at any time,
 is obtained from <a href="../../../../com/yahoo/sketches/quantiles/DoublesUnion.html#getResult--"><code>getResult()</code></a>.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>sketchIn</code> - the sketch to be merged into this one.</dd>
</dl>
</li>
</ul>
<a name="update-com.yahoo.memory.Memory-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>update</h4>
<pre>public abstract&nbsp;void&nbsp;update(com.yahoo.memory.Memory&nbsp;mem)</pre>
<div class="block">Iterative union operation, which means this method can be repeatedly called.
 Merges the given Memory image of a DoublesSketch into this union object.
 The given Memory object is not modified and a link to it is not retained.
 It is required that the ratio of the two K values be a power of 2.
 This is easily satisfied if each of the K values is already a power of 2.
 If the given sketch is null or empty it is ignored.

 <p>It is required that the results of the union operation, which can be obtained at any time,
 is obtained from <a href="../../../../com/yahoo/sketches/quantiles/DoublesUnion.html#getResult--"><code>getResult()</code></a>.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>mem</code> - Memory image of sketch to be merged</dd>
</dl>
</li>
</ul>
<a name="update-double-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>update</h4>
<pre>public abstract&nbsp;void&nbsp;update(double&nbsp;dataItem)</pre>
<div class="block">Update this union with the given double (or float) data Item.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>dataItem</code> - The given double datum.</dd>
</dl>
</li>
</ul>
<a name="getResult--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getResult</h4>
<pre>public abstract&nbsp;<a href="../../../../com/yahoo/sketches/quantiles/UpdateDoublesSketch.html" title="class in com.yahoo.sketches.quantiles">UpdateDoublesSketch</a>&nbsp;getResult()</pre>
<div class="block">Gets the result of this Union as an UpdateDoublesSketch, which enables further update
 operations on the resulting sketch. The Union state has not been changed, which allows
 further union operations.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the result of this Union operation</dd>
</dl>
</li>
</ul>
<a name="getResult-com.yahoo.memory.WritableMemory-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getResult</h4>
<pre>public abstract&nbsp;<a href="../../../../com/yahoo/sketches/quantiles/UpdateDoublesSketch.html" title="class in com.yahoo.sketches.quantiles">UpdateDoublesSketch</a>&nbsp;getResult(com.yahoo.memory.WritableMemory&nbsp;dstMem)</pre>
<div class="block">Places the result of this Union into the provided memory as an UpdateDoublesSketch,
 which enables further update operations on the resulting sketch. The Union state has not
 been changed, which allows further union operations.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>dstMem</code> - the destination memory for the result</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the result of this Union operation</dd>
</dl>
</li>
</ul>
<a name="getResultAndReset--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getResultAndReset</h4>
<pre>public abstract&nbsp;<a href="../../../../com/yahoo/sketches/quantiles/UpdateDoublesSketch.html" title="class in com.yahoo.sketches.quantiles">UpdateDoublesSketch</a>&nbsp;getResultAndReset()</pre>
<div class="block">Gets the result of this Union  as an UpdateDoublesSketch, which enables further update
 operations on the resulting sketch. The Union is reset to the virgin state.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the result of this Union operation and reset.</dd>
</dl>
</li>
</ul>
<a name="reset--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>reset</h4>
<pre>public abstract&nbsp;void&nbsp;reset()</pre>
<div class="block">Resets this Union to a virgin state.</div>
</li>
</ul>
<a name="toByteArray--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>toByteArray</h4>
<pre>public abstract&nbsp;byte[]&nbsp;toByteArray()</pre>
<div class="block">Serialize this union to a byte array. Result is an UpdateDoublesSketch, serialized in an
 unordered, non-compact form. The resulting byte[] can be heapified or wrapped  as either a
 sketch or a union.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>byte array of this union</dd>
</dl>
</li>
</ul>
<a name="toString--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>toString</h4>
<pre>public abstract&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;toString()</pre>
<div class="block">Returns summary information about the backing sketch.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a></code>&nbsp;in class&nbsp;<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></dd>
</dl>
</li>
</ul>
<a name="toString-boolean-boolean-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>toString</h4>
<pre>public abstract&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;toString(boolean&nbsp;sketchSummary,
                                boolean&nbsp;dataDetail)</pre>
<div class="block">Returns summary information about the backing sketch. Used for debugging.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>sketchSummary</code> - if true includes sketch summary</dd>
<dd><code>dataDetail</code> - if true includes data detail</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>summary information about the sketch.</dd>
</dl>
</li>
</ul>
<a name="isSameResource-com.yahoo.memory.Memory-">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>isSameResource</h4>
<pre>public abstract&nbsp;boolean&nbsp;isSameResource(com.yahoo.memory.Memory&nbsp;that)</pre>
<div class="block">Returns true if the backing resource of <i>this</i> is identical with the backing resource
 of <i>that</i>. The capacities must be the same.  If <i>this</i> is a region,
 the region offset must also be the same.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>that</code> - A different non-null object</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if the backing resource of <i>this</i> is the same as the backing resource
 of <i>that</i>.</dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/DoublesUnion.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../com/yahoo/sketches/quantiles/DoublesSketchIterator.html" title="class in com.yahoo.sketches.quantiles"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../com/yahoo/sketches/quantiles/DoublesUnionBuilder.html" title="class in com.yahoo.sketches.quantiles"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?com/yahoo/sketches/quantiles/DoublesUnion.html" target="_top">Frames</a></li>
<li><a href="DoublesUnion.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 2015&#x2013;2018. All rights reserved.</small></p>
</body>
</html>
