1 <!-- HTML header for doxygen 1.8.10--> 2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 3 <html xmlns="http://www.w3.org/1999/xhtml"> 4 <head> 5 <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> 6 <meta http-equiv="X-UA-Compatible" content="IE=9"/> 7 <meta name="generator" content="Doxygen 1.8.14"/> 8 <title>Intel® Enhanced Privacy ID SDK: epid/member/tiny/stdlib/endian.h File 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 /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ 18 $(document).ready(initResizable); 19 /* @license-end */</script> 20 <link href="doxygen.css" rel="stylesheet" type="text/css" /> 21 <link href="epidstyle.css" rel="stylesheet" type="text/css"/> 22 </head> 23 <body> 24 <div id="top"><!-- do not remove this div, it is closed by doxygen! --> 25 <div id="titlearea"> 26 <table cellspacing="0" cellpadding="0"> 27 <tbody> 28 <tr style="height: 56px;"> 29 <td id="projectalign" style="padding-left: 0.5em;"> 30 <div id="projectname"><a 31 onclick="storeLink('index.html')" 32 id="projectlink" 33 class="index.html" 34 href="index.html">Intel® Enhanced Privacy ID SDK</a> 35  <span id="projectnumber">6.0.1</span> 36 </div> 37 </td> 38 </tr> 39 </tbody> 40 </table> 41 </div> 42 <!-- end header part --> 43 <!-- Generated by Doxygen 1.8.14 --> 44 </div><!-- top --> 45 <div id="side-nav" class="ui-resizable side-nav-resizable"> 46 <div id="nav-tree"> 47 <div id="nav-tree-contents"> 48 <div id="nav-sync" class="sync"></div> 49 </div> 50 </div> 51 <div id="splitbar" style="-moz-user-select:none;" 52 class="ui-resizable-handle"> 53 </div> 54 </div> 55 <script type="text/javascript"> 56 /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ 57 $(document).ready(function(){initNavTree('endian_8h.html','');}); 58 /* @license-end */ 59 </script> 60 <div id="doc-content"> 61 <div class="header"> 62 <div class="summary"> 63 <a href="#define-members">Macros</a> </div> 64 <div class="headertitle"> 65 <div class="title">endian.h File Reference</div> </div> 66 </div><!--header--> 67 <div class="contents"> 68 69 <p>Convert values between host and big-/little-endian byte order. 70 <a href="#details">More...</a></p> 71 <div class="textblock"><code>#include <stdint.h></code><br /> 72 </div><table class="memberdecls"> 73 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a> 74 Macros</h2></td></tr> 75 <tr class="memitem:a48127d3bd550dacd707b58a637b05393"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="endian_8h.html#a48127d3bd550dacd707b58a637b05393">be32toh</a>(big_endian_32bits)</td></tr> 76 <tr class="memdesc:a48127d3bd550dacd707b58a637b05393"><td class="mdescLeft"> </td><td class="mdescRight">Transform big endian uint32_t to host uint32_t. <a href="#a48127d3bd550dacd707b58a637b05393">More...</a><br /></td></tr> 77 <tr class="separator:a48127d3bd550dacd707b58a637b05393"><td class="memSeparator" colspan="2"> </td></tr> 78 <tr class="memitem:ab004b68a63ea32dcd67fbe597263120b"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="endian_8h.html#ab004b68a63ea32dcd67fbe597263120b">htobe32</a>(host_32bits)</td></tr> 79 <tr class="memdesc:ab004b68a63ea32dcd67fbe597263120b"><td class="mdescLeft"> </td><td class="mdescRight">Transform host uint32_t to big endian uint32_t. <a href="#ab004b68a63ea32dcd67fbe597263120b">More...</a><br /></td></tr> 80 <tr class="separator:ab004b68a63ea32dcd67fbe597263120b"><td class="memSeparator" colspan="2"> </td></tr> 81 </table> 82 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> 83 <div class="textblock"><p>Convert values between host and big-/little-endian byte order. </p> 84 </div><h2 class="groupheader">Macro Definition Documentation</h2> 85 <a id="a48127d3bd550dacd707b58a637b05393"></a> 86 <h2 class="memtitle"><span class="permalink"><a href="#a48127d3bd550dacd707b58a637b05393">◆ </a></span>be32toh</h2> 87 88 <div class="memitem"> 89 <div class="memproto"> 90 <table class="memname"> 91 <tr> 92 <td class="memname">#define be32toh</td> 93 <td>(</td> 94 <td class="paramtype"> </td> 95 <td class="paramname">big_endian_32bits</td><td>)</td> 96 <td></td> 97 </tr> 98 </table> 99 </div><div class="memdoc"> 100 <b>Value:</b><div class="fragment"><div class="line">((uint32_t)(((((<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>*)&(big_endian_32bits))[0]) << 24) + \</div><div class="line"> ((((<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>*)&(big_endian_32bits))[1]) << 16) + \</div><div class="line"> ((((<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>*)&(big_endian_32bits))[2]) << 8) + \</div><div class="line"> (((<span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>*)&(big_endian_32bits))[3])))</div></div><!-- fragment --> 101 <p>Transform big endian uint32_t to host uint32_t. </p> 102 103 </div> 104 </div> 105 <a id="ab004b68a63ea32dcd67fbe597263120b"></a> 106 <h2 class="memtitle"><span class="permalink"><a href="#ab004b68a63ea32dcd67fbe597263120b">◆ </a></span>htobe32</h2> 107 108 <div class="memitem"> 109 <div class="memproto"> 110 <table class="memname"> 111 <tr> 112 <td class="memname">#define htobe32</td> 113 <td>(</td> 114 <td class="paramtype"> </td> 115 <td class="paramname">host_32bits</td><td>)</td> 116 <td></td> 117 </tr> 118 </table> 119 </div><div class="memdoc"> 120 <b>Value:</b><div class="fragment"><div class="line">(uint32_t)(((((uint32_t)(host_32bits)) & 0xFF) << 24) | \</div><div class="line"> ((((uint32_t)(host_32bits)) & 0xFF00) << 8) | \</div><div class="line"> ((((uint32_t)(host_32bits)) & 0xFF0000) >> 8) | \</div><div class="line"> ((((uint32_t)(host_32bits)) & 0xFF000000) >> 24))</div></div><!-- fragment --> 121 <p>Transform host uint32_t to big endian uint32_t. </p> 122 123 </div> 124 </div> 125 </div><!-- contents --> 126 </div><!-- doc-content --> 127 <!-- HTML footer for doxygen 1.8.10--> 128 <!-- start footer part --> 129 <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> 130 <ul> 131 <li class="navelem"><a class="el" href="dir_12b90d9c027aaf878a834df729679a56.html">epid</a></li><li class="navelem"><a class="el" href="dir_512d3e62841a8535b716ec4cf8b9e950.html">member</a></li><li class="navelem"><a class="el" href="dir_ea12d375fc1eb79df248c0adf953af4f.html">tiny</a></li><li class="navelem"><a class="el" href="dir_a6a596e2b2b50fb0973c7fe0b17a09e5.html">stdlib</a></li><li class="navelem"><a class="el" href="endian_8h.html">endian.h</a></li> 132 <li class="footer"> 133 © 2016-2017 Intel Corporation 134 </li> 135 </ul> 136 </div> 137 </body> 138 </html> 139