blob: 21751864c6a5bcca84d8092b019f2841e8f60907 [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>datasketches-cpp: hll_union_alloc&lt; A &gt; Class Template Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">datasketches-cpp
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.1 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespacedatasketches.html">datasketches</a></li><li class="navelem"><a class="el" href="classdatasketches_1_1hll__union__alloc.html">hll_union_alloc</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
<a href="classdatasketches_1_1hll__union__alloc-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">hll_union_alloc&lt; A &gt; Class Template Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>This performs union operations for HLL sketches.
<a href="classdatasketches_1_1hll__union__alloc.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="hll_8hpp_source.html">hll.hpp</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:abdb81912e4fcd2547e27c0165affbb99"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdatasketches_1_1hll__union__alloc.html#abdb81912e4fcd2547e27c0165affbb99">hll_union_alloc</a> (uint8_t lg_max_k, const A &amp;allocator=A())</td></tr>
<tr class="memdesc:abdb81912e4fcd2547e27c0165affbb99"><td class="mdescLeft">&#160;</td><td class="mdescRight">Construct an hll_union operator with the given maximum log2 of k. <a href="classdatasketches_1_1hll__union__alloc.html#abdb81912e4fcd2547e27c0165affbb99">More...</a><br /></td></tr>
<tr class="separator:abdb81912e4fcd2547e27c0165affbb99"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2afb71f2ef2d82290be4c8eafc08f2a2"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdatasketches_1_1hll__union__alloc.html#a2afb71f2ef2d82290be4c8eafc08f2a2">get_estimate</a> () const</td></tr>
<tr class="memdesc:a2afb71f2ef2d82290be4c8eafc08f2a2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the current cardinality estimate. <a href="classdatasketches_1_1hll__union__alloc.html#a2afb71f2ef2d82290be4c8eafc08f2a2">More...</a><br /></td></tr>
<tr class="separator:a2afb71f2ef2d82290be4c8eafc08f2a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1d6c3cd1e88796786ea124a7aed3800d"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdatasketches_1_1hll__union__alloc.html#a1d6c3cd1e88796786ea124a7aed3800d">get_composite_estimate</a> () const</td></tr>
<tr class="memdesc:a1d6c3cd1e88796786ea124a7aed3800d"><td class="mdescLeft">&#160;</td><td class="mdescRight">This is less accurate than the <a class="el" href="classdatasketches_1_1hll__union__alloc.html#a2afb71f2ef2d82290be4c8eafc08f2a2" title="Returns the current cardinality estimate.">get_estimate()</a> method and is automatically used when the union has gone through union operations where the more accurate HIP estimator cannot be used. <a href="classdatasketches_1_1hll__union__alloc.html#a1d6c3cd1e88796786ea124a7aed3800d">More...</a><br /></td></tr>
<tr class="separator:a1d6c3cd1e88796786ea124a7aed3800d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab6cbf0e7b9ad7dc653d8cb7bc02e8ee4"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdatasketches_1_1hll__union__alloc.html#ab6cbf0e7b9ad7dc653d8cb7bc02e8ee4">get_lower_bound</a> (uint8_t num_std_dev) const</td></tr>
<tr class="memdesc:ab6cbf0e7b9ad7dc653d8cb7bc02e8ee4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the approximate lower error bound given the specified number of standard deviations. <a href="classdatasketches_1_1hll__union__alloc.html#ab6cbf0e7b9ad7dc653d8cb7bc02e8ee4">More...</a><br /></td></tr>
<tr class="separator:ab6cbf0e7b9ad7dc653d8cb7bc02e8ee4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afb6dfbdd1229e025d57402ac22c1cd2c"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdatasketches_1_1hll__union__alloc.html#afb6dfbdd1229e025d57402ac22c1cd2c">get_upper_bound</a> (uint8_t num_std_dev) const</td></tr>
<tr class="memdesc:afb6dfbdd1229e025d57402ac22c1cd2c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the approximate upper error bound given the specified number of standard deviations. <a href="classdatasketches_1_1hll__union__alloc.html#afb6dfbdd1229e025d57402ac22c1cd2c">More...</a><br /></td></tr>
<tr class="separator:afb6dfbdd1229e025d57402ac22c1cd2c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aacaad8ccad500578a2cae9bef58ad436"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdatasketches_1_1hll__union__alloc.html#aacaad8ccad500578a2cae9bef58ad436">get_lg_config_k</a> () const</td></tr>
<tr class="memdesc:aacaad8ccad500578a2cae9bef58ad436"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns union's configured lg_k value. <a href="classdatasketches_1_1hll__union__alloc.html#aacaad8ccad500578a2cae9bef58ad436">More...</a><br /></td></tr>
<tr class="separator:aacaad8ccad500578a2cae9bef58ad436"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0387c920d914fe59fd3c4c53a9a99093"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacedatasketches.html#a76c1ad9235877691984d49415bb263e4">target_hll_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdatasketches_1_1hll__union__alloc.html#a0387c920d914fe59fd3c4c53a9a99093">get_target_type</a> () const</td></tr>
<tr class="memdesc:a0387c920d914fe59fd3c4c53a9a99093"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the union's target HLL mode (from <a class="el" href="namespacedatasketches.html#a76c1ad9235877691984d49415bb263e4" title="Specifies the target type of HLL sketch to be created.">target_hll_type</a>). <a href="classdatasketches_1_1hll__union__alloc.html#a0387c920d914fe59fd3c4c53a9a99093">More...</a><br /></td></tr>
<tr class="separator:a0387c920d914fe59fd3c4c53a9a99093"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5a2b7a58dc85678d08752945ff655362"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdatasketches_1_1hll__union__alloc.html#a5a2b7a58dc85678d08752945ff655362">is_empty</a> () const</td></tr>
<tr class="memdesc:a5a2b7a58dc85678d08752945ff655362"><td class="mdescLeft">&#160;</td><td class="mdescRight">Indicates if the union is currently empty. <a href="classdatasketches_1_1hll__union__alloc.html#a5a2b7a58dc85678d08752945ff655362">More...</a><br /></td></tr>
<tr class="separator:a5a2b7a58dc85678d08752945ff655362"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad20897c5c8bd47f5d4005989bead0e55"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdatasketches_1_1hll__union__alloc.html#ad20897c5c8bd47f5d4005989bead0e55">reset</a> ()</td></tr>
<tr class="memdesc:ad20897c5c8bd47f5d4005989bead0e55"><td class="mdescLeft">&#160;</td><td class="mdescRight">Resets the union to an empty state in coupon collection mode. <a href="classdatasketches_1_1hll__union__alloc.html#ad20897c5c8bd47f5d4005989bead0e55">More...</a><br /></td></tr>
<tr class="separator:ad20897c5c8bd47f5d4005989bead0e55"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a505bdafe096c4fc8adef4f8438b2da25"><td class="memItemLeft" align="right" valign="top">hll_sketch_alloc&lt; A &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdatasketches_1_1hll__union__alloc.html#a505bdafe096c4fc8adef4f8438b2da25">get_result</a> (<a class="el" href="namespacedatasketches.html#a76c1ad9235877691984d49415bb263e4">target_hll_type</a> tgt_type=<a class="el" href="namespacedatasketches.html#a76c1ad9235877691984d49415bb263e4aebdac6704039b95d8b82629cda14b1b9">HLL_4</a>) const</td></tr>
<tr class="memdesc:a505bdafe096c4fc8adef4f8438b2da25"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the result of this union operator with the specified <a class="el" href="namespacedatasketches.html#a76c1ad9235877691984d49415bb263e4" title="Specifies the target type of HLL sketch to be created.">target_hll_type</a>. <a href="classdatasketches_1_1hll__union__alloc.html#a505bdafe096c4fc8adef4f8438b2da25">More...</a><br /></td></tr>
<tr class="separator:a505bdafe096c4fc8adef4f8438b2da25"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3af0c80a1b31f0e5dd32d140943bf065"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdatasketches_1_1hll__union__alloc.html#a3af0c80a1b31f0e5dd32d140943bf065">update</a> (const hll_sketch_alloc&lt; A &gt; &amp;sketch)</td></tr>
<tr class="memdesc:a3af0c80a1b31f0e5dd32d140943bf065"><td class="mdescLeft">&#160;</td><td class="mdescRight">Update this union operator with the given sketch. <a href="classdatasketches_1_1hll__union__alloc.html#a3af0c80a1b31f0e5dd32d140943bf065">More...</a><br /></td></tr>
<tr class="separator:a3af0c80a1b31f0e5dd32d140943bf065"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6562d6c6a8b6055ce297a03d46f9e23b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdatasketches_1_1hll__union__alloc.html#a6562d6c6a8b6055ce297a03d46f9e23b">update</a> (hll_sketch_alloc&lt; A &gt; &amp;&amp;sketch)</td></tr>
<tr class="memdesc:a6562d6c6a8b6055ce297a03d46f9e23b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Update this union operator with the given temporary sketch. <a href="classdatasketches_1_1hll__union__alloc.html#a6562d6c6a8b6055ce297a03d46f9e23b">More...</a><br /></td></tr>
<tr class="separator:a6562d6c6a8b6055ce297a03d46f9e23b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a40375beffaefdf495fec673ff596a71c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdatasketches_1_1hll__union__alloc.html#a40375beffaefdf495fec673ff596a71c">update</a> (const std::string &amp;datum)</td></tr>
<tr class="memdesc:a40375beffaefdf495fec673ff596a71c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Present the given std::string as a potential unique item. <a href="classdatasketches_1_1hll__union__alloc.html#a40375beffaefdf495fec673ff596a71c">More...</a><br /></td></tr>
<tr class="separator:a40375beffaefdf495fec673ff596a71c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af14c2db5c2ecc7e9da0d04129ddec191"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdatasketches_1_1hll__union__alloc.html#af14c2db5c2ecc7e9da0d04129ddec191">update</a> (uint64_t datum)</td></tr>
<tr class="memdesc:af14c2db5c2ecc7e9da0d04129ddec191"><td class="mdescLeft">&#160;</td><td class="mdescRight">Present the given unsigned 64-bit integer as a potential unique item. <a href="classdatasketches_1_1hll__union__alloc.html#af14c2db5c2ecc7e9da0d04129ddec191">More...</a><br /></td></tr>
<tr class="separator:af14c2db5c2ecc7e9da0d04129ddec191"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a83364bb88e67a91a9f22df5ae7efaa16"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdatasketches_1_1hll__union__alloc.html#a83364bb88e67a91a9f22df5ae7efaa16">update</a> (uint32_t datum)</td></tr>
<tr class="memdesc:a83364bb88e67a91a9f22df5ae7efaa16"><td class="mdescLeft">&#160;</td><td class="mdescRight">Present the given unsigned 32-bit integer as a potential unique item. <a href="classdatasketches_1_1hll__union__alloc.html#a83364bb88e67a91a9f22df5ae7efaa16">More...</a><br /></td></tr>
<tr class="separator:a83364bb88e67a91a9f22df5ae7efaa16"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a24f3f71760ab41d4a4b619c87f99bc98"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdatasketches_1_1hll__union__alloc.html#a24f3f71760ab41d4a4b619c87f99bc98">update</a> (uint16_t datum)</td></tr>
<tr class="memdesc:a24f3f71760ab41d4a4b619c87f99bc98"><td class="mdescLeft">&#160;</td><td class="mdescRight">Present the given unsigned 16-bit integer as a potential unique item. <a href="classdatasketches_1_1hll__union__alloc.html#a24f3f71760ab41d4a4b619c87f99bc98">More...</a><br /></td></tr>
<tr class="separator:a24f3f71760ab41d4a4b619c87f99bc98"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aedf970792cde586f899d91f043a709f0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdatasketches_1_1hll__union__alloc.html#aedf970792cde586f899d91f043a709f0">update</a> (uint8_t datum)</td></tr>
<tr class="memdesc:aedf970792cde586f899d91f043a709f0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Present the given unsigned 8-bit integer as a potential unique item. <a href="classdatasketches_1_1hll__union__alloc.html#aedf970792cde586f899d91f043a709f0">More...</a><br /></td></tr>
<tr class="separator:aedf970792cde586f899d91f043a709f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeaa0aaa15ce0bf0012592d845c299ab6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdatasketches_1_1hll__union__alloc.html#aeaa0aaa15ce0bf0012592d845c299ab6">update</a> (int64_t datum)</td></tr>
<tr class="memdesc:aeaa0aaa15ce0bf0012592d845c299ab6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Present the given signed 64-bit integer as a potential unique item. <a href="classdatasketches_1_1hll__union__alloc.html#aeaa0aaa15ce0bf0012592d845c299ab6">More...</a><br /></td></tr>
<tr class="separator:aeaa0aaa15ce0bf0012592d845c299ab6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9e6b068da685bb154d212032bed3d83d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdatasketches_1_1hll__union__alloc.html#a9e6b068da685bb154d212032bed3d83d">update</a> (int32_t datum)</td></tr>
<tr class="memdesc:a9e6b068da685bb154d212032bed3d83d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Present the given signed 32-bit integer as a potential unique item. <a href="classdatasketches_1_1hll__union__alloc.html#a9e6b068da685bb154d212032bed3d83d">More...</a><br /></td></tr>
<tr class="separator:a9e6b068da685bb154d212032bed3d83d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a90f9920c71e1cbdd6934882c1195e8e8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdatasketches_1_1hll__union__alloc.html#a90f9920c71e1cbdd6934882c1195e8e8">update</a> (int16_t datum)</td></tr>
<tr class="memdesc:a90f9920c71e1cbdd6934882c1195e8e8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Present the given signed 16-bit integer as a potential unique item. <a href="classdatasketches_1_1hll__union__alloc.html#a90f9920c71e1cbdd6934882c1195e8e8">More...</a><br /></td></tr>
<tr class="separator:a90f9920c71e1cbdd6934882c1195e8e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a45f5fd3eab94f833da2d5713bcd0e217"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdatasketches_1_1hll__union__alloc.html#a45f5fd3eab94f833da2d5713bcd0e217">update</a> (int8_t datum)</td></tr>
<tr class="memdesc:a45f5fd3eab94f833da2d5713bcd0e217"><td class="mdescLeft">&#160;</td><td class="mdescRight">Present the given signed 8-bit integer as a potential unique item. <a href="classdatasketches_1_1hll__union__alloc.html#a45f5fd3eab94f833da2d5713bcd0e217">More...</a><br /></td></tr>
<tr class="separator:a45f5fd3eab94f833da2d5713bcd0e217"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae4839a6377b3352c0a63538fb74feb35"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdatasketches_1_1hll__union__alloc.html#ae4839a6377b3352c0a63538fb74feb35">update</a> (double datum)</td></tr>
<tr class="memdesc:ae4839a6377b3352c0a63538fb74feb35"><td class="mdescLeft">&#160;</td><td class="mdescRight">Present the given 64-bit floating point value as a potential unique item. <a href="classdatasketches_1_1hll__union__alloc.html#ae4839a6377b3352c0a63538fb74feb35">More...</a><br /></td></tr>
<tr class="separator:ae4839a6377b3352c0a63538fb74feb35"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a628d1f56e70ab9fdc5b2bbce80fa8b05"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdatasketches_1_1hll__union__alloc.html#a628d1f56e70ab9fdc5b2bbce80fa8b05">update</a> (float datum)</td></tr>
<tr class="memdesc:a628d1f56e70ab9fdc5b2bbce80fa8b05"><td class="mdescLeft">&#160;</td><td class="mdescRight">Present the given 32-bit floating point value as a potential unique item. <a href="classdatasketches_1_1hll__union__alloc.html#a628d1f56e70ab9fdc5b2bbce80fa8b05">More...</a><br /></td></tr>
<tr class="separator:a628d1f56e70ab9fdc5b2bbce80fa8b05"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abd154da2b10bd1dbcbbbdcd8e411328d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdatasketches_1_1hll__union__alloc.html#abd154da2b10bd1dbcbbbdcd8e411328d">update</a> (const void *data, size_t length_bytes)</td></tr>
<tr class="memdesc:abd154da2b10bd1dbcbbbdcd8e411328d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Present the given data array as a potential unique item. <a href="classdatasketches_1_1hll__union__alloc.html#abd154da2b10bd1dbcbbbdcd8e411328d">More...</a><br /></td></tr>
<tr class="separator:abd154da2b10bd1dbcbbbdcd8e411328d"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr class="memitem:af1abb48488246839a8732c9f20e3f7db"><td class="memItemLeft" align="right" valign="top">static double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdatasketches_1_1hll__union__alloc.html#af1abb48488246839a8732c9f20e3f7db">get_rel_err</a> (bool upper_bound, bool unioned, uint8_t lg_config_k, uint8_t num_std_dev)</td></tr>
<tr class="memdesc:af1abb48488246839a8732c9f20e3f7db"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the current (approximate) Relative Error (RE) asymptotic values given several parameters. <a href="classdatasketches_1_1hll__union__alloc.html#af1abb48488246839a8732c9f20e3f7db">More...</a><br /></td></tr>
<tr class="separator:af1abb48488246839a8732c9f20e3f7db"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><h3>template&lt;typename A = std::allocator&lt;uint8_t&gt;&gt;<br />
class datasketches::hll_union_alloc&lt; A &gt;</h3>
<p>This performs union operations for HLL sketches. </p>
<p>This union operator is configured with a <em>lgMaxK</em> instead of the normal <em>lg_config_k</em>.</p>
<p>This union operator does permit the unioning of sketches with different values of <em>lg_config_k</em>. The user should be aware that the resulting accuracy of a sketch returned at the end of the unioning process will be a function of the smallest of <em>lg_max_k</em> and <em>lg_config_k</em> that the union operator has seen.</p>
<p>This union operator also permits unioning of any of the three different target hll_sketch types.</p>
<p>Although the API for this union operator parallels many of the methods of the <em>HllSketch</em>, the behavior of the union operator has some fundamental differences.</p>
<p>First, the user cannot specify the <a class="el" href="namespacedatasketches.html#a76c1ad9235877691984d49415bb263e4" title="Specifies the target type of HLL sketch to be created.">target_hll_type</a> as an input parameter. Instead, it is specified for the sketch returned with <a class="el" href="classdatasketches_1_1hll__union__alloc.html#a505bdafe096c4fc8adef4f8438b2da25" title="Returns the result of this union operator with the specified target_hll_type.">get_result</a>.</p>
<p>Second, the internal effective value of log-base-2 of <em>k</em> for the union operation can change dynamically based on the smallest <em>lg_config_k</em> that the union operation has seen.</p>
<p>author Jon Malkin author Lee Rhodes author Kevin Lang </p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="abdb81912e4fcd2547e27c0165affbb99"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abdb81912e4fcd2547e27c0165affbb99">&#9670;&nbsp;</a></span>hll_union_alloc()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classdatasketches_1_1hll__union__alloc.html">hll_union_alloc</a> </td>
<td>(</td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>lg_max_k</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const A &amp;&#160;</td>
<td class="paramname"><em>allocator</em> = <code>A()</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">explicit</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Construct an hll_union operator with the given maximum log2 of k. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">lg_max_k</td><td>The maximum size, in log2, of k. The value must be between 7 and 21, inclusive. </td></tr>
<tr><td class="paramname">allocator</td><td>instance of an Allocator </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a2afb71f2ef2d82290be4c8eafc08f2a2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2afb71f2ef2d82290be4c8eafc08f2a2">&#9670;&nbsp;</a></span>get_estimate()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">double get_estimate</td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the current cardinality estimate. </p>
<dl class="section return"><dt>Returns</dt><dd>the cardinality estimate </dd></dl>
</div>
</div>
<a id="a1d6c3cd1e88796786ea124a7aed3800d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1d6c3cd1e88796786ea124a7aed3800d">&#9670;&nbsp;</a></span>get_composite_estimate()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">double get_composite_estimate</td>
</tr>
</table>
</div><div class="memdoc">
<p>This is less accurate than the <a class="el" href="classdatasketches_1_1hll__union__alloc.html#a2afb71f2ef2d82290be4c8eafc08f2a2" title="Returns the current cardinality estimate.">get_estimate()</a> method and is automatically used when the union has gone through union operations where the more accurate HIP estimator cannot be used. </p>
<p>This is made public only for error characterization software that exists in separate packages and is not intended for normal use. </p><dl class="section return"><dt>Returns</dt><dd>the composite cardinality estimate </dd></dl>
</div>
</div>
<a id="ab6cbf0e7b9ad7dc653d8cb7bc02e8ee4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab6cbf0e7b9ad7dc653d8cb7bc02e8ee4">&#9670;&nbsp;</a></span>get_lower_bound()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">double get_lower_bound </td>
<td>(</td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>num_std_dev</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the approximate lower error bound given the specified number of standard deviations. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">num_std_dev</td><td>Number of standard deviations, an integer from the set {1, 2, 3}. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The approximate lower bound. </dd></dl>
</div>
</div>
<a id="afb6dfbdd1229e025d57402ac22c1cd2c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afb6dfbdd1229e025d57402ac22c1cd2c">&#9670;&nbsp;</a></span>get_upper_bound()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">double get_upper_bound </td>
<td>(</td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>num_std_dev</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the approximate upper error bound given the specified number of standard deviations. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">num_std_dev</td><td>Number of standard deviations, an integer from the set {1, 2, 3}. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The approximate upper bound. </dd></dl>
</div>
</div>
<a id="aacaad8ccad500578a2cae9bef58ad436"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aacaad8ccad500578a2cae9bef58ad436">&#9670;&nbsp;</a></span>get_lg_config_k()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint8_t get_lg_config_k</td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns union's configured lg_k value. </p>
<dl class="section return"><dt>Returns</dt><dd>Configured lg_k value. </dd></dl>
</div>
</div>
<a id="a0387c920d914fe59fd3c4c53a9a99093"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0387c920d914fe59fd3c4c53a9a99093">&#9670;&nbsp;</a></span>get_target_type()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="namespacedatasketches.html#a76c1ad9235877691984d49415bb263e4">target_hll_type</a> get_target_type</td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the union's target HLL mode (from <a class="el" href="namespacedatasketches.html#a76c1ad9235877691984d49415bb263e4" title="Specifies the target type of HLL sketch to be created.">target_hll_type</a>). </p>
<dl class="section return"><dt>Returns</dt><dd>The union's target HLL mode. </dd></dl>
</div>
</div>
<a id="a5a2b7a58dc85678d08752945ff655362"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5a2b7a58dc85678d08752945ff655362">&#9670;&nbsp;</a></span>is_empty()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool is_empty</td>
</tr>
</table>
</div><div class="memdoc">
<p>Indicates if the union is currently empty. </p>
<dl class="section return"><dt>Returns</dt><dd>True if the union is empty. </dd></dl>
</div>
</div>
<a id="ad20897c5c8bd47f5d4005989bead0e55"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad20897c5c8bd47f5d4005989bead0e55">&#9670;&nbsp;</a></span>reset()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void reset</td>
</tr>
</table>
</div><div class="memdoc">
<p>Resets the union to an empty state in coupon collection mode. </p>
<p>Does not re-use existing internal objects. </p>
</div>
</div>
<a id="a505bdafe096c4fc8adef4f8438b2da25"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a505bdafe096c4fc8adef4f8438b2da25">&#9670;&nbsp;</a></span>get_result()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">hll_sketch_alloc&lt; A &gt; get_result </td>
<td>(</td>
<td class="paramtype"><a class="el" href="namespacedatasketches.html#a76c1ad9235877691984d49415bb263e4">target_hll_type</a>&#160;</td>
<td class="paramname"><em>tgt_type</em> = <code><a class="el" href="namespacedatasketches.html#a76c1ad9235877691984d49415bb263e4aebdac6704039b95d8b82629cda14b1b9">HLL_4</a></code></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the result of this union operator with the specified <a class="el" href="namespacedatasketches.html#a76c1ad9235877691984d49415bb263e4" title="Specifies the target type of HLL sketch to be created.">target_hll_type</a>. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">tgt_type</td><td>The tgt_hll_type enum value of the desired result (Default: HLL_4) </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The result of this union with the specified tgt_hll_type </dd></dl>
</div>
</div>
<a id="a3af0c80a1b31f0e5dd32d140943bf065"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3af0c80a1b31f0e5dd32d140943bf065">&#9670;&nbsp;</a></span>update() <span class="overload">[1/14]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void update </td>
<td>(</td>
<td class="paramtype">const hll_sketch_alloc&lt; A &gt; &amp;&#160;</td>
<td class="paramname"><em>sketch</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Update this union operator with the given sketch. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">sketch</td><td>The given sketch. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a6562d6c6a8b6055ce297a03d46f9e23b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6562d6c6a8b6055ce297a03d46f9e23b">&#9670;&nbsp;</a></span>update() <span class="overload">[2/14]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void update </td>
<td>(</td>
<td class="paramtype">hll_sketch_alloc&lt; A &gt; &amp;&amp;&#160;</td>
<td class="paramname"><em>sketch</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Update this union operator with the given temporary sketch. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">sketch</td><td>The given sketch. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a40375beffaefdf495fec673ff596a71c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a40375beffaefdf495fec673ff596a71c">&#9670;&nbsp;</a></span>update() <span class="overload">[3/14]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void update </td>
<td>(</td>
<td class="paramtype">const std::string &amp;&#160;</td>
<td class="paramname"><em>datum</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Present the given std::string as a potential unique item. </p>
<p>The string is converted to a byte array using UTF8 encoding. If the string is null or empty no update attempt is made and the method returns. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">datum</td><td>The given string. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="af14c2db5c2ecc7e9da0d04129ddec191"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af14c2db5c2ecc7e9da0d04129ddec191">&#9670;&nbsp;</a></span>update() <span class="overload">[4/14]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void update </td>
<td>(</td>
<td class="paramtype">uint64_t&#160;</td>
<td class="paramname"><em>datum</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Present the given unsigned 64-bit integer as a potential unique item. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">datum</td><td>The given integer. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a83364bb88e67a91a9f22df5ae7efaa16"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a83364bb88e67a91a9f22df5ae7efaa16">&#9670;&nbsp;</a></span>update() <span class="overload">[5/14]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void update </td>
<td>(</td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>datum</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Present the given unsigned 32-bit integer as a potential unique item. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">datum</td><td>The given integer. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a24f3f71760ab41d4a4b619c87f99bc98"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a24f3f71760ab41d4a4b619c87f99bc98">&#9670;&nbsp;</a></span>update() <span class="overload">[6/14]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void update </td>
<td>(</td>
<td class="paramtype">uint16_t&#160;</td>
<td class="paramname"><em>datum</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Present the given unsigned 16-bit integer as a potential unique item. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">datum</td><td>The given integer. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="aedf970792cde586f899d91f043a709f0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aedf970792cde586f899d91f043a709f0">&#9670;&nbsp;</a></span>update() <span class="overload">[7/14]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void update </td>
<td>(</td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>datum</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Present the given unsigned 8-bit integer as a potential unique item. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">datum</td><td>The given integer. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="aeaa0aaa15ce0bf0012592d845c299ab6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aeaa0aaa15ce0bf0012592d845c299ab6">&#9670;&nbsp;</a></span>update() <span class="overload">[8/14]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void update </td>
<td>(</td>
<td class="paramtype">int64_t&#160;</td>
<td class="paramname"><em>datum</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Present the given signed 64-bit integer as a potential unique item. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">datum</td><td>The given integer. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a9e6b068da685bb154d212032bed3d83d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9e6b068da685bb154d212032bed3d83d">&#9670;&nbsp;</a></span>update() <span class="overload">[9/14]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void update </td>
<td>(</td>
<td class="paramtype">int32_t&#160;</td>
<td class="paramname"><em>datum</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Present the given signed 32-bit integer as a potential unique item. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">datum</td><td>The given integer. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a90f9920c71e1cbdd6934882c1195e8e8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a90f9920c71e1cbdd6934882c1195e8e8">&#9670;&nbsp;</a></span>update() <span class="overload">[10/14]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void update </td>
<td>(</td>
<td class="paramtype">int16_t&#160;</td>
<td class="paramname"><em>datum</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Present the given signed 16-bit integer as a potential unique item. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">datum</td><td>The given integer. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a45f5fd3eab94f833da2d5713bcd0e217"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a45f5fd3eab94f833da2d5713bcd0e217">&#9670;&nbsp;</a></span>update() <span class="overload">[11/14]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void update </td>
<td>(</td>
<td class="paramtype">int8_t&#160;</td>
<td class="paramname"><em>datum</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Present the given signed 8-bit integer as a potential unique item. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">datum</td><td>The given integer. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="ae4839a6377b3352c0a63538fb74feb35"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae4839a6377b3352c0a63538fb74feb35">&#9670;&nbsp;</a></span>update() <span class="overload">[12/14]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void update </td>
<td>(</td>
<td class="paramtype">double&#160;</td>
<td class="paramname"><em>datum</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Present the given 64-bit floating point value as a potential unique item. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">datum</td><td>The given double. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="a628d1f56e70ab9fdc5b2bbce80fa8b05"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a628d1f56e70ab9fdc5b2bbce80fa8b05">&#9670;&nbsp;</a></span>update() <span class="overload">[13/14]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void update </td>
<td>(</td>
<td class="paramtype">float&#160;</td>
<td class="paramname"><em>datum</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Present the given 32-bit floating point value as a potential unique item. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">datum</td><td>The given float. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="abd154da2b10bd1dbcbbbdcd8e411328d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abd154da2b10bd1dbcbbbdcd8e411328d">&#9670;&nbsp;</a></span>update() <span class="overload">[14/14]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void update </td>
<td>(</td>
<td class="paramtype">const void *&#160;</td>
<td class="paramname"><em>data</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">size_t&#160;</td>
<td class="paramname"><em>length_bytes</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Present the given data array as a potential unique item. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">data</td><td>The given array. </td></tr>
<tr><td class="paramname">length_bytes</td><td>The array length in bytes. </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="af1abb48488246839a8732c9f20e3f7db"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af1abb48488246839a8732c9f20e3f7db">&#9670;&nbsp;</a></span>get_rel_err()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">double get_rel_err </td>
<td>(</td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>upper_bound</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>unioned</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>lg_config_k</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>num_std_dev</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Gets the current (approximate) Relative Error (RE) asymptotic values given several parameters. </p>
<p>This is used primarily for testing. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">upper_bound</td><td>return the RE for the Upper Bound, otherwise for the Lower Bound. </td></tr>
<tr><td class="paramname">unioned</td><td>set true if the sketch is the result of a union operation. </td></tr>
<tr><td class="paramname">lg_config_k</td><td>the configured value for the sketch. </td></tr>
<tr><td class="paramname">num_std_dev</td><td>the given number of Standard Deviations. This must be an integer between 1 and 3, inclusive. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>the current (approximate) RelativeError </dd></dl>
</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>hll/include/<a class="el" href="hll_8hpp_source.html">hll.hpp</a></li>
<li>hll/include/<a class="el" href="HllUnion-internal_8hpp_source.html">HllUnion-internal.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1
</small></address>
</body>
</html>