openjpeg/doxygen/group___t_g_t.html

451 lines
29 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.10"/>
<title>OpenJPEG: TGT - Implementation of a tag-tree coder</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="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 id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">OpenJPEG
&#160;<span id="projectnumber">2.2.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.10 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#nested-classes">Data Structures</a> &#124;
<a href="#typedef-members">Typedefs</a> </div>
<div class="headertitle">
<div class="title">TGT - Implementation of a tag-tree coder</div> </div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Data Structures</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structopj__tgt__node.html">opj_tgt_node</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Tag node. <a href="structopj__tgt__node.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structopj__tgt__tree.html">opj_tgt_tree</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Tag tree. <a href="structopj__tgt__tree.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:ga8eddc00e16d716a49948fafc52bcd29d"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structopj__tgt__node.html">opj_tgt_node</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___t_g_t.html#ga8eddc00e16d716a49948fafc52bcd29d">opj_tgt_node_t</a></td></tr>
<tr class="memdesc:ga8eddc00e16d716a49948fafc52bcd29d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Tag node. <a href="#ga8eddc00e16d716a49948fafc52bcd29d">More...</a><br /></td></tr>
<tr class="separator:ga8eddc00e16d716a49948fafc52bcd29d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf06887ec727f9f79a488c8f15661d622"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structopj__tgt__tree.html">opj_tgt_tree</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___t_g_t.html#gaf06887ec727f9f79a488c8f15661d622">opj_tgt_tree_t</a></td></tr>
<tr class="memdesc:gaf06887ec727f9f79a488c8f15661d622"><td class="mdescLeft">&#160;</td><td class="mdescRight">Tag tree. <a href="#gaf06887ec727f9f79a488c8f15661d622">More...</a><br /></td></tr>
<tr class="separator:gaf06887ec727f9f79a488c8f15661d622"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
Exported functions</h2></td></tr>
<tr class="memitem:gaaf27107458b5242fe7d848480b4a4690"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group___t_g_t.html#gaf06887ec727f9f79a488c8f15661d622">opj_tgt_tree_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___t_g_t.html#gaaf27107458b5242fe7d848480b4a4690">opj_tgt_create</a> (<a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> numleafsh, <a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> numleafsv, <a class="el" href="event_8h.html#a4cba85f9ee037b1f2c6bceb903051d96">opj_event_mgr_t</a> *p_manager)</td></tr>
<tr class="memdesc:gaaf27107458b5242fe7d848480b4a4690"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a tag-tree. <a href="#gaaf27107458b5242fe7d848480b4a4690">More...</a><br /></td></tr>
<tr class="separator:gaaf27107458b5242fe7d848480b4a4690"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa34fdf087e24d66a2a661c31ba194c3f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group___t_g_t.html#gaf06887ec727f9f79a488c8f15661d622">opj_tgt_tree_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___t_g_t.html#gaa34fdf087e24d66a2a661c31ba194c3f">opj_tgt_init</a> (<a class="el" href="group___t_g_t.html#gaf06887ec727f9f79a488c8f15661d622">opj_tgt_tree_t</a> *p_tree, <a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> p_num_leafs_h, <a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> p_num_leafs_v, <a class="el" href="event_8h.html#a4cba85f9ee037b1f2c6bceb903051d96">opj_event_mgr_t</a> *p_manager)</td></tr>
<tr class="memdesc:gaa34fdf087e24d66a2a661c31ba194c3f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reinitialises a tag-tree from an exixting one. <a href="#gaa34fdf087e24d66a2a661c31ba194c3f">More...</a><br /></td></tr>
<tr class="separator:gaa34fdf087e24d66a2a661c31ba194c3f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa9a20506fefbb59153ad401f9af51fe7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___t_g_t.html#gaa9a20506fefbb59153ad401f9af51fe7">opj_tgt_destroy</a> (<a class="el" href="group___t_g_t.html#gaf06887ec727f9f79a488c8f15661d622">opj_tgt_tree_t</a> *tree)</td></tr>
<tr class="memdesc:gaa9a20506fefbb59153ad401f9af51fe7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destroy a tag-tree, liberating memory. <a href="#gaa9a20506fefbb59153ad401f9af51fe7">More...</a><br /></td></tr>
<tr class="separator:gaa9a20506fefbb59153ad401f9af51fe7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad4bf197e6977fd4c4e947a946391e598"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___t_g_t.html#gad4bf197e6977fd4c4e947a946391e598">opj_tgt_reset</a> (<a class="el" href="group___t_g_t.html#gaf06887ec727f9f79a488c8f15661d622">opj_tgt_tree_t</a> *tree)</td></tr>
<tr class="memdesc:gad4bf197e6977fd4c4e947a946391e598"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reset a tag-tree (set all leaves to 0) <a href="#gad4bf197e6977fd4c4e947a946391e598">More...</a><br /></td></tr>
<tr class="separator:gad4bf197e6977fd4c4e947a946391e598"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab0844dbb6cdf88a7bb4036d718774f69"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___t_g_t.html#gab0844dbb6cdf88a7bb4036d718774f69">opj_tgt_setvalue</a> (<a class="el" href="group___t_g_t.html#gaf06887ec727f9f79a488c8f15661d622">opj_tgt_tree_t</a> *tree, <a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> leafno, <a class="el" href="openjpeg_8h.html#a3cec91ef9e73677f0dbd60d4e42401b9">OPJ_INT32</a> value)</td></tr>
<tr class="memdesc:gab0844dbb6cdf88a7bb4036d718774f69"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the value of a leaf of a tag-tree. <a href="#gab0844dbb6cdf88a7bb4036d718774f69">More...</a><br /></td></tr>
<tr class="separator:gab0844dbb6cdf88a7bb4036d718774f69"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gafe36abfc042710c566552ed3adfcb2a9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___t_g_t.html#gafe36abfc042710c566552ed3adfcb2a9">opj_tgt_encode</a> (<a class="el" href="group___b_i_o.html#gac65cc716fac75e743f2e9980c8a05807">opj_bio_t</a> *bio, <a class="el" href="group___t_g_t.html#gaf06887ec727f9f79a488c8f15661d622">opj_tgt_tree_t</a> *tree, <a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> leafno, <a class="el" href="openjpeg_8h.html#a3cec91ef9e73677f0dbd60d4e42401b9">OPJ_INT32</a> threshold)</td></tr>
<tr class="memdesc:gafe36abfc042710c566552ed3adfcb2a9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Encode the value of a leaf of the tag-tree up to a given threshold. <a href="#gafe36abfc042710c566552ed3adfcb2a9">More...</a><br /></td></tr>
<tr class="separator:gafe36abfc042710c566552ed3adfcb2a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5b970bfd9b761cdf2ff36001821b06aa"><td class="memItemLeft" align="right" valign="top"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___t_g_t.html#ga5b970bfd9b761cdf2ff36001821b06aa">opj_tgt_decode</a> (<a class="el" href="group___b_i_o.html#gac65cc716fac75e743f2e9980c8a05807">opj_bio_t</a> *bio, <a class="el" href="group___t_g_t.html#gaf06887ec727f9f79a488c8f15661d622">opj_tgt_tree_t</a> *tree, <a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> leafno, <a class="el" href="openjpeg_8h.html#a3cec91ef9e73677f0dbd60d4e42401b9">OPJ_INT32</a> threshold)</td></tr>
<tr class="memdesc:ga5b970bfd9b761cdf2ff36001821b06aa"><td class="mdescLeft">&#160;</td><td class="mdescRight">Decode the value of a leaf of the tag-tree up to a given threshold. <a href="#ga5b970bfd9b761cdf2ff36001821b06aa">More...</a><br /></td></tr>
<tr class="separator:ga5b970bfd9b761cdf2ff36001821b06aa"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<h2 class="groupheader">Typedef Documentation</h2>
<a class="anchor" id="ga8eddc00e16d716a49948fafc52bcd29d"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef struct <a class="el" href="structopj__tgt__node.html">opj_tgt_node</a> <a class="el" href="group___t_g_t.html#ga8eddc00e16d716a49948fafc52bcd29d">opj_tgt_node_t</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Tag node. </p>
</div>
</div>
<a class="anchor" id="gaf06887ec727f9f79a488c8f15661d622"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef struct <a class="el" href="structopj__tgt__tree.html">opj_tgt_tree</a> <a class="el" href="group___t_g_t.html#gaf06887ec727f9f79a488c8f15661d622">opj_tgt_tree_t</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Tag tree. </p>
</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="gaaf27107458b5242fe7d848480b4a4690"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group___t_g_t.html#gaf06887ec727f9f79a488c8f15661d622">opj_tgt_tree_t</a>* opj_tgt_create </td>
<td>(</td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a>&#160;</td>
<td class="paramname"><em>numleafsh</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a>&#160;</td>
<td class="paramname"><em>numleafsv</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="event_8h.html#a4cba85f9ee037b1f2c6bceb903051d96">opj_event_mgr_t</a> *&#160;</td>
<td class="paramname"><em>p_manager</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Create a tag-tree. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">numleafsh</td><td>Width of the array of leafs of the tree </td></tr>
<tr><td class="paramname">numleafsv</td><td>Height of the array of leafs of the tree </td></tr>
<tr><td class="paramname">p_manager</td><td>the event manager </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Returns a new tag-tree if successful, returns NULL otherwise </dd></dl>
<p>References <a class="el" href="event_8h.html#a7323671f4df0a721ae02d610b1269ab9">EVT_ERROR</a>, <a class="el" href="structopj__tgt__tree.html#a0981f42ac4d605cddd9a63b2820d6c60">opj_tgt_tree::nodes</a>, <a class="el" href="structopj__tgt__tree.html#a62bc3ad727b80f26d7b3b10712c5bb9c">opj_tgt_tree::nodes_size</a>, <a class="el" href="structopj__tgt__tree.html#a8bac70f6df83269400a846be083116bd">opj_tgt_tree::numleafsh</a>, <a class="el" href="structopj__tgt__tree.html#acfc60d10adf720f98b4947931ce1bf13">opj_tgt_tree::numleafsv</a>, <a class="el" href="structopj__tgt__tree.html#a6ca2c6a3ee1611cd897197fb504b3d59">opj_tgt_tree::numnodes</a>, <a class="el" href="group___m_i_s_c.html#ga7fe6dfcb0a623dbec30daf0f48624bf7">opj_calloc()</a>, <a class="el" href="group___e_v_e_n_t.html#ga87d9d4bdfd203ccd8a7522d6f197a3b7">opj_event_msg()</a>, <a class="el" href="group___m_i_s_c.html#ga2bd00e2482ae36197631bde0665cfdfe">opj_free()</a>, <a class="el" href="group___t_g_t.html#gad4bf197e6977fd4c4e947a946391e598">opj_tgt_reset()</a>, and <a class="el" href="structopj__tgt__node.html#ae5a6382a3b692bf7f05c074cd1b025ba">opj_tgt_node::parent</a>.</p>
<p>Referenced by <a class="el" href="tcd_8c.html#a54bd587a88cc401980302d13635b2703">opj_tcd_init_tile()</a>.</p>
</div>
</div>
<a class="anchor" id="ga5b970bfd9b761cdf2ff36001821b06aa"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> opj_tgt_decode </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group___b_i_o.html#gac65cc716fac75e743f2e9980c8a05807">opj_bio_t</a> *&#160;</td>
<td class="paramname"><em>bio</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group___t_g_t.html#gaf06887ec727f9f79a488c8f15661d622">opj_tgt_tree_t</a> *&#160;</td>
<td class="paramname"><em>tree</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a>&#160;</td>
<td class="paramname"><em>leafno</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a3cec91ef9e73677f0dbd60d4e42401b9">OPJ_INT32</a>&#160;</td>
<td class="paramname"><em>threshold</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Decode the value of a leaf of the tag-tree up to a given threshold. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">bio</td><td>Pointer to a BIO handle </td></tr>
<tr><td class="paramname">tree</td><td>Tag-tree to decode </td></tr>
<tr><td class="paramname">leafno</td><td>Number that identifies the leaf to decode </td></tr>
<tr><td class="paramname">threshold</td><td>Threshold to use when decoding value of the leaf </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Returns 1 if the node's value &lt; threshold, returns 0 otherwise </dd></dl>
<p>References <a class="el" href="structopj__tgt__node.html#a78b571d4eadfae7d38ac7cf561354d77">opj_tgt_node::low</a>, <a class="el" href="structopj__tgt__tree.html#a0981f42ac4d605cddd9a63b2820d6c60">opj_tgt_tree::nodes</a>, <a class="el" href="group___b_i_o.html#gaea3bf04128de5bc78da6d06354eae62c">opj_bio_read()</a>, <a class="el" href="structopj__tgt__node.html#ae5a6382a3b692bf7f05c074cd1b025ba">opj_tgt_node::parent</a>, and <a class="el" href="structopj__tgt__node.html#a71926a9d9563ff7e5f137a8e189e1635">opj_tgt_node::value</a>.</p>
<p>Referenced by <a class="el" href="group___t2.html#gafd30efdfea1361431cf3c8ad04d48458">opj_t2_read_packet_header()</a>.</p>
</div>
</div>
<a class="anchor" id="gaa9a20506fefbb59153ad401f9af51fe7"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void opj_tgt_destroy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group___t_g_t.html#gaf06887ec727f9f79a488c8f15661d622">opj_tgt_tree_t</a> *&#160;</td>
<td class="paramname"><em>tree</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Destroy a tag-tree, liberating memory. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">tree</td><td>Tag-tree to destroy </td></tr>
</table>
</dd>
</dl>
<p>References <a class="el" href="structopj__tgt__tree.html#a0981f42ac4d605cddd9a63b2820d6c60">opj_tgt_tree::nodes</a>, and <a class="el" href="group___m_i_s_c.html#ga2bd00e2482ae36197631bde0665cfdfe">opj_free()</a>.</p>
<p>Referenced by <a class="el" href="tcd_8c.html#a0df6e3c59cbb93696bab54a688e2ead8">opj_tcd_free_tile()</a>, and <a class="el" href="group___t_g_t.html#gaa34fdf087e24d66a2a661c31ba194c3f">opj_tgt_init()</a>.</p>
</div>
</div>
<a class="anchor" id="gafe36abfc042710c566552ed3adfcb2a9"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void opj_tgt_encode </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group___b_i_o.html#gac65cc716fac75e743f2e9980c8a05807">opj_bio_t</a> *&#160;</td>
<td class="paramname"><em>bio</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="group___t_g_t.html#gaf06887ec727f9f79a488c8f15661d622">opj_tgt_tree_t</a> *&#160;</td>
<td class="paramname"><em>tree</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a>&#160;</td>
<td class="paramname"><em>leafno</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a3cec91ef9e73677f0dbd60d4e42401b9">OPJ_INT32</a>&#160;</td>
<td class="paramname"><em>threshold</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Encode the value of a leaf of the tag-tree up to a given threshold. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">bio</td><td>Pointer to a BIO handle </td></tr>
<tr><td class="paramname">tree</td><td>Tag-tree to modify </td></tr>
<tr><td class="paramname">leafno</td><td>Number that identifies the leaf to encode </td></tr>
<tr><td class="paramname">threshold</td><td>Threshold to use when encoding value of the leaf </td></tr>
</table>
</dd>
</dl>
<p>References <a class="el" href="structopj__tgt__node.html#a23ce722a1f74e4eaffb63216b2439baa">opj_tgt_node::known</a>, <a class="el" href="structopj__tgt__node.html#a78b571d4eadfae7d38ac7cf561354d77">opj_tgt_node::low</a>, <a class="el" href="structopj__tgt__tree.html#a0981f42ac4d605cddd9a63b2820d6c60">opj_tgt_tree::nodes</a>, <a class="el" href="group___b_i_o.html#ga602b9d9f911b41d41d1d4cab1dc3ec97">opj_bio_write()</a>, <a class="el" href="structopj__tgt__node.html#ae5a6382a3b692bf7f05c074cd1b025ba">opj_tgt_node::parent</a>, and <a class="el" href="structopj__tgt__node.html#a71926a9d9563ff7e5f137a8e189e1635">opj_tgt_node::value</a>.</p>
<p>Referenced by <a class="el" href="group___t2.html#ga08a6b4ac26dfd81119b329f02c480f39">opj_t2_encode_packet()</a>.</p>
</div>
</div>
<a class="anchor" id="gaa34fdf087e24d66a2a661c31ba194c3f"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="group___t_g_t.html#gaf06887ec727f9f79a488c8f15661d622">opj_tgt_tree_t</a>* opj_tgt_init </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group___t_g_t.html#gaf06887ec727f9f79a488c8f15661d622">opj_tgt_tree_t</a> *&#160;</td>
<td class="paramname"><em>p_tree</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a>&#160;</td>
<td class="paramname"><em>p_num_leafs_h</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a>&#160;</td>
<td class="paramname"><em>p_num_leafs_v</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="event_8h.html#a4cba85f9ee037b1f2c6bceb903051d96">opj_event_mgr_t</a> *&#160;</td>
<td class="paramname"><em>p_manager</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Reinitialises a tag-tree from an exixting one. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">p_tree</td><td>the tree to reinitialize. </td></tr>
<tr><td class="paramname">p_num_leafs_h</td><td>the width of the array of leafs of the tree </td></tr>
<tr><td class="paramname">p_num_leafs_v</td><td>the height of the array of leafs of the tree </td></tr>
<tr><td class="paramname">p_manager</td><td>the event manager </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>a new tag-tree if successful, NULL otherwise</dd></dl>
<p>Reinitialises a tag-tree from an exixting one.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">p_tree</td><td>the tree to reinitialize. </td></tr>
<tr><td class="paramname">p_num_leafs_h</td><td>the width of the array of leafs of the tree </td></tr>
<tr><td class="paramname">p_num_leafs_v</td><td>the height of the array of leafs of the tree </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>a new tag-tree if successful, NULL otherwise </dd></dl>
<p>References <a class="el" href="event_8h.html#a7323671f4df0a721ae02d610b1269ab9">EVT_ERROR</a>, <a class="el" href="structopj__tgt__tree.html#a0981f42ac4d605cddd9a63b2820d6c60">opj_tgt_tree::nodes</a>, <a class="el" href="structopj__tgt__tree.html#a62bc3ad727b80f26d7b3b10712c5bb9c">opj_tgt_tree::nodes_size</a>, <a class="el" href="structopj__tgt__tree.html#a8bac70f6df83269400a846be083116bd">opj_tgt_tree::numleafsh</a>, <a class="el" href="structopj__tgt__tree.html#acfc60d10adf720f98b4947931ce1bf13">opj_tgt_tree::numleafsv</a>, <a class="el" href="structopj__tgt__tree.html#a6ca2c6a3ee1611cd897197fb504b3d59">opj_tgt_tree::numnodes</a>, <a class="el" href="group___e_v_e_n_t.html#ga87d9d4bdfd203ccd8a7522d6f197a3b7">opj_event_msg()</a>, <a class="el" href="group___m_i_s_c.html#ga95862b2a456efdc436c61beba816fb25">opj_realloc()</a>, <a class="el" href="group___t_g_t.html#gaa9a20506fefbb59153ad401f9af51fe7">opj_tgt_destroy()</a>, <a class="el" href="group___t_g_t.html#gad4bf197e6977fd4c4e947a946391e598">opj_tgt_reset()</a>, and <a class="el" href="structopj__tgt__node.html#ae5a6382a3b692bf7f05c074cd1b025ba">opj_tgt_node::parent</a>.</p>
<p>Referenced by <a class="el" href="tcd_8c.html#a54bd587a88cc401980302d13635b2703">opj_tcd_init_tile()</a>.</p>
</div>
</div>
<a class="anchor" id="gad4bf197e6977fd4c4e947a946391e598"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void opj_tgt_reset </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group___t_g_t.html#gaf06887ec727f9f79a488c8f15661d622">opj_tgt_tree_t</a> *&#160;</td>
<td class="paramname"><em>tree</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Reset a tag-tree (set all leaves to 0) </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">tree</td><td>Tag-tree to reset </td></tr>
</table>
</dd>
</dl>
<p>References <a class="el" href="structopj__tgt__node.html#a23ce722a1f74e4eaffb63216b2439baa">opj_tgt_node::known</a>, <a class="el" href="structopj__tgt__node.html#a78b571d4eadfae7d38ac7cf561354d77">opj_tgt_node::low</a>, <a class="el" href="structopj__tgt__tree.html#a0981f42ac4d605cddd9a63b2820d6c60">opj_tgt_tree::nodes</a>, <a class="el" href="structopj__tgt__tree.html#a6ca2c6a3ee1611cd897197fb504b3d59">opj_tgt_tree::numnodes</a>, and <a class="el" href="structopj__tgt__node.html#a71926a9d9563ff7e5f137a8e189e1635">opj_tgt_node::value</a>.</p>
<p>Referenced by <a class="el" href="group___t2.html#ga08a6b4ac26dfd81119b329f02c480f39">opj_t2_encode_packet()</a>, <a class="el" href="group___t2.html#gafd30efdfea1361431cf3c8ad04d48458">opj_t2_read_packet_header()</a>, <a class="el" href="group___t_g_t.html#gaaf27107458b5242fe7d848480b4a4690">opj_tgt_create()</a>, and <a class="el" href="group___t_g_t.html#gaa34fdf087e24d66a2a661c31ba194c3f">opj_tgt_init()</a>.</p>
</div>
</div>
<a class="anchor" id="gab0844dbb6cdf88a7bb4036d718774f69"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void opj_tgt_setvalue </td>
<td>(</td>
<td class="paramtype"><a class="el" href="group___t_g_t.html#gaf06887ec727f9f79a488c8f15661d622">opj_tgt_tree_t</a> *&#160;</td>
<td class="paramname"><em>tree</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a>&#160;</td>
<td class="paramname"><em>leafno</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a3cec91ef9e73677f0dbd60d4e42401b9">OPJ_INT32</a>&#160;</td>
<td class="paramname"><em>value</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the value of a leaf of a tag-tree. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">tree</td><td>Tag-tree to modify </td></tr>
<tr><td class="paramname">leafno</td><td>Number that identifies the leaf to modify </td></tr>
<tr><td class="paramname">value</td><td>New value of the leaf </td></tr>
</table>
</dd>
</dl>
<p>References <a class="el" href="structopj__tgt__tree.html#a0981f42ac4d605cddd9a63b2820d6c60">opj_tgt_tree::nodes</a>, <a class="el" href="structopj__tgt__node.html#ae5a6382a3b692bf7f05c074cd1b025ba">opj_tgt_node::parent</a>, and <a class="el" href="structopj__tgt__node.html#a71926a9d9563ff7e5f137a8e189e1635">opj_tgt_node::value</a>.</p>
<p>Referenced by <a class="el" href="group___t2.html#ga08a6b4ac26dfd81119b329f02c480f39">opj_t2_encode_packet()</a>.</p>
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.10
</small></address>
</body>
</html>