blob: be91dc9bf57bee02620fb29a5037910dfc335c97 [file] [log] [blame]
<!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 Mar 14 13:13:09 PDT 2019 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Intersection (com.yahoo.datasketches:sketches-core 0.13.1-SNAPSHOT API)</title>
<meta name="date" content="2019-03-14">
<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="Intersection (com.yahoo.datasketches:sketches-core 0.13.1-SNAPSHOT API)";
}
}
catch(err) {
}
//-->
var methods = {"i0":10,"i1":6,"i2":6,"i3":6,"i4":6,"i5":6,"i6":6};
var tabs = {65535:["t0","All 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/Intersection.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/theta/HashIterator.html" title="interface in com.yahoo.sketches.theta"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../com/yahoo/sketches/theta/JaccardSimilarity.html" title="class in com.yahoo.sketches.theta"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?com/yahoo/sketches/theta/Intersection.html" target="_top">Frames</a></li>
<li><a href="Intersection.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.theta</div>
<h2 title="Class Intersection" class="title">Class Intersection</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><a href="../../../../com/yahoo/sketches/theta/SetOperation.html" title="class in com.yahoo.sketches.theta">com.yahoo.sketches.theta.SetOperation</a></li>
<li>
<ul class="inheritance">
<li>com.yahoo.sketches.theta.Intersection</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<br>
<pre>public abstract class <span class="typeNameLabel">Intersection</span>
extends <a href="../../../../com/yahoo/sketches/theta/SetOperation.html" title="class in com.yahoo.sketches.theta">SetOperation</a></pre>
<div class="block">The API for intersection operations</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/theta/Intersection.html#Intersection--">Intersection</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="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><a href="../../../../com/yahoo/sketches/Family.html" title="enum in com.yahoo.sketches">Family</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/yahoo/sketches/theta/Intersection.html#getFamily--">getFamily</a></span>()</code>
<div class="block">Gets the Family of this SetOperation</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>abstract <a href="../../../../com/yahoo/sketches/theta/CompactSketch.html" title="class in com.yahoo.sketches.theta">CompactSketch</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/yahoo/sketches/theta/Intersection.html#getResult--">getResult</a></span>()</code>
<div class="block">Gets the result of this operation as an ordered CompactSketch on the Java heap.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>abstract <a href="../../../../com/yahoo/sketches/theta/CompactSketch.html" title="class in com.yahoo.sketches.theta">CompactSketch</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/yahoo/sketches/theta/Intersection.html#getResult-boolean-com.yahoo.memory.WritableMemory-">getResult</a></span>(boolean&nbsp;dstOrdered,
com.yahoo.memory.WritableMemory&nbsp;dstMem)</code>
<div class="block">Gets the result of this operation as a CompactSketch of the chosen form.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>abstract boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/yahoo/sketches/theta/Intersection.html#hasResult--">hasResult</a></span>()</code>
<div class="block">Returns true if there is an intersection result available</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/yahoo/sketches/theta/Intersection.html#reset--">reset</a></span>()</code>
<div class="block">Resets this Intersection.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>abstract byte[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/yahoo/sketches/theta/Intersection.html#toByteArray--">toByteArray</a></span>()</code>
<div class="block">Serialize this intersection to a byte array form.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/yahoo/sketches/theta/Intersection.html#update-com.yahoo.sketches.theta.Sketch-">update</a></span>(<a href="../../../../com/yahoo/sketches/theta/Sketch.html" title="class in com.yahoo.sketches.theta">Sketch</a>&nbsp;sketchIn)</code>
<div class="block">Intersect the given sketch with the internal state.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.com.yahoo.sketches.theta.SetOperation">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;com.yahoo.sketches.theta.<a href="../../../../com/yahoo/sketches/theta/SetOperation.html" title="class in com.yahoo.sketches.theta">SetOperation</a></h3>
<code><a href="../../../../com/yahoo/sketches/theta/SetOperation.html#builder--">builder</a>, <a href="../../../../com/yahoo/sketches/theta/SetOperation.html#getMaxIntersectionBytes-int-">getMaxIntersectionBytes</a>, <a href="../../../../com/yahoo/sketches/theta/SetOperation.html#getMaxUnionBytes-int-">getMaxUnionBytes</a>, <a href="../../../../com/yahoo/sketches/theta/SetOperation.html#heapify-com.yahoo.memory.Memory-">heapify</a>, <a href="../../../../com/yahoo/sketches/theta/SetOperation.html#heapify-com.yahoo.memory.Memory-long-">heapify</a>, <a href="../../../../com/yahoo/sketches/theta/SetOperation.html#isSameResource-com.yahoo.memory.Memory-">isSameResource</a>, <a href="../../../../com/yahoo/sketches/theta/SetOperation.html#wrap-com.yahoo.memory.Memory-">wrap</a>, <a href="../../../../com/yahoo/sketches/theta/SetOperation.html#wrap-com.yahoo.memory.Memory-long-">wrap</a>, <a href="../../../../com/yahoo/sketches/theta/SetOperation.html#wrap-com.yahoo.memory.WritableMemory-">wrap</a>, <a href="../../../../com/yahoo/sketches/theta/SetOperation.html#wrap-com.yahoo.memory.WritableMemory-long-">wrap</a></code></li>
</ul>
<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#toString--" title="class or interface in java.lang">toString</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="Intersection--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>Intersection</h4>
<pre>public&nbsp;Intersection()</pre>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="getFamily--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getFamily</h4>
<pre>public&nbsp;<a href="../../../../com/yahoo/sketches/Family.html" title="enum in com.yahoo.sketches">Family</a>&nbsp;getFamily()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../com/yahoo/sketches/theta/SetOperation.html#getFamily--">SetOperation</a></code></span></div>
<div class="block">Gets the Family of this SetOperation</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../com/yahoo/sketches/theta/SetOperation.html#getFamily--">getFamily</a></code>&nbsp;in class&nbsp;<code><a href="../../../../com/yahoo/sketches/theta/SetOperation.html" title="class in com.yahoo.sketches.theta">SetOperation</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the Family of this SetOperation</dd>
</dl>
</li>
</ul>
<a name="getResult-boolean-com.yahoo.memory.WritableMemory-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getResult</h4>
<pre>public abstract&nbsp;<a href="../../../../com/yahoo/sketches/theta/CompactSketch.html" title="class in com.yahoo.sketches.theta">CompactSketch</a>&nbsp;getResult(boolean&nbsp;dstOrdered,
com.yahoo.memory.WritableMemory&nbsp;dstMem)</pre>
<div class="block">Gets the result of this operation as a CompactSketch of the chosen form.
The update method must have been called at least once, otherwise an exception will be
thrown. This is because a virgin Intersection object represents the Universal Set,
which would have an infinite number of values.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>dstOrdered</code> - <a href="../../../../resources/dictionary.html#dstOrdered">See Destination Ordered</a></dd>
<dd><code>dstMem</code> - <a href="../../../../resources/dictionary.html#dstMem">See Destination Memory</a>.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the result of this operation as a CompactSketch of the chosen form</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/theta/CompactSketch.html" title="class in com.yahoo.sketches.theta">CompactSketch</a>&nbsp;getResult()</pre>
<div class="block">Gets the result of this operation as an ordered CompactSketch on the Java heap.
The update method must have been called at least once.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the result of this operation as an ordered CompactSketch on the Java heap</dd>
</dl>
</li>
</ul>
<a name="hasResult--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasResult</h4>
<pre>public abstract&nbsp;boolean&nbsp;hasResult()</pre>
<div class="block">Returns true if there is an intersection result available</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if there is an intersection result available</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 Intersection. The seed remains intact, otherwise reverts to
the Universal Set, theta of 1.0 and empty = false.</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 intersection to a byte array form.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>byte array of this intersection</dd>
</dl>
</li>
</ul>
<a name="update-com.yahoo.sketches.theta.Sketch-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>update</h4>
<pre>public abstract&nbsp;void&nbsp;update(<a href="../../../../com/yahoo/sketches/theta/Sketch.html" title="class in com.yahoo.sketches.theta">Sketch</a>&nbsp;sketchIn)</pre>
<div class="block">Intersect the given sketch with the internal state.
This method can be repeatedly called.
If the given sketch is null the internal state becomes the empty sketch.
Theta will become the minimum of thetas seen so far.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>sketchIn</code> - the given sketch</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/Intersection.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/theta/HashIterator.html" title="interface in com.yahoo.sketches.theta"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../com/yahoo/sketches/theta/JaccardSimilarity.html" title="class in com.yahoo.sketches.theta"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?com/yahoo/sketches/theta/Intersection.html" target="_top">Frames</a></li>
<li><a href="Intersection.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;2019. All rights reserved.</small></p>
</body>
</html>