<!-- Copyright (c) 2020 ARM Limited. -->
<!--                                 -->
<!-- SPDX-License-Identifier: MIT    -->
<!--                                 -->
<!-- HTML header for doxygen 1.8.13-->
<!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.13"/>
<meta name="robots" content="NOINDEX, NOFOLLOW" />
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>ArmNN: IProfilingConnectionFactory Class 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="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
</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>
<script type="text/x-mathjax-config">
  MathJax.Hub.Config({
    extensions: ["tex2jax.js"],
    jax: ["input/TeX","output/HTML-CSS"],
});
</script><script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="stylesheet.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;">
  <img alt="ArmNN" src="Arm_NN_horizontal_blue.png" style="max-width: 10rem; margin-top: .5rem; margin-left 10px"/>
  <td style="padding-left: 0.5em;">
   <div id="projectname">
   &#160;<span id="projectnumber">20.02</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
</script>
<div id="main-nav"></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('classarmnn_1_1profiling_1_1_i_profiling_connection_factory.xhtml','');});
</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)">
</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-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classarmnn_1_1profiling_1_1_i_profiling_connection_factory-members.xhtml">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">IProfilingConnectionFactory Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div>  </div>
</div><!--header-->
<div class="contents">

<p><code>#include &lt;<a class="el" href="_i_profiling_connection_factory_8hpp_source.xhtml">IProfilingConnectionFactory.hpp</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for IProfilingConnectionFactory:</div>
<div class="dyncontent">
 <div class="center">
  <img src="classarmnn_1_1profiling_1_1_i_profiling_connection_factory.png" usemap="#IProfilingConnectionFactory_map" alt=""/>
  <map id="IProfilingConnectionFactory_map" name="IProfilingConnectionFactory_map">
<area href="classarmnn_1_1profiling_1_1_mock_profiling_connection_factory.xhtml" alt="MockProfilingConnectionFactory" shape="rect" coords="0,56,198,80"/>
<area href="classarmnn_1_1profiling_1_1_profiling_connection_factory.xhtml" alt="ProfilingConnectionFactory" shape="rect" coords="208,56,406,80"/>
</map>
 </div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:a1e3ab71aae7621abd6c1a16cc71b68e0"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1profiling_1_1_i_profiling_connection_factory.xhtml#a1e3ab71aae7621abd6c1a16cc71b68e0">ExternalProfilingOptions</a> = <a class="el" href="structarmnn_1_1_i_runtime_1_1_creation_options_1_1_external_profiling_options.xhtml">IRuntime::CreationOptions::ExternalProfilingOptions</a></td></tr>
<tr class="separator:a1e3ab71aae7621abd6c1a16cc71b68e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abb7f442bd7409c8dff2b9346fd67bce3"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1profiling_1_1_i_profiling_connection_factory.xhtml#abb7f442bd7409c8dff2b9346fd67bce3">IProfilingConnectionPtr</a> = std::unique_ptr&lt; <a class="el" href="classarmnn_1_1profiling_1_1_i_profiling_connection.xhtml">IProfilingConnection</a> &gt;</td></tr>
<tr class="separator:abb7f442bd7409c8dff2b9346fd67bce3"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><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:a0edc1350a5dcc81620a1f28e2a1051f2"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1profiling_1_1_i_profiling_connection_factory.xhtml#a0edc1350a5dcc81620a1f28e2a1051f2">~IProfilingConnectionFactory</a> ()</td></tr>
<tr class="separator:a0edc1350a5dcc81620a1f28e2a1051f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a18f247c2a53095da228e441270536b03"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classarmnn_1_1profiling_1_1_i_profiling_connection_factory.xhtml#abb7f442bd7409c8dff2b9346fd67bce3">IProfilingConnectionPtr</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classarmnn_1_1profiling_1_1_i_profiling_connection_factory.xhtml#a18f247c2a53095da228e441270536b03">GetProfilingConnection</a> (const <a class="el" href="classarmnn_1_1profiling_1_1_i_profiling_connection_factory.xhtml#a1e3ab71aae7621abd6c1a16cc71b68e0">ExternalProfilingOptions</a> &amp;<a class="el" href="_file_only_profiling_decorator_tests_8cpp.xhtml#a6560146509197f3e197d8d36f76c1347">options</a>) const =0</td></tr>
<tr class="separator:a18f247c2a53095da228e441270536b03"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock">
<p class="definition">Definition at line <a class="el" href="_i_profiling_connection_factory_8hpp_source.xhtml#l00020">20</a> of file <a class="el" href="_i_profiling_connection_factory_8hpp_source.xhtml">IProfilingConnectionFactory.hpp</a>.</p>
</div><h2 class="groupheader">Member Typedef Documentation</h2>
<a id="a1e3ab71aae7621abd6c1a16cc71b68e0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1e3ab71aae7621abd6c1a16cc71b68e0">&#9670;&nbsp;</a></span>ExternalProfilingOptions</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="classarmnn_1_1profiling_1_1_i_profiling_connection_factory.xhtml#a1e3ab71aae7621abd6c1a16cc71b68e0">ExternalProfilingOptions</a> =  <a class="el" href="structarmnn_1_1_i_runtime_1_1_creation_options_1_1_external_profiling_options.xhtml">IRuntime::CreationOptions::ExternalProfilingOptions</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_i_profiling_connection_factory_8hpp_source.xhtml#l00023">23</a> of file <a class="el" href="_i_profiling_connection_factory_8hpp_source.xhtml">IProfilingConnectionFactory.hpp</a>.</p>

