<ahref="tgt_8h.html">Go to the documentation of this file.</a><divclass="fragment"><divclass="line"><aname="l00001"></a><spanclass="lineno"> 1</span> <spanclass="comment">/*</span></div>
<divclass="line"><aname="l00002"></a><spanclass="lineno"> 2</span> <spanclass="comment"> * The copyright in this software is being made available under the 2-clauses</span></div>
<divclass="line"><aname="l00003"></a><spanclass="lineno"> 3</span> <spanclass="comment"> * BSD License, included below. This software may be subject to other third</span></div>
<divclass="line"><aname="l00004"></a><spanclass="lineno"> 4</span> <spanclass="comment"> * party and contributor rights, including patent rights, and no such rights</span></div>
<divclass="line"><aname="l00005"></a><spanclass="lineno"> 5</span> <spanclass="comment"> * are granted under this license.</span></div>
<divclass="line"><aname="l00019"></a><spanclass="lineno"> 19</span> <spanclass="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
<divclass="line"><aname="l00020"></a><spanclass="lineno"> 20</span> <spanclass="comment"> * modification, are permitted provided that the following conditions</span></div>
<divclass="line"><aname="l00021"></a><spanclass="lineno"> 21</span> <spanclass="comment"> * are met:</span></div>
<divclass="line"><aname="l00022"></a><spanclass="lineno"> 22</span> <spanclass="comment"> * 1. Redistributions of source code must retain the above copyright</span></div>
<divclass="line"><aname="l00023"></a><spanclass="lineno"> 23</span> <spanclass="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
<divclass="line"><aname="l00024"></a><spanclass="lineno"> 24</span> <spanclass="comment"> * 2. Redistributions in binary form must reproduce the above copyright</span></div>
<divclass="line"><aname="l00025"></a><spanclass="lineno"> 25</span> <spanclass="comment"> * notice, this list of conditions and the following disclaimer in the</span></div>
<divclass="line"><aname="l00026"></a><spanclass="lineno"> 26</span> <spanclass="comment"> * documentation and/or other materials provided with the distribution.</span></div>
<divclass="line"><aname="l00028"></a><spanclass="lineno"> 28</span> <spanclass="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS `AS IS'</span></div>
<divclass="line"><aname="l00029"></a><spanclass="lineno"> 29</span> <spanclass="comment"> * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE</span></div>
<divclass="line"><aname="l00030"></a><spanclass="lineno"> 30</span> <spanclass="comment"> * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE</span></div>
<divclass="line"><aname="l00031"></a><spanclass="lineno"> 31</span> <spanclass="comment"> * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE</span></div>
<divclass="line"><aname="l00032"></a><spanclass="lineno"> 32</span> <spanclass="comment"> * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR</span></div>
<divclass="line"><aname="l00033"></a><spanclass="lineno"> 33</span> <spanclass="comment"> * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF</span></div>
<divclass="line"><aname="l00034"></a><spanclass="lineno"> 34</span> <spanclass="comment"> * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS</span></div>
<divclass="line"><aname="l00035"></a><spanclass="lineno"> 35</span> <spanclass="comment"> * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN</span></div>
<divclass="line"><aname="l00036"></a><spanclass="lineno"> 36</span> <spanclass="comment"> * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)</span></div>
<divclass="line"><aname="l00037"></a><spanclass="lineno"> 37</span> <spanclass="comment"> * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE</span></div>
<divclass="line"><aname="l00038"></a><spanclass="lineno"> 38</span> <spanclass="comment"> * POSSIBILITY OF SUCH DAMAGE.</span></div>
<divclass="line"><aname="l00072"></a><spanclass="lineno"><aclass="line"href="structopj__tgt__tree.html#a62bc3ad727b80f26d7b3b10712c5bb9c"> 72</a></span> <aclass="code"href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a><aclass="code"href="structopj__tgt__tree.html#a62bc3ad727b80f26d7b3b10712c5bb9c">nodes_size</a>; <spanclass="comment">/* maximum size taken by nodes */</span></div>
<divclass="ttc"id="aopj__malloc_8c_html_a3fe08bb7876e393dd04332d049a4d53e"><divclass="ttname"><ahref="opj__malloc_8c.html#a3fe08bb7876e393dd04332d049a4d53e">opj_calloc</a></div><divclass="ttdeci">void * opj_calloc(size_t num, size_t size)</div><divclass="ttdoc">Allocate a memory block with elements initialized to 0.</div><divclass="ttdef"><b>Definition:</b> opj_malloc.c:198</div></div>
<divclass="ttc"id="atgt_8h_html_ad4bf197e6977fd4c4e947a946391e598"><divclass="ttname"><ahref="tgt_8h.html#ad4bf197e6977fd4c4e947a946391e598">opj_tgt_reset</a></div><divclass="ttdeci">void opj_tgt_reset(opj_tgt_tree_t *tree)</div><divclass="ttdoc">Reset a tag-tree (set all leaves to 0)</div><divclass="ttdef"><b>Definition:</b> tgt.c:236</div></div>
<divclass="ttc"id="atgt_8h_html_afe36abfc042710c566552ed3adfcb2a9"><divclass="ttname"><ahref="tgt_8h.html#afe36abfc042710c566552ed3adfcb2a9">opj_tgt_encode</a></div><divclass="ttdeci">void opj_tgt_encode(opj_bio_t *bio, opj_tgt_tree_t *tree, OPJ_UINT32 leafno, OPJ_INT32 threshold)</div><divclass="ttdoc">Encode the value of a leaf of the tag-tree up to a given threshold.</div><divclass="ttdef"><b>Definition:</b> tgt.c:264</div></div>
<divclass="ttc"id="aevent_8c_html_a80a24e8c6d24861cd2403e48a7c2591e"><divclass="ttname"><ahref="event_8c.html#a80a24e8c6d24861cd2403e48a7c2591e">opj_event_msg</a></div><divclass="ttdeci">OPJ_BOOL opj_event_msg(opj_event_mgr_t *p_event_mgr, OPJ_INT32 event_type, const char *fmt,...)</div><divclass="ttdoc">Write formatted data to a string and send the string to a user callback.</div><divclass="ttdef"><b>Definition:</b> event.c:91</div></div>
<divclass="ttc"id="atgt_8c_html_afe36abfc042710c566552ed3adfcb2a9"><divclass="ttname"><ahref="tgt_8c.html#afe36abfc042710c566552ed3adfcb2a9">opj_tgt_encode</a></div><divclass="ttdeci">void opj_tgt_encode(opj_bio_t *bio, opj_tgt_tree_t *tree, OPJ_UINT32 leafno, OPJ_INT32 threshold)</div><divclass="ttdoc">Encode the value of a leaf of the tag-tree up to a given threshold.</div><divclass="ttdef"><b>Definition:</b> tgt.c:264</div></div>
<divclass="ttc"id="astructopj__bio_html"><divclass="ttname"><ahref="structopj__bio.html">opj_bio</a></div><divclass="ttdoc">Individual bit input-output stream (BIO)</div><divclass="ttdef"><b>Definition:</b> bio.h:56</div></div>
<divclass="ttc"id="atgt_8c_html_ae5b8ff007944f30c854d4ede64bb16a2"><divclass="ttname"><ahref="tgt_8c.html#ae5b8ff007944f30c854d4ede64bb16a2">opj_tgt_reset</a></div><divclass="ttdeci">void opj_tgt_reset(opj_tgt_tree_t *p_tree)</div><divclass="ttdoc">Reset a tag-tree (set all leaves to 0)</div><divclass="ttdef"><b>Definition:</b> tgt.c:236</div></div>
<divclass="ttc"id="atgt_8h_html_a5b970bfd9b761cdf2ff36001821b06aa"><divclass="ttname"><ahref="tgt_8h.html#a5b970bfd9b761cdf2ff36001821b06aa">opj_tgt_decode</a></div><divclass="ttdeci">OPJ_UINT32 opj_tgt_decode(opj_bio_t *bio, opj_tgt_tree_t *tree, OPJ_UINT32 leafno, OPJ_INT32 threshold)</div><divclass="ttdoc">Decode the value of a leaf of the tag-tree up to a given threshold.</div><divclass="ttdef"><b>Definition:</b> tgt.c:307</div></div>
<divclass="ttc"id="aopj__malloc_8c_html_a9d7d909f8dc1a2c23313c48645341e81"><divclass="ttname"><ahref="opj__malloc_8c.html#a9d7d909f8dc1a2c23313c48645341e81">opj_free</a></div><divclass="ttdeci">void opj_free(void *ptr)</div><divclass="ttdoc">Deallocates or frees a memory block.</div><divclass="ttdef"><b>Definition:</b> opj_malloc.c:246</div></div>
<divclass="ttc"id="asparse__array_8c_html_a174b3ef4cb89af58cdd7c2b9f0a20559"><divclass="ttname"><ahref="sparse__array_8c.html#a174b3ef4cb89af58cdd7c2b9f0a20559">opj_sparse_array_int32_write</a></div><divclass="ttdeci">OPJ_BOOL opj_sparse_array_int32_write(opj_sparse_array_int32_t *sa, OPJ_UINT32 x0, OPJ_UINT32 y0, OPJ_UINT32 x1, OPJ_UINT32 y1, const OPJ_INT32 *src, OPJ_UINT32 src_col_stride, OPJ_UINT32 src_line_stride, OPJ_BOOL forgiving)</div><divclass="ttdoc">Write the content of a rectangular region into the sparse array from a user buffer.</div><divclass="ttdef"><b>Definition:</b> sparse_array.c:330</div></div>
<divclass="ttc"id="asparse__array_8c_html_a092675bfa99d062ce36fa45aff4766da"><divclass="ttname"><ahref="sparse__array_8c.html#a092675bfa99d062ce36fa45aff4766da">opj_sparse_array_int32_read</a></div><divclass="ttdeci">OPJ_BOOL opj_sparse_array_int32_read(const opj_sparse_array_int32_t *sa, OPJ_UINT32 x0, OPJ_UINT32 y0, OPJ_UINT32 x1, OPJ_UINT32 y1, OPJ_INT32 *dest, OPJ_UINT32 dest_col_stride, OPJ_UINT32 dest_line_stride, OPJ_BOOL forgiving)</div><divclass="ttdoc">Read the content of a rectangular region of the sparse array into a user buffer.</div><divclass="ttdef"><b>Definition:</b> sparse_array.c:311</div></div>
<divclass="ttc"id="atgt_8c_html_a5b970bfd9b761cdf2ff36001821b06aa"><divclass="ttname"><ahref="tgt_8c.html#a5b970bfd9b761cdf2ff36001821b06aa">opj_tgt_decode</a></div><divclass="ttdeci">OPJ_UINT32 opj_tgt_decode(opj_bio_t *bio, opj_tgt_tree_t *tree, OPJ_UINT32 leafno, OPJ_INT32 threshold)</div><divclass="ttdoc">Decode the value of a leaf of the tag-tree up to a given threshold.</div><divclass="ttdef"><b>Definition:</b> tgt.c:307</div></div>
<divclass="ttc"id="atgt_8c_html_aa34fdf087e24d66a2a661c31ba194c3f"><divclass="ttname"><ahref="tgt_8c.html#aa34fdf087e24d66a2a661c31ba194c3f">opj_tgt_init</a></div><divclass="ttdeci">opj_tgt_tree_t * opj_tgt_init(opj_tgt_tree_t *p_tree, OPJ_UINT32 p_num_leafs_h, OPJ_UINT32 p_num_leafs_v, opj_event_mgr_t *p_manager)</div><divclass="ttdoc">Reinitialises a tag-tree from an existing one.</div><divclass="ttdef"><b>Definition:</b> tgt.c:136</div></div>
<divclass="ttc"id="atgt_8c_html_ab0844dbb6cdf88a7bb4036d718774f69"><divclass="ttname"><ahref="tgt_8c.html#ab0844dbb6cdf88a7bb4036d718774f69">opj_tgt_setvalue</a></div><divclass="ttdeci">void opj_tgt_setvalue(opj_tgt_tree_t *tree, OPJ_UINT32 leafno, OPJ_INT32 value)</div><divclass="ttdoc">Set the value of a leaf of a tag-tree.</div><divclass="ttdef"><b>Definition:</b> tgt.c:254</div></div>
<divclass="ttc"id="atgt_8h_html_ab0844dbb6cdf88a7bb4036d718774f69"><divclass="ttname"><ahref="tgt_8h.html#ab0844dbb6cdf88a7bb4036d718774f69">opj_tgt_setvalue</a></div><divclass="ttdeci">void opj_tgt_setvalue(opj_tgt_tree_t *tree, OPJ_UINT32 leafno, OPJ_INT32 value)</div><divclass="ttdoc">Set the value of a leaf of a tag-tree.</div><divclass="ttdef"><b>Definition:</b> tgt.c:254</div></div>