1 <!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">
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.10"/>
7 <title>OpenJPEG: TGT - Implementation of a tag-tree coder</title>
8 <link href="tabs.css" rel="stylesheet" type="text/css"/>
9 <script type="text/javascript" src="jquery.js"></script>
10 <script type="text/javascript" src="dynsections.js"></script>
11 <link href="doxygen.css" rel="stylesheet" type="text/css" />
14 <div id="top"><!-- do not remove this div, it is closed by doxygen! -->
16 <table cellspacing="0" cellpadding="0">
18 <tr style="height: 56px;">
19 <td id="projectalign" style="padding-left: 0.5em;">
20 <div id="projectname">OpenJPEG
21  <span id="projectnumber">2.2.0</span>
28 <!-- end header part -->
29 <!-- Generated by Doxygen 1.8.10 -->
30 <div id="navrow1" class="tabs">
32 <li><a href="index.html"><span>Main Page</span></a></li>
33 <li><a href="pages.html"><span>Related Pages</span></a></li>
34 <li><a href="modules.html"><span>Modules</span></a></li>
35 <li><a href="annotated.html"><span>Data Structures</span></a></li>
36 <li><a href="files.html"><span>Files</span></a></li>
42 <a href="#nested-classes">Data Structures</a> |
43 <a href="#typedef-members">Typedefs</a> </div>
44 <div class="headertitle">
45 <div class="title">TGT - Implementation of a tag-tree coder</div> </div>
47 <div class="contents">
48 <table class="memberdecls">
49 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
50 Data Structures</h2></td></tr>
51 <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structopj__tgt__node.html">opj_tgt_node</a></td></tr>
52 <tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">Tag node. <a href="structopj__tgt__node.html#details">More...</a><br /></td></tr>
53 <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
54 <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structopj__tgt__tree.html">opj_tgt_tree</a></td></tr>
55 <tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">Tag tree. <a href="structopj__tgt__tree.html#details">More...</a><br /></td></tr>
56 <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
57 </table><table class="memberdecls">
58 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
59 Typedefs</h2></td></tr>
60 <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> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___t_g_t.html#ga8eddc00e16d716a49948fafc52bcd29d">opj_tgt_node_t</a></td></tr>
61 <tr class="memdesc:ga8eddc00e16d716a49948fafc52bcd29d"><td class="mdescLeft"> </td><td class="mdescRight">Tag node. <a href="#ga8eddc00e16d716a49948fafc52bcd29d">More...</a><br /></td></tr>
62 <tr class="separator:ga8eddc00e16d716a49948fafc52bcd29d"><td class="memSeparator" colspan="2"> </td></tr>
63 <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> </td><td class="memItemRight" valign="bottom"><a class="el" href="group___t_g_t.html#gaf06887ec727f9f79a488c8f15661d622">opj_tgt_tree_t</a></td></tr>
64 <tr class="memdesc:gaf06887ec727f9f79a488c8f15661d622"><td class="mdescLeft"> </td><td class="mdescRight">Tag tree. <a href="#gaf06887ec727f9f79a488c8f15661d622">More...</a><br /></td></tr>
65 <tr class="separator:gaf06887ec727f9f79a488c8f15661d622"><td class="memSeparator" colspan="2"> </td></tr>
66 </table><table class="memberdecls">
67 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
68 Exported functions</h2></td></tr>
69 <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> * </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>
70 <tr class="memdesc:gaaf27107458b5242fe7d848480b4a4690"><td class="mdescLeft"> </td><td class="mdescRight">Create a tag-tree. <a href="#gaaf27107458b5242fe7d848480b4a4690">More...</a><br /></td></tr>
71 <tr class="separator:gaaf27107458b5242fe7d848480b4a4690"><td class="memSeparator" colspan="2"> </td></tr>
72 <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> * </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>
73 <tr class="memdesc:gaa34fdf087e24d66a2a661c31ba194c3f"><td class="mdescLeft"> </td><td class="mdescRight">Reinitialises a tag-tree from an exixting one. <a href="#gaa34fdf087e24d66a2a661c31ba194c3f">More...</a><br /></td></tr>
74 <tr class="separator:gaa34fdf087e24d66a2a661c31ba194c3f"><td class="memSeparator" colspan="2"> </td></tr>
75 <tr class="memitem:gaa9a20506fefbb59153ad401f9af51fe7"><td class="memItemLeft" align="right" valign="top">void </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>
76 <tr class="memdesc:gaa9a20506fefbb59153ad401f9af51fe7"><td class="mdescLeft"> </td><td class="mdescRight">Destroy a tag-tree, liberating memory. <a href="#gaa9a20506fefbb59153ad401f9af51fe7">More...</a><br /></td></tr>
77 <tr class="separator:gaa9a20506fefbb59153ad401f9af51fe7"><td class="memSeparator" colspan="2"> </td></tr>
78 <tr class="memitem:gad4bf197e6977fd4c4e947a946391e598"><td class="memItemLeft" align="right" valign="top">void </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>
79 <tr class="memdesc:gad4bf197e6977fd4c4e947a946391e598"><td class="mdescLeft"> </td><td class="mdescRight">Reset a tag-tree (set all leaves to 0) <a href="#gad4bf197e6977fd4c4e947a946391e598">More...</a><br /></td></tr>
80 <tr class="separator:gad4bf197e6977fd4c4e947a946391e598"><td class="memSeparator" colspan="2"> </td></tr>
81 <tr class="memitem:gab0844dbb6cdf88a7bb4036d718774f69"><td class="memItemLeft" align="right" valign="top">void </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>
82 <tr class="memdesc:gab0844dbb6cdf88a7bb4036d718774f69"><td class="mdescLeft"> </td><td class="mdescRight">Set the value of a leaf of a tag-tree. <a href="#gab0844dbb6cdf88a7bb4036d718774f69">More...</a><br /></td></tr>
83 <tr class="separator:gab0844dbb6cdf88a7bb4036d718774f69"><td class="memSeparator" colspan="2"> </td></tr>
84 <tr class="memitem:gafe36abfc042710c566552ed3adfcb2a9"><td class="memItemLeft" align="right" valign="top">void </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>
85 <tr class="memdesc:gafe36abfc042710c566552ed3adfcb2a9"><td class="mdescLeft"> </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>
86 <tr class="separator:gafe36abfc042710c566552ed3adfcb2a9"><td class="memSeparator" colspan="2"> </td></tr>
87 <tr class="memitem:ga5b970bfd9b761cdf2ff36001821b06aa"><td class="memItemLeft" align="right" valign="top"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> </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>
88 <tr class="memdesc:ga5b970bfd9b761cdf2ff36001821b06aa"><td class="mdescLeft"> </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>
89 <tr class="separator:ga5b970bfd9b761cdf2ff36001821b06aa"><td class="memSeparator" colspan="2"> </td></tr>
91 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
92 <h2 class="groupheader">Typedef Documentation</h2>
93 <a class="anchor" id="ga8eddc00e16d716a49948fafc52bcd29d"></a>
95 <div class="memproto">
96 <table class="memname">
98 <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>
101 </div><div class="memdoc">
107 <a class="anchor" id="gaf06887ec727f9f79a488c8f15661d622"></a>
108 <div class="memitem">
109 <div class="memproto">
110 <table class="memname">
112 <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>
115 </div><div class="memdoc">
121 <h2 class="groupheader">Function Documentation</h2>
122 <a class="anchor" id="gaaf27107458b5242fe7d848480b4a4690"></a>
123 <div class="memitem">
124 <div class="memproto">
125 <table class="memname">
127 <td class="memname"><a class="el" href="group___t_g_t.html#gaf06887ec727f9f79a488c8f15661d622">opj_tgt_tree_t</a>* opj_tgt_create </td>
129 <td class="paramtype"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> </td>
130 <td class="paramname"><em>numleafsh</em>, </td>
133 <td class="paramkey"></td>
135 <td class="paramtype"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> </td>
136 <td class="paramname"><em>numleafsv</em>, </td>
139 <td class="paramkey"></td>
141 <td class="paramtype"><a class="el" href="event_8h.html#a4cba85f9ee037b1f2c6bceb903051d96">opj_event_mgr_t</a> * </td>
142 <td class="paramname"><em>p_manager</em> </td>
150 </div><div class="memdoc">
152 <p>Create a tag-tree. </p>
153 <dl class="params"><dt>Parameters</dt><dd>
154 <table class="params">
155 <tr><td class="paramname">numleafsh</td><td>Width of the array of leafs of the tree </td></tr>
156 <tr><td class="paramname">numleafsv</td><td>Height of the array of leafs of the tree </td></tr>
157 <tr><td class="paramname">p_manager</td><td>the event manager </td></tr>
161 <dl class="section return"><dt>Returns</dt><dd>Returns a new tag-tree if successful, returns NULL otherwise </dd></dl>
163 <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>
165 <p>Referenced by <a class="el" href="tcd_8c.html#a54bd587a88cc401980302d13635b2703">opj_tcd_init_tile()</a>.</p>
169 <a class="anchor" id="ga5b970bfd9b761cdf2ff36001821b06aa"></a>
170 <div class="memitem">
171 <div class="memproto">
172 <table class="memname">
174 <td class="memname"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> opj_tgt_decode </td>
176 <td class="paramtype"><a class="el" href="group___b_i_o.html#gac65cc716fac75e743f2e9980c8a05807">opj_bio_t</a> * </td>
177 <td class="paramname"><em>bio</em>, </td>
180 <td class="paramkey"></td>
182 <td class="paramtype"><a class="el" href="group___t_g_t.html#gaf06887ec727f9f79a488c8f15661d622">opj_tgt_tree_t</a> * </td>
183 <td class="paramname"><em>tree</em>, </td>
186 <td class="paramkey"></td>
188 <td class="paramtype"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> </td>
189 <td class="paramname"><em>leafno</em>, </td>
192 <td class="paramkey"></td>
194 <td class="paramtype"><a class="el" href="openjpeg_8h.html#a3cec91ef9e73677f0dbd60d4e42401b9">OPJ_INT32</a> </td>
195 <td class="paramname"><em>threshold</em> </td>
203 </div><div class="memdoc">
205 <p>Decode the value of a leaf of the tag-tree up to a given threshold. </p>
206 <dl class="params"><dt>Parameters</dt><dd>
207 <table class="params">
208 <tr><td class="paramname">bio</td><td>Pointer to a BIO handle </td></tr>
209 <tr><td class="paramname">tree</td><td>Tag-tree to decode </td></tr>
210 <tr><td class="paramname">leafno</td><td>Number that identifies the leaf to decode </td></tr>
211 <tr><td class="paramname">threshold</td><td>Threshold to use when decoding value of the leaf </td></tr>
215 <dl class="section return"><dt>Returns</dt><dd>Returns 1 if the node's value < threshold, returns 0 otherwise </dd></dl>
217 <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>
219 <p>Referenced by <a class="el" href="group___t2.html#gafd30efdfea1361431cf3c8ad04d48458">opj_t2_read_packet_header()</a>.</p>
223 <a class="anchor" id="gaa9a20506fefbb59153ad401f9af51fe7"></a>
224 <div class="memitem">
225 <div class="memproto">
226 <table class="memname">
228 <td class="memname">void opj_tgt_destroy </td>
230 <td class="paramtype"><a class="el" href="group___t_g_t.html#gaf06887ec727f9f79a488c8f15661d622">opj_tgt_tree_t</a> * </td>
231 <td class="paramname"><em>tree</em></td><td>)</td>
235 </div><div class="memdoc">
237 <p>Destroy a tag-tree, liberating memory. </p>
238 <dl class="params"><dt>Parameters</dt><dd>
239 <table class="params">
240 <tr><td class="paramname">tree</td><td>Tag-tree to destroy </td></tr>
245 <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>
247 <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>
251 <a class="anchor" id="gafe36abfc042710c566552ed3adfcb2a9"></a>
252 <div class="memitem">
253 <div class="memproto">
254 <table class="memname">
256 <td class="memname">void opj_tgt_encode </td>
258 <td class="paramtype"><a class="el" href="group___b_i_o.html#gac65cc716fac75e743f2e9980c8a05807">opj_bio_t</a> * </td>
259 <td class="paramname"><em>bio</em>, </td>
262 <td class="paramkey"></td>
264 <td class="paramtype"><a class="el" href="group___t_g_t.html#gaf06887ec727f9f79a488c8f15661d622">opj_tgt_tree_t</a> * </td>
265 <td class="paramname"><em>tree</em>, </td>
268 <td class="paramkey"></td>
270 <td class="paramtype"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> </td>
271 <td class="paramname"><em>leafno</em>, </td>
274 <td class="paramkey"></td>
276 <td class="paramtype"><a class="el" href="openjpeg_8h.html#a3cec91ef9e73677f0dbd60d4e42401b9">OPJ_INT32</a> </td>
277 <td class="paramname"><em>threshold</em> </td>
285 </div><div class="memdoc">
287 <p>Encode the value of a leaf of the tag-tree up to a given threshold. </p>
288 <dl class="params"><dt>Parameters</dt><dd>
289 <table class="params">
290 <tr><td class="paramname">bio</td><td>Pointer to a BIO handle </td></tr>
291 <tr><td class="paramname">tree</td><td>Tag-tree to modify </td></tr>
292 <tr><td class="paramname">leafno</td><td>Number that identifies the leaf to encode </td></tr>
293 <tr><td class="paramname">threshold</td><td>Threshold to use when encoding value of the leaf </td></tr>
298 <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>
300 <p>Referenced by <a class="el" href="group___t2.html#ga08a6b4ac26dfd81119b329f02c480f39">opj_t2_encode_packet()</a>.</p>
304 <a class="anchor" id="gaa34fdf087e24d66a2a661c31ba194c3f"></a>
305 <div class="memitem">
306 <div class="memproto">
307 <table class="memname">
309 <td class="memname"><a class="el" href="group___t_g_t.html#gaf06887ec727f9f79a488c8f15661d622">opj_tgt_tree_t</a>* opj_tgt_init </td>
311 <td class="paramtype"><a class="el" href="group___t_g_t.html#gaf06887ec727f9f79a488c8f15661d622">opj_tgt_tree_t</a> * </td>
312 <td class="paramname"><em>p_tree</em>, </td>
315 <td class="paramkey"></td>
317 <td class="paramtype"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> </td>
318 <td class="paramname"><em>p_num_leafs_h</em>, </td>
321 <td class="paramkey"></td>
323 <td class="paramtype"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> </td>
324 <td class="paramname"><em>p_num_leafs_v</em>, </td>
327 <td class="paramkey"></td>
329 <td class="paramtype"><a class="el" href="event_8h.html#a4cba85f9ee037b1f2c6bceb903051d96">opj_event_mgr_t</a> * </td>
330 <td class="paramname"><em>p_manager</em> </td>
338 </div><div class="memdoc">
340 <p>Reinitialises a tag-tree from an exixting one. </p>
341 <dl class="params"><dt>Parameters</dt><dd>
342 <table class="params">
343 <tr><td class="paramname">p_tree</td><td>the tree to reinitialize. </td></tr>
344 <tr><td class="paramname">p_num_leafs_h</td><td>the width of the array of leafs of the tree </td></tr>
345 <tr><td class="paramname">p_num_leafs_v</td><td>the height of the array of leafs of the tree </td></tr>
346 <tr><td class="paramname">p_manager</td><td>the event manager </td></tr>
350 <dl class="section return"><dt>Returns</dt><dd>a new tag-tree if successful, NULL otherwise</dd></dl>
351 <p>Reinitialises a tag-tree from an exixting one.</p>
352 <dl class="params"><dt>Parameters</dt><dd>
353 <table class="params">
354 <tr><td class="paramname">p_tree</td><td>the tree to reinitialize. </td></tr>
355 <tr><td class="paramname">p_num_leafs_h</td><td>the width of the array of leafs of the tree </td></tr>
356 <tr><td class="paramname">p_num_leafs_v</td><td>the height of the array of leafs of the tree </td></tr>
360 <dl class="section return"><dt>Returns</dt><dd>a new tag-tree if successful, NULL otherwise </dd></dl>
362 <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>
364 <p>Referenced by <a class="el" href="tcd_8c.html#a54bd587a88cc401980302d13635b2703">opj_tcd_init_tile()</a>.</p>
368 <a class="anchor" id="gad4bf197e6977fd4c4e947a946391e598"></a>
369 <div class="memitem">
370 <div class="memproto">
371 <table class="memname">
373 <td class="memname">void opj_tgt_reset </td>
375 <td class="paramtype"><a class="el" href="group___t_g_t.html#gaf06887ec727f9f79a488c8f15661d622">opj_tgt_tree_t</a> * </td>
376 <td class="paramname"><em>tree</em></td><td>)</td>
380 </div><div class="memdoc">
382 <p>Reset a tag-tree (set all leaves to 0) </p>
383 <dl class="params"><dt>Parameters</dt><dd>
384 <table class="params">
385 <tr><td class="paramname">tree</td><td>Tag-tree to reset </td></tr>
390 <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>
392 <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>
396 <a class="anchor" id="gab0844dbb6cdf88a7bb4036d718774f69"></a>
397 <div class="memitem">
398 <div class="memproto">
399 <table class="memname">
401 <td class="memname">void opj_tgt_setvalue </td>
403 <td class="paramtype"><a class="el" href="group___t_g_t.html#gaf06887ec727f9f79a488c8f15661d622">opj_tgt_tree_t</a> * </td>
404 <td class="paramname"><em>tree</em>, </td>
407 <td class="paramkey"></td>
409 <td class="paramtype"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> </td>
410 <td class="paramname"><em>leafno</em>, </td>
413 <td class="paramkey"></td>
415 <td class="paramtype"><a class="el" href="openjpeg_8h.html#a3cec91ef9e73677f0dbd60d4e42401b9">OPJ_INT32</a> </td>
416 <td class="paramname"><em>value</em> </td>
424 </div><div class="memdoc">
426 <p>Set the value of a leaf of a tag-tree. </p>
427 <dl class="params"><dt>Parameters</dt><dd>
428 <table class="params">
429 <tr><td class="paramname">tree</td><td>Tag-tree to modify </td></tr>
430 <tr><td class="paramname">leafno</td><td>Number that identifies the leaf to modify </td></tr>
431 <tr><td class="paramname">value</td><td>New value of the leaf </td></tr>
436 <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>
438 <p>Referenced by <a class="el" href="group___t2.html#ga08a6b4ac26dfd81119b329f02c480f39">opj_t2_encode_packet()</a>.</p>
442 </div><!-- contents -->
443 <!-- start footer part -->
444 <hr class="footer"/><address class="footer"><small>
445 Generated by  <a href="http://www.doxygen.org/index.html">
446 <img class="footer" src="doxygen.png" alt="doxygen"/>