</div>
</div>
<a id="abb7f442bd7409c8dff2b9346fd67bce3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abb7f442bd7409c8dff2b9346fd67bce3">&#9670;&nbsp;</a></span>IProfilingConnectionPtr</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">using <a class="el" href="classarmnn_1_1profiling_1_1_i_profiling_connection_factory.xhtml#abb7f442bd7409c8dff2b9346fd67bce3">IProfilingConnectionPtr</a> =  std::unique_ptr&lt;<a class="el" href="classarmnn_1_1profiling_1_1_i_profiling_connection.xhtml">IProfilingConnection</a>&gt;</td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_i_profiling_connection_factory_8hpp_source.xhtml#l00024">24</a> of file <a class="el" href="_i_profiling_connection_factory_8hpp_source.xhtml">IProfilingConnectionFactory.hpp</a>.</p>

</div>
</div>
<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a0edc1350a5dcc81620a1f28e2a1051f2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0edc1350a5dcc81620a1f28e2a1051f2">&#9670;&nbsp;</a></span>~IProfilingConnectionFactory()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual ~<a class="el" href="classarmnn_1_1profiling_1_1_i_profiling_connection_factory.xhtml">IProfilingConnectionFactory</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 class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="_i_profiling_connection_factory_8hpp_source.xhtml#l00026">26</a> of file <a class="el" href="_i_profiling_connection_factory_8hpp_source.xhtml">IProfilingConnectionFactory.hpp</a>.</p>

<p class="reference">References <a class="el" href="classarmnn_1_1profiling_1_1_i_profiling_connection_factory.xhtml#a18f247c2a53095da228e441270536b03">IProfilingConnectionFactory::GetProfilingConnection()</a>, and <a class="el" href="_file_only_profiling_decorator_tests_8cpp_source.xhtml#l00045">options</a>.</p>
<div class="fragment"><div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;{}</div></div><!-- fragment -->
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a18f247c2a53095da228e441270536b03"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a18f247c2a53095da228e441270536b03">&#9670;&nbsp;</a></span>GetProfilingConnection()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classarmnn_1_1profiling_1_1_i_profiling_connection_factory.xhtml#abb7f442bd7409c8dff2b9346fd67bce3">IProfilingConnectionPtr</a> GetProfilingConnection </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classarmnn_1_1profiling_1_1_i_profiling_connection_factory.xhtml#a1e3ab71aae7621abd6c1a16cc71b68e0">ExternalProfilingOptions</a> &amp;&#160;</td>
          <td class="paramname"><em>options</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Implemented in <a class="el" href="classarmnn_1_1profiling_1_1_mock_profiling_connection_factory.xhtml#a7b486986bc169a2c637e6c49cb3dfe73">MockProfilingConnectionFactory</a>, and <a class="el" href="classarmnn_1_1profiling_1_1_profiling_connection_factory.xhtml#a627a4a9df4ecd888a1cf3380c5563d50">ProfilingConnectionFactory</a>.</p>

<p class="reference">Referenced by <a class="el" href="_i_profiling_connection_factory_8hpp_source.xhtml#l00026">IProfilingConnectionFactory::~IProfilingConnectionFactory()</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>src/profiling/<a class="el" href="_i_profiling_connection_factory_8hpp_source.xhtml">IProfilingConnectionFactory.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="namespacearmnn.xhtml">armnn</a></li><li class="navelem"><a class="el" href="namespacearmnn_1_1profiling.xhtml">profiling</a></li><li class="navelem"><a class="el" href="classarmnn_1_1profiling_1_1_i_profiling_connection_factory.xhtml">IProfilingConnectionFactory</a></li>
    <li class="footer">Generated on Fri Mar 13 2020 16:09:21 for ArmNN by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
  </ul>
</div>
</body>
</html>
