<!-- HTML header for doxygen 1.8.10-->
<!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.14"/>
<title>Intel&reg; Enhanced Privacy ID SDK: Globals</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">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
  $(document).ready(initResizable);
/* @license-end */</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="epidstyle.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 id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname"><a 
                            onclick="storeLink('index.html')"
                            id="projectlink" 
                            class="index.html" 
                            href="index.html">Intel&reg; Enhanced Privacy ID SDK</a>
&#160;<span id="projectnumber">6.0.1</span>
</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.14 -->
</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">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('globals_func_p.html','');});
/* @license-end */
</script>
<div id="doc-content">
<div class="contents">
&#160;

<h3><a id="index_p"></a>- p -</h3><ul>
<li>Pairing()
: <a class="el" href="group___pairing_primitives.html#ga58a9d3cb6129274a04c72a35a52f768d">pairing.h</a>
</li>
<li>PairingCompute()
: <a class="el" href="member_2tiny_2math_2pairing_8h.html#a74dabfd47d20d4086a89e1910ca27fe0">pairing.h</a>
</li>
<li>PairingInit()
: <a class="el" href="member_2tiny_2math_2pairing_8h.html#aba03ba485b970dd2d3f30b1f74f6ed6f">pairing.h</a>
</li>
<li>print_tpm2_response_code()
: <a class="el" href="printtss_8c.html#ac02d185169caec44119e82d97228a68a">printtss.c</a>
, <a class="el" href="printtss_8h.html#ac02d185169caec44119e82d97228a68a">printtss.h</a>
</li>
<li>PrintBigNum()
: <a class="el" href="group___epid_print.html#ga45a933b44fc1dfe926e3af89c198070a">printutils.h</a>
</li>
<li>PrintBigNumStr()
: <a class="el" href="group___epid_print.html#ga5f249c594ed12e4a9b11b7bc101da85d">printutils.h</a>
</li>
<li>PrintEcPoint()
: <a class="el" href="group___epid_print.html#ga0d6377d9c1651d0101ec6b61feaa78ca">printutils.h</a>
</li>
<li>PrintFfElement()
: <a class="el" href="group___epid_print.html#gaa3b1cbbfc6f78562658953113e5798cf">printutils.h</a>
</li>
<li>PrintFpElemStr()
: <a class="el" href="group___epid_print.html#gae553c3a156a0e4968b89635ab0757580">printutils.h</a>
</li>
<li>PrintFq12ElemStr()
: <a class="el" href="group___epid_print.html#gaf185fe3df270cd8b4a2969bf3cfc5d5f">printutils.h</a>
</li>
<li>PrintFq2ElemStr()
: <a class="el" href="group___epid_print.html#ga883a834ab1703365bb0bca4abd3104de">printutils.h</a>
</li>
<li>PrintFq6ElemStr()
: <a class="el" href="group___epid_print.html#ga3f2961ef6b4c44a6205d422d8a293476">printutils.h</a>
</li>
<li>PrintFqElemStr()
: <a class="el" href="group___epid_print.html#ga6c9fea48fa0477f4a98abb50f891a5e4">printutils.h</a>
</li>
<li>PrintG1ElemStr()
: <a class="el" href="group___epid_print.html#ga87168a3ce5306f9839b8e8d6c9a5f84f">printutils.h</a>
</li>
<li>PrintG2ElemStr()
: <a class="el" href="group___epid_print.html#gab76a4cf0385dc4a76bb56ee9f0e3e87a">printutils.h</a>
</li>
<li>PrintGtElemStr()
: <a class="el" href="group___epid_print.html#ga138cd388247a58680d4701d59d6976d2">printutils.h</a>
</li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.10-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="footer">
      &copy; 2016-2017 Intel Corporation
    </li>
  </ul>
</div>
</body>
</html>
