| <!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" lang="en-US"> |
| <head> |
| <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> |
| <meta http-equiv="X-UA-Compatible" content="IE=11"/> |
| <meta name="generator" content="Doxygen 1.9.8"/> |
| <meta name="viewport" content="width=device-width, initial-scale=1"/> |
| <title>datasketches-cpp: var_opt_sketch< T, A > 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 id="projectrow"> |
| <td id="projectalign"> |
| <div id="projectname">datasketches-cpp |
| </div> |
| </td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| <!-- end header part --> |
| <!-- Generated by Doxygen 1.9.8 --> |
| <script type="text/javascript"> |
| /* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */ |
| var searchBox = new SearchBox("searchBox", "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:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */ |
| $(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"> |
| <div id="MSearchResults"> |
| <div class="SRPage"> |
| <div id="SRIndex"> |
| <div id="SRResults"></div> |
| <div class="SRStatus" id="Loading">Loading...</div> |
| <div class="SRStatus" id="Searching">Searching...</div> |
| <div class="SRStatus" id="NoMatches">No Matches</div> |
| </div> |
| </div> |
| </div> |
| </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_1var__opt__sketch.html">var_opt_sketch</a></li> </ul> |
| </div> |
| </div><!-- top --> |
| <div class="header"> |
| <div class="summary"> |
| <a href="#pub-methods">Public Member Functions</a> | |
| <a href="#pub-static-methods">Static Public Member Functions</a> | |
| <a href="classdatasketches_1_1var__opt__sketch-members.html">List of all members</a> </div> |
| <div class="headertitle"><div class="title">var_opt_sketch< T, A > Class Template Reference</div></div> |
| </div><!--header--> |
| <div class="contents"> |
| |
| <p>This sketch samples data from a stream of items. |
| <a href="classdatasketches_1_1var__opt__sketch.html#details">More...</a></p> |
| |
| <p><code>#include <<a class="el" href="var__opt__sketch_8hpp_source.html">var_opt_sketch.hpp</a>></code></p> |
| <table class="memberdecls"> |
| <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a> |
| Public Member Functions</h2></td></tr> |
| <tr class="memitem:a6df9f2226b7197a0f612ee4aec0233e7" id="r_a6df9f2226b7197a0f612ee4aec0233e7"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classdatasketches_1_1var__opt__sketch.html#a6df9f2226b7197a0f612ee4aec0233e7">var_opt_sketch</a> (uint32_t k, resize_factor rf=<a class="el" href="namespacedatasketches_1_1var__opt__constants.html#a02799eee5e87428b1c72e6c4c282d68e">var_opt_constants::DEFAULT_RESIZE_FACTOR</a>, const A &allocator=A())</td></tr> |
| <tr class="memdesc:a6df9f2226b7197a0f612ee4aec0233e7"><td class="mdescLeft"> </td><td class="mdescRight">Constructor. <br /></td></tr> |
| <tr class="separator:a6df9f2226b7197a0f612ee4aec0233e7"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a3efbe40f3a9091fa581eaeef126b8285" id="r_a3efbe40f3a9091fa581eaeef126b8285"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classdatasketches_1_1var__opt__sketch.html#a3efbe40f3a9091fa581eaeef126b8285">var_opt_sketch</a> (const <a class="el" href="classdatasketches_1_1var__opt__sketch.html">var_opt_sketch</a> &other)</td></tr> |
| <tr class="memdesc:a3efbe40f3a9091fa581eaeef126b8285"><td class="mdescLeft"> </td><td class="mdescRight">Copy constructor. <br /></td></tr> |
| <tr class="separator:a3efbe40f3a9091fa581eaeef126b8285"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a76983c7d51265ef49674a518925a7cf4" id="r_a76983c7d51265ef49674a518925a7cf4"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classdatasketches_1_1var__opt__sketch.html#a76983c7d51265ef49674a518925a7cf4">var_opt_sketch</a> (<a class="el" href="classdatasketches_1_1var__opt__sketch.html">var_opt_sketch</a> &&other) noexcept</td></tr> |
| <tr class="memdesc:a76983c7d51265ef49674a518925a7cf4"><td class="mdescLeft"> </td><td class="mdescRight">Move constructor. <br /></td></tr> |
| <tr class="separator:a76983c7d51265ef49674a518925a7cf4"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a247dd627502e887562ae763adfe863ff" id="r_a247dd627502e887562ae763adfe863ff"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classdatasketches_1_1var__opt__sketch.html">var_opt_sketch</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classdatasketches_1_1var__opt__sketch.html#a247dd627502e887562ae763adfe863ff">operator=</a> (const <a class="el" href="classdatasketches_1_1var__opt__sketch.html">var_opt_sketch</a> &other)</td></tr> |
| <tr class="memdesc:a247dd627502e887562ae763adfe863ff"><td class="mdescLeft"> </td><td class="mdescRight">Copy assignment. <br /></td></tr> |
| <tr class="separator:a247dd627502e887562ae763adfe863ff"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a18041b548e38eaca6d1a57e52a24a5e1" id="r_a18041b548e38eaca6d1a57e52a24a5e1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classdatasketches_1_1var__opt__sketch.html">var_opt_sketch</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classdatasketches_1_1var__opt__sketch.html#a18041b548e38eaca6d1a57e52a24a5e1">operator=</a> (<a class="el" href="classdatasketches_1_1var__opt__sketch.html">var_opt_sketch</a> &&other)</td></tr> |
| <tr class="memdesc:a18041b548e38eaca6d1a57e52a24a5e1"><td class="mdescLeft"> </td><td class="mdescRight">Move assignment. <br /></td></tr> |
| <tr class="separator:a18041b548e38eaca6d1a57e52a24a5e1"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a1125ed18baf3f257b5796321c7ec0f8f" id="r_a1125ed18baf3f257b5796321c7ec0f8f"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classdatasketches_1_1var__opt__sketch.html#a1125ed18baf3f257b5796321c7ec0f8f">update</a> (const T &item, double weight=1.0)</td></tr> |
| <tr class="memdesc:a1125ed18baf3f257b5796321c7ec0f8f"><td class="mdescLeft"> </td><td class="mdescRight">Updates this sketch with the given data item with the given weight. <br /></td></tr> |
| <tr class="separator:a1125ed18baf3f257b5796321c7ec0f8f"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a9c07446b1fd8f8509f754ebaf3f77050" id="r_a9c07446b1fd8f8509f754ebaf3f77050"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classdatasketches_1_1var__opt__sketch.html#a9c07446b1fd8f8509f754ebaf3f77050">update</a> (T &&item, double weight=1.0)</td></tr> |
| <tr class="memdesc:a9c07446b1fd8f8509f754ebaf3f77050"><td class="mdescLeft"> </td><td class="mdescRight">Updates this sketch with the given data item with the given weight. <br /></td></tr> |
| <tr class="separator:a9c07446b1fd8f8509f754ebaf3f77050"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:af561f5cd76ff61773713c627bc53b0a2" id="r_af561f5cd76ff61773713c627bc53b0a2"><td class="memItemLeft" align="right" valign="top">uint32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classdatasketches_1_1var__opt__sketch.html#af561f5cd76ff61773713c627bc53b0a2">get_k</a> () const</td></tr> |
| <tr class="memdesc:af561f5cd76ff61773713c627bc53b0a2"><td class="mdescLeft"> </td><td class="mdescRight">Returns the configured maximum sample size. <br /></td></tr> |
| <tr class="separator:af561f5cd76ff61773713c627bc53b0a2"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:af857be9469a7565252626f27e1f9d74d" id="r_af857be9469a7565252626f27e1f9d74d"><td class="memItemLeft" align="right" valign="top">uint64_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classdatasketches_1_1var__opt__sketch.html#af857be9469a7565252626f27e1f9d74d">get_n</a> () const</td></tr> |
| <tr class="memdesc:af857be9469a7565252626f27e1f9d74d"><td class="mdescLeft"> </td><td class="mdescRight">Returns the length of the input stream. <br /></td></tr> |
| <tr class="separator:af857be9469a7565252626f27e1f9d74d"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:ac481918ec96d79b27813d32bcc2a247d" id="r_ac481918ec96d79b27813d32bcc2a247d"><td class="memItemLeft" align="right" valign="top">uint32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="classdatasketches_1_1var__opt__sketch.html#ac481918ec96d79b27813d32bcc2a247d">get_num_samples</a> () const</td></tr> |
| <tr class="memdesc:ac481918ec96d79b27813d32bcc2a247d"><td class="mdescLeft"> </td><td class="mdescRight">Returns the number of samples currently in the sketch. <br /></td></tr> |
| <tr class="separator:ac481918ec96d79b27813d32bcc2a247d"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a71f1302dd93f895508f65893f96796fa" id="r_a71f1302dd93f895508f65893f96796fa"><td class="memTemplParams" colspan="2">template<typename P > </td></tr> |
| <tr class="memitem:a71f1302dd93f895508f65893f96796fa"><td class="memTemplItemLeft" align="right" valign="top">subset_summary </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classdatasketches_1_1var__opt__sketch.html#a71f1302dd93f895508f65893f96796fa">estimate_subset_sum</a> (P predicate) const</td></tr> |
| <tr class="memdesc:a71f1302dd93f895508f65893f96796fa"><td class="mdescLeft"> </td><td class="mdescRight">Computes an estimated subset sum from the entire stream for objects matching a given predicate. <br /></td></tr> |
| <tr class="separator:a71f1302dd93f895508f65893f96796fa"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a5a2b7a58dc85678d08752945ff655362" id="r_a5a2b7a58dc85678d08752945ff655362"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classdatasketches_1_1var__opt__sketch.html#a5a2b7a58dc85678d08752945ff655362">is_empty</a> () const</td></tr> |
| <tr class="memdesc:a5a2b7a58dc85678d08752945ff655362"><td class="mdescLeft"> </td><td class="mdescRight">Returns true if the sketch is empty. <br /></td></tr> |
| <tr class="separator:a5a2b7a58dc85678d08752945ff655362"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:ad20897c5c8bd47f5d4005989bead0e55" id="r_ad20897c5c8bd47f5d4005989bead0e55"><td class="memItemLeft" align="right" valign="top"><a id="ad20897c5c8bd47f5d4005989bead0e55" name="ad20897c5c8bd47f5d4005989bead0e55"></a> |
| void </td><td class="memItemRight" valign="bottom"><b>reset</b> ()</td></tr> |
| <tr class="memdesc:ad20897c5c8bd47f5d4005989bead0e55"><td class="mdescLeft"> </td><td class="mdescRight">Resets the sketch to its default, empty state. <br /></td></tr> |
| <tr class="separator:ad20897c5c8bd47f5d4005989bead0e55"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:ad9a5259d93d148b5c2050d68e7788716" id="r_ad9a5259d93d148b5c2050d68e7788716"><td class="memTemplParams" colspan="2">template<typename TT = T, typename SerDe = serde<T>, typename std::enable_if< std::is_arithmetic< TT >::value, int >::type = 0> </td></tr> |
| <tr class="memitem:ad9a5259d93d148b5c2050d68e7788716"><td class="memTemplItemLeft" align="right" valign="top">size_t </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classdatasketches_1_1var__opt__sketch.html#ad9a5259d93d148b5c2050d68e7788716">get_serialized_size_bytes</a> (const SerDe &sd=SerDe()) const</td></tr> |
| <tr class="memdesc:ad9a5259d93d148b5c2050d68e7788716"><td class="mdescLeft"> </td><td class="mdescRight">Computes size needed to serialize the current state of the sketch. <br /></td></tr> |
| <tr class="separator:ad9a5259d93d148b5c2050d68e7788716"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:ad9a5259d93d148b5c2050d68e7788716" id="r_ad9a5259d93d148b5c2050d68e7788716"><td class="memTemplParams" colspan="2">template<typename TT = T, typename SerDe = serde<T>, typename std::enable_if<!std::is_arithmetic< TT >::value, int >::type = 0> </td></tr> |
| <tr class="memitem:ad9a5259d93d148b5c2050d68e7788716"><td class="memTemplItemLeft" align="right" valign="top">size_t </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classdatasketches_1_1var__opt__sketch.html#ad9a5259d93d148b5c2050d68e7788716">get_serialized_size_bytes</a> (const SerDe &sd=SerDe()) const</td></tr> |
| <tr class="memdesc:ad9a5259d93d148b5c2050d68e7788716"><td class="mdescLeft"> </td><td class="mdescRight">Computes size needed to serialize the current state of the sketch. <br /></td></tr> |
| <tr class="separator:ad9a5259d93d148b5c2050d68e7788716"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a1d0c269c23926e93b1c7a9c00e86af97" id="r_a1d0c269c23926e93b1c7a9c00e86af97"><td class="memTemplParams" colspan="2">template<typename SerDe = serde<T>> </td></tr> |
| <tr class="memitem:a1d0c269c23926e93b1c7a9c00e86af97"><td class="memTemplItemLeft" align="right" valign="top">vector_bytes </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classdatasketches_1_1var__opt__sketch.html#a1d0c269c23926e93b1c7a9c00e86af97">serialize</a> (unsigned header_size_bytes=0, const SerDe &sd=SerDe()) const</td></tr> |
| <tr class="memdesc:a1d0c269c23926e93b1c7a9c00e86af97"><td class="mdescLeft"> </td><td class="mdescRight">This method serializes the sketch as a vector of bytes. <br /></td></tr> |
| <tr class="separator:a1d0c269c23926e93b1c7a9c00e86af97"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a538940c100e4353b3671ad452d3d3056" id="r_a538940c100e4353b3671ad452d3d3056"><td class="memTemplParams" colspan="2">template<typename SerDe = serde<T>> </td></tr> |
| <tr class="memitem:a538940c100e4353b3671ad452d3d3056"><td class="memTemplItemLeft" align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classdatasketches_1_1var__opt__sketch.html#a538940c100e4353b3671ad452d3d3056">serialize</a> (std::ostream &os, const SerDe &sd=SerDe()) const</td></tr> |
| <tr class="memdesc:a538940c100e4353b3671ad452d3d3056"><td class="mdescLeft"> </td><td class="mdescRight">This method serializes the sketch into a given stream in a binary form. <br /></td></tr> |
| <tr class="separator:a538940c100e4353b3671ad452d3d3056"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:aed372241c10ffd041bee85602edb199a" id="r_aed372241c10ffd041bee85602edb199a"><td class="memItemLeft" align="right" valign="top">string< A > </td><td class="memItemRight" valign="bottom"><a class="el" href="classdatasketches_1_1var__opt__sketch.html#aed372241c10ffd041bee85602edb199a">to_string</a> () const</td></tr> |
| <tr class="memdesc:aed372241c10ffd041bee85602edb199a"><td class="mdescLeft"> </td><td class="mdescRight">Prints a summary of the sketch. <br /></td></tr> |
| <tr class="separator:aed372241c10ffd041bee85602edb199a"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a0fa52dd153f1e3cac57d4742e2fef6fc" id="r_a0fa52dd153f1e3cac57d4742e2fef6fc"><td class="memItemLeft" align="right" valign="top">string< A > </td><td class="memItemRight" valign="bottom"><a class="el" href="classdatasketches_1_1var__opt__sketch.html#a0fa52dd153f1e3cac57d4742e2fef6fc">items_to_string</a> () const</td></tr> |
| <tr class="memdesc:a0fa52dd153f1e3cac57d4742e2fef6fc"><td class="mdescLeft"> </td><td class="mdescRight">Prints the raw sketch items to a string. <br /></td></tr> |
| <tr class="separator:a0fa52dd153f1e3cac57d4742e2fef6fc"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:a0faac62cb9f27b09afc849def518f5cc" id="r_a0faac62cb9f27b09afc849def518f5cc"><td class="memItemLeft" align="right" valign="top">const_iterator </td><td class="memItemRight" valign="bottom"><a class="el" href="classdatasketches_1_1var__opt__sketch.html#a0faac62cb9f27b09afc849def518f5cc">begin</a> () const</td></tr> |
| <tr class="memdesc:a0faac62cb9f27b09afc849def518f5cc"><td class="mdescLeft"> </td><td class="mdescRight">Iterator pointing to the first item in the sketch. <br /></td></tr> |
| <tr class="separator:a0faac62cb9f27b09afc849def518f5cc"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:ae9e1e5356b5d10a177fa50f7bdfdfd96" id="r_ae9e1e5356b5d10a177fa50f7bdfdfd96"><td class="memItemLeft" align="right" valign="top">const_iterator </td><td class="memItemRight" valign="bottom"><a class="el" href="classdatasketches_1_1var__opt__sketch.html#ae9e1e5356b5d10a177fa50f7bdfdfd96">end</a> () const</td></tr> |
| <tr class="memdesc:ae9e1e5356b5d10a177fa50f7bdfdfd96"><td class="mdescLeft"> </td><td class="mdescRight">Iterator pointing to the past-the-end item in the sketch. <br /></td></tr> |
| <tr class="separator:ae9e1e5356b5d10a177fa50f7bdfdfd96"><td class="memSeparator" colspan="2"> </td></tr> |
| </table><table class="memberdecls"> |
| <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-static-methods" name="pub-static-methods"></a> |
| Static Public Member Functions</h2></td></tr> |
| <tr class="memitem:aea8f1c4a6d0189de0db5b5cd085c39b1" id="r_aea8f1c4a6d0189de0db5b5cd085c39b1"><td class="memTemplParams" colspan="2">template<typename SerDe = serde<T>> </td></tr> |
| <tr class="memitem:aea8f1c4a6d0189de0db5b5cd085c39b1"><td class="memTemplItemLeft" align="right" valign="top">static <a class="el" href="classdatasketches_1_1var__opt__sketch.html">var_opt_sketch</a> </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classdatasketches_1_1var__opt__sketch.html#aea8f1c4a6d0189de0db5b5cd085c39b1">deserialize</a> (std::istream &is, const SerDe &sd=SerDe(), const A &allocator=A())</td></tr> |
| <tr class="memdesc:aea8f1c4a6d0189de0db5b5cd085c39b1"><td class="mdescLeft"> </td><td class="mdescRight">This method deserializes a sketch from a given stream. <br /></td></tr> |
| <tr class="separator:aea8f1c4a6d0189de0db5b5cd085c39b1"><td class="memSeparator" colspan="2"> </td></tr> |
| <tr class="memitem:ab0856fc62bc5f6b154feae4a09e7d422" id="r_ab0856fc62bc5f6b154feae4a09e7d422"><td class="memTemplParams" colspan="2">template<typename SerDe = serde<T>> </td></tr> |
| <tr class="memitem:ab0856fc62bc5f6b154feae4a09e7d422"><td class="memTemplItemLeft" align="right" valign="top">static <a class="el" href="classdatasketches_1_1var__opt__sketch.html">var_opt_sketch</a> </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classdatasketches_1_1var__opt__sketch.html#ab0856fc62bc5f6b154feae4a09e7d422">deserialize</a> (const void *bytes, size_t size, const SerDe &sd=SerDe(), const A &allocator=A())</td></tr> |
| <tr class="memdesc:ab0856fc62bc5f6b154feae4a09e7d422"><td class="mdescLeft"> </td><td class="mdescRight">This method deserializes a sketch from a given array of bytes. <br /></td></tr> |
| <tr class="separator:ab0856fc62bc5f6b154feae4a09e7d422"><td class="memSeparator" colspan="2"> </td></tr> |
| </table> |
| <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> |
| <div class="textblock"><div class="compoundTemplParams">template<typename T, typename A = std::allocator<T>><br /> |
| class datasketches::var_opt_sketch< T, A ></div><p>This sketch samples data from a stream of items. </p> |
| <p>Designed for optimal (minimum) variance when querying the sketch to estimate subset sums of items matching a provided predicate. Variance optimal (varopt) sampling is related to reservoir sampling, with improved error bounds for subset sum estimation.</p> |
| <p>author Kevin Lang author Jon Malkin </p> |
| </div><h2 class="groupheader">Constructor & Destructor Documentation</h2> |
| <a id="a6df9f2226b7197a0f612ee4aec0233e7" name="a6df9f2226b7197a0f612ee4aec0233e7"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#a6df9f2226b7197a0f612ee4aec0233e7">◆ </a></span>var_opt_sketch() <span class="overload">[1/3]</span></h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <div class="memtemplate"> |
| template<typename T , typename A > </div> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="classdatasketches_1_1var__opt__sketch.html">var_opt_sketch</a> </td> |
| <td>(</td> |
| <td class="paramtype">uint32_t </td> |
| <td class="paramname"><em>k</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">resize_factor </td> |
| <td class="paramname"><em>rf</em> = <code><a class="el" href="namespacedatasketches_1_1var__opt__constants.html#a02799eee5e87428b1c72e6c4c282d68e">var_opt_constants::DEFAULT_RESIZE_FACTOR</a></code>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">const A & </td> |
| <td class="paramname"><em>allocator</em> = <code>A()</code> </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>Constructor. </p> |
| <dl class="params"><dt>Parameters</dt><dd> |
| <table class="params"> |
| <tr><td class="paramname">k</td><td>sketch size </td></tr> |
| <tr><td class="paramname">rf</td><td>resize factor </td></tr> |
| <tr><td class="paramname">allocator</td><td>instance of an allocator </td></tr> |
| </table> |
| </dd> |
| </dl> |
| |
| </div> |
| </div> |
| <a id="a3efbe40f3a9091fa581eaeef126b8285" name="a3efbe40f3a9091fa581eaeef126b8285"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#a3efbe40f3a9091fa581eaeef126b8285">◆ </a></span>var_opt_sketch() <span class="overload">[2/3]</span></h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <div class="memtemplate"> |
| template<typename T , typename A > </div> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="classdatasketches_1_1var__opt__sketch.html">var_opt_sketch</a> </td> |
| <td>(</td> |
| <td class="paramtype">const <a class="el" href="classdatasketches_1_1var__opt__sketch.html">var_opt_sketch</a>< T, A > & </td> |
| <td class="paramname"><em>other</em></td><td>)</td> |
| <td></td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Copy constructor. </p> |
| <dl class="params"><dt>Parameters</dt><dd> |
| <table class="params"> |
| <tr><td class="paramname">other</td><td>sketch to be copied </td></tr> |
| </table> |
| </dd> |
| </dl> |
| |
| </div> |
| </div> |
| <a id="a76983c7d51265ef49674a518925a7cf4" name="a76983c7d51265ef49674a518925a7cf4"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#a76983c7d51265ef49674a518925a7cf4">◆ </a></span>var_opt_sketch() <span class="overload">[3/3]</span></h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <div class="memtemplate"> |
| template<typename T , typename A > </div> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="classdatasketches_1_1var__opt__sketch.html">var_opt_sketch</a> </td> |
| <td>(</td> |
| <td class="paramtype"><a class="el" href="classdatasketches_1_1var__opt__sketch.html">var_opt_sketch</a>< T, A > && </td> |
| <td class="paramname"><em>other</em></td><td>)</td> |
| <td></td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">noexcept</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Move constructor. </p> |
| <dl class="params"><dt>Parameters</dt><dd> |
| <table class="params"> |
| <tr><td class="paramname">other</td><td>sketch to be moved </td></tr> |
| </table> |
| </dd> |
| </dl> |
| |
| </div> |
| </div> |
| <h2 class="groupheader">Member Function Documentation</h2> |
| <a id="a247dd627502e887562ae763adfe863ff" name="a247dd627502e887562ae763adfe863ff"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#a247dd627502e887562ae763adfe863ff">◆ </a></span>operator=() <span class="overload">[1/2]</span></h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <div class="memtemplate"> |
| template<typename T , typename A > </div> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="classdatasketches_1_1var__opt__sketch.html">var_opt_sketch</a>< T, A > & operator= </td> |
| <td>(</td> |
| <td class="paramtype">const <a class="el" href="classdatasketches_1_1var__opt__sketch.html">var_opt_sketch</a>< T, A > & </td> |
| <td class="paramname"><em>other</em></td><td>)</td> |
| <td></td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Copy assignment. </p> |
| <dl class="params"><dt>Parameters</dt><dd> |
| <table class="params"> |
| <tr><td class="paramname">other</td><td>sketch to be copied </td></tr> |
| </table> |
| </dd> |
| </dl> |
| <dl class="section return"><dt>Returns</dt><dd>reference to this sketch </dd></dl> |
| |
| </div> |
| </div> |
| <a id="a18041b548e38eaca6d1a57e52a24a5e1" name="a18041b548e38eaca6d1a57e52a24a5e1"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#a18041b548e38eaca6d1a57e52a24a5e1">◆ </a></span>operator=() <span class="overload">[2/2]</span></h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <div class="memtemplate"> |
| template<typename T , typename A > </div> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="classdatasketches_1_1var__opt__sketch.html">var_opt_sketch</a>< T, A > & operator= </td> |
| <td>(</td> |
| <td class="paramtype"><a class="el" href="classdatasketches_1_1var__opt__sketch.html">var_opt_sketch</a>< T, A > && </td> |
| <td class="paramname"><em>other</em></td><td>)</td> |
| <td></td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Move assignment. </p> |
| <dl class="params"><dt>Parameters</dt><dd> |
| <table class="params"> |
| <tr><td class="paramname">other</td><td>sketch to be moved </td></tr> |
| </table> |
| </dd> |
| </dl> |
| <dl class="section return"><dt>Returns</dt><dd>reference to this sketch </dd></dl> |
| |
| </div> |
| </div> |
| <a id="a1125ed18baf3f257b5796321c7ec0f8f" name="a1125ed18baf3f257b5796321c7ec0f8f"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#a1125ed18baf3f257b5796321c7ec0f8f">◆ </a></span>update() <span class="overload">[1/2]</span></h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <div class="memtemplate"> |
| template<typename T , typename A > </div> |
| <table class="memname"> |
| <tr> |
| <td class="memname">void update </td> |
| <td>(</td> |
| <td class="paramtype">const T & </td> |
| <td class="paramname"><em>item</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">double </td> |
| <td class="paramname"><em>weight</em> = <code>1.0</code> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Updates this sketch with the given data item with the given weight. </p> |
| <p>This method takes an lvalue. </p><dl class="params"><dt>Parameters</dt><dd> |
| <table class="params"> |
| <tr><td class="paramname">item</td><td>an item from a stream of items </td></tr> |
| <tr><td class="paramname">weight</td><td>the weight of the item </td></tr> |
| </table> |
| </dd> |
| </dl> |
| |
| </div> |
| </div> |
| <a id="a9c07446b1fd8f8509f754ebaf3f77050" name="a9c07446b1fd8f8509f754ebaf3f77050"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#a9c07446b1fd8f8509f754ebaf3f77050">◆ </a></span>update() <span class="overload">[2/2]</span></h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <div class="memtemplate"> |
| template<typename T , typename A > </div> |
| <table class="memname"> |
| <tr> |
| <td class="memname">void update </td> |
| <td>(</td> |
| <td class="paramtype">T && </td> |
| <td class="paramname"><em>item</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">double </td> |
| <td class="paramname"><em>weight</em> = <code>1.0</code> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td></td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Updates this sketch with the given data item with the given weight. </p> |
| <p>This method takes an rvalue. </p><dl class="params"><dt>Parameters</dt><dd> |
| <table class="params"> |
| <tr><td class="paramname">item</td><td>an item from a stream of items </td></tr> |
| <tr><td class="paramname">weight</td><td>the weight of the item </td></tr> |
| </table> |
| </dd> |
| </dl> |
| |
| </div> |
| </div> |
| <a id="af561f5cd76ff61773713c627bc53b0a2" name="af561f5cd76ff61773713c627bc53b0a2"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#af561f5cd76ff61773713c627bc53b0a2">◆ </a></span>get_k()</h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <div class="memtemplate"> |
| template<typename T , typename A > </div> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">uint32_t get_k </td> |
| <td>(</td> |
| <td class="paramname"></td><td>)</td> |
| <td> const</td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">inline</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Returns the configured maximum sample size. </p> |
| <dl class="section return"><dt>Returns</dt><dd>configured maximum sample size </dd></dl> |
| |
| </div> |
| </div> |
| <a id="af857be9469a7565252626f27e1f9d74d" name="af857be9469a7565252626f27e1f9d74d"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#af857be9469a7565252626f27e1f9d74d">◆ </a></span>get_n()</h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <div class="memtemplate"> |
| template<typename T , typename A > </div> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">uint64_t get_n </td> |
| <td>(</td> |
| <td class="paramname"></td><td>)</td> |
| <td> const</td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">inline</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Returns the length of the input stream. </p> |
| <dl class="section return"><dt>Returns</dt><dd>stream length </dd></dl> |
| |
| </div> |
| </div> |
| <a id="ac481918ec96d79b27813d32bcc2a247d" name="ac481918ec96d79b27813d32bcc2a247d"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#ac481918ec96d79b27813d32bcc2a247d">◆ </a></span>get_num_samples()</h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <div class="memtemplate"> |
| template<typename T , typename A > </div> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">uint32_t get_num_samples </td> |
| <td>(</td> |
| <td class="paramname"></td><td>)</td> |
| <td> const</td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">inline</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Returns the number of samples currently in the sketch. </p> |
| <dl class="section return"><dt>Returns</dt><dd>stream length </dd></dl> |
| |
| </div> |
| </div> |
| <a id="a71f1302dd93f895508f65893f96796fa" name="a71f1302dd93f895508f65893f96796fa"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#a71f1302dd93f895508f65893f96796fa">◆ </a></span>estimate_subset_sum()</h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <div class="memtemplate"> |
| template<typename T , typename A > </div> |
| <div class="memtemplate"> |
| template<typename P > </div> |
| <table class="memname"> |
| <tr> |
| <td class="memname">subset_summary estimate_subset_sum </td> |
| <td>(</td> |
| <td class="paramtype">P </td> |
| <td class="paramname"><em>predicate</em></td><td>)</td> |
| <td> const</td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Computes an estimated subset sum from the entire stream for objects matching a given predicate. </p> |
| <p>Provides a lower bound, estimate, and upper bound using a target of 2 standard deviations. This is technically a heuristic method and tries to err on the conservative side. </p><dl class="params"><dt>Parameters</dt><dd> |
| <table class="params"> |
| <tr><td class="paramname">predicate</td><td>a predicate function </td></tr> |
| </table> |
| </dd> |
| </dl> |
| <dl class="section return"><dt>Returns</dt><dd>a subset_summary item with estimate, upper and lower bounds, and total sketch weight </dd></dl> |
| |
| </div> |
| </div> |
| <a id="a5a2b7a58dc85678d08752945ff655362" name="a5a2b7a58dc85678d08752945ff655362"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#a5a2b7a58dc85678d08752945ff655362">◆ </a></span>is_empty()</h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <div class="memtemplate"> |
| template<typename T , typename A > </div> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">bool is_empty </td> |
| <td>(</td> |
| <td class="paramname"></td><td>)</td> |
| <td> const</td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">inline</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Returns true if the sketch is empty. </p> |
| <dl class="section return"><dt>Returns</dt><dd>empty flag </dd></dl> |
| |
| </div> |
| </div> |
| <a id="ad9a5259d93d148b5c2050d68e7788716" name="ad9a5259d93d148b5c2050d68e7788716"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#ad9a5259d93d148b5c2050d68e7788716">◆ </a></span>get_serialized_size_bytes() <span class="overload">[1/2]</span></h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <div class="memtemplate"> |
| template<typename T , typename A > </div> |
| <div class="memtemplate"> |
| template<typename TT , typename SerDe , typename std::enable_if<!std::is_arithmetic< TT >::value, int >::type > </div> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">size_t get_serialized_size_bytes </td> |
| <td>(</td> |
| <td class="paramtype">const SerDe & </td> |
| <td class="paramname"><em>sd</em> = <code>SerDe()</code></td><td>)</td> |
| <td> const</td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">inline</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Computes size needed to serialize the current state of the sketch. </p> |
| <p>This version is for fixed-size arithmetic types (integral and floating point). </p><dl class="params"><dt>Parameters</dt><dd> |
| <table class="params"> |
| <tr><td class="paramname">sd</td><td>instance of a SerDe </td></tr> |
| </table> |
| </dd> |
| </dl> |
| <dl class="section return"><dt>Returns</dt><dd>size in bytes needed to serialize this sketch </dd></dl> |
| |
| </div> |
| </div> |
| <a id="ad9a5259d93d148b5c2050d68e7788716" name="ad9a5259d93d148b5c2050d68e7788716"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#ad9a5259d93d148b5c2050d68e7788716">◆ </a></span>get_serialized_size_bytes() <span class="overload">[2/2]</span></h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <div class="memtemplate"> |
| template<typename T , typename A = std::allocator<T>> </div> |
| <div class="memtemplate"> |
| template<typename TT = T, typename SerDe = serde<T>, typename std::enable_if<!std::is_arithmetic< TT >::value, int >::type = 0> </div> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">size_t get_serialized_size_bytes </td> |
| <td>(</td> |
| <td class="paramtype">const SerDe & </td> |
| <td class="paramname"><em>sd</em> = <code>SerDe()</code></td><td>)</td> |
| <td> const</td> |
| </tr> |
| </table> |
| </td> |
| <td class="mlabels-right"> |
| <span class="mlabels"><span class="mlabel">inline</span></span> </td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Computes size needed to serialize the current state of the sketch. </p> |
| <p>This version is for all other types and can be expensive since every item needs to be looked at. </p><dl class="params"><dt>Parameters</dt><dd> |
| <table class="params"> |
| <tr><td class="paramname">sd</td><td>instance of a SerDe </td></tr> |
| </table> |
| </dd> |
| </dl> |
| <dl class="section return"><dt>Returns</dt><dd>size in bytes needed to serialize this sketch </dd></dl> |
| |
| </div> |
| </div> |
| <a id="a1d0c269c23926e93b1c7a9c00e86af97" name="a1d0c269c23926e93b1c7a9c00e86af97"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#a1d0c269c23926e93b1c7a9c00e86af97">◆ </a></span>serialize() <span class="overload">[1/2]</span></h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <div class="memtemplate"> |
| template<typename T , typename A = std::allocator<T>> </div> |
| <div class="memtemplate"> |
| template<typename SerDe = serde<T>> </div> |
| <table class="memname"> |
| <tr> |
| <td class="memname">vector_bytes serialize </td> |
| <td>(</td> |
| <td class="paramtype">unsigned </td> |
| <td class="paramname"><em>header_size_bytes</em> = <code>0</code>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">const SerDe & </td> |
| <td class="paramname"><em>sd</em> = <code>SerDe()</code> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td> const</td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>This method serializes the sketch as a vector of bytes. </p> |
| <p>An optional header can be reserved in front of the sketch. It is a blank space of a given size. This header is used in Datasketches PostgreSQL extension. </p><dl class="params"><dt>Parameters</dt><dd> |
| <table class="params"> |
| <tr><td class="paramname">header_size_bytes</td><td>space to reserve in front of the sketch </td></tr> |
| <tr><td class="paramname">sd</td><td>instance of a SerDe </td></tr> |
| </table> |
| </dd> |
| </dl> |
| |
| </div> |
| </div> |
| <a id="a538940c100e4353b3671ad452d3d3056" name="a538940c100e4353b3671ad452d3d3056"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#a538940c100e4353b3671ad452d3d3056">◆ </a></span>serialize() <span class="overload">[2/2]</span></h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <div class="memtemplate"> |
| template<typename T , typename A > </div> |
| <div class="memtemplate"> |
| template<typename SerDe > </div> |
| <table class="memname"> |
| <tr> |
| <td class="memname">void serialize </td> |
| <td>(</td> |
| <td class="paramtype">std::ostream & </td> |
| <td class="paramname"><em>os</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">const SerDe & </td> |
| <td class="paramname"><em>sd</em> = <code>SerDe()</code> </td> |
| </tr> |
| <tr> |
| <td></td> |
| <td>)</td> |
| <td></td><td> const</td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>This method serializes the sketch into a given stream in a binary form. </p> |
| <dl class="params"><dt>Parameters</dt><dd> |
| <table class="params"> |
| <tr><td class="paramname">os</td><td>output stream </td></tr> |
| <tr><td class="paramname">sd</td><td>instance of a SerDe </td></tr> |
| </table> |
| </dd> |
| </dl> |
| |
| </div> |
| </div> |
| <a id="aea8f1c4a6d0189de0db5b5cd085c39b1" name="aea8f1c4a6d0189de0db5b5cd085c39b1"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#aea8f1c4a6d0189de0db5b5cd085c39b1">◆ </a></span>deserialize() <span class="overload">[1/2]</span></h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <div class="memtemplate"> |
| template<typename T , typename A = std::allocator<T>> </div> |
| <div class="memtemplate"> |
| template<typename SerDe = serde<T>> </div> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">static <a class="el" href="classdatasketches_1_1var__opt__sketch.html">var_opt_sketch</a> deserialize </td> |
| <td>(</td> |
| <td class="paramtype">std::istream & </td> |
| <td class="paramname"><em>is</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">const SerDe & </td> |
| <td class="paramname"><em>sd</em> = <code>SerDe()</code>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">const A & </td> |
| <td class="paramname"><em>allocator</em> = <code>A()</code> </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>This method deserializes a sketch from a given stream. </p> |
| <dl class="params"><dt>Parameters</dt><dd> |
| <table class="params"> |
| <tr><td class="paramname">is</td><td>input stream </td></tr> |
| <tr><td class="paramname">sd</td><td>instance of a SerDe </td></tr> |
| <tr><td class="paramname">allocator</td><td>instance of an allocator </td></tr> |
| </table> |
| </dd> |
| </dl> |
| <dl class="section return"><dt>Returns</dt><dd>an instance of a sketch </dd></dl> |
| |
| </div> |
| </div> |
| <a id="ab0856fc62bc5f6b154feae4a09e7d422" name="ab0856fc62bc5f6b154feae4a09e7d422"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#ab0856fc62bc5f6b154feae4a09e7d422">◆ </a></span>deserialize() <span class="overload">[2/2]</span></h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <div class="memtemplate"> |
| template<typename T , typename A = std::allocator<T>> </div> |
| <div class="memtemplate"> |
| template<typename SerDe = serde<T>> </div> |
| <table class="mlabels"> |
| <tr> |
| <td class="mlabels-left"> |
| <table class="memname"> |
| <tr> |
| <td class="memname">static <a class="el" href="classdatasketches_1_1var__opt__sketch.html">var_opt_sketch</a> deserialize </td> |
| <td>(</td> |
| <td class="paramtype">const void * </td> |
| <td class="paramname"><em>bytes</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">size_t </td> |
| <td class="paramname"><em>size</em>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">const SerDe & </td> |
| <td class="paramname"><em>sd</em> = <code>SerDe()</code>, </td> |
| </tr> |
| <tr> |
| <td class="paramkey"></td> |
| <td></td> |
| <td class="paramtype">const A & </td> |
| <td class="paramname"><em>allocator</em> = <code>A()</code> </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>This method deserializes a sketch from a given array of bytes. </p> |
| <dl class="params"><dt>Parameters</dt><dd> |
| <table class="params"> |
| <tr><td class="paramname">bytes</td><td>pointer to the array of bytes </td></tr> |
| <tr><td class="paramname">size</td><td>the size of the array </td></tr> |
| <tr><td class="paramname">sd</td><td>instance of a SerDe </td></tr> |
| <tr><td class="paramname">allocator</td><td>instance of an allocator </td></tr> |
| </table> |
| </dd> |
| </dl> |
| <dl class="section return"><dt>Returns</dt><dd>an instance of a sketch </dd></dl> |
| |
| </div> |
| </div> |
| <a id="aed372241c10ffd041bee85602edb199a" name="aed372241c10ffd041bee85602edb199a"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#aed372241c10ffd041bee85602edb199a">◆ </a></span>to_string()</h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <div class="memtemplate"> |
| template<typename T , typename A > </div> |
| <table class="memname"> |
| <tr> |
| <td class="memname">string< A > to_string </td> |
| <td>(</td> |
| <td class="paramname"></td><td>)</td> |
| <td> const</td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Prints a summary of the sketch. </p> |
| <dl class="section return"><dt>Returns</dt><dd>the summary as a string </dd></dl> |
| |
| </div> |
| </div> |
| <a id="a0fa52dd153f1e3cac57d4742e2fef6fc" name="a0fa52dd153f1e3cac57d4742e2fef6fc"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#a0fa52dd153f1e3cac57d4742e2fef6fc">◆ </a></span>items_to_string()</h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <div class="memtemplate"> |
| template<typename T , typename A > </div> |
| <table class="memname"> |
| <tr> |
| <td class="memname">string< A > items_to_string </td> |
| <td>(</td> |
| <td class="paramname"></td><td>)</td> |
| <td> const</td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Prints the raw sketch items to a string. </p> |
| <p>Calls items_to_stream() internally. Only works for type T with a defined std::ostream& operator<<(std::ostream&, const T&) and kept separate from <a class="el" href="classdatasketches_1_1var__opt__sketch.html#aed372241c10ffd041bee85602edb199a" title="Prints a summary of the sketch.">to_string()</a> to allow compilation even if T does not have such an operator defined. </p><dl class="section return"><dt>Returns</dt><dd>a string with the sketch items </dd></dl> |
| |
| </div> |
| </div> |
| <a id="a0faac62cb9f27b09afc849def518f5cc" name="a0faac62cb9f27b09afc849def518f5cc"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#a0faac62cb9f27b09afc849def518f5cc">◆ </a></span>begin()</h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <div class="memtemplate"> |
| template<typename T , typename A > </div> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="classdatasketches_1_1var__opt__sketch.html">var_opt_sketch</a>< T, A >::const_iterator begin </td> |
| <td>(</td> |
| <td class="paramname"></td><td>)</td> |
| <td> const</td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Iterator pointing to the first item in the sketch. </p> |
| <p>If the sketch is empty, the returned iterator must not be dereferenced or incremented. </p><dl class="section return"><dt>Returns</dt><dd>iterator pointing to the first item in the sketch </dd></dl> |
| |
| </div> |
| </div> |
| <a id="ae9e1e5356b5d10a177fa50f7bdfdfd96" name="ae9e1e5356b5d10a177fa50f7bdfdfd96"></a> |
| <h2 class="memtitle"><span class="permalink"><a href="#ae9e1e5356b5d10a177fa50f7bdfdfd96">◆ </a></span>end()</h2> |
| |
| <div class="memitem"> |
| <div class="memproto"> |
| <div class="memtemplate"> |
| template<typename T , typename A > </div> |
| <table class="memname"> |
| <tr> |
| <td class="memname"><a class="el" href="classdatasketches_1_1var__opt__sketch.html">var_opt_sketch</a>< T, A >::const_iterator end </td> |
| <td>(</td> |
| <td class="paramname"></td><td>)</td> |
| <td> const</td> |
| </tr> |
| </table> |
| </div><div class="memdoc"> |
| |
| <p>Iterator pointing to the past-the-end item in the sketch. </p> |
| <p>The past-the-end item is the hypothetical item that would follow the last item. It does not point to any item, and must not be dereferenced or incremented. </p><dl class="section return"><dt>Returns</dt><dd>iterator pointing to the past-the-end item in the sketch </dd></dl> |
| |
| </div> |
| </div> |
| <hr/>The documentation for this class was generated from the following files:<ul> |
| <li>sampling/include/<a class="el" href="var__opt__sketch_8hpp_source.html">var_opt_sketch.hpp</a></li> |
| <li>sampling/include/<a class="el" href="var__opt__sketch__impl_8hpp_source.html">var_opt_sketch_impl.hpp</a></li> |
| </ul> |
| </div><!-- contents --> |
| <!-- start footer part --> |
| <hr class="footer"/><address class="footer"><small> |
| Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8 |
| </small></address> |
| </body> |
| </html> |