Files
openpose/html/classop_1_1_thread_manager.html

549 lines
27 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://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.8.6"/>
<title>OpenPose: op::ThreadManager&lt; TDatums, TWorker, TQueue &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="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
$(document).ready(initResizable);
$(window).load(resizeHeight);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</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 style="padding-left: 0.5em;">
<div id="projectname">OpenPose
&#160;<span id="projectnumber">1.0.0rc2</span>
</div>
<div id="projectbrief">OpenPose: A Real-Time Multi-Person Key-Point Detection And Multi-Threading C++ Library</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.6 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('classop_1_1_thread_manager.html','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></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 class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classop_1_1_thread_manager-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">op::ThreadManager&lt; TDatums, TWorker, TQueue &gt; Class Template Reference</div> </div>
</div><!--header-->
<div class="contents">
<p><code>#include &lt;<a class="el" href="thread_manager_8hpp_source.html">threadManager.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:a8b7d17f4a330495389e646bb21907303"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classop_1_1_thread_manager.html#a8b7d17f4a330495389e646bb21907303">ThreadManager</a> (const <a class="el" href="namespaceop.html#a3593e2d53bec533f0048ef3973eebd36">ThreadManagerMode</a> threadManagerMode=<a class="el" href="namespaceop.html#a3593e2d53bec533f0048ef3973eebd36a2fe4167817733fec8e6ba1afddf78f1b">ThreadManagerMode::Synchronous</a>)</td></tr>
<tr class="separator:a8b7d17f4a330495389e646bb21907303"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a03c6587dbc60b266bee04b9714647fba"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classop_1_1_thread_manager.html#a03c6587dbc60b266bee04b9714647fba">~ThreadManager</a> ()</td></tr>
<tr class="separator:a03c6587dbc60b266bee04b9714647fba"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ace408d1d281193a9f3d3d6561181ef56"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classop_1_1_thread_manager.html#ace408d1d281193a9f3d3d6561181ef56">setDefaultMaxSizeQueues</a> (const long long defaultMaxSizeQueues=-1)</td></tr>
<tr class="separator:ace408d1d281193a9f3d3d6561181ef56"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8134abeaec65b5647ae92e34f3ad420b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classop_1_1_thread_manager.html#a8134abeaec65b5647ae92e34f3ad420b">add</a> (const unsigned long long threadId, const std::vector&lt; TWorker &gt; &amp;tWorkers, const unsigned long long queueInId, const unsigned long long queueOutId)</td></tr>
<tr class="separator:a8134abeaec65b5647ae92e34f3ad420b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a762acc9eb60bd10857da1f416e169f3d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classop_1_1_thread_manager.html#a762acc9eb60bd10857da1f416e169f3d">add</a> (const unsigned long long threadId, const TWorker &amp;tWorker, const unsigned long long queueInId, const unsigned long long queueOutId)</td></tr>
<tr class="separator:a762acc9eb60bd10857da1f416e169f3d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5b7c5ea46c360496e261094c5e1397a7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classop_1_1_thread_manager.html#a5b7c5ea46c360496e261094c5e1397a7">reset</a> ()</td></tr>
<tr class="separator:a5b7c5ea46c360496e261094c5e1397a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a67a2d7cecc749be414e6896a88ec268d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classop_1_1_thread_manager.html#a67a2d7cecc749be414e6896a88ec268d">exec</a> ()</td></tr>
<tr class="separator:a67a2d7cecc749be414e6896a88ec268d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a01c2d62e539896e36564457ab9cac25c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classop_1_1_thread_manager.html#a01c2d62e539896e36564457ab9cac25c">start</a> ()</td></tr>
<tr class="separator:a01c2d62e539896e36564457ab9cac25c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a472a1ebee700c3449bac4d6d2bb0c3a8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classop_1_1_thread_manager.html#a472a1ebee700c3449bac4d6d2bb0c3a8">stop</a> ()</td></tr>
<tr class="separator:a472a1ebee700c3449bac4d6d2bb0c3a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a48ea53b3de4d09c84db18e2c31ce1be1"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; std::atomic<br class="typebreak"/>
&lt; bool &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classop_1_1_thread_manager.html#a48ea53b3de4d09c84db18e2c31ce1be1">getIsRunningSharedPtr</a> ()</td></tr>
<tr class="separator:a48ea53b3de4d09c84db18e2c31ce1be1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae15857e155633662cd46616fc54a4877"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classop_1_1_thread_manager.html#ae15857e155633662cd46616fc54a4877">isRunning</a> () const </td></tr>
<tr class="separator:ae15857e155633662cd46616fc54a4877"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8d5ffd9473557ff0f90ac1c6a1bae3ad"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classop_1_1_thread_manager.html#a8d5ffd9473557ff0f90ac1c6a1bae3ad">tryEmplace</a> (TDatums &amp;tDatums)</td></tr>
<tr class="separator:a8d5ffd9473557ff0f90ac1c6a1bae3ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a36bd8060a4f7f449a8aa35d9a166270d"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classop_1_1_thread_manager.html#a36bd8060a4f7f449a8aa35d9a166270d">waitAndEmplace</a> (TDatums &amp;tDatums)</td></tr>
<tr class="separator:a36bd8060a4f7f449a8aa35d9a166270d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7a24fd902ebd4b5fd81166547a5654d9"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classop_1_1_thread_manager.html#a7a24fd902ebd4b5fd81166547a5654d9">tryPush</a> (const TDatums &amp;tDatums)</td></tr>
<tr class="separator:a7a24fd902ebd4b5fd81166547a5654d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abfa315257b3e8cd022573f439b4936ec"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classop_1_1_thread_manager.html#abfa315257b3e8cd022573f439b4936ec">waitAndPush</a> (const TDatums &amp;tDatums)</td></tr>
<tr class="separator:abfa315257b3e8cd022573f439b4936ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a59916fc3428aaf5c487e1dd373d437cd"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classop_1_1_thread_manager.html#a59916fc3428aaf5c487e1dd373d437cd">tryPop</a> (TDatums &amp;tDatums)</td></tr>
<tr class="separator:a59916fc3428aaf5c487e1dd373d437cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a393a9f04c70a002f5ceb5e301eea5cff"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classop_1_1_thread_manager.html#a393a9f04c70a002f5ceb5e301eea5cff">waitAndPop</a> (TDatums &amp;tDatums)</td></tr>
<tr class="separator:a393a9f04c70a002f5ceb5e301eea5cff"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a8b7d17f4a330495389e646bb21907303"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename TDatums , typename TWorker , typename TQueue &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classop_1_1_thread_manager.html">op::ThreadManager</a>&lt; TDatums, TWorker, TQueue &gt;::<a class="el" href="classop_1_1_thread_manager.html">ThreadManager</a> </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="namespaceop.html#a3593e2d53bec533f0048ef3973eebd36">ThreadManagerMode</a>&#160;</td>
<td class="paramname"><em>threadManagerMode</em> = <code><a class="el" href="namespaceop.html#a3593e2d53bec533f0048ef3973eebd36a2fe4167817733fec8e6ba1afddf78f1b">ThreadManagerMode::Synchronous</a></code></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">
</div>
</div>
<a class="anchor" id="a03c6587dbc60b266bee04b9714647fba"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename TDatums , typename TWorker , typename TQueue &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classop_1_1_thread_manager.html">op::ThreadManager</a>&lt; TDatums, TWorker, TQueue &gt;::~<a class="el" href="classop_1_1_thread_manager.html">ThreadManager</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">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a8134abeaec65b5647ae92e34f3ad420b"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename TDatums , typename TWorker, typename TQueue &gt; </div>
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classop_1_1_thread_manager.html">op::ThreadManager</a>&lt; TDatums, TWorker, TQueue &gt;::add </td>
<td>(</td>
<td class="paramtype">const unsigned long long&#160;</td>
<td class="paramname"><em>threadId</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const std::vector&lt; TWorker &gt; &amp;&#160;</td>
<td class="paramname"><em>tWorkers</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const unsigned long long&#160;</td>
<td class="paramname"><em>queueInId</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const unsigned long long&#160;</td>
<td class="paramname"><em>queueOutId</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a762acc9eb60bd10857da1f416e169f3d"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename TDatums , typename TWorker, typename TQueue &gt; </div>
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classop_1_1_thread_manager.html">op::ThreadManager</a>&lt; TDatums, TWorker, TQueue &gt;::add </td>
<td>(</td>
<td class="paramtype">const unsigned long long&#160;</td>
<td class="paramname"><em>threadId</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const TWorker &amp;&#160;</td>
<td class="paramname"><em>tWorker</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const unsigned long long&#160;</td>
<td class="paramname"><em>queueInId</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const unsigned long long&#160;</td>
<td class="paramname"><em>queueOutId</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a67a2d7cecc749be414e6896a88ec268d"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename TDatums , typename TWorker , typename TQueue &gt; </div>
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classop_1_1_thread_manager.html">op::ThreadManager</a>&lt; TDatums, TWorker, TQueue &gt;::exec </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a48ea53b3de4d09c84db18e2c31ce1be1"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename TDatums, typename TWorker = std::shared_ptr&lt;Worker&lt;TDatums&gt;&gt;, typename TQueue = Queue&lt;TDatums&gt;&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::shared_ptr&lt;std::atomic&lt;bool&gt; &gt; <a class="el" href="classop_1_1_thread_manager.html">op::ThreadManager</a>&lt; TDatums, TWorker, TQueue &gt;::getIsRunningSharedPtr </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 class="anchor" id="ae15857e155633662cd46616fc54a4877"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename TDatums, typename TWorker = std::shared_ptr&lt;Worker&lt;TDatums&gt;&gt;, typename TQueue = Queue&lt;TDatums&gt;&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool <a class="el" href="classop_1_1_thread_manager.html">op::ThreadManager</a>&lt; TDatums, TWorker, TQueue &gt;::isRunning </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 class="anchor" id="a5b7c5ea46c360496e261094c5e1397a7"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename TDatums , typename TWorker , typename TQueue &gt; </div>
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classop_1_1_thread_manager.html">op::ThreadManager</a>&lt; TDatums, TWorker, TQueue &gt;::reset </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="ace408d1d281193a9f3d3d6561181ef56"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename TDatums , typename TWorker , typename TQueue &gt; </div>
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classop_1_1_thread_manager.html">op::ThreadManager</a>&lt; TDatums, TWorker, TQueue &gt;::setDefaultMaxSizeQueues </td>
<td>(</td>
<td class="paramtype">const long long&#160;</td>
<td class="paramname"><em>defaultMaxSizeQueues</em> = <code>-1</code></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a01c2d62e539896e36564457ab9cac25c"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename TDatums , typename TWorker , typename TQueue &gt; </div>
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classop_1_1_thread_manager.html">op::ThreadManager</a>&lt; TDatums, TWorker, TQueue &gt;::start </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a472a1ebee700c3449bac4d6d2bb0c3a8"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename TDatums , typename TWorker , typename TQueue &gt; </div>
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classop_1_1_thread_manager.html">op::ThreadManager</a>&lt; TDatums, TWorker, TQueue &gt;::stop </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a8d5ffd9473557ff0f90ac1c6a1bae3ad"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename TDatums, typename TWorker , typename TQueue &gt; </div>
<table class="memname">
<tr>
<td class="memname">bool <a class="el" href="classop_1_1_thread_manager.html">op::ThreadManager</a>&lt; TDatums, TWorker, TQueue &gt;::tryEmplace </td>
<td>(</td>
<td class="paramtype">TDatums &amp;&#160;</td>
<td class="paramname"><em>tDatums</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a59916fc3428aaf5c487e1dd373d437cd"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename TDatums, typename TWorker , typename TQueue &gt; </div>
<table class="memname">
<tr>
<td class="memname">bool <a class="el" href="classop_1_1_thread_manager.html">op::ThreadManager</a>&lt; TDatums, TWorker, TQueue &gt;::tryPop </td>
<td>(</td>
<td class="paramtype">TDatums &amp;&#160;</td>
<td class="paramname"><em>tDatums</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a7a24fd902ebd4b5fd81166547a5654d9"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename TDatums, typename TWorker , typename TQueue &gt; </div>
<table class="memname">
<tr>
<td class="memname">bool <a class="el" href="classop_1_1_thread_manager.html">op::ThreadManager</a>&lt; TDatums, TWorker, TQueue &gt;::tryPush </td>
<td>(</td>
<td class="paramtype">const TDatums &amp;&#160;</td>
<td class="paramname"><em>tDatums</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a36bd8060a4f7f449a8aa35d9a166270d"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename TDatums, typename TWorker , typename TQueue &gt; </div>
<table class="memname">
<tr>
<td class="memname">bool <a class="el" href="classop_1_1_thread_manager.html">op::ThreadManager</a>&lt; TDatums, TWorker, TQueue &gt;::waitAndEmplace </td>
<td>(</td>
<td class="paramtype">TDatums &amp;&#160;</td>
<td class="paramname"><em>tDatums</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a393a9f04c70a002f5ceb5e301eea5cff"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename TDatums, typename TWorker , typename TQueue &gt; </div>
<table class="memname">
<tr>
<td class="memname">bool <a class="el" href="classop_1_1_thread_manager.html">op::ThreadManager</a>&lt; TDatums, TWorker, TQueue &gt;::waitAndPop </td>
<td>(</td>
<td class="paramtype">TDatums &amp;&#160;</td>
<td class="paramname"><em>tDatums</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="abfa315257b3e8cd022573f439b4936ec"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename TDatums, typename TWorker , typename TQueue &gt; </div>
<table class="memname">
<tr>
<td class="memname">bool <a class="el" href="classop_1_1_thread_manager.html">op::ThreadManager</a>&lt; TDatums, TWorker, TQueue &gt;::waitAndPush </td>
<td>(</td>
<td class="paramtype">const TDatums &amp;&#160;</td>
<td class="paramname"><em>tDatums</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>/home/travis/build/CMU-Perceptual-Computing-Lab/openpose/include/openpose/thread/<a class="el" href="thread_manager_8hpp_source.html">threadManager.hpp</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespaceop.html">op</a></li><li class="navelem"><a class="el" href="classop_1_1_thread_manager.html">ThreadManager</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.6 </li>
</ul>
</div>
</body>
</html>