aare/docs/html/structfolly_1_1ProducerConsumerQueue.html
2024-04-11 17:20:34 +02:00

670 lines
31 KiB
HTML

<!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.7"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>AARE: folly::ProducerConsumerQueue&lt; T &gt; Struct 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">AARE
</div>
<div id="projectbrief">Data analysis library for PSI hybrid detectors</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.7 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;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&amp;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="namespacefolly.html">folly</a></li><li class="navelem"><a class="el" href="structfolly_1_1ProducerConsumerQueue.html">ProducerConsumerQueue</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pri-types">Private Types</a> &#124;
<a href="#pri-attribs">Private Attributes</a> </div>
<div class="headertitle"><div class="title">folly::ProducerConsumerQueue&lt; T &gt; Struct Template Reference</div></div>
</div><!--header-->
<div class="contents">
<p><code>#include &lt;<a class="el" href="ProducerConsumerQueue_8hpp_source.html">ProducerConsumerQueue.hpp</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-types" name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:ab9ca59636041c88588bf0a367c4c9415"><td class="memItemLeft" align="right" valign="top">typedef T&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structfolly_1_1ProducerConsumerQueue.html#ab9ca59636041c88588bf0a367c4c9415">value_type</a></td></tr>
<tr class="separator:ab9ca59636041c88588bf0a367c4c9415"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><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:af6639f8106b78609082a4cd5e3e8ceb5"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structfolly_1_1ProducerConsumerQueue.html#af6639f8106b78609082a4cd5e3e8ceb5">ProducerConsumerQueue</a> (const <a class="el" href="structfolly_1_1ProducerConsumerQueue.html">ProducerConsumerQueue</a> &amp;)=delete</td></tr>
<tr class="separator:af6639f8106b78609082a4cd5e3e8ceb5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac1f83f5f296f6f79583125947859b9d0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structfolly_1_1ProducerConsumerQueue.html">ProducerConsumerQueue</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structfolly_1_1ProducerConsumerQueue.html#ac1f83f5f296f6f79583125947859b9d0">operator=</a> (const <a class="el" href="structfolly_1_1ProducerConsumerQueue.html">ProducerConsumerQueue</a> &amp;)=delete</td></tr>
<tr class="separator:ac1f83f5f296f6f79583125947859b9d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3398aa33aa91bad8e0f023d2e1df8069"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structfolly_1_1ProducerConsumerQueue.html#a3398aa33aa91bad8e0f023d2e1df8069">ProducerConsumerQueue</a> (uint32_t size)</td></tr>
<tr class="separator:a3398aa33aa91bad8e0f023d2e1df8069"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae21044b9fe0c4345e2b7ec10cb81a18c"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structfolly_1_1ProducerConsumerQueue.html#ae21044b9fe0c4345e2b7ec10cb81a18c">~ProducerConsumerQueue</a> ()</td></tr>
<tr class="separator:ae21044b9fe0c4345e2b7ec10cb81a18c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af849682c2351c5f2b3344e32c512a961"><td class="memTemplParams" colspan="2">template&lt;class... Args&gt; </td></tr>
<tr class="memitem:af849682c2351c5f2b3344e32c512a961"><td class="memTemplItemLeft" align="right" valign="top">bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="structfolly_1_1ProducerConsumerQueue.html#af849682c2351c5f2b3344e32c512a961">write</a> (Args &amp;&amp;...recordArgs)</td></tr>
<tr class="separator:af849682c2351c5f2b3344e32c512a961"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3288ef770695d676376c80ea41630b74"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structfolly_1_1ProducerConsumerQueue.html#a3288ef770695d676376c80ea41630b74">read</a> (T &amp;record)</td></tr>
<tr class="separator:a3288ef770695d676376c80ea41630b74"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a24474b670bc44f75f7c978087e401bd0"><td class="memItemLeft" align="right" valign="top">T *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structfolly_1_1ProducerConsumerQueue.html#a24474b670bc44f75f7c978087e401bd0">frontPtr</a> ()</td></tr>
<tr class="separator:a24474b670bc44f75f7c978087e401bd0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a92e517783bcaa0102521fb739b7f5f4e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structfolly_1_1ProducerConsumerQueue.html#a92e517783bcaa0102521fb739b7f5f4e">popFront</a> ()</td></tr>
<tr class="separator:a92e517783bcaa0102521fb739b7f5f4e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7f277f7b04debc85e2f99006ac3558e8"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structfolly_1_1ProducerConsumerQueue.html#a7f277f7b04debc85e2f99006ac3558e8">isEmpty</a> () const</td></tr>
<tr class="separator:a7f277f7b04debc85e2f99006ac3558e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad883c041917c2b7f10b0ecdaeaeb0577"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structfolly_1_1ProducerConsumerQueue.html#ad883c041917c2b7f10b0ecdaeaeb0577">isFull</a> () const</td></tr>
<tr class="separator:ad883c041917c2b7f10b0ecdaeaeb0577"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adb384b6a25b755b627d04ff6f2ca9c95"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structfolly_1_1ProducerConsumerQueue.html#adb384b6a25b755b627d04ff6f2ca9c95">sizeGuess</a> () const</td></tr>
<tr class="separator:adb384b6a25b755b627d04ff6f2ca9c95"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab5966af8b6789e2ad2c215d0226fd616"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structfolly_1_1ProducerConsumerQueue.html#ab5966af8b6789e2ad2c215d0226fd616">capacity</a> () const</td></tr>
<tr class="separator:ab5966af8b6789e2ad2c215d0226fd616"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pri-types" name="pri-types"></a>
Private Types</h2></td></tr>
<tr class="memitem:af9f2e0d5fb4a92eb037b630a80f521cb"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structfolly_1_1ProducerConsumerQueue.html#af9f2e0d5fb4a92eb037b630a80f521cb">AtomicIndex</a> = std::atomic&lt; unsigned int &gt;</td></tr>
<tr class="separator:af9f2e0d5fb4a92eb037b630a80f521cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pri-attribs" name="pri-attribs"></a>
Private Attributes</h2></td></tr>
<tr class="memitem:ab20193986ce865e7c2f430f706d743cf"><td class="memItemLeft" align="right" valign="top">char&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structfolly_1_1ProducerConsumerQueue.html#ab20193986ce865e7c2f430f706d743cf">pad0_</a> [<a class="el" href="ProducerConsumerQueue_8hpp.html#afcfcf0ecf646b16dd2b471dc568cf6c6">hardware_destructive_interference_size</a>]</td></tr>
<tr class="separator:ab20193986ce865e7c2f430f706d743cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad5bf2e76bc4aad660840cbb927317d76"><td class="memItemLeft" align="right" valign="top">const uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structfolly_1_1ProducerConsumerQueue.html#ad5bf2e76bc4aad660840cbb927317d76">size_</a></td></tr>
<tr class="separator:ad5bf2e76bc4aad660840cbb927317d76"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7f28bc4897019e6a4743dd22a97b33e1"><td class="memItemLeft" align="right" valign="top">T *const&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structfolly_1_1ProducerConsumerQueue.html#a7f28bc4897019e6a4743dd22a97b33e1">records_</a></td></tr>
<tr class="separator:a7f28bc4897019e6a4743dd22a97b33e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5f0ee08f1bfb4c8721c41426137e2005"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structfolly_1_1ProducerConsumerQueue.html#af9f2e0d5fb4a92eb037b630a80f521cb">AtomicIndex</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structfolly_1_1ProducerConsumerQueue.html#a5f0ee08f1bfb4c8721c41426137e2005">readIndex_</a></td></tr>
<tr class="separator:a5f0ee08f1bfb4c8721c41426137e2005"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7c4b68cf28e3e925ff14f5736bce59d4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structfolly_1_1ProducerConsumerQueue.html#af9f2e0d5fb4a92eb037b630a80f521cb">AtomicIndex</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structfolly_1_1ProducerConsumerQueue.html#a7c4b68cf28e3e925ff14f5736bce59d4">writeIndex_</a></td></tr>
<tr class="separator:a7c4b68cf28e3e925ff14f5736bce59d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a14823e2289be8649cebd813caa00d1fa"><td class="memItemLeft" align="right" valign="top">char&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structfolly_1_1ProducerConsumerQueue.html#a14823e2289be8649cebd813caa00d1fa">pad1_</a> [<a class="el" href="ProducerConsumerQueue_8hpp.html#afcfcf0ecf646b16dd2b471dc568cf6c6">hardware_destructive_interference_size</a> - sizeof(<a class="el" href="structfolly_1_1ProducerConsumerQueue.html#af9f2e0d5fb4a92eb037b630a80f521cb">AtomicIndex</a>)]</td></tr>
<tr class="separator:a14823e2289be8649cebd813caa00d1fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Member Typedef Documentation</h2>
<a id="af9f2e0d5fb4a92eb037b630a80f521cb" name="af9f2e0d5fb4a92eb037b630a80f521cb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af9f2e0d5fb4a92eb037b630a80f521cb">&#9670;&#160;</a></span>AtomicIndex</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">using <a class="el" href="structfolly_1_1ProducerConsumerQueue.html">folly::ProducerConsumerQueue</a>&lt; T &gt;::AtomicIndex = std::atomic&lt;unsigned int&gt;</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="ab9ca59636041c88588bf0a367c4c9415" name="ab9ca59636041c88588bf0a367c4c9415"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab9ca59636041c88588bf0a367c4c9415">&#9670;&#160;</a></span>value_type</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="memname">
<tr>
<td class="memname">typedef T <a class="el" href="structfolly_1_1ProducerConsumerQueue.html">folly::ProducerConsumerQueue</a>&lt; T &gt;::value_type</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="af6639f8106b78609082a4cd5e3e8ceb5" name="af6639f8106b78609082a4cd5e3e8ceb5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af6639f8106b78609082a4cd5e3e8ceb5">&#9670;&#160;</a></span>ProducerConsumerQueue() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structfolly_1_1ProducerConsumerQueue.html">folly::ProducerConsumerQueue</a>&lt; T &gt;::ProducerConsumerQueue </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structfolly_1_1ProducerConsumerQueue.html">ProducerConsumerQueue</a>&lt; T &gt; &amp;&#160;</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">delete</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a3398aa33aa91bad8e0f023d2e1df8069" name="a3398aa33aa91bad8e0f023d2e1df8069"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3398aa33aa91bad8e0f023d2e1df8069">&#9670;&#160;</a></span>ProducerConsumerQueue() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structfolly_1_1ProducerConsumerQueue.html">folly::ProducerConsumerQueue</a>&lt; T &gt;::ProducerConsumerQueue </td>
<td>(</td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>size</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">explicit</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="ae21044b9fe0c4345e2b7ec10cb81a18c" name="ae21044b9fe0c4345e2b7ec10cb81a18c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae21044b9fe0c4345e2b7ec10cb81a18c">&#9670;&#160;</a></span>~ProducerConsumerQueue()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structfolly_1_1ProducerConsumerQueue.html">folly::ProducerConsumerQueue</a>&lt; T &gt;::~<a class="el" href="structfolly_1_1ProducerConsumerQueue.html">ProducerConsumerQueue</a> </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="ab5966af8b6789e2ad2c215d0226fd616" name="ab5966af8b6789e2ad2c215d0226fd616"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab5966af8b6789e2ad2c215d0226fd616">&#9670;&#160;</a></span>capacity()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">size_t <a class="el" href="structfolly_1_1ProducerConsumerQueue.html">folly::ProducerConsumerQueue</a>&lt; T &gt;::capacity </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">
</div>
</div>
<a id="a24474b670bc44f75f7c978087e401bd0" name="a24474b670bc44f75f7c978087e401bd0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a24474b670bc44f75f7c978087e401bd0">&#9670;&#160;</a></span>frontPtr()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">T * <a class="el" href="structfolly_1_1ProducerConsumerQueue.html">folly::ProducerConsumerQueue</a>&lt; T &gt;::frontPtr </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a7f277f7b04debc85e2f99006ac3558e8" name="a7f277f7b04debc85e2f99006ac3558e8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7f277f7b04debc85e2f99006ac3558e8">&#9670;&#160;</a></span>isEmpty()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool <a class="el" href="structfolly_1_1ProducerConsumerQueue.html">folly::ProducerConsumerQueue</a>&lt; T &gt;::isEmpty </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">
</div>
</div>
<a id="ad883c041917c2b7f10b0ecdaeaeb0577" name="ad883c041917c2b7f10b0ecdaeaeb0577"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad883c041917c2b7f10b0ecdaeaeb0577">&#9670;&#160;</a></span>isFull()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool <a class="el" href="structfolly_1_1ProducerConsumerQueue.html">folly::ProducerConsumerQueue</a>&lt; T &gt;::isFull </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">
</div>
</div>
<a id="ac1f83f5f296f6f79583125947859b9d0" name="ac1f83f5f296f6f79583125947859b9d0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac1f83f5f296f6f79583125947859b9d0">&#9670;&#160;</a></span>operator=()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structfolly_1_1ProducerConsumerQueue.html">ProducerConsumerQueue</a> &amp; <a class="el" href="structfolly_1_1ProducerConsumerQueue.html">folly::ProducerConsumerQueue</a>&lt; T &gt;::operator= </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structfolly_1_1ProducerConsumerQueue.html">ProducerConsumerQueue</a>&lt; T &gt; &amp;&#160;</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">delete</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a92e517783bcaa0102521fb739b7f5f4e" name="a92e517783bcaa0102521fb739b7f5f4e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a92e517783bcaa0102521fb739b7f5f4e">&#9670;&#160;</a></span>popFront()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="structfolly_1_1ProducerConsumerQueue.html">folly::ProducerConsumerQueue</a>&lt; T &gt;::popFront </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a3288ef770695d676376c80ea41630b74" name="a3288ef770695d676376c80ea41630b74"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3288ef770695d676376c80ea41630b74">&#9670;&#160;</a></span>read()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool <a class="el" href="structfolly_1_1ProducerConsumerQueue.html">folly::ProducerConsumerQueue</a>&lt; T &gt;::read </td>
<td>(</td>
<td class="paramtype">T &amp;&#160;</td>
<td class="paramname"><em>record</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="adb384b6a25b755b627d04ff6f2ca9c95" name="adb384b6a25b755b627d04ff6f2ca9c95"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adb384b6a25b755b627d04ff6f2ca9c95">&#9670;&#160;</a></span>sizeGuess()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">size_t <a class="el" href="structfolly_1_1ProducerConsumerQueue.html">folly::ProducerConsumerQueue</a>&lt; T &gt;::sizeGuess </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">
</div>
</div>
<a id="af849682c2351c5f2b3344e32c512a961" name="af849682c2351c5f2b3344e32c512a961"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af849682c2351c5f2b3344e32c512a961">&#9670;&#160;</a></span>write()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<div class="memtemplate">
template&lt;class... Args&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool <a class="el" href="structfolly_1_1ProducerConsumerQueue.html">folly::ProducerConsumerQueue</a>&lt; T &gt;::write </td>
<td>(</td>
<td class="paramtype">Args &amp;&amp;...&#160;</td>
<td class="paramname"><em>recordArgs</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<h2 class="groupheader">Field Documentation</h2>
<a id="ab20193986ce865e7c2f430f706d743cf" name="ab20193986ce865e7c2f430f706d743cf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab20193986ce865e7c2f430f706d743cf">&#9670;&#160;</a></span>pad0_</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">char <a class="el" href="structfolly_1_1ProducerConsumerQueue.html">folly::ProducerConsumerQueue</a>&lt; T &gt;::pad0_[<a class="el" href="ProducerConsumerQueue_8hpp.html#afcfcf0ecf646b16dd2b471dc568cf6c6">hardware_destructive_interference_size</a>]</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a14823e2289be8649cebd813caa00d1fa" name="a14823e2289be8649cebd813caa00d1fa"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a14823e2289be8649cebd813caa00d1fa">&#9670;&#160;</a></span>pad1_</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">char <a class="el" href="structfolly_1_1ProducerConsumerQueue.html">folly::ProducerConsumerQueue</a>&lt; T &gt;::pad1_[<a class="el" href="ProducerConsumerQueue_8hpp.html#afcfcf0ecf646b16dd2b471dc568cf6c6">hardware_destructive_interference_size</a> - sizeof(<a class="el" href="structfolly_1_1ProducerConsumerQueue.html#af9f2e0d5fb4a92eb037b630a80f521cb">AtomicIndex</a>)]</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a5f0ee08f1bfb4c8721c41426137e2005" name="a5f0ee08f1bfb4c8721c41426137e2005"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5f0ee08f1bfb4c8721c41426137e2005">&#9670;&#160;</a></span>readIndex_</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structfolly_1_1ProducerConsumerQueue.html#af9f2e0d5fb4a92eb037b630a80f521cb">AtomicIndex</a> <a class="el" href="structfolly_1_1ProducerConsumerQueue.html">folly::ProducerConsumerQueue</a>&lt; T &gt;::readIndex_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a7f28bc4897019e6a4743dd22a97b33e1" name="a7f28bc4897019e6a4743dd22a97b33e1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7f28bc4897019e6a4743dd22a97b33e1">&#9670;&#160;</a></span>records_</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">T* const <a class="el" href="structfolly_1_1ProducerConsumerQueue.html">folly::ProducerConsumerQueue</a>&lt; T &gt;::records_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="ad5bf2e76bc4aad660840cbb927317d76" name="ad5bf2e76bc4aad660840cbb927317d76"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad5bf2e76bc4aad660840cbb927317d76">&#9670;&#160;</a></span>size_</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const uint32_t <a class="el" href="structfolly_1_1ProducerConsumerQueue.html">folly::ProducerConsumerQueue</a>&lt; T &gt;::size_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a7c4b68cf28e3e925ff14f5736bce59d4" name="a7c4b68cf28e3e925ff14f5736bce59d4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7c4b68cf28e3e925ff14f5736bce59d4">&#9670;&#160;</a></span>writeIndex_</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structfolly_1_1ProducerConsumerQueue.html#af9f2e0d5fb4a92eb037b630a80f521cb">AtomicIndex</a> <a class="el" href="structfolly_1_1ProducerConsumerQueue.html">folly::ProducerConsumerQueue</a>&lt; T &gt;::writeIndex_</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<hr/>The documentation for this struct was generated from the following file:<ul>
<li>core/include/aare/core/<a class="el" href="ProducerConsumerQueue_8hpp_source.html">ProducerConsumerQueue.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.7
</small></address>
</body>
</html>