<ahref="ihdrbox__manager_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="l00009"></a><spanclass="lineno"> 9</span> <spanclass="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
<divclass="line"><aname="l00010"></a><spanclass="lineno"> 10</span> <spanclass="comment"> * modification, are permitted provided that the following conditions</span></div>
<divclass="line"><aname="l00011"></a><spanclass="lineno"> 11</span> <spanclass="comment"> * are met:</span></div>
<divclass="line"><aname="l00012"></a><spanclass="lineno"> 12</span> <spanclass="comment"> * 1. Redistributions of source code must retain the above copyright</span></div>
<divclass="line"><aname="l00013"></a><spanclass="lineno"> 13</span> <spanclass="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
<divclass="line"><aname="l00014"></a><spanclass="lineno"> 14</span> <spanclass="comment"> * 2. Redistributions in binary form must reproduce the above copyright</span></div>
<divclass="line"><aname="l00015"></a><spanclass="lineno"> 15</span> <spanclass="comment"> * notice, this list of conditions and the following disclaimer in the</span></div>
<divclass="line"><aname="l00016"></a><spanclass="lineno"> 16</span> <spanclass="comment"> * documentation and/or other materials provided with the distribution.</span></div>
<divclass="line"><aname="l00018"></a><spanclass="lineno"> 18</span> <spanclass="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS `AS IS'</span></div>
<divclass="line"><aname="l00019"></a><spanclass="lineno"> 19</span> <spanclass="comment"> * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE</span></div>
<divclass="line"><aname="l00020"></a><spanclass="lineno"> 20</span> <spanclass="comment"> * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE</span></div>
<divclass="line"><aname="l00021"></a><spanclass="lineno"> 21</span> <spanclass="comment"> * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE</span></div>
<divclass="line"><aname="l00022"></a><spanclass="lineno"> 22</span> <spanclass="comment"> * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR</span></div>
<divclass="line"><aname="l00023"></a><spanclass="lineno"> 23</span> <spanclass="comment"> * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF</span></div>
<divclass="line"><aname="l00024"></a><spanclass="lineno"> 24</span> <spanclass="comment"> * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS</span></div>
<divclass="line"><aname="l00025"></a><spanclass="lineno"> 25</span> <spanclass="comment"> * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN</span></div>
<divclass="line"><aname="l00026"></a><spanclass="lineno"> 26</span> <spanclass="comment"> * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)</span></div>
<divclass="line"><aname="l00027"></a><spanclass="lineno"> 27</span> <spanclass="comment"> * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE</span></div>
<divclass="line"><aname="l00028"></a><spanclass="lineno"> 28</span> <spanclass="comment"> * POSSIBILITY OF SUCH DAMAGE.</span></div>
<divclass="ttc"id="aht__dec_8c_html_a6de0fb1c8dfa06883ee1a22b5198b58c"><divclass="ttname"><ahref="ht__dec_8c.html#a6de0fb1c8dfa06883ee1a22b5198b58c">mel_init</a></div><divclass="ttdeci">static INLINE void mel_init(dec_mel_t *melp, OPJ_UINT8 *bbuf, int lcup, int scup)</div><divclass="ttdoc">Initiates a dec_mel_t structure for MEL decoding and reads some bytes in order to get the read addres...</div><divclass="ttdef"><b>Definition:</b> ht_dec.c:297</div></div>
<divclass="ttc"id="astructopj__t1_html_ad9c62c070cac19e999623b6dfc247789"><divclass="ttname"><ahref="structopj__t1.html#ad9c62c070cac19e999623b6dfc247789">opj_t1::flags</a></div><divclass="ttdeci">opj_flag_t * flags</div><divclass="ttdoc">Flags used by decoder and encoder.</div><divclass="ttdef"><b>Definition:</b> t1.h:195</div></div>
<divclass="ttc"id="aht__dec_8c_html_a8360f399ee860c9cdcb8eb2586da6313"><divclass="ttname"><ahref="ht__dec_8c.html#a8360f399ee860c9cdcb8eb2586da6313">frwd_struct_t</a></div><divclass="ttdeci">struct frwd_struct frwd_struct_t</div><divclass="ttdoc">State structure for reading and unstuffing of forward-growing bitstreams; these are: MagSgn and SPP b...</div></div>
<divclass="ttc"id="agroup__vlc__decoding__tables__grp_html_ga5252da304e5d0ed6ca7cedc887c7056b"><divclass="ttname"><ahref="group__vlc__decoding__tables__grp.html#ga5252da304e5d0ed6ca7cedc887c7056b">vlc_tbl1</a></div><divclass="ttdeci">int vlc_tbl1[1024]</div><divclass="ttdoc">vlc_tbl1 contains decoding information for non-initial row of quads</div><divclass="ttdef"><b>Definition:</b> t1_ht_generate_luts.c:904</div></div>
<divclass="ttc"id="aht__dec_8c_html_ac411a50f8827a8678a03e8956e02f2b2"><divclass="ttname"><ahref="ht__dec_8c.html#ac411a50f8827a8678a03e8956e02f2b2">count_leading_zeros</a></div><divclass="ttdeci">static INLINE OPJ_UINT32 count_leading_zeros(OPJ_UINT32 val)</div><divclass="ttdoc">Counts the number of leading zeros.</div><divclass="ttdef"><b>Definition:</b> ht_dec.c:95</div></div>
<divclass="ttc"id="abyte__manager_8c_html_a1f29d888bc2d2a63e5ca8a2b71cfafea"><divclass="ttname"><ahref="byte__manager_8c.html#a1f29d888bc2d2a63e5ca8a2b71cfafea">big4</a></div><divclass="ttdeci">Byte4_t big4(Byte_t *buf)</div><divclass="ttdoc">convert 4-byte big endian Byte codes to number</div><divclass="ttdef"><b>Definition:</b> byte_manager.c:147</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="astructfrwd__struct_html_a18ebccc4ba9d3786ab98e3e0299bcb72"><divclass="ttname"><ahref="structfrwd__struct.html#a18ebccc4ba9d3786ab98e3e0299bcb72">frwd_struct::unstuff</a></div><divclass="ttdeci">OPJ_BOOL unstuff</div><divclass="ttdoc">true if a bit needs to be unstuffed from next byte</div><divclass="ttdef"><b>Definition:</b> ht_dec.c:874</div></div>
<divclass="ttc"id="aht__dec_8c_html_ad6424de8bbf1786bb96e7ad13a54a213"><divclass="ttname"><ahref="ht__dec_8c.html#ad6424de8bbf1786bb96e7ad13a54a213">rev_struct_t</a></div><divclass="ttdeci">struct rev_struct rev_struct_t</div><divclass="ttdoc">A structure for reading and unstuffing a segment that grows backward, such as VLC and MRP.</div></div>
<divclass="ttc"id="astructdec__mel_html_abb4801ccf69a415d71ead1b07dbf54c0"><divclass="ttname"><ahref="structdec__mel.html#abb4801ccf69a415d71ead1b07dbf54c0">dec_mel::bits</a></div><divclass="ttdeci">int bits</div><divclass="ttdoc">number of bits stored in tmp</div><divclass="ttdef"><b>Definition:</b> ht_dec.c:142</div></div>
<divclass="ttc"id="aht__dec_8c_html_a847984af36a6cc3e6638118d89880baa"><divclass="ttname"><ahref="ht__dec_8c.html#a847984af36a6cc3e6638118d89880baa">rev_fetch_mrp</a></div><divclass="ttdeci">static INLINE OPJ_UINT32 rev_fetch_mrp(rev_struct_t *mrp)</div><divclass="ttdoc">Retrieves 32 bits from the head of a rev_struct structure.</div><divclass="ttdef"><b>Definition:</b> ht_dec.c:650</div></div>
<divclass="ttc"id="astructmetadatalist__param_html_a8137e17639987080af7fe611ccdba82a"><divclass="ttname"><ahref="structmetadatalist__param.html#a8137e17639987080af7fe611ccdba82a">metadatalist_param::first</a></div><divclass="ttdeci">metadata_param_t * first</div><divclass="ttdoc">first metadata-bin pointer of the list</div><divclass="ttdef"><b>Definition:</b> metadata_manager.h:55</div></div>
<divclass="ttc"id="astructrev__struct_html_a6253e73093c045053d37c050a57928d9"><divclass="ttname"><ahref="structrev__struct.html#a6253e73093c045053d37c050a57928d9">rev_struct::bits</a></div><divclass="ttdeci">OPJ_UINT32 bits</div><divclass="ttdoc">number of bits stored in tmp</div><divclass="ttdef"><b>Definition:</b> ht_dec.c:365</div></div>
<divclass="ttc"id="aht__dec_8c_html_a4f50129f86589c1c28477ed69d16b11e"><divclass="ttname"><ahref="ht__dec_8c.html#a4f50129f86589c1c28477ed69d16b11e">rev_fetch</a></div><divclass="ttdeci">static INLINE OPJ_UINT32 rev_fetch(rev_struct_t *vlcp)</div><divclass="ttdoc">Retrieves 32 bits from the head of a rev_struct structure.</div><divclass="ttdef"><b>Definition:</b> ht_dec.c:505</div></div>
<divclass="ttc"id="aht__dec_8c_html_ab29a9d383a6af16f7d0d0e7e48dc984a"><divclass="ttname"><ahref="ht__dec_8c.html#ab29a9d383a6af16f7d0d0e7e48dc984a">dec_mel_t</a></div><divclass="ttdeci">struct dec_mel dec_mel_t</div><divclass="ttdoc">MEL state structure for reading and decoding the MEL bitstream.</div></div>
<divclass="ttc"id="aht__dec_8c_html_a03c0bbb6a385df0f5a46d0afdd5dfa3e"><divclass="ttname"><ahref="ht__dec_8c.html#a03c0bbb6a385df0f5a46d0afdd5dfa3e">decode_init_uvlc</a></div><divclass="ttdeci">static INLINE OPJ_UINT32 decode_init_uvlc(OPJ_UINT32 vlc, OPJ_UINT32 mode, OPJ_UINT32 *u)</div><divclass="ttdoc">Decode initial UVLC to get the u value (or u_q)</div><divclass="ttdef"><b>Definition:</b> ht_dec.c:688</div></div>
<divclass="ttc"id="astructihdrbox__param_html_a7e84d5dedd304c262aa564009253fb09"><divclass="ttname"><ahref="structihdrbox__param.html#a7e84d5dedd304c262aa564009253fb09">ihdrbox_param::bpc</a></div><divclass="ttdeci">Byte_t bpc</div><divclass="ttdoc">bits per component</div><divclass="ttdef"><b>Definition:</b> ihdrbox_manager.h:43</div></div>
<divclass="ttc"id="astructmetadatalist__param_html"><divclass="ttname"><ahref="structmetadatalist__param.html">metadatalist_param</a></div><divclass="ttdoc">metadata-bin list parameters</div><divclass="ttdef"><b>Definition:</b> metadata_manager.h:54</div></div>
<divclass="ttc"id="astructopj__t1_html"><divclass="ttname"><ahref="structopj__t1.html">opj_t1</a></div><divclass="ttdoc">Tier-1 coding (coding of code-block coefficients)</div><divclass="ttdef"><b>Definition:</b> t1.h:184</div></div>
<divclass="ttc"id="astructrev__struct_html_af289ce91d1fcc20c59cfd5afd22ddcd5"><divclass="ttname"><ahref="structrev__struct.html#af289ce91d1fcc20c59cfd5afd22ddcd5">rev_struct::unstuff</a></div><divclass="ttdeci">OPJ_BOOL unstuff</div><divclass="ttdoc">true if the last byte is more than 0x8F</div><divclass="ttdef"><b>Definition:</b> ht_dec.c:367</div></div>
<divclass="ttc"id="aht__dec_8c_html_ac65390cb63d723311d218c66b0c99dd6"><divclass="ttname"><ahref="ht__dec_8c.html#ac65390cb63d723311d218c66b0c99dd6">decode_noninit_uvlc</a></div><divclass="ttdeci">static INLINE OPJ_UINT32 decode_noninit_uvlc(OPJ_UINT32 vlc, OPJ_UINT32 mode, OPJ_UINT32 *u)</div><divclass="ttdoc">Decode non-initial UVLC to get the u value (or u_q)</div><divclass="ttdef"><b>Definition:</b> ht_dec.c:801</div></div>
<divclass="ttc"id="at1_8h_html_ab9520ada8305b3d288b86c380a64330d"><divclass="ttname"><ahref="t1_8h.html#ab9520ada8305b3d288b86c380a64330d">opj_flag_t</a></div><divclass="ttdeci">OPJ_UINT32 opj_flag_t</div><divclass="ttdoc">Flags for 4 consecutive rows of a column.</div><divclass="ttdef"><b>Definition:</b> t1.h:179</div></div>
<divclass="ttc"id="aht__dec_8c_html_ada5b53a012c2bbb0e333636e847774be"><divclass="ttname"><ahref="ht__dec_8c.html#ada5b53a012c2bbb0e333636e847774be">rev_read_mrp</a></div><divclass="ttdeci">static INLINE void rev_read_mrp(rev_struct_t *mrp)</div><divclass="ttdoc">Reads and unstuffs from rev_struct.</div><divclass="ttdef"><b>Definition:</b> ht_dec.c:543</div></div>
<divclass="ttc"id="astructdec__mel_html_a83fc25981985984995866d3188046721"><divclass="ttname"><ahref="structdec__mel.html#a83fc25981985984995866d3188046721">dec_mel::tmp</a></div><divclass="ttdeci">OPJ_UINT64 tmp</div><divclass="ttdoc">temporary buffer for read data</div><divclass="ttdef"><b>Definition:</b> ht_dec.c:141</div></div>
<divclass="ttc"id="aht__dec_8c_html_ad5407f4037277334cd55ae4ecb0b38ed"><divclass="ttname"><ahref="ht__dec_8c.html#ad5407f4037277334cd55ae4ecb0b38ed">rev_read</a></div><divclass="ttdeci">static INLINE void rev_read(rev_struct_t *vlcp)</div><divclass="ttdoc">Read and unstuff data from a backwardly-growing segment.</div><divclass="ttdef"><b>Definition:</b> ht_dec.c:392</div></div>
<divclass="ttc"id="abyte__manager_8c_html_a0c20ded21352121723f9df94c7568356"><divclass="ttname"><ahref="byte__manager_8c.html#a0c20ded21352121723f9df94c7568356">big2</a></div><divclass="ttdeci">Byte2_t big2(Byte_t *buf)</div><divclass="ttdoc">convert 2-byte big endian Byte codes to number</div><divclass="ttdef"><b>Definition:</b> byte_manager.c:142</div></div>
<divclass="ttc"id="astructmetadata__param_html_a2c32a344c91035f724e8baaca01ece9a"><divclass="ttname"><ahref="structmetadata__param.html#a2c32a344c91035f724e8baaca01ece9a">metadata_param::next</a></div><divclass="ttdeci">struct metadata_param * next</div><divclass="ttdoc">pointer to the next metadata-bin</div><divclass="ttdef"><b>Definition:</b> metadata_manager.h:49</div></div>
<divclass="ttc"id="athread_8c_html_ab38a90b92a1d294f7e1886e36a405518"><divclass="ttname"><ahref="thread_8c.html#ab38a90b92a1d294f7e1886e36a405518">opj_mutex_lock</a></div><divclass="ttdeci">void opj_mutex_lock(opj_mutex_t *mutex)</div><divclass="ttdoc">Lock/acquire the mutex.</div><divclass="ttdef"><b>Definition:</b> thread.c:448</div></div>
<divclass="ttc"id="astructdec__mel_html_a63bac0ad45129bc6e369c997d4a9eaf8"><divclass="ttname"><ahref="structdec__mel.html#a63bac0ad45129bc6e369c997d4a9eaf8">dec_mel::k</a></div><divclass="ttdeci">int k</div><divclass="ttdoc">state of MEL decoder</div><divclass="ttdef"><b>Definition:</b> ht_dec.c:145</div></div>
<divclass="ttc"id="astructrev__struct_html_a4cd89a08b969061ca23999de832aea02"><divclass="ttname"><ahref="structrev__struct.html#a4cd89a08b969061ca23999de832aea02">rev_struct::data</a></div><divclass="ttdeci">OPJ_UINT8 * data</div><divclass="ttdoc">pointer to where to read data</div><divclass="ttdef"><b>Definition:</b> ht_dec.c:363</div></div>
<divclass="ttc"id="aht__dec_8c_html_aaae9b480e28b443dc48fab9114cd9a11"><divclass="ttname"><ahref="ht__dec_8c.html#aaae9b480e28b443dc48fab9114cd9a11">rev_init_mrp</a></div><divclass="ttdeci">static INLINE void rev_init_mrp(rev_struct_t *mrp, OPJ_UINT8 *data, int lcup, int len2)</div><divclass="ttdoc">Initialized rev_struct structure for MRP segment, and reads a number of bytes such that the next 32 b...</div><divclass="ttdef"><b>Definition:</b> ht_dec.c:612</div></div>
<divclass="ttc"id="aht__dec_8c_html_ad5e4d97335437325d6bbb6206bc5aae6"><divclass="ttname"><ahref="ht__dec_8c.html#ad5e4d97335437325d6bbb6206bc5aae6">rev_advance_mrp</a></div><divclass="ttdeci">static INLINE OPJ_UINT32 rev_advance_mrp(rev_struct_t *mrp, OPJ_UINT32 num_bits)</div><divclass="ttdoc">Consumes num_bits from a rev_struct structure.</div><divclass="ttdef"><b>Definition:</b> ht_dec.c:668</div></div>
<divclass="ttc"id="astructdec__mel_html_a3abf7acba0972b6ab4182f0b0e35bcbe"><divclass="ttname"><ahref="structdec__mel.html#a3abf7acba0972b6ab4182f0b0e35bcbe">dec_mel::num_runs</a></div><divclass="ttdeci">int num_runs</div><divclass="ttdoc">number of decoded runs left in runs (maximum 8)</div><divclass="ttdef"><b>Definition:</b> ht_dec.c:148</div></div>
<divclass="ttc"id="astructfrwd__struct_html_afff5d7aca81c6812c43e312820679cf5"><divclass="ttname"><ahref="structfrwd__struct.html#afff5d7aca81c6812c43e312820679cf5">frwd_struct::size</a></div><divclass="ttdeci">int size</div><divclass="ttdoc">size of data</div><divclass="ttdef"><b>Definition:</b> ht_dec.c:875</div></div>
<divclass="ttc"id="astructdec__mel_html"><divclass="ttname"><ahref="structdec__mel.html">dec_mel</a></div><divclass="ttdoc">MEL state structure for reading and decoding the MEL bitstream.</div><divclass="ttdef"><b>Definition:</b> ht_dec.c:138</div></div>
<divclass="ttc"id="astructfrwd__struct_html_a8192c054a57d917f42a6f6172eddf771"><divclass="ttname"><ahref="structfrwd__struct.html#a8192c054a57d917f42a6f6172eddf771">frwd_struct::X</a></div><divclass="ttdeci">OPJ_UINT32 X</div><divclass="ttdoc">0 or 0xFF, X's are inserted at end of bitstream</div><divclass="ttdef"><b>Definition:</b> ht_dec.c:876</div></div>
<divclass="ttc"id="astructfrwd__struct_html"><divclass="ttname"><ahref="structfrwd__struct.html">frwd_struct</a></div><divclass="ttdoc">State structure for reading and unstuffing of forward-growing bitstreams; these are: MagSgn and SPP b...</div><divclass="ttdef"><b>Definition:</b> ht_dec.c:870</div></div>
<divclass="ttc"id="aht__dec_8c_html_a7287bba8c0c05a2ceae8dbb4de5a9330"><divclass="ttname"><ahref="ht__dec_8c.html#a7287bba8c0c05a2ceae8dbb4de5a9330">mel_get_run</a></div><divclass="ttdeci">static INLINE int mel_get_run(dec_mel_t *melp)</div><divclass="ttdoc">Retrieves one run from dec_mel_t; if there are no runs stored MEL segment is decoded.</div><divclass="ttdef"><b>Definition:</b> ht_dec.c:344</div></div>
<divclass="ttc"id="aht__dec_8c_html_a3eaa584e684afdc02fc5dacd9f989552"><divclass="ttname"><ahref="ht__dec_8c.html#a3eaa584e684afdc02fc5dacd9f989552">rev_advance</a></div><divclass="ttdeci">static INLINE OPJ_UINT32 rev_advance(rev_struct_t *vlcp, OPJ_UINT32 num_bits)</div><divclass="ttdoc">Consumes num_bits from a rev_struct structure.</div><divclass="ttdef"><b>Definition:</b> ht_dec.c:523</div></div>
<divclass="ttc"id="athread_8h_html_a29120af1ce48d5ecd651795f2e427755"><divclass="ttname"><ahref="thread_8h.html#a29120af1ce48d5ecd651795f2e427755">opj_mutex_t</a></div><divclass="ttdeci">struct opj_mutex_t opj_mutex_t</div><divclass="ttdoc">Opaque type for a mutex.</div><divclass="ttdef"><b>Definition:</b> thread.h:52</div></div>
<divclass="ttc"id="astructopj__tcd__cblk__dec_html"><divclass="ttname"><ahref="structopj__tcd__cblk__dec.html">opj_tcd_cblk_dec</a></div><divclass="ttdoc">Code-block for decoding.</div><divclass="ttdef"><b>Definition:</b> tcd.h:120</div></div>
<divclass="ttc"id="aht__dec_8c_html_a528933a4ff904894de3292e6e45de267"><divclass="ttname"><ahref="ht__dec_8c.html#a528933a4ff904894de3292e6e45de267">mel_read</a></div><divclass="ttdeci">static INLINE void mel_read(dec_mel_t *melp)</div><divclass="ttdoc">Reads and unstuffs the MEL bitstream.</div><divclass="ttdef"><b>Definition:</b> ht_dec.c:165</div></div>
<divclass="ttc"id="aht__dec_8c_html_afa8ecf4d3e369b522242f01afe5063c8"><divclass="ttname"><ahref="ht__dec_8c.html#afa8ecf4d3e369b522242f01afe5063c8">rev_init</a></div><divclass="ttdeci">static INLINE void rev_init(rev_struct_t *vlcp, OPJ_UINT8 *data, int lcup, int scup)</div><divclass="ttdoc">Initiates the rev_struct_t structure and reads a few bytes to move the read address to multiple of 4.</div><divclass="ttdef"><b>Definition:</b> ht_dec.c:460</div></div>
<divclass="ttc"id="aht__dec_8c_html_a3d26aa74012757ab1b0a057389e34e86"><divclass="ttname"><ahref="ht__dec_8c.html#a3d26aa74012757ab1b0a057389e34e86">frwd_advance</a></div><divclass="ttdeci">static INLINE void frwd_advance(frwd_struct_t *msp, OPJ_UINT32 num_bits)</div><divclass="ttdoc">Consume num_bits bits from the bitstream of frwd_struct_t.</div><divclass="ttdef"><b>Definition:</b> ht_dec.c:992</div></div>
<divclass="ttc"id="astructrev__struct_html"><divclass="ttname"><ahref="structrev__struct.html">rev_struct</a></div><divclass="ttdoc">A structure for reading and unstuffing a segment that grows backward, such as VLC and MRP.</div><divclass="ttdef"><b>Definition:</b> ht_dec.c:361</div></div>
<divclass="ttc"id="aht__dec_8c_html_ae5a522982a535584dc1513a8d357b648"><divclass="ttname"><ahref="ht__dec_8c.html#ae5a522982a535584dc1513a8d357b648">only_cleanup_pass_is_decoded</a></div><divclass="ttdeci">static OPJ_BOOL only_cleanup_pass_is_decoded</div><divclass="ttdoc">Displays the error message for disabling the decoding of SPP and MRP passes.</div><divclass="ttdef"><b>Definition:</b> ht_dec.c:62</div></div>
<divclass="ttc"id="aht__dec_8c_html_ada72209ef411b7fc7946c3c02b29d388"><divclass="ttname"><ahref="ht__dec_8c.html#ada72209ef411b7fc7946c3c02b29d388">frwd_init</a></div><divclass="ttdeci">static INLINE void frwd_init(frwd_struct_t *msp, const OPJ_UINT8 *data, int size, OPJ_UINT32 X)</div><divclass="ttdoc">Initialize frwd_struct_t struct and reads some bytes.</div><divclass="ttdef"><b>Definition:</b> ht_dec.c:956</div></div>
<divclass="ttc"id="astructdec__mel_html_a9b99d3d3ab495fab81f1c84d5d73371f"><divclass="ttname"><ahref="structdec__mel.html#a9b99d3d3ab495fab81f1c84d5d73371f">dec_mel::data</a></div><divclass="ttdeci">OPJ_UINT8 * data</div><divclass="ttdoc">the address of data (or bitstream)</div><divclass="ttdef"><b>Definition:</b> ht_dec.c:140</div></div>
<divclass="ttc"id="astructfrwd__struct_html_a56cb2caf1214acf02f4d88a9fa404c91"><divclass="ttname"><ahref="structfrwd__struct.html#a56cb2caf1214acf02f4d88a9fa404c91">frwd_struct::bits</a></div><divclass="ttdeci">OPJ_UINT32 bits</div><divclass="ttdoc">number of bits stored in tmp</div><divclass="ttdef"><b>Definition:</b> ht_dec.c:873</div></div>
<divclass="ttc"id="aht__dec_8c_html_a5dcc93c10ed6b04d8f789c7c84fb4008"><divclass="ttname"><ahref="ht__dec_8c.html#a5dcc93c10ed6b04d8f789c7c84fb4008">population_count</a></div><divclass="ttdeci">static INLINE OPJ_UINT32 population_count(OPJ_UINT32 val)</div><divclass="ttdoc">Generates population count (i.e., the number of set bits)</div><divclass="ttdef"><b>Definition:</b> ht_dec.c:70</div></div>
<divclass="ttc"id="astructdec__mel_html_aae62438b8b30d543378681e11d772cf1"><divclass="ttname"><ahref="structdec__mel.html#aae62438b8b30d543378681e11d772cf1">dec_mel::size</a></div><divclass="ttdeci">int size</div><divclass="ttdoc">number of bytes in MEL code</div><divclass="ttdef"><b>Definition:</b> ht_dec.c:143</div></div>
<divclass="ttc"id="astructdec__mel_html_a497b51cabb561484b7e387f2b5b3849b"><divclass="ttname"><ahref="structdec__mel.html#a497b51cabb561484b7e387f2b5b3849b">dec_mel::unstuff</a></div><divclass="ttdeci">OPJ_BOOL unstuff</div><divclass="ttdoc">true if the next bit needs to be unstuffed</div><divclass="ttdef"><b>Definition:</b> ht_dec.c:144</div></div>
<divclass="ttc"id="aht__dec_8c_html_a8e1566cecb98cad92924d1fac5fdc900"><divclass="ttname"><ahref="ht__dec_8c.html#a8e1566cecb98cad92924d1fac5fdc900">opj_t1_ht_decode_cblk</a></div><divclass="ttdeci">OPJ_BOOL opj_t1_ht_decode_cblk(opj_t1_t *t1, opj_tcd_cblk_dec_t *cblk, OPJ_UINT32 orient, OPJ_UINT32 roishift, OPJ_UINT32 cblksty, opj_event_mgr_t *p_manager, opj_mutex_t *p_manager_mutex, OPJ_BOOL check_pterm)</div><divclass="ttdoc">Decodes one codeblock, processing the cleanup, siginificance propagation, and magnitude refinement pa...</div><divclass="ttdef"><b>Definition:</b> ht_dec.c:1096</div></div>
<divclass="ttc"id="agroup__vlc__decoding__tables__grp_html_gaad13d2ff6e8e0dcff2ebc3dfe6a3bb3a"><divclass="ttname"><ahref="group__vlc__decoding__tables__grp.html#gaad13d2ff6e8e0dcff2ebc3dfe6a3bb3a">vlc_tbl0</a></div><divclass="ttdeci">int vlc_tbl0[1024]</div><divclass="ttdoc">vlc_tbl0 contains decoding information for initial row of quads</div><divclass="ttdef"><b>Definition:</b> t1_ht_generate_luts.c:901</div></div>
<divclass="ttc"id="aht__dec_8c_html_a8589a38aee69f22e0bfdc7944e319447"><divclass="ttname"><ahref="ht__dec_8c.html#a8589a38aee69f22e0bfdc7944e319447">mel_decode</a></div><divclass="ttdeci">static INLINE void mel_decode(dec_mel_t *melp)</div><divclass="ttdoc">Decodes unstuffed MEL segment bits stored in tmp to runs.</div><divclass="ttdef"><b>Definition:</b> ht_dec.c:247</div></div>
<divclass="ttc"id="astructihdrbox__param_html_aa604b90fd6ffc3d82336cf80436d8b7d"><divclass="ttname"><ahref="structihdrbox__param.html#aa604b90fd6ffc3d82336cf80436d8b7d">ihdrbox_param::nc</a></div><divclass="ttdeci">Byte2_t nc</div><divclass="ttdoc">number of components</div><divclass="ttdef"><b>Definition:</b> ihdrbox_manager.h:42</div></div>