blob: 3af10032a8daa98d7921dcd13af05879d5bf85e9 [file] [log] [blame]
Ryan OSheade36e4a2020-03-13 16:26:19 +00001<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2<html xmlns="http://www.w3.org/1999/xhtml">
3<head>
4<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
5<meta http-equiv="X-UA-Compatible" content="IE=9"/>
6<meta name="generator" content="Doxygen 1.8.13"/>
7<meta name="viewport" content="width=device-width, initial-scale=1"/>
8<title>ArmNN: CommandHandler Class Reference</title>
9<link href="tabs.css" rel="stylesheet" type="text/css"/>
10<script type="text/javascript" src="jquery.js"></script>
11<script type="text/javascript" src="dynsections.js"></script>
12<link href="navtree.css" rel="stylesheet" type="text/css"/>
13<script type="text/javascript" src="resize.js"></script>
14<script type="text/javascript" src="navtreedata.js"></script>
15<script type="text/javascript" src="navtree.js"></script>
16<script type="text/javascript">
17 $(document).ready(initResizable);
18</script>
19<link href="search/search.css" rel="stylesheet" type="text/css"/>
20<script type="text/javascript" src="search/searchdata.js"></script>
21<script type="text/javascript" src="search/search.js"></script>
22<link href="doxygen.css" rel="stylesheet" type="text/css" />
23</head>
24<body>
25<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
26<div id="titlearea">
27<table cellspacing="0" cellpadding="0">
28 <tbody>
29 <tr style="height: 56px;">
30 <td id="projectalign" style="padding-left: 0.5em;">
31 <div id="projectname">ArmNN
32 &#160;<span id="projectnumber">NotReleased</span>
33 </div>
34 </td>
35 </tr>
36 </tbody>
37</table>
38</div>
39<!-- end header part -->
40<!-- Generated by Doxygen 1.8.13 -->
41<script type="text/javascript">
42var searchBox = new SearchBox("searchBox", "search",false,'Search');
43</script>
44<script type="text/javascript" src="menudata.js"></script>
45<script type="text/javascript" src="menu.js"></script>
46<script type="text/javascript">
47$(function() {
48 initMenu('',true,false,'search.php','Search');
49 $(document).ready(function() { init_search(); });
50});
51</script>
52<div id="main-nav"></div>
53</div><!-- top -->
54<div id="side-nav" class="ui-resizable side-nav-resizable">
55 <div id="nav-tree">
56 <div id="nav-tree-contents">
57 <div id="nav-sync" class="sync"></div>
58 </div>
59 </div>
60 <div id="splitbar" style="-moz-user-select:none;"
61 class="ui-resizable-handle">
62 </div>
63</div>
64<script type="text/javascript">
65$(document).ready(function(){initNavTree('classarmnn_1_1profiling_1_1_command_handler.html','');});
66</script>
67<div id="doc-content">
68<!-- window showing the filter options -->
69<div id="MSearchSelectWindow"
70 onmouseover="return searchBox.OnSearchSelectShow()"
71 onmouseout="return searchBox.OnSearchSelectHide()"
72 onkeydown="return searchBox.OnSearchSelectKey(event)">
73</div>
74
75<!-- iframe showing the search results (closed by default) -->
76<div id="MSearchResultsWindow">
77<iframe src="javascript:void(0)" frameborder="0"
78 name="MSearchResults" id="MSearchResults">
79</iframe>
80</div>
81
82<div class="header">
83 <div class="summary">
84<a href="#pub-methods">Public Member Functions</a> &#124;
85<a href="classarmnn_1_1profiling_1_1_command_handler-members.html">List of all members</a> </div>
86 <div class="headertitle">
87<div class="title">CommandHandler Class Reference</div> </div>
88</div><!--header-->
89<div class="contents">
90
91<p><code>#include &lt;<a class="el" href="_command_handler_8hpp_source.html">CommandHandler.hpp</a>&gt;</code></p>
92<table class="memberdecls">
93<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
94Public Member Functions</h2></td></tr>
95<tr class="memitem:a602f1b64401712a87c2ef276f469368d"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1profiling_1_1_command_handler.html#a602f1b64401712a87c2ef276f469368d">CommandHandler</a> (uint32_t timeout, bool stopAfterTimeout, <a class="el" href="classarmnn_1_1profiling_1_1_command_handler_registry.html">CommandHandlerRegistry</a> &amp;commandHandlerRegistry, <a class="el" href="classarmnn_1_1profiling_1_1_packet_version_resolver.html">PacketVersionResolver</a> &amp;packetVersionResolver)</td></tr>
96<tr class="separator:a602f1b64401712a87c2ef276f469368d"><td class="memSeparator" colspan="2">&#160;</td></tr>
97<tr class="memitem:a5f937b7610842eb70d0376221da7bb07"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1profiling_1_1_command_handler.html#a5f937b7610842eb70d0376221da7bb07">~CommandHandler</a> ()</td></tr>
98<tr class="separator:a5f937b7610842eb70d0376221da7bb07"><td class="memSeparator" colspan="2">&#160;</td></tr>
99<tr class="memitem:aa2a07b9715323faee8cd53a623f25c7f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1profiling_1_1_command_handler.html#aa2a07b9715323faee8cd53a623f25c7f">SetTimeout</a> (uint32_t timeout)</td></tr>
100<tr class="separator:aa2a07b9715323faee8cd53a623f25c7f"><td class="memSeparator" colspan="2">&#160;</td></tr>
101<tr class="memitem:ad6feb3bc1f64bb41467da55d30e9403f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1profiling_1_1_command_handler.html#ad6feb3bc1f64bb41467da55d30e9403f">SetStopAfterTimeout</a> (bool stopAfterTimeout)</td></tr>
102<tr class="separator:ad6feb3bc1f64bb41467da55d30e9403f"><td class="memSeparator" colspan="2">&#160;</td></tr>
103<tr class="memitem:af5f886492fa5da4ff3cde1769e9da2cb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1profiling_1_1_command_handler.html#af5f886492fa5da4ff3cde1769e9da2cb">Start</a> (<a class="el" href="classarmnn_1_1profiling_1_1_i_profiling_connection.html">IProfilingConnection</a> &amp;profilingConnection)</td></tr>
104<tr class="separator:af5f886492fa5da4ff3cde1769e9da2cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
105<tr class="memitem:a17a237457e57625296e6b24feb19c60a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1profiling_1_1_command_handler.html#a17a237457e57625296e6b24feb19c60a">Stop</a> ()</td></tr>
106<tr class="separator:a17a237457e57625296e6b24feb19c60a"><td class="memSeparator" colspan="2">&#160;</td></tr>
107<tr class="memitem:ad201152b05beda61e51e3594ff07c8fe"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1profiling_1_1_command_handler.html#ad201152b05beda61e51e3594ff07c8fe">IsRunning</a> () const</td></tr>
108<tr class="separator:ad201152b05beda61e51e3594ff07c8fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
109</table>
110<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
111<div class="textblock">
112<p class="definition">Definition at line <a class="el" href="_command_handler_8hpp_source.html#l00021">21</a> of file <a class="el" href="_command_handler_8hpp_source.html">CommandHandler.hpp</a>.</p>
113</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
114<a id="a602f1b64401712a87c2ef276f469368d"></a>
115<h2 class="memtitle"><span class="permalink"><a href="#a602f1b64401712a87c2ef276f469368d">&#9670;&nbsp;</a></span>CommandHandler()</h2>
116
117<div class="memitem">
118<div class="memproto">
119<table class="mlabels">
120 <tr>
121 <td class="mlabels-left">
122 <table class="memname">
123 <tr>
124 <td class="memname"><a class="el" href="classarmnn_1_1profiling_1_1_command_handler.html">CommandHandler</a> </td>
125 <td>(</td>
126 <td class="paramtype">uint32_t&#160;</td>
127 <td class="paramname"><em>timeout</em>, </td>
128 </tr>
129 <tr>
130 <td class="paramkey"></td>
131 <td></td>
132 <td class="paramtype">bool&#160;</td>
133 <td class="paramname"><em>stopAfterTimeout</em>, </td>
134 </tr>
135 <tr>
136 <td class="paramkey"></td>
137 <td></td>
138 <td class="paramtype"><a class="el" href="classarmnn_1_1profiling_1_1_command_handler_registry.html">CommandHandlerRegistry</a> &amp;&#160;</td>
139 <td class="paramname"><em>commandHandlerRegistry</em>, </td>
140 </tr>
141 <tr>
142 <td class="paramkey"></td>
143 <td></td>
144 <td class="paramtype"><a class="el" href="classarmnn_1_1profiling_1_1_packet_version_resolver.html">PacketVersionResolver</a> &amp;&#160;</td>
145 <td class="paramname"><em>packetVersionResolver</em>&#160;</td>
146 </tr>
147 <tr>
148 <td></td>
149 <td>)</td>
150 <td></td><td></td>
151 </tr>
152 </table>
153 </td>
154 <td class="mlabels-right">
155<span class="mlabels"><span class="mlabel">inline</span></span> </td>
156 </tr>
157</table>
158</div><div class="memdoc">
159
160<p class="definition">Definition at line <a class="el" href="_command_handler_8hpp_source.html#l00024">24</a> of file <a class="el" href="_command_handler_8hpp_source.html">CommandHandler.hpp</a>.</p>
161<div class="fragment"><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; : m_Timeout(timeout)</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; , m_StopAfterTimeout(stopAfterTimeout)</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; , m_IsRunning(<span class="keyword">false</span>)</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; , m_KeepRunning(<span class="keyword">false</span>)</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; , m_CommandThread()</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; , m_CommandHandlerRegistry(commandHandlerRegistry)</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; , m_PacketVersionResolver(packetVersionResolver)</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; {}</div></div><!-- fragment -->
162</div>
163</div>
164<a id="a5f937b7610842eb70d0376221da7bb07"></a>
165<h2 class="memtitle"><span class="permalink"><a href="#a5f937b7610842eb70d0376221da7bb07">&#9670;&nbsp;</a></span>~CommandHandler()</h2>
166
167<div class="memitem">
168<div class="memproto">
169<table class="mlabels">
170 <tr>
171 <td class="mlabels-left">
172 <table class="memname">
173 <tr>
174 <td class="memname">~<a class="el" href="classarmnn_1_1profiling_1_1_command_handler.html">CommandHandler</a> </td>
175 <td>(</td>
176 <td class="paramname"></td><td>)</td>
177 <td></td>
178 </tr>
179 </table>
180 </td>
181 <td class="mlabels-right">
182<span class="mlabels"><span class="mlabel">inline</span></span> </td>
183 </tr>
184</table>
185</div><div class="memdoc">
186
187<p class="definition">Definition at line <a class="el" href="_command_handler_8hpp_source.html#l00036">36</a> of file <a class="el" href="_command_handler_8hpp_source.html">CommandHandler.hpp</a>.</p>
188
189<p class="reference">References <a class="el" href="_command_handler_8cpp_source.html#l00034">CommandHandler::Stop()</a>.</p>
190<div class="fragment"><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;{ <a class="code" href="classarmnn_1_1profiling_1_1_command_handler.html#a17a237457e57625296e6b24feb19c60a">Stop</a>(); }</div><div class="ttc" id="classarmnn_1_1profiling_1_1_command_handler_html_a17a237457e57625296e6b24feb19c60a"><div class="ttname"><a href="classarmnn_1_1profiling_1_1_command_handler.html#a17a237457e57625296e6b24feb19c60a">armnn::profiling::CommandHandler::Stop</a></div><div class="ttdeci">void Stop()</div><div class="ttdef"><b>Definition:</b> <a href="_command_handler_8cpp_source.html#l00034">CommandHandler.cpp:34</a></div></div>
191</div><!-- fragment -->
192</div>
193</div>
194<h2 class="groupheader">Member Function Documentation</h2>
195<a id="ad201152b05beda61e51e3594ff07c8fe"></a>
196<h2 class="memtitle"><span class="permalink"><a href="#ad201152b05beda61e51e3594ff07c8fe">&#9670;&nbsp;</a></span>IsRunning()</h2>
197
198<div class="memitem">
199<div class="memproto">
200<table class="mlabels">
201 <tr>
202 <td class="mlabels-left">
203 <table class="memname">
204 <tr>
205 <td class="memname">bool IsRunning </td>
206 <td>(</td>
207 <td class="paramname"></td><td>)</td>
208 <td> const</td>
209 </tr>
210 </table>
211 </td>
212 <td class="mlabels-right">
213<span class="mlabels"><span class="mlabel">inline</span></span> </td>
214 </tr>
215</table>
216</div><div class="memdoc">
217
218<p class="definition">Definition at line <a class="el" href="_command_handler_8hpp_source.html#l00043">43</a> of file <a class="el" href="_command_handler_8hpp_source.html">CommandHandler.hpp</a>.</p>
219
220<p class="reference">Referenced by <a class="el" href="_profiling_tests_8cpp_source.html#l00129">BOOST_AUTO_TEST_CASE()</a>, and <a class="el" href="_command_handler_8cpp_source.html#l00017">CommandHandler::Start()</a>.</p>
221<div class="fragment"><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;{ <span class="keywordflow">return</span> m_IsRunning.load(); }</div></div><!-- fragment -->
222</div>
223</div>
224<a id="ad6feb3bc1f64bb41467da55d30e9403f"></a>
225<h2 class="memtitle"><span class="permalink"><a href="#ad6feb3bc1f64bb41467da55d30e9403f">&#9670;&nbsp;</a></span>SetStopAfterTimeout()</h2>
226
227<div class="memitem">
228<div class="memproto">
229<table class="mlabels">
230 <tr>
231 <td class="mlabels-left">
232 <table class="memname">
233 <tr>
234 <td class="memname">void SetStopAfterTimeout </td>
235 <td>(</td>
236 <td class="paramtype">bool&#160;</td>
237 <td class="paramname"><em>stopAfterTimeout</em></td><td>)</td>
238 <td></td>
239 </tr>
240 </table>
241 </td>
242 <td class="mlabels-right">
243<span class="mlabels"><span class="mlabel">inline</span></span> </td>
244 </tr>
245</table>
246</div><div class="memdoc">
247
248<p class="definition">Definition at line <a class="el" href="_command_handler_8hpp_source.html#l00039">39</a> of file <a class="el" href="_command_handler_8hpp_source.html">CommandHandler.hpp</a>.</p>
249
250<p class="reference">References <a class="el" href="_command_handler_8cpp_source.html#l00017">CommandHandler::Start()</a>, and <a class="el" href="_command_handler_8cpp_source.html#l00034">CommandHandler::Stop()</a>.</p>
251
252<p class="reference">Referenced by <a class="el" href="_profiling_tests_8cpp_source.html#l00129">BOOST_AUTO_TEST_CASE()</a>.</p>
253<div class="fragment"><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;{ m_StopAfterTimeout.store(stopAfterTimeout); }</div></div><!-- fragment -->
254</div>
255</div>
256<a id="aa2a07b9715323faee8cd53a623f25c7f"></a>
257<h2 class="memtitle"><span class="permalink"><a href="#aa2a07b9715323faee8cd53a623f25c7f">&#9670;&nbsp;</a></span>SetTimeout()</h2>
258
259<div class="memitem">
260<div class="memproto">
261<table class="mlabels">
262 <tr>
263 <td class="mlabels-left">
264 <table class="memname">
265 <tr>
266 <td class="memname">void SetTimeout </td>
267 <td>(</td>
268 <td class="paramtype">uint32_t&#160;</td>
269 <td class="paramname"><em>timeout</em></td><td>)</td>
270 <td></td>
271 </tr>
272 </table>
273 </td>
274 <td class="mlabels-right">
275<span class="mlabels"><span class="mlabel">inline</span></span> </td>
276 </tr>
277</table>
278</div><div class="memdoc">
279
280<p class="definition">Definition at line <a class="el" href="_command_handler_8hpp_source.html#l00038">38</a> of file <a class="el" href="_command_handler_8hpp_source.html">CommandHandler.hpp</a>.</p>
281<div class="fragment"><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;{ m_Timeout.store(timeout); }</div></div><!-- fragment -->
282</div>
283</div>
284<a id="af5f886492fa5da4ff3cde1769e9da2cb"></a>
285<h2 class="memtitle"><span class="permalink"><a href="#af5f886492fa5da4ff3cde1769e9da2cb">&#9670;&nbsp;</a></span>Start()</h2>
286
287<div class="memitem">
288<div class="memproto">
289 <table class="memname">
290 <tr>
291 <td class="memname">void Start </td>
292 <td>(</td>
293 <td class="paramtype"><a class="el" href="classarmnn_1_1profiling_1_1_i_profiling_connection.html">IProfilingConnection</a> &amp;&#160;</td>
294 <td class="paramname"><em>profilingConnection</em></td><td>)</td>
295 <td></td>
296 </tr>
297 </table>
298</div><div class="memdoc">
299
300<p class="definition">Definition at line <a class="el" href="_command_handler_8cpp_source.html#l00017">17</a> of file <a class="el" href="_command_handler_8cpp_source.html">CommandHandler.cpp</a>.</p>
301
302<p class="reference">References <a class="el" href="_command_handler_8hpp_source.html#l00043">CommandHandler::IsRunning()</a>.</p>
303
304<p class="reference">Referenced by <a class="el" href="_profiling_tests_8cpp_source.html#l00129">BOOST_AUTO_TEST_CASE()</a>, <a class="el" href="_command_handler_8hpp_source.html#l00039">CommandHandler::SetStopAfterTimeout()</a>, and <a class="el" href="_profiling_service_8cpp_source.html#l00088">ProfilingService::Update()</a>.</p>
305<div class="fragment"><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;{</div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="classarmnn_1_1profiling_1_1_command_handler.html#ad201152b05beda61e51e3594ff07c8fe">IsRunning</a>())</div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; {</div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160; <span class="keywordflow">return</span>;</div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160; }</div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;</div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160; <span class="keywordflow">if</span> (m_CommandThread.joinable())</div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160; {</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160; m_CommandThread.join();</div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; }</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; m_IsRunning.store(<span class="keyword">true</span>);</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; m_KeepRunning.store(<span class="keyword">true</span>);</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; m_CommandThread = std::thread(&amp;CommandHandler::HandleCommands, <span class="keyword">this</span>, std::ref(profilingConnection));</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;}</div><div class="ttc" id="classarmnn_1_1profiling_1_1_command_handler_html_ad201152b05beda61e51e3594ff07c8fe"><div class="ttname"><a href="classarmnn_1_1profiling_1_1_command_handler.html#ad201152b05beda61e51e3594ff07c8fe">armnn::profiling::CommandHandler::IsRunning</a></div><div class="ttdeci">bool IsRunning() const</div><div class="ttdef"><b>Definition:</b> <a href="_command_handler_8hpp_source.html#l00043">CommandHandler.hpp:43</a></div></div>
306</div><!-- fragment -->
307</div>
308</div>
309<a id="a17a237457e57625296e6b24feb19c60a"></a>
310<h2 class="memtitle"><span class="permalink"><a href="#a17a237457e57625296e6b24feb19c60a">&#9670;&nbsp;</a></span>Stop()</h2>
311
312<div class="memitem">
313<div class="memproto">
314 <table class="memname">
315 <tr>
316 <td class="memname">void Stop </td>
317 <td>(</td>
318 <td class="paramname"></td><td>)</td>
319 <td></td>
320 </tr>
321 </table>
322</div><div class="memdoc">
323
324<p class="definition">Definition at line <a class="el" href="_command_handler_8cpp_source.html#l00034">34</a> of file <a class="el" href="_command_handler_8cpp_source.html">CommandHandler.cpp</a>.</p>
325
326<p class="reference">References <a class="el" href="_logging_8hpp_source.html#l00163">ARMNN_LOG</a>, <a class="el" href="_encode_version_8hpp_source.html#l00045">Version::GetEncodedValue()</a>, <a class="el" href="_command_handler_registry_8cpp_source.html#l00035">CommandHandlerRegistry::GetFunctor()</a>, <a class="el" href="_packet_8hpp_source.html#l00070">Packet::GetPacketFamily()</a>, <a class="el" href="_packet_8hpp_source.html#l00071">Packet::GetPacketId()</a>, <a class="el" href="_packet_8hpp_source.html#l00077">Packet::IsEmpty()</a>, <a class="el" href="classarmnn_1_1profiling_1_1_i_profiling_connection.html#a8a3511046982c64efa3e3833d749e5ef">IProfilingConnection::IsOpen()</a>, <a class="el" href="classarmnn_1_1profiling_1_1_i_profiling_connection.html#a935e16d85893a31f23cd78e47b85466d">IProfilingConnection::ReadPacket()</a>, <a class="el" href="_packet_version_resolver_8cpp_source.html#l00055">PacketVersionResolver::ResolvePacketVersion()</a>, <a class="el" href="namespacearmnn.html#a4dc0adc6737b5944e7671bee71788407a7b83d3f08fa392b79e3f553b585971cd">armnn::warning</a>, and <a class="el" href="_exceptions_8cpp_source.html#l00032">Exception::what()</a>.</p>
327
328<p class="reference">Referenced by <a class="el" href="_profiling_tests_8cpp_source.html#l00129">BOOST_AUTO_TEST_CASE()</a>, <a class="el" href="_profiling_service_8cpp_source.html#l00290">ProfilingService::GetSendTimelinePacket()</a>, <a class="el" href="_command_handler_8hpp_source.html#l00039">CommandHandler::SetStopAfterTimeout()</a>, <a class="el" href="_profiling_service_8cpp_source.html#l00088">ProfilingService::Update()</a>, and <a class="el" href="_command_handler_8hpp_source.html#l00036">CommandHandler::~CommandHandler()</a>.</p>
329<div class="fragment"><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;{</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; m_KeepRunning.store(<span class="keyword">false</span>);</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; <span class="keywordflow">if</span> (m_CommandThread.joinable())</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; {</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; m_CommandThread.join();</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; }</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;}</div></div><!-- fragment -->
330</div>
331</div>
332<hr/>The documentation for this class was generated from the following files:<ul>
333<li>src/profiling/<a class="el" href="_command_handler_8hpp_source.html">CommandHandler.hpp</a></li>
334<li>src/profiling/<a class="el" href="_command_handler_8cpp_source.html">CommandHandler.cpp</a></li>
335</ul>
336</div><!-- contents -->
337</div><!-- doc-content -->
338<!-- start footer part -->
339<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
340 <ul>
341 <li class="navelem"><a class="el" href="namespacearmnn.html">armnn</a></li><li class="navelem"><a class="el" href="namespacearmnn_1_1profiling.html">profiling</a></li><li class="navelem"><a class="el" href="classarmnn_1_1profiling_1_1_command_handler.html">CommandHandler</a></li>
342 <li class="footer">Generated on Fri Mar 13 2020 16:07:05 for ArmNN by
343 <a href="http://www.doxygen.org/index.html">
344 <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
345 </ul>
346</div>
347</body>
348</html>