openjpeg/doxygen/openjpeg_8c.html

1894 lines
145 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.11"/>
<title>OpenJPEG: openjpeg.c File Reference</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.4.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.11 -->
<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 class="current"><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>Globals</span></a></li>
</ul>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_43e0a1f539e00dcfa1a6bc4d4fee4fc2.html">home</a></li><li class="navelem"><a class="el" href="dir_cb9b2b419d92b64f7cee83d8faf7a4ab.html">even</a></li><li class="navelem"><a class="el" href="dir_f75d9a0165d6564a1e04793ef847d41d.html">openjpeg</a></li><li class="navelem"><a class="el" href="dir_5f588d7ea139c1aae751d03c13a16064.html">openjpeg</a></li><li class="navelem"><a class="el" href="dir_378f732e812ef6cbaaae22e96a4fa79f.html">src</a></li><li class="navelem"><a class="el" href="dir_19dcb5713315405a27e1bde75a489a4c.html">lib</a></li><li class="navelem"><a class="el" href="dir_54e5bc4f0640fea590afaf04f4d9c88d.html">openjp2</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">openjpeg.c File Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><code>#include &quot;<a class="el" href="opj__includes_8h_source.html">opj_includes.h</a>&quot;</code><br />
</div><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a6b7606d660444e8f414aa6e2c148fa44"><td class="memItemLeft" align="right" valign="top"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="openjpeg_8c.html#a6b7606d660444e8f414aa6e2c148fa44">opj_set_info_handler</a> (<a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *p_codec, <a class="el" href="openjpeg_8h.html#aeb2e489c5b4386fed6eae3123217c7f0">opj_msg_callback</a> p_callback, void *p_user_data)</td></tr>
<tr class="memdesc:a6b7606d660444e8f414aa6e2c148fa44"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the info handler use by openjpeg. <a href="#a6b7606d660444e8f414aa6e2c148fa44">More...</a><br /></td></tr>
<tr class="separator:a6b7606d660444e8f414aa6e2c148fa44"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab460c38323da1140f66763aa419c404b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="openjpeg_8c.html#ab460c38323da1140f66763aa419c404b">opj_set_warning_handler</a> (<a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *p_codec, <a class="el" href="openjpeg_8h.html#aeb2e489c5b4386fed6eae3123217c7f0">opj_msg_callback</a> p_callback, void *p_user_data)</td></tr>
<tr class="memdesc:ab460c38323da1140f66763aa419c404b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the warning handler use by openjpeg. <a href="#ab460c38323da1140f66763aa419c404b">More...</a><br /></td></tr>
<tr class="separator:ab460c38323da1140f66763aa419c404b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0b847b8776315c6f654a6ad7c2d8af67"><td class="memItemLeft" align="right" valign="top"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="openjpeg_8c.html#a0b847b8776315c6f654a6ad7c2d8af67">opj_set_error_handler</a> (<a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *p_codec, <a class="el" href="openjpeg_8h.html#aeb2e489c5b4386fed6eae3123217c7f0">opj_msg_callback</a> p_callback, void *p_user_data)</td></tr>
<tr class="memdesc:a0b847b8776315c6f654a6ad7c2d8af67"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the error handler use by openjpeg. <a href="#a0b847b8776315c6f654a6ad7c2d8af67">More...</a><br /></td></tr>
<tr class="separator:a0b847b8776315c6f654a6ad7c2d8af67"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a746bb7f088f57fbf986cb373875f001b"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="openjpeg_8h.html#aba7397be054e36dc0284a6589736135e">OPJ_SIZE_T</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="openjpeg_8c.html#a746bb7f088f57fbf986cb373875f001b">opj_read_from_file</a> (void *p_buffer, <a class="el" href="openjpeg_8h.html#aba7397be054e36dc0284a6589736135e">OPJ_SIZE_T</a> p_nb_bytes, FILE *p_file)</td></tr>
<tr class="separator:a746bb7f088f57fbf986cb373875f001b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a12856d08877dbc3558a47a56553a8c8e"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="openjpeg_8h.html#ad915cf26c4c9cc10a75b2d9287dbbb5e">OPJ_UINT64</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="openjpeg_8c.html#a12856d08877dbc3558a47a56553a8c8e">opj_get_data_length_from_file</a> (FILE *p_file)</td></tr>
<tr class="separator:a12856d08877dbc3558a47a56553a8c8e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a533e097d761a58ae4a55addfde8b97cd"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="openjpeg_8h.html#aba7397be054e36dc0284a6589736135e">OPJ_SIZE_T</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="openjpeg_8c.html#a533e097d761a58ae4a55addfde8b97cd">opj_write_from_file</a> (void *p_buffer, <a class="el" href="openjpeg_8h.html#aba7397be054e36dc0284a6589736135e">OPJ_SIZE_T</a> p_nb_bytes, FILE *p_file)</td></tr>
<tr class="separator:a533e097d761a58ae4a55addfde8b97cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae8060b5a32b0a58fd0485a04f55de141"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="openjpeg_8h.html#a64948c8a524dee101c5a4d7293e6158c">OPJ_OFF_T</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="openjpeg_8c.html#ae8060b5a32b0a58fd0485a04f55de141">opj_skip_from_file</a> (<a class="el" href="openjpeg_8h.html#a64948c8a524dee101c5a4d7293e6158c">OPJ_OFF_T</a> p_nb_bytes, FILE *p_user_data)</td></tr>
<tr class="separator:ae8060b5a32b0a58fd0485a04f55de141"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3aab793d4767e2899acba18567bb38fa"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="openjpeg_8c.html#a3aab793d4767e2899acba18567bb38fa">opj_seek_from_file</a> (<a class="el" href="openjpeg_8h.html#a64948c8a524dee101c5a4d7293e6158c">OPJ_OFF_T</a> p_nb_bytes, FILE *p_user_data)</td></tr>
<tr class="separator:a3aab793d4767e2899acba18567bb38fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:affadae073896fc06f726834c4bcd6eaa"><td class="memItemLeft" align="right" valign="top">const char *<a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="openjpeg_8c.html#affadae073896fc06f726834c4bcd6eaa">opj_version</a> (void)</td></tr>
<tr class="separator:affadae073896fc06f726834c4bcd6eaa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab9b3cca67f964a3099a64729744084c8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *<a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="openjpeg_8c.html#ab9b3cca67f964a3099a64729744084c8">opj_create_decompress</a> (<a class="el" href="openjpeg_8h.html#ad1d5e1b8baab8a4d0950af90ae9a7f5d">OPJ_CODEC_FORMAT</a> p_format)</td></tr>
<tr class="memdesc:ab9b3cca67f964a3099a64729744084c8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a J2K/JP2 decompression structure. <a href="#ab9b3cca67f964a3099a64729744084c8">More...</a><br /></td></tr>
<tr class="separator:ab9b3cca67f964a3099a64729744084c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4404982cd554e2251772043ea12e5164"><td class="memItemLeft" align="right" valign="top">void <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="openjpeg_8c.html#a4404982cd554e2251772043ea12e5164">opj_set_default_decoder_parameters</a> (<a class="el" href="openjpeg_8h.html#a6b6650daf87a8d475f9a33f1744d8356">opj_dparameters_t</a> *parameters)</td></tr>
<tr class="memdesc:a4404982cd554e2251772043ea12e5164"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set decoding parameters to default values. <a href="#a4404982cd554e2251772043ea12e5164">More...</a><br /></td></tr>
<tr class="separator:a4404982cd554e2251772043ea12e5164"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7f9ce98db94c05a7ed01e84d3070084c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="openjpeg_8c.html#a7f9ce98db94c05a7ed01e84d3070084c">opj_codec_set_threads</a> (<a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *p_codec, int num_threads)</td></tr>
<tr class="memdesc:a7f9ce98db94c05a7ed01e84d3070084c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Allocates worker threads for the compressor/decompressor. <a href="#a7f9ce98db94c05a7ed01e84d3070084c">More...</a><br /></td></tr>
<tr class="separator:a7f9ce98db94c05a7ed01e84d3070084c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad8473386b576be935efe653b9773ba06"><td class="memItemLeft" align="right" valign="top"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="openjpeg_8c.html#ad8473386b576be935efe653b9773ba06">opj_setup_decoder</a> (<a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *p_codec, <a class="el" href="openjpeg_8h.html#a6b6650daf87a8d475f9a33f1744d8356">opj_dparameters_t</a> *parameters)</td></tr>
<tr class="memdesc:ad8473386b576be935efe653b9773ba06"><td class="mdescLeft">&#160;</td><td class="mdescRight">Setup the decoder with decompression parameters provided by the user and with the message handler provided by the user. <a href="#ad8473386b576be935efe653b9773ba06">More...</a><br /></td></tr>
<tr class="separator:ad8473386b576be935efe653b9773ba06"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aad24422789c9a57e5a62cae7892db4be"><td class="memItemLeft" align="right" valign="top"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="openjpeg_8c.html#aad24422789c9a57e5a62cae7892db4be">opj_read_header</a> (<a class="el" href="openjpeg_8h.html#adf594a74c6b6b194caadf7b49ba9a2cf">opj_stream_t</a> *p_stream, <a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *p_codec, <a class="el" href="openjpeg_8h.html#a5c557180c59d54a2f1d29e8639687aa4">opj_image_t</a> **p_image)</td></tr>
<tr class="memdesc:aad24422789c9a57e5a62cae7892db4be"><td class="mdescLeft">&#160;</td><td class="mdescRight">Decodes an image header. <a href="#aad24422789c9a57e5a62cae7892db4be">More...</a><br /></td></tr>
<tr class="separator:aad24422789c9a57e5a62cae7892db4be"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a30abe729d3c4e26acb1571b62860a796"><td class="memItemLeft" align="right" valign="top"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="openjpeg_8c.html#a30abe729d3c4e26acb1571b62860a796">opj_set_decoded_components</a> (<a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *p_codec, <a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> numcomps, const <a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> *comps_indices, <a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> apply_color_transforms)</td></tr>
<tr class="memdesc:a30abe729d3c4e26acb1571b62860a796"><td class="mdescLeft">&#160;</td><td class="mdescRight">Restrict the number of components to decode. <a href="#a30abe729d3c4e26acb1571b62860a796">More...</a><br /></td></tr>
<tr class="separator:a30abe729d3c4e26acb1571b62860a796"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af5b94be0890f895a5527eb3ca9abe2f1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="openjpeg_8c.html#af5b94be0890f895a5527eb3ca9abe2f1">opj_decode</a> (<a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *p_codec, <a class="el" href="openjpeg_8h.html#adf594a74c6b6b194caadf7b49ba9a2cf">opj_stream_t</a> *p_stream, <a class="el" href="openjpeg_8h.html#a5c557180c59d54a2f1d29e8639687aa4">opj_image_t</a> *p_image)</td></tr>
<tr class="memdesc:af5b94be0890f895a5527eb3ca9abe2f1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Decode an image from a JPEG-2000 codestream. <a href="#af5b94be0890f895a5527eb3ca9abe2f1">More...</a><br /></td></tr>
<tr class="separator:af5b94be0890f895a5527eb3ca9abe2f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aea476bddc65f8bf5b5b2bbbe41af7389"><td class="memItemLeft" align="right" valign="top"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="openjpeg_8c.html#aea476bddc65f8bf5b5b2bbbe41af7389">opj_set_decode_area</a> (<a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *p_codec, <a class="el" href="openjpeg_8h.html#a5c557180c59d54a2f1d29e8639687aa4">opj_image_t</a> *p_image, <a class="el" href="openjpeg_8h.html#a3cec91ef9e73677f0dbd60d4e42401b9">OPJ_INT32</a> p_start_x, <a class="el" href="openjpeg_8h.html#a3cec91ef9e73677f0dbd60d4e42401b9">OPJ_INT32</a> p_start_y, <a class="el" href="openjpeg_8h.html#a3cec91ef9e73677f0dbd60d4e42401b9">OPJ_INT32</a> p_end_x, <a class="el" href="openjpeg_8h.html#a3cec91ef9e73677f0dbd60d4e42401b9">OPJ_INT32</a> p_end_y)</td></tr>
<tr class="memdesc:aea476bddc65f8bf5b5b2bbbe41af7389"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the given area to be decoded. <a href="#aea476bddc65f8bf5b5b2bbbe41af7389">More...</a><br /></td></tr>
<tr class="separator:aea476bddc65f8bf5b5b2bbbe41af7389"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a563b0410755e72d90b5009ee6705be8f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="openjpeg_8c.html#a563b0410755e72d90b5009ee6705be8f">opj_read_tile_header</a> (<a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *p_codec, <a class="el" href="openjpeg_8h.html#adf594a74c6b6b194caadf7b49ba9a2cf">opj_stream_t</a> *p_stream, <a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> *p_tile_index, <a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> *p_data_size, <a class="el" href="openjpeg_8h.html#a3cec91ef9e73677f0dbd60d4e42401b9">OPJ_INT32</a> *p_tile_x0, <a class="el" href="openjpeg_8h.html#a3cec91ef9e73677f0dbd60d4e42401b9">OPJ_INT32</a> *p_tile_y0, <a class="el" href="openjpeg_8h.html#a3cec91ef9e73677f0dbd60d4e42401b9">OPJ_INT32</a> *p_tile_x1, <a class="el" href="openjpeg_8h.html#a3cec91ef9e73677f0dbd60d4e42401b9">OPJ_INT32</a> *p_tile_y1, <a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> *p_nb_comps, <a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> *p_should_go_on)</td></tr>
<tr class="memdesc:a563b0410755e72d90b5009ee6705be8f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a tile header. <a href="#a563b0410755e72d90b5009ee6705be8f">More...</a><br /></td></tr>
<tr class="separator:a563b0410755e72d90b5009ee6705be8f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a51ee03017de96207519ed6eed3d535de"><td class="memItemLeft" align="right" valign="top"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="openjpeg_8c.html#a51ee03017de96207519ed6eed3d535de">opj_decode_tile_data</a> (<a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *p_codec, <a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> p_tile_index, <a class="el" href="openjpeg_8h.html#a22de44e15bddae7edfacf4e9ac9bb199">OPJ_BYTE</a> *p_data, <a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> p_data_size, <a class="el" href="openjpeg_8h.html#adf594a74c6b6b194caadf7b49ba9a2cf">opj_stream_t</a> *p_stream)</td></tr>
<tr class="memdesc:a51ee03017de96207519ed6eed3d535de"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a tile data. <a href="#a51ee03017de96207519ed6eed3d535de">More...</a><br /></td></tr>
<tr class="separator:a51ee03017de96207519ed6eed3d535de"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1faee8ca7d674e7b027f382051ef15bf"><td class="memItemLeft" align="right" valign="top"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="openjpeg_8c.html#a1faee8ca7d674e7b027f382051ef15bf">opj_get_decoded_tile</a> (<a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *p_codec, <a class="el" href="openjpeg_8h.html#adf594a74c6b6b194caadf7b49ba9a2cf">opj_stream_t</a> *p_stream, <a class="el" href="openjpeg_8h.html#a5c557180c59d54a2f1d29e8639687aa4">opj_image_t</a> *p_image, <a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> tile_index)</td></tr>
<tr class="memdesc:a1faee8ca7d674e7b027f382051ef15bf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the decoded tile from the codec. <a href="#a1faee8ca7d674e7b027f382051ef15bf">More...</a><br /></td></tr>
<tr class="separator:a1faee8ca7d674e7b027f382051ef15bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0ca577ace088ef7efa44d8762222c353"><td class="memItemLeft" align="right" valign="top"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="openjpeg_8c.html#a0ca577ace088ef7efa44d8762222c353">opj_set_decoded_resolution_factor</a> (<a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *p_codec, <a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> res_factor)</td></tr>
<tr class="memdesc:a0ca577ace088ef7efa44d8762222c353"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the resolution factor of the decoded image. <a href="#a0ca577ace088ef7efa44d8762222c353">More...</a><br /></td></tr>
<tr class="separator:a0ca577ace088ef7efa44d8762222c353"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a725d3437b35ecec961d4fa712b818448"><td class="memItemLeft" align="right" valign="top"><a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *<a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="openjpeg_8c.html#a725d3437b35ecec961d4fa712b818448">opj_create_compress</a> (<a class="el" href="openjpeg_8h.html#ad1d5e1b8baab8a4d0950af90ae9a7f5d">OPJ_CODEC_FORMAT</a> p_format)</td></tr>
<tr class="memdesc:a725d3437b35ecec961d4fa712b818448"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a J2K/JP2 compression structure. <a href="#a725d3437b35ecec961d4fa712b818448">More...</a><br /></td></tr>
<tr class="separator:a725d3437b35ecec961d4fa712b818448"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a579b5a50da6517f9d7563489e8044298"><td class="memItemLeft" align="right" valign="top">void <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="openjpeg_8c.html#a579b5a50da6517f9d7563489e8044298">opj_set_default_encoder_parameters</a> (<a class="el" href="openjpeg_8h.html#a5c303dd5ddb702b9e6f82b8fbf69637d">opj_cparameters_t</a> *parameters)</td></tr>
<tr class="memdesc:a579b5a50da6517f9d7563489e8044298"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set encoding parameters to default values, that means : <a href="#a579b5a50da6517f9d7563489e8044298">More...</a><br /></td></tr>
<tr class="separator:a579b5a50da6517f9d7563489e8044298"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3e43761364ef5c038070074eeaea1475"><td class="memItemLeft" align="right" valign="top"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="openjpeg_8c.html#a3e43761364ef5c038070074eeaea1475">opj_setup_encoder</a> (<a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *p_codec, <a class="el" href="openjpeg_8h.html#a5c303dd5ddb702b9e6f82b8fbf69637d">opj_cparameters_t</a> *parameters, <a class="el" href="openjpeg_8h.html#a5c557180c59d54a2f1d29e8639687aa4">opj_image_t</a> *p_image)</td></tr>
<tr class="memdesc:a3e43761364ef5c038070074eeaea1475"><td class="mdescLeft">&#160;</td><td class="mdescRight">Setup the encoder parameters using the current image and using user parameters. <a href="#a3e43761364ef5c038070074eeaea1475">More...</a><br /></td></tr>
<tr class="separator:a3e43761364ef5c038070074eeaea1475"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8fec822dd650a82db457ff1aafbc9b2a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="openjpeg_8c.html#a8fec822dd650a82db457ff1aafbc9b2a">opj_encoder_set_extra_options</a> (<a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *p_codec, const char *const *options)</td></tr>
<tr class="memdesc:a8fec822dd650a82db457ff1aafbc9b2a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Specify extra options for the encoder. <a href="#a8fec822dd650a82db457ff1aafbc9b2a">More...</a><br /></td></tr>
<tr class="separator:a8fec822dd650a82db457ff1aafbc9b2a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a254b148aa82603b85b2c799dbafe50b3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="openjpeg_8c.html#a254b148aa82603b85b2c799dbafe50b3">opj_start_compress</a> (<a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *p_codec, <a class="el" href="openjpeg_8h.html#a5c557180c59d54a2f1d29e8639687aa4">opj_image_t</a> *p_image, <a class="el" href="openjpeg_8h.html#adf594a74c6b6b194caadf7b49ba9a2cf">opj_stream_t</a> *p_stream)</td></tr>
<tr class="memdesc:a254b148aa82603b85b2c799dbafe50b3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Start to compress the current image. <a href="#a254b148aa82603b85b2c799dbafe50b3">More...</a><br /></td></tr>
<tr class="separator:a254b148aa82603b85b2c799dbafe50b3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4b9e45ab903ff9f59fd6a1b6afb329ef"><td class="memItemLeft" align="right" valign="top"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="openjpeg_8c.html#a4b9e45ab903ff9f59fd6a1b6afb329ef">opj_encode</a> (<a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *p_info, <a class="el" href="openjpeg_8h.html#adf594a74c6b6b194caadf7b49ba9a2cf">opj_stream_t</a> *p_stream)</td></tr>
<tr class="memdesc:a4b9e45ab903ff9f59fd6a1b6afb329ef"><td class="mdescLeft">&#160;</td><td class="mdescRight">Encode an image into a JPEG-2000 codestream. <a href="#a4b9e45ab903ff9f59fd6a1b6afb329ef">More...</a><br /></td></tr>
<tr class="separator:a4b9e45ab903ff9f59fd6a1b6afb329ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a70f5e53b73716bfac20026d073f4d626"><td class="memItemLeft" align="right" valign="top"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="openjpeg_8c.html#a70f5e53b73716bfac20026d073f4d626">opj_end_compress</a> (<a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *p_codec, <a class="el" href="openjpeg_8h.html#adf594a74c6b6b194caadf7b49ba9a2cf">opj_stream_t</a> *p_stream)</td></tr>
<tr class="memdesc:a70f5e53b73716bfac20026d073f4d626"><td class="mdescLeft">&#160;</td><td class="mdescRight">End to compress the current image. <a href="#a70f5e53b73716bfac20026d073f4d626">More...</a><br /></td></tr>
<tr class="separator:a70f5e53b73716bfac20026d073f4d626"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2a9a4836a18cc832d8683508235c900d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="openjpeg_8c.html#a2a9a4836a18cc832d8683508235c900d">opj_end_decompress</a> (<a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *p_codec, <a class="el" href="openjpeg_8h.html#adf594a74c6b6b194caadf7b49ba9a2cf">opj_stream_t</a> *p_stream)</td></tr>
<tr class="memdesc:a2a9a4836a18cc832d8683508235c900d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Read after the codestream if necessary. <a href="#a2a9a4836a18cc832d8683508235c900d">More...</a><br /></td></tr>
<tr class="separator:a2a9a4836a18cc832d8683508235c900d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afe151054b10829ce8fc1e478710ca653"><td class="memItemLeft" align="right" valign="top"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="openjpeg_8c.html#afe151054b10829ce8fc1e478710ca653">opj_set_MCT</a> (<a class="el" href="openjpeg_8h.html#a5c303dd5ddb702b9e6f82b8fbf69637d">opj_cparameters_t</a> *parameters, <a class="el" href="openjpeg_8h.html#a62c71ae712322de0bef73cebae23fa04">OPJ_FLOAT32</a> *pEncodingMatrix, <a class="el" href="openjpeg_8h.html#a3cec91ef9e73677f0dbd60d4e42401b9">OPJ_INT32</a> *p_dc_shift, <a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> pNbComp)</td></tr>
<tr class="memdesc:afe151054b10829ce8fc1e478710ca653"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the MCT matrix to use. <a href="#afe151054b10829ce8fc1e478710ca653">More...</a><br /></td></tr>
<tr class="separator:afe151054b10829ce8fc1e478710ca653"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a721e564fa8b835232a139f62ff79a5f8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="openjpeg_8c.html#a721e564fa8b835232a139f62ff79a5f8">opj_write_tile</a> (<a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *p_codec, <a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> p_tile_index, <a class="el" href="openjpeg_8h.html#a22de44e15bddae7edfacf4e9ac9bb199">OPJ_BYTE</a> *p_data, <a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> p_data_size, <a class="el" href="openjpeg_8h.html#adf594a74c6b6b194caadf7b49ba9a2cf">opj_stream_t</a> *p_stream)</td></tr>
<tr class="memdesc:a721e564fa8b835232a139f62ff79a5f8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Writes a tile with the given data. <a href="#a721e564fa8b835232a139f62ff79a5f8">More...</a><br /></td></tr>
<tr class="separator:a721e564fa8b835232a139f62ff79a5f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab801406c7e356d798777e0052943e348"><td class="memItemLeft" align="right" valign="top">void <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="openjpeg_8c.html#ab801406c7e356d798777e0052943e348">opj_destroy_codec</a> (<a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *p_codec)</td></tr>
<tr class="memdesc:ab801406c7e356d798777e0052943e348"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destroy a decompressor handle. <a href="#ab801406c7e356d798777e0052943e348">More...</a><br /></td></tr>
<tr class="separator:ab801406c7e356d798777e0052943e348"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af838a81ec5fcf681a9d24349a8f49beb"><td class="memItemLeft" align="right" valign="top">void <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="openjpeg_8c.html#af838a81ec5fcf681a9d24349a8f49beb">opj_dump_codec</a> (<a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *p_codec, <a class="el" href="openjpeg_8h.html#a3cec91ef9e73677f0dbd60d4e42401b9">OPJ_INT32</a> info_flag, FILE *output_stream)</td></tr>
<tr class="memdesc:af838a81ec5fcf681a9d24349a8f49beb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Dump the codec information into the output stream. <a href="#af838a81ec5fcf681a9d24349a8f49beb">More...</a><br /></td></tr>
<tr class="separator:af838a81ec5fcf681a9d24349a8f49beb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab9ba1f7ddffb7dc03e21458edc1a2692"><td class="memItemLeft" align="right" valign="top"><a class="el" href="openjpeg_8h.html#a6450987526732e77d4477b02e466b89e">opj_codestream_info_v2_t</a> *<a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="openjpeg_8c.html#ab9ba1f7ddffb7dc03e21458edc1a2692">opj_get_cstr_info</a> (<a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *p_codec)</td></tr>
<tr class="memdesc:ab9ba1f7ddffb7dc03e21458edc1a2692"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the codestream information from the codec. <a href="#ab9ba1f7ddffb7dc03e21458edc1a2692">More...</a><br /></td></tr>
<tr class="separator:ab9ba1f7ddffb7dc03e21458edc1a2692"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a72148b67d4372989b22b53a413b5282c"><td class="memItemLeft" align="right" valign="top">void <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="openjpeg_8c.html#a72148b67d4372989b22b53a413b5282c">opj_destroy_cstr_info</a> (<a class="el" href="openjpeg_8h.html#a6450987526732e77d4477b02e466b89e">opj_codestream_info_v2_t</a> **cstr_info)</td></tr>
<tr class="memdesc:a72148b67d4372989b22b53a413b5282c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destroy Codestream information after compression or decompression. <a href="#a72148b67d4372989b22b53a413b5282c">More...</a><br /></td></tr>
<tr class="separator:a72148b67d4372989b22b53a413b5282c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a03adc519e2b10d297f0a994a246aad96"><td class="memItemLeft" align="right" valign="top"><a class="el" href="openjpeg_8h.html#ae966d4f546d13751ce3de7765de7fc53">opj_codestream_index_t</a> *<a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="openjpeg_8c.html#a03adc519e2b10d297f0a994a246aad96">opj_get_cstr_index</a> (<a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *p_codec)</td></tr>
<tr class="memdesc:a03adc519e2b10d297f0a994a246aad96"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the codestream index from the codec. <a href="#a03adc519e2b10d297f0a994a246aad96">More...</a><br /></td></tr>
<tr class="separator:a03adc519e2b10d297f0a994a246aad96"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2c41e06e986bc2929fbac61ac20ed793"><td class="memItemLeft" align="right" valign="top">void <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="openjpeg_8c.html#a2c41e06e986bc2929fbac61ac20ed793">opj_destroy_cstr_index</a> (<a class="el" href="openjpeg_8h.html#ae966d4f546d13751ce3de7765de7fc53">opj_codestream_index_t</a> **p_cstr_index)</td></tr>
<tr class="separator:a2c41e06e986bc2929fbac61ac20ed793"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acb36a77efa64f8332c27fc4ea6be066c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="openjpeg_8h.html#adf594a74c6b6b194caadf7b49ba9a2cf">opj_stream_t</a> *<a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="openjpeg_8c.html#acb36a77efa64f8332c27fc4ea6be066c">opj_stream_create_default_file_stream</a> (const char *fname, <a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> p_is_read_stream)</td></tr>
<tr class="memdesc:acb36a77efa64f8332c27fc4ea6be066c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a stream from a file identified with its filename with default parameters (helper function) <a href="#acb36a77efa64f8332c27fc4ea6be066c">More...</a><br /></td></tr>
<tr class="separator:acb36a77efa64f8332c27fc4ea6be066c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a872f13112894292a165f89ba4dd1078f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="openjpeg_8h.html#adf594a74c6b6b194caadf7b49ba9a2cf">opj_stream_t</a> *<a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="openjpeg_8c.html#a872f13112894292a165f89ba4dd1078f">opj_stream_create_file_stream</a> (const char *fname, <a class="el" href="openjpeg_8h.html#aba7397be054e36dc0284a6589736135e">OPJ_SIZE_T</a> p_size, <a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> p_is_read_stream)</td></tr>
<tr class="memdesc:a872f13112894292a165f89ba4dd1078f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a stream from a file identified with its filename with a specific buffer size. <a href="#a872f13112894292a165f89ba4dd1078f">More...</a><br /></td></tr>
<tr class="separator:a872f13112894292a165f89ba4dd1078f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3f03dd6d6224e93ff15a1d9234d948d5"><td class="memItemLeft" align="right" valign="top">void *<a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="openjpeg_8c.html#a3f03dd6d6224e93ff15a1d9234d948d5">opj_image_data_alloc</a> (<a class="el" href="openjpeg_8h.html#aba7397be054e36dc0284a6589736135e">OPJ_SIZE_T</a> size)</td></tr>
<tr class="memdesc:a3f03dd6d6224e93ff15a1d9234d948d5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Allocator for opj_image_t-&gt;comps[].data To be paired with opj_image_data_free. <a href="#a3f03dd6d6224e93ff15a1d9234d948d5">More...</a><br /></td></tr>
<tr class="separator:a3f03dd6d6224e93ff15a1d9234d948d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a53a2908ba063e90755b9449001194f88"><td class="memItemLeft" align="right" valign="top">void <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="openjpeg_8c.html#a53a2908ba063e90755b9449001194f88">opj_image_data_free</a> (void *ptr)</td></tr>
<tr class="memdesc:a53a2908ba063e90755b9449001194f88"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor for opj_image_t-&gt;comps[].data To be paired with opj_image_data_alloc. <a href="#a53a2908ba063e90755b9449001194f88">More...</a><br /></td></tr>
<tr class="separator:a53a2908ba063e90755b9449001194f88"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="a7f9ce98db94c05a7ed01e84d3070084c"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a> opj_codec_set_threads </td>
<td>(</td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *&#160;</td>
<td class="paramname"><em>p_codec</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>num_threads</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Allocates worker threads for the compressor/decompressor. </p>
<p>By default, only the main thread is used. If this function is not used, but the OPJ_NUM_THREADS environment variable is set, its value will be used to initialize the number of threads. The value can be either an integer number, or "ALL_CPUS". If OPJ_NUM_THREADS is set and this function is called, this function will override the behaviour of the environment variable.</p>
<p>This function must be called after <a class="el" href="openjpeg_8h.html#accb6a7b065e3808777237012011e6894" title="Setup the decoder with decompression parameters provided by the user and with the message handler pro...">opj_setup_decoder()</a> and before <a class="el" href="openjpeg_8h.html#ab7ccce9a2fb0cf5caa18d814e7f2947f" title="Decodes an image header. ">opj_read_header()</a> for the decoding side, or after <a class="el" href="openjpeg_8h.html#a9292a3d2e289e49cbb1df3a4976092cb" title="Setup the encoder parameters using the current image and using user parameters. ">opj_setup_encoder()</a> and before <a class="el" href="openjpeg_8h.html#afaaf1b749d982c1fe36749b0542b581b" title="Start to compress the current image. ">opj_start_compress()</a> for the encoding side.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">p_codec</td><td>decompressor or compressor handler </td></tr>
<tr><td class="paramname">num_threads</td><td>number of threads.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>OPJ_TRUE if the function is successful. </dd></dl>
<p>References <a class="el" href="structopj__codec__private.html#a59b2256a734fada5d6775b0e49ae8209">opj_codec_private::m_codec</a>, <a class="el" href="openjpeg_8h.html#ac672bfd7db39c609e828acb07a321964">OPJ_FALSE</a>, and <a class="el" href="structopj__codec__private.html#a29f011df297704faaded798ed269ef75">opj_codec_private::opj_set_threads</a>.</p>
</div>
</div>
<a class="anchor" id="a725d3437b35ecec961d4fa712b818448"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a>* <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a> opj_create_compress </td>
<td>(</td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#ad1d5e1b8baab8a4d0950af90ae9a7f5d">OPJ_CODEC_FORMAT</a>&#160;</td>
<td class="paramname"><em>format</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Creates a J2K/JP2 compression structure. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">format</td><td>Coder to select </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Returns a handle to a compressor if successful, returns NULL otherwise </dd></dl>
<p>References <a class="el" href="structopj__codec__private.html#a2b260d149ef24ac3bef21d80a804e34e">opj_codec_private::is_decompressor</a>, <a class="el" href="structopj__codec__private.html#a59b2256a734fada5d6775b0e49ae8209">opj_codec_private::m_codec</a>, <a class="el" href="structopj__codec__private.html#acad1e886fe9dd93863fe69edfd9bc17b">opj_codec_private::m_codec_data</a>, <a class="el" href="structopj__codec__private.html#ad2e8fc92edffc06808ec5ebe069b52ca">opj_codec_private::m_compression</a>, <a class="el" href="structopj__codec__private.html#a80c19f6fb64d1bd40b8593042730ea16">opj_codec_private::m_event_mgr</a>, <a class="el" href="group___m_i_s_c.html#ga7fe6dfcb0a623dbec30daf0f48624bf7">opj_calloc()</a>, <a class="el" href="openjpeg_8h.html#a1d857738cef754699ffb79ddff48efbfa8600e6e00112f983e5bb7d4daad836ab">OPJ_CODEC_J2K</a>, <a class="el" href="openjpeg_8h.html#a1d857738cef754699ffb79ddff48efbfa183df004ed4c4d055ccf2754721695b1">OPJ_CODEC_JP2</a>, <a class="el" href="openjpeg_8h.html#a1d857738cef754699ffb79ddff48efbfaed40a953dccdc1c753f594666b7a5e2b">OPJ_CODEC_JPT</a>, <a class="el" href="openjpeg_8h.html#a1d857738cef754699ffb79ddff48efbfa23ff243426ab0e3ffbd7a3b150d37720">OPJ_CODEC_UNKNOWN</a>, <a class="el" href="openjpeg_8h.html#ac672bfd7db39c609e828acb07a321964">OPJ_FALSE</a>, <a class="el" href="group___m_i_s_c.html#ga2bd00e2482ae36197631bde0665cfdfe">opj_free()</a>, <a class="el" href="group___j2_k.html#gad3c2b25f4d5a5f6fd4b442bc7210f6da">opj_j2k_create_compress()</a>, <a class="el" href="j2k_8c.html#a5c4508543b134e726107308b6463528e">opj_j2k_destroy()</a>, <a class="el" href="j2k_8c.html#a5222d47c1adcfb6d1e5ff354edd03e31">opj_j2k_encode()</a>, <a class="el" href="j2k_8c.html#a6b288ad7b1891bc2cdf593e8fa05cba6">opj_j2k_encoder_set_extra_options()</a>, <a class="el" href="j2k_8c.html#ab07092d5ac9dc3ce26a42705569179f7">opj_j2k_end_compress()</a>, <a class="el" href="group___j2_k.html#gabecf91393e6703f8be5006b19df1be22">opj_j2k_set_threads()</a>, <a class="el" href="group___j2_k.html#ga4a6561d0899d91b38099da38814cbe86">opj_j2k_setup_encoder()</a>, <a class="el" href="j2k_8c.html#accea6429e4f466250b095ee3fb94805c">opj_j2k_start_compress()</a>, <a class="el" href="j2k_8c.html#a74a0d7e52fefc21e50f5d644b69f4c44">opj_j2k_write_tile()</a>, <a class="el" href="group___j_p2.html#ga7d5389b7ba1706b96ec2adeb431a4735">opj_jp2_create()</a>, <a class="el" href="group___j_p2.html#ga1f7f8e8462c3bf6fdf6c3d4d75b8b3b7">opj_jp2_destroy()</a>, <a class="el" href="group___j_p2.html#ga87e42b697673c52a0b2bb2a241e56b06">opj_jp2_encode()</a>, <a class="el" href="group___j_p2.html#gaae0d471833bc207c9543ba5a7a777939">opj_jp2_encoder_set_extra_options()</a>, <a class="el" href="group___j_p2.html#gaceeec558d7ed87b1eec33edddf4a0205">opj_jp2_end_compress()</a>, <a class="el" href="group___j_p2.html#gabe8ec92a2ec7c342926f81a166b6b59c">opj_jp2_set_threads()</a>, <a class="el" href="group___j_p2.html#ga94441c4e15ce0c7adfc3610152e630f2">opj_jp2_setup_encoder()</a>, <a class="el" href="group___j_p2.html#ga241be56a14ecbf212a1cef44bc148f7b">opj_jp2_start_compress()</a>, <a class="el" href="group___j_p2.html#ga96e24b7a59738febb2f4e89750212021">opj_jp2_write_tile()</a>, <a class="el" href="group___e_v_e_n_t.html#ga8584de0db0bbc62b70d5cf5089165ef2">opj_set_default_event_handler()</a>, and <a class="el" href="structopj__codec__private.html#a29f011df297704faaded798ed269ef75">opj_codec_private::opj_set_threads</a>.</p>
</div>
</div>
<a class="anchor" id="ab9b3cca67f964a3099a64729744084c8"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a>* <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a> opj_create_decompress </td>
<td>(</td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#ad1d5e1b8baab8a4d0950af90ae9a7f5d">OPJ_CODEC_FORMAT</a>&#160;</td>
<td class="paramname"><em>format</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Creates a J2K/JP2 decompression structure. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">format</td><td>Decoder to select</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Returns a handle to a decompressor if successful, returns NULL otherwise </dd></dl>
<p>References <a class="el" href="structopj__codec__private.html#a2b260d149ef24ac3bef21d80a804e34e">opj_codec_private::is_decompressor</a>, <a class="el" href="j2k_8c.html#a064d4a5d20465438abe3ce707fd8ddf4">j2k_dump()</a>, <a class="el" href="j2k_8c.html#aab1aefcf177ba3726b29afec69993f6b">j2k_get_cstr_index()</a>, <a class="el" href="j2k_8c.html#a4e0a9f42c8240828e7293a064c143a24">j2k_get_cstr_info()</a>, <a class="el" href="group___j_p2.html#ga218687e233b685fbb1986b81849aeb61">jp2_dump()</a>, <a class="el" href="group___j_p2.html#ga195430af9298b6633ff7a2aa754e2d31">jp2_get_cstr_index()</a>, <a class="el" href="group___j_p2.html#ga5ed9ca90035485efa93e1e7dce474780">jp2_get_cstr_info()</a>, <a class="el" href="structopj__codec__private.html#a59b2256a734fada5d6775b0e49ae8209">opj_codec_private::m_codec</a>, <a class="el" href="structopj__codec__private.html#acad1e886fe9dd93863fe69edfd9bc17b">opj_codec_private::m_codec_data</a>, <a class="el" href="structopj__codec__private.html#a49ec8119cd2b16a366f706ad415dfbdd">opj_codec_private::m_decompression</a>, <a class="el" href="structopj__codec__private.html#a80c19f6fb64d1bd40b8593042730ea16">opj_codec_private::m_event_mgr</a>, <a class="el" href="group___m_i_s_c.html#ga7fe6dfcb0a623dbec30daf0f48624bf7">opj_calloc()</a>, <a class="el" href="openjpeg_8h.html#a1d857738cef754699ffb79ddff48efbfa8600e6e00112f983e5bb7d4daad836ab">OPJ_CODEC_J2K</a>, <a class="el" href="openjpeg_8h.html#a1d857738cef754699ffb79ddff48efbfa183df004ed4c4d055ccf2754721695b1">OPJ_CODEC_JP2</a>, <a class="el" href="openjpeg_8h.html#a1d857738cef754699ffb79ddff48efbfaed40a953dccdc1c753f594666b7a5e2b">OPJ_CODEC_JPT</a>, <a class="el" href="openjpeg_8h.html#a1d857738cef754699ffb79ddff48efbfa23ff243426ab0e3ffbd7a3b150d37720">OPJ_CODEC_UNKNOWN</a>, <a class="el" href="structopj__codec__private.html#aab9f27707ff821e374dde5beac90ca9f">opj_codec_private::opj_dump_codec</a>, <a class="el" href="group___m_i_s_c.html#ga2bd00e2482ae36197631bde0665cfdfe">opj_free()</a>, <a class="el" href="structopj__codec__private.html#a5c41b629596dcc3a8d02fa0255c3d02b">opj_codec_private::opj_get_codec_index</a>, <a class="el" href="structopj__codec__private.html#a13ebe213da45238c20de1bc2004c76bd">opj_codec_private::opj_get_codec_info</a>, <a class="el" href="j2k_8c.html#ad76bb79d4d63030222ebf3dbe3fe86cf">opj_j2k_create_decompress()</a>, <a class="el" href="j2k_8c.html#ad1113b1ae4202669379d2c6b680f371b">opj_j2k_decode()</a>, <a class="el" href="j2k_8c.html#a589edf58bf96de0a09b6104b6f5c13e8">opj_j2k_decode_tile()</a>, <a class="el" href="j2k_8c.html#a5c4508543b134e726107308b6463528e">opj_j2k_destroy()</a>, <a class="el" href="j2k_8c.html#a08f5f1ad9ec6ccb4fcf4d3af868bdc6b">opj_j2k_end_decompress()</a>, <a class="el" href="j2k_8c.html#a60371d3609364bf033e8c244599abf6f">opj_j2k_get_tile()</a>, <a class="el" href="j2k_8c.html#a34c49b256edcdbf036492dfa635284d7">opj_j2k_read_header()</a>, <a class="el" href="j2k_8c.html#a25b7b51949ceea33515984f1db2f594d">opj_j2k_read_tile_header()</a>, <a class="el" href="j2k_8c.html#ab4cb6916a495309faab2dd7cb587ccb8">opj_j2k_set_decode_area()</a>, <a class="el" href="j2k_8c.html#a8ad1ef335703dec30943a7dad14b8c3d">opj_j2k_set_decoded_components()</a>, <a class="el" href="j2k_8c.html#ad2c05f29bca659d072a13133993312f9">opj_j2k_set_decoded_resolution_factor()</a>, <a class="el" href="group___j2_k.html#gabecf91393e6703f8be5006b19df1be22">opj_j2k_set_threads()</a>, <a class="el" href="group___j2_k.html#gad278fa72d1461084c57c87a4276850cf">opj_j2k_setup_decoder()</a>, <a class="el" href="group___j_p2.html#ga7d5389b7ba1706b96ec2adeb431a4735">opj_jp2_create()</a>, <a class="el" href="group___j_p2.html#gaab973979e00628ffd8b3d99a402d85aa">opj_jp2_decode()</a>, <a class="el" href="group___j_p2.html#gaebe5923df2f64f3107658fefb4cb03e0">opj_jp2_decode_tile()</a>, <a class="el" href="group___j_p2.html#ga1f7f8e8462c3bf6fdf6c3d4d75b8b3b7">opj_jp2_destroy()</a>, <a class="el" href="group___j_p2.html#ga305f0351317cfc1ff0e0372fe0c64cdc">opj_jp2_end_decompress()</a>, <a class="el" href="group___j_p2.html#ga69b73f68c750cf70dc3b9836ed6ccfdc">opj_jp2_get_tile()</a>, <a class="el" href="group___j_p2.html#ga6bfb434e0d150ae769c7e8eb81117723">opj_jp2_read_header()</a>, <a class="el" href="group___j_p2.html#ga39499b02d05699c0bbd69412b24c6bd6">opj_jp2_read_tile_header()</a>, <a class="el" href="group___j_p2.html#ga3f8042c954d1cb5a29080555fa241e10">opj_jp2_set_decode_area()</a>, <a class="el" href="group___j_p2.html#ga1749007cebe7a0a2e547154446340f38">opj_jp2_set_decoded_components()</a>, <a class="el" href="group___j_p2.html#ga271ca4cacb9ec1d01623e1dc0762af22">opj_jp2_set_decoded_resolution_factor()</a>, <a class="el" href="group___j_p2.html#gabe8ec92a2ec7c342926f81a166b6b59c">opj_jp2_set_threads()</a>, <a class="el" href="group___j_p2.html#ga24d94a6f5cf51200b3366a77e25e547d">opj_jp2_setup_decoder()</a>, <a class="el" href="group___e_v_e_n_t.html#ga8584de0db0bbc62b70d5cf5089165ef2">opj_set_default_event_handler()</a>, <a class="el" href="structopj__codec__private.html#a29f011df297704faaded798ed269ef75">opj_codec_private::opj_set_threads</a>, and <a class="el" href="openjpeg_8h.html#a04830036d767cba56cbf5ae5bdc481d3">OPJ_TRUE</a>.</p>
<p>Referenced by <a class="el" href="jp2k__decoder_8h.html#a261799e8487d1b77fc04948abe701e5f">j2k_to_pnm()</a>.</p>
</div>
</div>
<a class="anchor" id="af5b94be0890f895a5527eb3ca9abe2f1"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a> opj_decode </td>
<td>(</td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *&#160;</td>
<td class="paramname"><em>p_decompressor</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#adf594a74c6b6b194caadf7b49ba9a2cf">opj_stream_t</a> *&#160;</td>
<td class="paramname"><em>p_stream</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a5c557180c59d54a2f1d29e8639687aa4">opj_image_t</a> *&#160;</td>
<td class="paramname"><em>p_image</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Decode an image from a JPEG-2000 codestream. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">p_decompressor</td><td>decompressor handle </td></tr>
<tr><td class="paramname">p_stream</td><td>Input buffer stream </td></tr>
<tr><td class="paramname">p_image</td><td>the decoded image </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true if success, otherwise false </dd></dl>
<p>References <a class="el" href="structopj__codec__private.html#a2b260d149ef24ac3bef21d80a804e34e">opj_codec_private::is_decompressor</a>, <a class="el" href="structopj__codec__private.html#a59b2256a734fada5d6775b0e49ae8209">opj_codec_private::m_codec</a>, <a class="el" href="structopj__codec__private.html#acad1e886fe9dd93863fe69edfd9bc17b">opj_codec_private::m_codec_data</a>, <a class="el" href="structopj__codec__private.html#a49ec8119cd2b16a366f706ad415dfbdd">opj_codec_private::m_decompression</a>, <a class="el" href="structopj__codec__private.html#a80c19f6fb64d1bd40b8593042730ea16">opj_codec_private::m_event_mgr</a>, and <a class="el" href="openjpeg_8h.html#ac672bfd7db39c609e828acb07a321964">OPJ_FALSE</a>.</p>
<p>Referenced by <a class="el" href="jp2k__decoder_8h.html#a261799e8487d1b77fc04948abe701e5f">j2k_to_pnm()</a>.</p>
</div>
</div>
<a class="anchor" id="a51ee03017de96207519ed6eed3d535de"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a> opj_decode_tile_data </td>
<td>(</td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *&#160;</td>
<td class="paramname"><em>p_codec</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_tile_index</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a22de44e15bddae7edfacf4e9ac9bb199">OPJ_BYTE</a> *&#160;</td>
<td class="paramname"><em>p_data</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_data_size</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#adf594a74c6b6b194caadf7b49ba9a2cf">opj_stream_t</a> *&#160;</td>
<td class="paramname"><em>p_stream</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Reads a tile data. </p>
<p>This function is compulsory and allows one to decode tile data. opj_read_tile_header should be called before. The user may need to refer to the image got by opj_read_header to understand the size being taken by the tile.</p>
<p>Note: <a class="el" href="openjpeg_8h.html#a8373b5a0732390d0400545e57674eceb" title="Reads a tile data. ">opj_decode_tile_data()</a> should not be used together with <a class="el" href="openjpeg_8h.html#af7aa8f8295d792db318dc214f692e679" title="Restrict the number of components to decode. ">opj_set_decoded_components()</a>.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">p_codec</td><td>the jpeg2000 codec. </td></tr>
<tr><td class="paramname">p_tile_index</td><td>the index of the tile being decoded, this should be the value set by opj_read_tile_header. </td></tr>
<tr><td class="paramname">p_data</td><td>pointer to a memory block that will hold the decoded data. </td></tr>
<tr><td class="paramname">p_data_size</td><td>size of p_data. p_data_size should be bigger or equal to the value set by opj_read_tile_header. </td></tr>
<tr><td class="paramname">p_stream</td><td>the stream to decode.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true if the data could be decoded. </dd></dl>
<p>References <a class="el" href="structopj__codec__private.html#a2b260d149ef24ac3bef21d80a804e34e">opj_codec_private::is_decompressor</a>, <a class="el" href="structopj__codec__private.html#a59b2256a734fada5d6775b0e49ae8209">opj_codec_private::m_codec</a>, <a class="el" href="structopj__codec__private.html#acad1e886fe9dd93863fe69edfd9bc17b">opj_codec_private::m_codec_data</a>, <a class="el" href="structopj__codec__private.html#a49ec8119cd2b16a366f706ad415dfbdd">opj_codec_private::m_decompression</a>, <a class="el" href="structopj__codec__private.html#a80c19f6fb64d1bd40b8593042730ea16">opj_codec_private::m_event_mgr</a>, and <a class="el" href="openjpeg_8h.html#ac672bfd7db39c609e828acb07a321964">OPJ_FALSE</a>.</p>
</div>
</div>
<a class="anchor" id="ab801406c7e356d798777e0052943e348"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a> opj_destroy_codec </td>
<td>(</td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *&#160;</td>
<td class="paramname"><em>p_codec</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Destroy a decompressor handle. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">p_codec</td><td>decompressor handle to destroy </td></tr>
</table>
</dd>
</dl>
<p>References <a class="el" href="structopj__codec__private.html#a2b260d149ef24ac3bef21d80a804e34e">opj_codec_private::is_decompressor</a>, <a class="el" href="structopj__codec__private.html#a59b2256a734fada5d6775b0e49ae8209">opj_codec_private::m_codec</a>, <a class="el" href="structopj__codec__private.html#acad1e886fe9dd93863fe69edfd9bc17b">opj_codec_private::m_codec_data</a>, <a class="el" href="structopj__codec__private.html#ad2e8fc92edffc06808ec5ebe069b52ca">opj_codec_private::m_compression</a>, <a class="el" href="structopj__codec__private.html#a49ec8119cd2b16a366f706ad415dfbdd">opj_codec_private::m_decompression</a>, and <a class="el" href="group___m_i_s_c.html#ga2bd00e2482ae36197631bde0665cfdfe">opj_free()</a>.</p>
<p>Referenced by <a class="el" href="jp2k__decoder_8h.html#a261799e8487d1b77fc04948abe701e5f">j2k_to_pnm()</a>.</p>
</div>
</div>
<a class="anchor" id="a2c41e06e986bc2929fbac61ac20ed793"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a> opj_destroy_cstr_index </td>
<td>(</td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#ae966d4f546d13751ce3de7765de7fc53">opj_codestream_index_t</a> **&#160;</td>
<td class="paramname"><em>p_cstr_index</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>References <a class="el" href="j2k_8c.html#a5836409e5b74b5a9b356e6f24cb9ade8">j2k_destroy_cstr_index()</a>.</p>
</div>
</div>
<a class="anchor" id="a72148b67d4372989b22b53a413b5282c"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a> opj_destroy_cstr_info </td>
<td>(</td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a6450987526732e77d4477b02e466b89e">opj_codestream_info_v2_t</a> **&#160;</td>
<td class="paramname"><em>cstr_info</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Destroy Codestream information after compression or decompression. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">cstr_info</td><td>Codestream information structure </td></tr>
</table>
</dd>
</dl>
<p>References <a class="el" href="group___m_i_s_c.html#ga2bd00e2482ae36197631bde0665cfdfe">opj_free()</a>.</p>
<p>Referenced by <a class="el" href="j2k_8h.html#a4e0a9f42c8240828e7293a064c143a24">j2k_get_cstr_info()</a>.</p>
</div>
</div>
<a class="anchor" id="af838a81ec5fcf681a9d24349a8f49beb"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a> opj_dump_codec </td>
<td>(</td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *&#160;</td>
<td class="paramname"><em>p_codec</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>info_flag</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">FILE *&#160;</td>
<td class="paramname"><em>output_stream</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Dump the codec information into the output stream. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">p_codec</td><td>the jpeg2000 codec. </td></tr>
<tr><td class="paramname">info_flag</td><td>type of information dump. </td></tr>
<tr><td class="paramname">output_stream</td><td>output stream where dump the information gotten from the codec. </td></tr>
</table>
</dd>
</dl>
<p>References <a class="el" href="structopj__codec__private.html#a59b2256a734fada5d6775b0e49ae8209">opj_codec_private::m_codec</a>, and <a class="el" href="structopj__codec__private.html#aab9f27707ff821e374dde5beac90ca9f">opj_codec_private::opj_dump_codec</a>.</p>
</div>
</div>
<a class="anchor" id="a4b9e45ab903ff9f59fd6a1b6afb329ef"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a> opj_encode </td>
<td>(</td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *&#160;</td>
<td class="paramname"><em>p_codec</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#adf594a74c6b6b194caadf7b49ba9a2cf">opj_stream_t</a> *&#160;</td>
<td class="paramname"><em>p_stream</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Encode an image into a JPEG-2000 codestream. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">p_codec</td><td>compressor handle </td></tr>
<tr><td class="paramname">p_stream</td><td>Output buffer stream</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Returns true if successful, returns false otherwise </dd></dl>
<p>References <a class="el" href="structopj__codec__private.html#a2b260d149ef24ac3bef21d80a804e34e">opj_codec_private::is_decompressor</a>, <a class="el" href="structopj__codec__private.html#a59b2256a734fada5d6775b0e49ae8209">opj_codec_private::m_codec</a>, <a class="el" href="structopj__codec__private.html#acad1e886fe9dd93863fe69edfd9bc17b">opj_codec_private::m_codec_data</a>, <a class="el" href="structopj__codec__private.html#ad2e8fc92edffc06808ec5ebe069b52ca">opj_codec_private::m_compression</a>, <a class="el" href="structopj__codec__private.html#a80c19f6fb64d1bd40b8593042730ea16">opj_codec_private::m_event_mgr</a>, and <a class="el" href="openjpeg_8h.html#ac672bfd7db39c609e828acb07a321964">OPJ_FALSE</a>.</p>
</div>
</div>
<a class="anchor" id="a8fec822dd650a82db457ff1aafbc9b2a"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a> opj_encoder_set_extra_options </td>
<td>(</td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *&#160;</td>
<td class="paramname"><em>p_codec</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *const *&#160;</td>
<td class="paramname"><em>p_options</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Specify extra options for the encoder. </p>
<p>This may be called after <a class="el" href="openjpeg_8h.html#a9292a3d2e289e49cbb1df3a4976092cb" title="Setup the encoder parameters using the current image and using user parameters. ">opj_setup_encoder()</a> and before <a class="el" href="openjpeg_8h.html#afaaf1b749d982c1fe36749b0542b581b" title="Start to compress the current image. ">opj_start_compress()</a></p>
<p>This is the way to add new options in a fully ABI compatible way, without extending the opj_cparameters_t structure.</p>
<p>Currently supported options are: </p><ul>
<li>
PLT=YES/NO. Defaults to NO. If set to YES, PLT marker segments, indicating the length of each packet in the tile-part header, will be written. Since 2.3.2 </li>
</ul>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">p_codec</td><td>Compressor handle </td></tr>
<tr><td class="paramname">p_options</td><td>Compression options. This should be a NULL terminated array of strings. Each string is of the form KEY=VALUE.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>OPJ_TRUE in case of success. </dd></dl>
<dl class="section since"><dt>Since</dt><dd>2.3.2 </dd></dl>
<p>References <a class="el" href="structopj__codec__private.html#a2b260d149ef24ac3bef21d80a804e34e">opj_codec_private::is_decompressor</a>, <a class="el" href="structopj__codec__private.html#a59b2256a734fada5d6775b0e49ae8209">opj_codec_private::m_codec</a>, <a class="el" href="structopj__codec__private.html#acad1e886fe9dd93863fe69edfd9bc17b">opj_codec_private::m_codec_data</a>, <a class="el" href="structopj__codec__private.html#ad2e8fc92edffc06808ec5ebe069b52ca">opj_codec_private::m_compression</a>, <a class="el" href="structopj__codec__private.html#a80c19f6fb64d1bd40b8593042730ea16">opj_codec_private::m_event_mgr</a>, and <a class="el" href="openjpeg_8h.html#ac672bfd7db39c609e828acb07a321964">OPJ_FALSE</a>.</p>
</div>
</div>
<a class="anchor" id="a70f5e53b73716bfac20026d073f4d626"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a> opj_end_compress </td>
<td>(</td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *&#160;</td>
<td class="paramname"><em>p_codec</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#adf594a74c6b6b194caadf7b49ba9a2cf">opj_stream_t</a> *&#160;</td>
<td class="paramname"><em>p_stream</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>End to compress the current image. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">p_codec</td><td>Compressor handle </td></tr>
<tr><td class="paramname">p_stream</td><td>Input stgream </td></tr>
</table>
</dd>
</dl>
<p>References <a class="el" href="structopj__codec__private.html#a2b260d149ef24ac3bef21d80a804e34e">opj_codec_private::is_decompressor</a>, <a class="el" href="structopj__codec__private.html#a59b2256a734fada5d6775b0e49ae8209">opj_codec_private::m_codec</a>, <a class="el" href="structopj__codec__private.html#acad1e886fe9dd93863fe69edfd9bc17b">opj_codec_private::m_codec_data</a>, <a class="el" href="structopj__codec__private.html#ad2e8fc92edffc06808ec5ebe069b52ca">opj_codec_private::m_compression</a>, <a class="el" href="structopj__codec__private.html#a80c19f6fb64d1bd40b8593042730ea16">opj_codec_private::m_event_mgr</a>, and <a class="el" href="openjpeg_8h.html#ac672bfd7db39c609e828acb07a321964">OPJ_FALSE</a>.</p>
</div>
</div>
<a class="anchor" id="a2a9a4836a18cc832d8683508235c900d"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a> opj_end_decompress </td>
<td>(</td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *&#160;</td>
<td class="paramname"><em>p_codec</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#adf594a74c6b6b194caadf7b49ba9a2cf">opj_stream_t</a> *&#160;</td>
<td class="paramname"><em>p_stream</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Read after the codestream if necessary. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">p_codec</td><td>the JPEG2000 codec to read. </td></tr>
<tr><td class="paramname">p_stream</td><td>the JPEG2000 stream. </td></tr>
</table>
</dd>
</dl>
<p>References <a class="el" href="structopj__codec__private.html#a2b260d149ef24ac3bef21d80a804e34e">opj_codec_private::is_decompressor</a>, <a class="el" href="structopj__codec__private.html#a59b2256a734fada5d6775b0e49ae8209">opj_codec_private::m_codec</a>, <a class="el" href="structopj__codec__private.html#acad1e886fe9dd93863fe69edfd9bc17b">opj_codec_private::m_codec_data</a>, <a class="el" href="structopj__codec__private.html#a49ec8119cd2b16a366f706ad415dfbdd">opj_codec_private::m_decompression</a>, <a class="el" href="structopj__codec__private.html#a80c19f6fb64d1bd40b8593042730ea16">opj_codec_private::m_event_mgr</a>, and <a class="el" href="openjpeg_8h.html#ac672bfd7db39c609e828acb07a321964">OPJ_FALSE</a>.</p>
<p>Referenced by <a class="el" href="jp2k__decoder_8h.html#a261799e8487d1b77fc04948abe701e5f">j2k_to_pnm()</a>.</p>
</div>
</div>
<a class="anchor" id="a03adc519e2b10d297f0a994a246aad96"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="openjpeg_8h.html#ae966d4f546d13751ce3de7765de7fc53">opj_codestream_index_t</a>* <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a> opj_get_cstr_index </td>
<td>(</td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *&#160;</td>
<td class="paramname"><em>p_codec</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the codestream index from the codec. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">p_codec</td><td>the jpeg2000 codec.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>a pointer to a codestream index structure. </dd></dl>
<p>References <a class="el" href="structopj__codec__private.html#a59b2256a734fada5d6775b0e49ae8209">opj_codec_private::m_codec</a>, and <a class="el" href="structopj__codec__private.html#a5c41b629596dcc3a8d02fa0255c3d02b">opj_codec_private::opj_get_codec_index</a>.</p>
</div>
</div>
<a class="anchor" id="ab9ba1f7ddffb7dc03e21458edc1a2692"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="openjpeg_8h.html#a6450987526732e77d4477b02e466b89e">opj_codestream_info_v2_t</a>* <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a> opj_get_cstr_info </td>
<td>(</td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *&#160;</td>
<td class="paramname"><em>p_codec</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the codestream information from the codec. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">p_codec</td><td>the jpeg2000 codec.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>a pointer to a codestream information structure. </dd></dl>
<p>References <a class="el" href="structopj__codec__private.html#a59b2256a734fada5d6775b0e49ae8209">opj_codec_private::m_codec</a>, and <a class="el" href="structopj__codec__private.html#a13ebe213da45238c20de1bc2004c76bd">opj_codec_private::opj_get_codec_info</a>.</p>
</div>
</div>
<a class="anchor" id="a12856d08877dbc3558a47a56553a8c8e"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static <a class="el" href="openjpeg_8h.html#ad915cf26c4c9cc10a75b2d9287dbbb5e">OPJ_UINT64</a> opj_get_data_length_from_file </td>
<td>(</td>
<td class="paramtype">FILE *&#160;</td>
<td class="paramname"><em>p_file</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>References <a class="el" href="opj__includes_8h.html#a66051c67bcebedb8a341f0cccee37e1b">OPJ_FSEEK</a>, and <a class="el" href="opj__includes_8h.html#af749884570cfedfbcae971535eb31be2">OPJ_FTELL</a>.</p>
<p>Referenced by <a class="el" href="openjpeg_8h.html#a6d339df3cc8521962a1c03ed421f140a">opj_stream_create_file_stream()</a>.</p>
</div>
</div>
<a class="anchor" id="a1faee8ca7d674e7b027f382051ef15bf"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a> opj_get_decoded_tile </td>
<td>(</td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *&#160;</td>
<td class="paramname"><em>p_codec</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#adf594a74c6b6b194caadf7b49ba9a2cf">opj_stream_t</a> *&#160;</td>
<td class="paramname"><em>p_stream</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a5c557180c59d54a2f1d29e8639687aa4">opj_image_t</a> *&#160;</td>
<td class="paramname"><em>p_image</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>tile_index</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the decoded tile from the codec. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">p_codec</td><td>the jpeg2000 codec. </td></tr>
<tr><td class="paramname">p_stream</td><td>input streamm </td></tr>
<tr><td class="paramname">p_image</td><td>output image </td></tr>
<tr><td class="paramname">tile_index</td><td>index of the tile which will be decode</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true if success, otherwise false </dd></dl>
<p>References <a class="el" href="structopj__codec__private.html#a2b260d149ef24ac3bef21d80a804e34e">opj_codec_private::is_decompressor</a>, <a class="el" href="structopj__codec__private.html#a59b2256a734fada5d6775b0e49ae8209">opj_codec_private::m_codec</a>, <a class="el" href="structopj__codec__private.html#acad1e886fe9dd93863fe69edfd9bc17b">opj_codec_private::m_codec_data</a>, <a class="el" href="structopj__codec__private.html#a49ec8119cd2b16a366f706ad415dfbdd">opj_codec_private::m_decompression</a>, <a class="el" href="structopj__codec__private.html#a80c19f6fb64d1bd40b8593042730ea16">opj_codec_private::m_event_mgr</a>, and <a class="el" href="openjpeg_8h.html#ac672bfd7db39c609e828acb07a321964">OPJ_FALSE</a>.</p>
</div>
</div>
<a class="anchor" id="a3f03dd6d6224e93ff15a1d9234d948d5"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void* <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a> opj_image_data_alloc </td>
<td>(</td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#aba7397be054e36dc0284a6589736135e">OPJ_SIZE_T</a>&#160;</td>
<td class="paramname"><em>size</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Allocator for opj_image_t-&gt;comps[].data To be paired with opj_image_data_free. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">size</td><td>number of bytes to allocate</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>a new pointer if successful, NULL otherwise. </dd></dl>
<dl class="section since"><dt>Since</dt><dd>2.2.0 </dd></dl>
<p>References <a class="el" href="group___m_i_s_c.html#ga4418db34754a5b9ac5a79fece518c601">opj_aligned_malloc()</a>.</p>
<p>Referenced by <a class="el" href="group___t_c_d.html#gaec7d7a69871d1a8a26b3b8ac8265edf4">opj_alloc_tile_component_data()</a>, <a class="el" href="openjpeg_8h.html#af168cf4a4295433c8c33610bac614553">opj_image_create()</a>, <a class="el" href="group___j2_k.html#ga8e1a7d063d261020d4d8984cb2320971">opj_j2k_update_image_data()</a>, <a class="el" href="group___j_p2.html#ga8c6a6b30b72a7814f8caf2a95aed9e14">opj_jp2_apply_pclr()</a>, and <a class="el" href="group___t_c_d.html#gad5a64bbb748b2c76bd41ea66715fa897">opj_tcd_decode_tile()</a>.</p>
</div>
</div>
<a class="anchor" id="a53a2908ba063e90755b9449001194f88"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a> opj_image_data_free </td>
<td>(</td>
<td class="paramtype">void *&#160;</td>
<td class="paramname"><em>ptr</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Destructor for opj_image_t-&gt;comps[].data To be paired with opj_image_data_alloc. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">ptr</td><td>Pointer to free</td></tr>
</table>
</dd>
</dl>
<dl class="section since"><dt>Since</dt><dd>2.2.0 </dd></dl>
<p>References <a class="el" href="group___m_i_s_c.html#gaefeccfbb22ba64c00f94f7f66fc97126">opj_aligned_free()</a>.</p>
<p>Referenced by <a class="el" href="group___t_c_d.html#gaec7d7a69871d1a8a26b3b8ac8265edf4">opj_alloc_tile_component_data()</a>, <a class="el" href="group___i_m_a_g_e.html#ga3802de36855e5331f4d6c04bc1b732a3">opj_copy_image_header()</a>, <a class="el" href="openjpeg_8h.html#adcef66fb58906cc2e6739ad8fe58ba28">opj_image_destroy()</a>, <a class="el" href="group___j2_k.html#ga7b5ed63aa196941746a348042a55dda3">opj_j2k_decode_tiles()</a>, <a class="el" href="j2k_8h.html#a60371d3609364bf033e8c244599abf6f">opj_j2k_get_tile()</a>, <a class="el" href="j2k_8c.html#a358ce63afe87a1bfad2787689a4021f4">opj_j2k_move_data_from_codec_to_output_image()</a>, <a class="el" href="group___j_p2.html#ga8c6a6b30b72a7814f8caf2a95aed9e14">opj_jp2_apply_pclr()</a>, <a class="el" href="group___t_c_d.html#gad5a64bbb748b2c76bd41ea66715fa897">opj_tcd_decode_tile()</a>, <a class="el" href="tcd_8c.html#a0df6e3c59cbb93696bab54a688e2ead8">opj_tcd_free_tile()</a>, and <a class="el" href="tcd_8c.html#a0e4d491f4d95e89b9f113664431faffc">opj_tcd_init_tile()</a>.</p>
</div>
</div>
<a class="anchor" id="a746bb7f088f57fbf986cb373875f001b"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static <a class="el" href="openjpeg_8h.html#aba7397be054e36dc0284a6589736135e">OPJ_SIZE_T</a> opj_read_from_file </td>
<td>(</td>
<td class="paramtype">void *&#160;</td>
<td class="paramname"><em>p_buffer</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#aba7397be054e36dc0284a6589736135e">OPJ_SIZE_T</a>&#160;</td>
<td class="paramname"><em>p_nb_bytes</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">FILE *&#160;</td>
<td class="paramname"><em>p_file</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Referenced by <a class="el" href="openjpeg_8h.html#a6d339df3cc8521962a1c03ed421f140a">opj_stream_create_file_stream()</a>.</p>
</div>
</div>
<a class="anchor" id="aad24422789c9a57e5a62cae7892db4be"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a> opj_read_header </td>
<td>(</td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#adf594a74c6b6b194caadf7b49ba9a2cf">opj_stream_t</a> *&#160;</td>
<td class="paramname"><em>p_stream</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *&#160;</td>
<td class="paramname"><em>p_codec</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a5c557180c59d54a2f1d29e8639687aa4">opj_image_t</a> **&#160;</td>
<td class="paramname"><em>p_image</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Decodes an image header. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">p_stream</td><td>the jpeg2000 stream. </td></tr>
<tr><td class="paramname">p_codec</td><td>the jpeg2000 codec to read. </td></tr>
<tr><td class="paramname">p_image</td><td>the image structure initialized with the characteristics of encoded image.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true if the main header of the codestream and the JP2 header is correctly read. </dd></dl>
<p>References <a class="el" href="event_8h.html#a7323671f4df0a721ae02d610b1269ab9">EVT_ERROR</a>, <a class="el" href="structopj__codec__private.html#a2b260d149ef24ac3bef21d80a804e34e">opj_codec_private::is_decompressor</a>, <a class="el" href="structopj__codec__private.html#a59b2256a734fada5d6775b0e49ae8209">opj_codec_private::m_codec</a>, <a class="el" href="structopj__codec__private.html#acad1e886fe9dd93863fe69edfd9bc17b">opj_codec_private::m_codec_data</a>, <a class="el" href="structopj__codec__private.html#a49ec8119cd2b16a366f706ad415dfbdd">opj_codec_private::m_decompression</a>, <a class="el" href="structopj__codec__private.html#a80c19f6fb64d1bd40b8593042730ea16">opj_codec_private::m_event_mgr</a>, <a class="el" href="group___e_v_e_n_t.html#ga87d9d4bdfd203ccd8a7522d6f197a3b7">opj_event_msg()</a>, and <a class="el" href="openjpeg_8h.html#ac672bfd7db39c609e828acb07a321964">OPJ_FALSE</a>.</p>
<p>Referenced by <a class="el" href="jp2k__decoder_8h.html#a261799e8487d1b77fc04948abe701e5f">j2k_to_pnm()</a>.</p>
</div>
</div>
<a class="anchor" id="a563b0410755e72d90b5009ee6705be8f"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a> opj_read_tile_header </td>
<td>(</td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *&#160;</td>
<td class="paramname"><em>p_codec</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#adf594a74c6b6b194caadf7b49ba9a2cf">opj_stream_t</a> *&#160;</td>
<td class="paramname"><em>p_stream</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_tile_index</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_data_size</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>p_tile_x0</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>p_tile_y0</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>p_tile_x1</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>p_tile_y1</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_nb_comps</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> *&#160;</td>
<td class="paramname"><em>p_should_go_on</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Reads a tile header. </p>
<p>This function is compulsory and allows one to know the size of the tile that will be decoded. The user may need to refer to the image got by opj_read_header to understand the size being taken by the tile.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">p_codec</td><td>the jpeg2000 codec. </td></tr>
<tr><td class="paramname">p_tile_index</td><td>pointer to a value that will hold the index of the tile being decoded, in case of success. </td></tr>
<tr><td class="paramname">p_data_size</td><td>pointer to a value that will hold the maximum size of the decoded data, in case of success. In case of truncated codestreams, the actual number of bytes decoded may be lower. The computation of the size is the same as depicted in opj_write_tile. </td></tr>
<tr><td class="paramname">p_tile_x0</td><td>pointer to a value that will hold the x0 pos of the tile (in the image). </td></tr>
<tr><td class="paramname">p_tile_y0</td><td>pointer to a value that will hold the y0 pos of the tile (in the image). </td></tr>
<tr><td class="paramname">p_tile_x1</td><td>pointer to a value that will hold the x1 pos of the tile (in the image). </td></tr>
<tr><td class="paramname">p_tile_y1</td><td>pointer to a value that will hold the y1 pos of the tile (in the image). </td></tr>
<tr><td class="paramname">p_nb_comps</td><td>pointer to a value that will hold the number of components in the tile. </td></tr>
<tr><td class="paramname">p_should_go_on</td><td>pointer to a boolean that will hold the fact that the decoding should go on. In case the codestream is over at the time of the call, the value will be set to false. The user should then stop the decoding. </td></tr>
<tr><td class="paramname">p_stream</td><td>the stream to decode. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true if the tile header could be decoded. In case the decoding should end, the returned value is still true. returning false may be the result of a shortage of memory or an internal error. </dd></dl>
<p>References <a class="el" href="structopj__codec__private.html#a2b260d149ef24ac3bef21d80a804e34e">opj_codec_private::is_decompressor</a>, <a class="el" href="structopj__codec__private.html#a59b2256a734fada5d6775b0e49ae8209">opj_codec_private::m_codec</a>, <a class="el" href="structopj__codec__private.html#acad1e886fe9dd93863fe69edfd9bc17b">opj_codec_private::m_codec_data</a>, <a class="el" href="structopj__codec__private.html#a49ec8119cd2b16a366f706ad415dfbdd">opj_codec_private::m_decompression</a>, <a class="el" href="structopj__codec__private.html#a80c19f6fb64d1bd40b8593042730ea16">opj_codec_private::m_event_mgr</a>, and <a class="el" href="openjpeg_8h.html#ac672bfd7db39c609e828acb07a321964">OPJ_FALSE</a>.</p>
</div>
</div>
<a class="anchor" id="a3aab793d4767e2899acba18567bb38fa"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static <a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> opj_seek_from_file </td>
<td>(</td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a64948c8a524dee101c5a4d7293e6158c">OPJ_OFF_T</a>&#160;</td>
<td class="paramname"><em>p_nb_bytes</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">FILE *&#160;</td>
<td class="paramname"><em>p_user_data</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>References <a class="el" href="openjpeg_8h.html#a802696e43e0ad059cfb3310cb5b073bb">OPJ_ARG_NOT_USED</a>, <a class="el" href="openjpeg_8h.html#ac672bfd7db39c609e828acb07a321964">OPJ_FALSE</a>, <a class="el" href="opj__includes_8h.html#a66051c67bcebedb8a341f0cccee37e1b">OPJ_FSEEK</a>, and <a class="el" href="openjpeg_8h.html#a04830036d767cba56cbf5ae5bdc481d3">OPJ_TRUE</a>.</p>
<p>Referenced by <a class="el" href="openjpeg_8h.html#a6d339df3cc8521962a1c03ed421f140a">opj_stream_create_file_stream()</a>.</p>
</div>
</div>
<a class="anchor" id="aea476bddc65f8bf5b5b2bbbe41af7389"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a> opj_set_decode_area </td>
<td>(</td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *&#160;</td>
<td class="paramname"><em>p_codec</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a5c557180c59d54a2f1d29e8639687aa4">opj_image_t</a> *&#160;</td>
<td class="paramname"><em>p_image</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>p_start_x</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>p_start_y</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>p_end_x</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>p_end_y</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sets the given area to be decoded. </p>
<p>This function should be called right after opj_read_header and before any tile header reading.</p>
<p>The coordinates passed to this function should be expressed in the reference grid, that is to say at the highest resolution level, even if requesting the image at lower resolution levels.</p>
<p>Generally <a class="el" href="openjpeg_8h.html#a29648f3323808658b11710fc5a7cfa89" title="Sets the given area to be decoded. ">opj_set_decode_area()</a> should be followed by <a class="el" href="openjpeg_8h.html#a5d8f796e2757145918bb630ac37fb349" title="Decode an image from a JPEG-2000 codestream. ">opj_decode()</a>, and the codec cannot be re-used. In the particular case of an image made of a single tile, several sequences of calls to opoj_set_decode_area() and <a class="el" href="openjpeg_8h.html#a5d8f796e2757145918bb630ac37fb349" title="Decode an image from a JPEG-2000 codestream. ">opj_decode()</a> are allowed, and will bring performance improvements when reading an image by chunks.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">p_codec</td><td>the jpeg2000 codec. </td></tr>
<tr><td class="paramname">p_image</td><td>the decoded image previously set by opj_read_header </td></tr>
<tr><td class="paramname">p_start_x</td><td>the left position of the rectangle to decode (in image coordinates). </td></tr>
<tr><td class="paramname">p_end_x</td><td>the right position of the rectangle to decode (in image coordinates). </td></tr>
<tr><td class="paramname">p_start_y</td><td>the up position of the rectangle to decode (in image coordinates). </td></tr>
<tr><td class="paramname">p_end_y</td><td>the bottom position of the rectangle to decode (in image coordinates).</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true if the area could be set. </dd></dl>
<p>References <a class="el" href="structopj__codec__private.html#a2b260d149ef24ac3bef21d80a804e34e">opj_codec_private::is_decompressor</a>, <a class="el" href="structopj__codec__private.html#a59b2256a734fada5d6775b0e49ae8209">opj_codec_private::m_codec</a>, <a class="el" href="structopj__codec__private.html#acad1e886fe9dd93863fe69edfd9bc17b">opj_codec_private::m_codec_data</a>, <a class="el" href="structopj__codec__private.html#a49ec8119cd2b16a366f706ad415dfbdd">opj_codec_private::m_decompression</a>, <a class="el" href="structopj__codec__private.html#a80c19f6fb64d1bd40b8593042730ea16">opj_codec_private::m_event_mgr</a>, and <a class="el" href="openjpeg_8h.html#ac672bfd7db39c609e828acb07a321964">OPJ_FALSE</a>.</p>
<p>Referenced by <a class="el" href="jp2k__decoder_8h.html#a261799e8487d1b77fc04948abe701e5f">j2k_to_pnm()</a>.</p>
</div>
</div>
<a class="anchor" id="a30abe729d3c4e26acb1571b62860a796"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a> opj_set_decoded_components </td>
<td>(</td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *&#160;</td>
<td class="paramname"><em>p_codec</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>numcomps</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> *&#160;</td>
<td class="paramname"><em>comps_indices</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a>&#160;</td>
<td class="paramname"><em>apply_color_transforms</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Restrict the number of components to decode. </p>
<p>This function should be called after <a class="el" href="openjpeg_8h.html#ab7ccce9a2fb0cf5caa18d814e7f2947f" title="Decodes an image header. ">opj_read_header()</a>.</p>
<p>This function enables to restrict the set of decoded components to the specified indices. Note that the current implementation (apply_color_transforms == OPJ_FALSE) is such that neither the multi-component transform at codestream level, nor JP2 channel transformations will be applied. Consequently the indices are relative to the codestream.</p>
<p>Note: <a class="el" href="openjpeg_8h.html#a8373b5a0732390d0400545e57674eceb" title="Reads a tile data. ">opj_decode_tile_data()</a> should not be used together with <a class="el" href="openjpeg_8h.html#af7aa8f8295d792db318dc214f692e679" title="Restrict the number of components to decode. ">opj_set_decoded_components()</a>.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">p_codec</td><td>the jpeg2000 codec to read. </td></tr>
<tr><td class="paramname">numcomps</td><td>Size of the comps_indices array. </td></tr>
<tr><td class="paramname">comps_indices</td><td>Array of numcomps values representing the indices of the components to decode (relative to the codestream, starting at 0) </td></tr>
<tr><td class="paramname">apply_color_transforms</td><td>Whether multi-component transform at codestream level or JP2 channel transformations should be applied. Currently this parameter should be set to OPJ_FALSE. Setting it to OPJ_TRUE will result in an error.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>OPJ_TRUE in case of success. </dd></dl>
<p>References <a class="el" href="event_8h.html#a7323671f4df0a721ae02d610b1269ab9">EVT_ERROR</a>, <a class="el" href="structopj__codec__private.html#a2b260d149ef24ac3bef21d80a804e34e">opj_codec_private::is_decompressor</a>, <a class="el" href="structopj__codec__private.html#a59b2256a734fada5d6775b0e49ae8209">opj_codec_private::m_codec</a>, <a class="el" href="structopj__codec__private.html#acad1e886fe9dd93863fe69edfd9bc17b">opj_codec_private::m_codec_data</a>, <a class="el" href="structopj__codec__private.html#a49ec8119cd2b16a366f706ad415dfbdd">opj_codec_private::m_decompression</a>, <a class="el" href="structopj__codec__private.html#a80c19f6fb64d1bd40b8593042730ea16">opj_codec_private::m_event_mgr</a>, <a class="el" href="group___e_v_e_n_t.html#ga87d9d4bdfd203ccd8a7522d6f197a3b7">opj_event_msg()</a>, and <a class="el" href="openjpeg_8h.html#ac672bfd7db39c609e828acb07a321964">OPJ_FALSE</a>.</p>
</div>
</div>
<a class="anchor" id="a0ca577ace088ef7efa44d8762222c353"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a> opj_set_decoded_resolution_factor </td>
<td>(</td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *&#160;</td>
<td class="paramname"><em>p_codec</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>res_factor</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the resolution factor of the decoded image. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">p_codec</td><td>the jpeg2000 codec. </td></tr>
<tr><td class="paramname">res_factor</td><td>resolution factor to set</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true if success, otherwise false </dd></dl>
<p>References <a class="el" href="structopj__codec__private.html#a59b2256a734fada5d6775b0e49ae8209">opj_codec_private::m_codec</a>, <a class="el" href="structopj__codec__private.html#acad1e886fe9dd93863fe69edfd9bc17b">opj_codec_private::m_codec_data</a>, <a class="el" href="structopj__codec__private.html#a49ec8119cd2b16a366f706ad415dfbdd">opj_codec_private::m_decompression</a>, <a class="el" href="structopj__codec__private.html#a80c19f6fb64d1bd40b8593042730ea16">opj_codec_private::m_event_mgr</a>, and <a class="el" href="openjpeg_8h.html#ac672bfd7db39c609e828acb07a321964">OPJ_FALSE</a>.</p>
</div>
</div>
<a class="anchor" id="a4404982cd554e2251772043ea12e5164"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a> opj_set_default_decoder_parameters </td>
<td>(</td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a6b6650daf87a8d475f9a33f1744d8356">opj_dparameters_t</a> *&#160;</td>
<td class="paramname"><em>parameters</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Set decoding parameters to default values. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">parameters</td><td>Decompression parameters </td></tr>
</table>
</dd>
</dl>
<p>References <a class="el" href="structopj__dparameters.html#a675eaf438673617a34e77c73edcd52f3">opj_dparameters::cod_format</a>, <a class="el" href="structopj__dparameters.html#a97c98cc0b3ef7681665febd6661ea155">opj_dparameters::cp_layer</a>, <a class="el" href="structopj__dparameters.html#a7602fcf8e3b14e560c09e35b30aa48af">opj_dparameters::cp_reduce</a>, <a class="el" href="structopj__dparameters.html#ab83c2f0dd4d5471fe49612e0c5fbd5be">opj_dparameters::decod_format</a>, <a class="el" href="structopj__dparameters.html#a9e6136d89847ec5d15d42bfe814b4a08">opj_dparameters::flags</a>, <a class="el" href="structopj__dparameters.html#ab66ce447f50e55b6c3dc2444d29698f5">opj_dparameters::jpwl_correct</a>, <a class="el" href="structopj__dparameters.html#a85f649ae0ba7912531a67080a1245ae0">opj_dparameters::jpwl_exp_comps</a>, <a class="el" href="openjpeg_8h.html#a1138ee6acb2634c1763319c7ee2bd25d">JPWL_EXPECTED_COMPONENTS</a>, <a class="el" href="structopj__dparameters.html#a6e248b6a2988aedbae0ae5932b28dec6">opj_dparameters::jpwl_max_tiles</a>, <a class="el" href="openjpeg_8h.html#a1f2210ceb1d0dcca5f4d64cbf6b9eb6e">JPWL_MAXIMUM_TILES</a>, and <a class="el" href="openjpeg_8h.html#ac672bfd7db39c609e828acb07a321964">OPJ_FALSE</a>.</p>
<p>Referenced by <a class="el" href="jp2k__decoder_8h.html#a261799e8487d1b77fc04948abe701e5f">j2k_to_pnm()</a>.</p>
</div>
</div>
<a class="anchor" id="a579b5a50da6517f9d7563489e8044298"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a> opj_set_default_encoder_parameters </td>
<td>(</td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a5c303dd5ddb702b9e6f82b8fbf69637d">opj_cparameters_t</a> *&#160;</td>
<td class="paramname"><em>parameters</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Set encoding parameters to default values, that means : </p>
<ul>
<li>
Lossless </li>
<li>
1 tile </li>
<li>
Size of precinct : 2^15 x 2^15 (means 1 precinct) </li>
<li>
Size of code-block : 64 x 64 </li>
<li>
Number of resolutions: 6 </li>
<li>
No SOP marker in the codestream </li>
<li>
No EPH marker in the codestream </li>
<li>
No sub-sampling in x or y direction </li>
<li>
No mode switch activated </li>
<li>
Progression order: LRCP </li>
<li>
No index file </li>
<li>
No ROI upshifted </li>
<li>
No offset of the origin of the image </li>
<li>
No offset of the origin of the tiles </li>
<li>
Reversible DWT 5-3 </li>
</ul>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">parameters</td><td>Compression parameters </td></tr>
</table>
</dd>
</dl>
<p>References <a class="el" href="structopj__cparameters.html#a8cf53402a7f5bccf81828a16e1408e37">opj_cparameters::cblockh_init</a>, <a class="el" href="structopj__cparameters.html#a9b9f69924456c21b1f7c28b7722de938">opj_cparameters::cblockw_init</a>, <a class="el" href="structopj__cparameters.html#a51ebbb86b741ee1d66b17977ea045fd3">opj_cparameters::cod_format</a>, <a class="el" href="structopj__cparameters.html#a247d5405d6b439c4708e1ec37efa2eb6">opj_cparameters::cp_cinema</a>, <a class="el" href="structopj__cparameters.html#a8d8807bd72c1f4469a9e1711bfe987d8">opj_cparameters::cp_disto_alloc</a>, <a class="el" href="structopj__cparameters.html#a4cdfa905c1446a302872be789f9e1930">opj_cparameters::cp_fixed_alloc</a>, <a class="el" href="structopj__cparameters.html#aadc8b9eb6389d2fbc83fca64af06735b">opj_cparameters::cp_fixed_quality</a>, <a class="el" href="structopj__cparameters.html#a20ef135570741fc85c68edf3f5e09828">opj_cparameters::cp_rsiz</a>, <a class="el" href="structopj__cparameters.html#af913e8db2386cb0473913d8d0b7d7adf">opj_cparameters::decod_format</a>, <a class="el" href="structopj__cparameters.html#a8ecde72cb2c8f0f269644ce742540a40">opj_cparameters::jpip_on</a>, <a class="el" href="structopj__cparameters.html#ae1d9efd3b4f540faf4e937aada11fe1c">opj_cparameters::jpwl_epc_on</a>, <a class="el" href="structopj__cparameters.html#a9cfe9ed2d5d1f1e5fd3548f36ef57b0b">opj_cparameters::jpwl_hprot_MH</a>, <a class="el" href="structopj__cparameters.html#a8b6d1fdedf276b5ab0f4be42d729588e">opj_cparameters::jpwl_hprot_TPH</a>, <a class="el" href="structopj__cparameters.html#a0bb783f05d93564b1c34c4d248f4d77d">opj_cparameters::jpwl_hprot_TPH_tileno</a>, <a class="el" href="openjpeg_8h.html#a746f5052f95e8c498152ad54120b88f3">JPWL_MAX_NO_PACKSPECS</a>, <a class="el" href="openjpeg_8h.html#a0b8315749743c701bbdd0da02eddd2bf">JPWL_MAX_NO_TILESPECS</a>, <a class="el" href="structopj__cparameters.html#af22c7f26a9180c588b2d7d40fc647fd2">opj_cparameters::jpwl_pprot</a>, <a class="el" href="structopj__cparameters.html#aa23c629f885589a29a1a3b6e581b6cd5">opj_cparameters::jpwl_pprot_packno</a>, <a class="el" href="structopj__cparameters.html#a423567e525151d003bcc617cb5ff02d3">opj_cparameters::jpwl_pprot_tileno</a>, <a class="el" href="structopj__cparameters.html#a4bf56391279bc5d3354cd2e15a08d144">opj_cparameters::jpwl_sens_addr</a>, <a class="el" href="structopj__cparameters.html#a6bb3bfdd3a3aeb26313e643296e248ee">opj_cparameters::jpwl_sens_MH</a>, <a class="el" href="structopj__cparameters.html#a4b182100f513d421395bb33b5438c092">opj_cparameters::jpwl_sens_range</a>, <a class="el" href="structopj__cparameters.html#aa18e81a266cd02bb7c47359f8ad02133">opj_cparameters::jpwl_sens_size</a>, <a class="el" href="structopj__cparameters.html#a6892dc4d99ced896f6b5672f28eeeb0a">opj_cparameters::jpwl_sens_TPH</a>, <a class="el" href="structopj__cparameters.html#a85770086d03908461500e3c3c802a7eb">opj_cparameters::jpwl_sens_TPH_tileno</a>, <a class="el" href="structopj__cparameters.html#af7515038b10277057df10a8448563e52">opj_cparameters::max_comp_size</a>, <a class="el" href="structopj__cparameters.html#a4fde076ac50639f6640334ee119f00ce">opj_cparameters::numresolution</a>, <a class="el" href="opj__common_8h.html#ad54d7ffcfa188f16fa8dfbf9eac48175">OPJ_COMP_PARAM_DEFAULT_CBLOCKH</a>, <a class="el" href="opj__common_8h.html#ad043ca54102ca1b0c412e3489bea8bcb">OPJ_COMP_PARAM_DEFAULT_CBLOCKW</a>, <a class="el" href="opj__common_8h.html#addb6a2a42df3bca8ad29224480b1a9d3">OPJ_COMP_PARAM_DEFAULT_NUMRESOLUTION</a>, <a class="el" href="opj__common_8h.html#a25b455979a0d66a41e03a677973824fe">OPJ_COMP_PARAM_DEFAULT_PROG_ORDER</a>, <a class="el" href="openjpeg_8h.html#ac672bfd7db39c609e828acb07a321964">OPJ_FALSE</a>, <a class="el" href="openjpeg_8h.html#a40f2df6eb0fb2935c17a43e5e573d014a51bef743cb9f878e6e4485464b022a54">OPJ_OFF</a>, <a class="el" href="openjpeg_8h.html#af7fbbf087fe08b8a94353461286b740c">OPJ_PROFILE_NONE</a>, <a class="el" href="openjpeg_8h.html#a39de717a826f6b28996cdbec066ee7b5adcc858deddbf8cb60f3cf33aea7dd2a6">OPJ_STD_RSIZ</a>, <a class="el" href="structopj__cparameters.html#af66fdac7008a61c0adc20ce3e352c4ec">opj_cparameters::prog_order</a>, <a class="el" href="structopj__cparameters.html#af8ed53e1a187a6029c400cbbad37c915">opj_cparameters::roi_compno</a>, <a class="el" href="structopj__cparameters.html#a8d95073966622a5a9bfd8b925da48469">opj_cparameters::rsiz</a>, <a class="el" href="structopj__cparameters.html#aeb97f74cb9128509a585d7fdbf9f2a80">opj_cparameters::subsampling_dx</a>, <a class="el" href="structopj__cparameters.html#a65ea173e1bce0ff5c8a68f636d34551f">opj_cparameters::subsampling_dy</a>, <a class="el" href="structopj__cparameters.html#aa2aa7dfc3a1adcc4b01b3efbea8afeb1">opj_cparameters::tcp_numlayers</a>, <a class="el" href="structopj__cparameters.html#ac77442ca958da1beb292db9357a6f5cd">opj_cparameters::tcp_rates</a>, and <a class="el" href="structopj__cparameters.html#aa03afd12879eff5b850e56fe4ae127fd">opj_cparameters::tp_on</a>.</p>
</div>
</div>
<a class="anchor" id="a0b847b8776315c6f654a6ad7c2d8af67"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a> opj_set_error_handler </td>
<td>(</td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *&#160;</td>
<td class="paramname"><em>p_codec</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#aeb2e489c5b4386fed6eae3123217c7f0">opj_msg_callback</a>&#160;</td>
<td class="paramname"><em>p_callback</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">void *&#160;</td>
<td class="paramname"><em>p_user_data</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the error handler use by openjpeg. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">p_codec</td><td>the codec previously initialise </td></tr>
<tr><td class="paramname">p_callback</td><td>the callback function which will be used </td></tr>
<tr><td class="paramname">p_user_data</td><td>client object where will be returned the message </td></tr>
</table>
</dd>
</dl>
<p>References <a class="el" href="structopj__event__mgr.html#a9ee0c627fefd37d56e3487af6fc250b6">opj_event_mgr::error_handler</a>, <a class="el" href="structopj__event__mgr.html#a551021914bcf2da3a212f1fd128da7d7">opj_event_mgr::m_error_data</a>, <a class="el" href="structopj__codec__private.html#a80c19f6fb64d1bd40b8593042730ea16">opj_codec_private::m_event_mgr</a>, <a class="el" href="openjpeg_8h.html#ac672bfd7db39c609e828acb07a321964">OPJ_FALSE</a>, and <a class="el" href="openjpeg_8h.html#a04830036d767cba56cbf5ae5bdc481d3">OPJ_TRUE</a>.</p>
<p>Referenced by <a class="el" href="jp2k__decoder_8h.html#a261799e8487d1b77fc04948abe701e5f">j2k_to_pnm()</a>.</p>
</div>
</div>
<a class="anchor" id="a6b7606d660444e8f414aa6e2c148fa44"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a> opj_set_info_handler </td>
<td>(</td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *&#160;</td>
<td class="paramname"><em>p_codec</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#aeb2e489c5b4386fed6eae3123217c7f0">opj_msg_callback</a>&#160;</td>
<td class="paramname"><em>p_callback</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">void *&#160;</td>
<td class="paramname"><em>p_user_data</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the info handler use by openjpeg. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">p_codec</td><td>the codec previously initialise </td></tr>
<tr><td class="paramname">p_callback</td><td>the callback function which will be used </td></tr>
<tr><td class="paramname">p_user_data</td><td>client object where will be returned the message </td></tr>
</table>
</dd>
</dl>
<p>References <a class="el" href="structopj__event__mgr.html#ad60a40bbc655af631ec15f84ee45a708">opj_event_mgr::info_handler</a>, <a class="el" href="structopj__codec__private.html#a80c19f6fb64d1bd40b8593042730ea16">opj_codec_private::m_event_mgr</a>, <a class="el" href="structopj__event__mgr.html#a914c15d0e74ed08bc54a93664df4402c">opj_event_mgr::m_info_data</a>, <a class="el" href="openjpeg_8h.html#ac672bfd7db39c609e828acb07a321964">OPJ_FALSE</a>, and <a class="el" href="openjpeg_8h.html#a04830036d767cba56cbf5ae5bdc481d3">OPJ_TRUE</a>.</p>
<p>Referenced by <a class="el" href="jp2k__decoder_8h.html#a261799e8487d1b77fc04948abe701e5f">j2k_to_pnm()</a>.</p>
</div>
</div>
<a class="anchor" id="afe151054b10829ce8fc1e478710ca653"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a> opj_set_MCT </td>
<td>(</td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a5c303dd5ddb702b9e6f82b8fbf69637d">opj_cparameters_t</a> *&#160;</td>
<td class="paramname"><em>parameters</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a62c71ae712322de0bef73cebae23fa04">OPJ_FLOAT32</a> *&#160;</td>
<td class="paramname"><em>pEncodingMatrix</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>p_dc_shift</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>pNbComp</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sets the MCT matrix to use. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">parameters</td><td>the parameters to change. </td></tr>
<tr><td class="paramname">pEncodingMatrix</td><td>the encoding matrix. </td></tr>
<tr><td class="paramname">p_dc_shift</td><td>the dc shift coefficients to use. </td></tr>
<tr><td class="paramname">pNbComp</td><td>the number of components of the image.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true if the parameters could be set. </dd></dl>
<p>References <a class="el" href="structopj__cparameters.html#a47596276043d689a1c18c0c54272c489">opj_cparameters::irreversible</a>, <a class="el" href="structopj__cparameters.html#aa6d0f1b3d5fd134d9d58fbe5c958753a">opj_cparameters::mct_data</a>, <a class="el" href="openjpeg_8h.html#a65e3a571633779c091fdb411f1ef8ea7">OPJ_EXTENSION_MCT</a>, <a class="el" href="openjpeg_8h.html#ac672bfd7db39c609e828acb07a321964">OPJ_FALSE</a>, <a class="el" href="openjpeg_8h.html#a27b5bd4f70038ebc8f8c0fd22f123a93">OPJ_IS_PART2</a>, <a class="el" href="group___m_i_s_c.html#ga49c70931cbed786f6eef5f095bcb2917">opj_malloc()</a>, <a class="el" href="openjpeg_8h.html#aa16852cfefc65e78737b28c61f2eb6b7">OPJ_PROFILE_PART2</a>, <a class="el" href="openjpeg_8h.html#a04830036d767cba56cbf5ae5bdc481d3">OPJ_TRUE</a>, <a class="el" href="structopj__cparameters.html#a8d95073966622a5a9bfd8b925da48469">opj_cparameters::rsiz</a>, and <a class="el" href="structopj__cparameters.html#a10734be4d83c3f7256ac632b641d98c1">opj_cparameters::tcp_mct</a>.</p>
</div>
</div>
<a class="anchor" id="ab460c38323da1140f66763aa419c404b"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a> opj_set_warning_handler </td>
<td>(</td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *&#160;</td>
<td class="paramname"><em>p_codec</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#aeb2e489c5b4386fed6eae3123217c7f0">opj_msg_callback</a>&#160;</td>
<td class="paramname"><em>p_callback</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">void *&#160;</td>
<td class="paramname"><em>p_user_data</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the warning handler use by openjpeg. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">p_codec</td><td>the codec previously initialise </td></tr>
<tr><td class="paramname">p_callback</td><td>the callback function which will be used </td></tr>
<tr><td class="paramname">p_user_data</td><td>client object where will be returned the message </td></tr>
</table>
</dd>
</dl>
<p>References <a class="el" href="structopj__codec__private.html#a80c19f6fb64d1bd40b8593042730ea16">opj_codec_private::m_event_mgr</a>, <a class="el" href="structopj__event__mgr.html#ae86cf70e19e00750bdf4df2fdae4f4b3">opj_event_mgr::m_warning_data</a>, <a class="el" href="openjpeg_8h.html#ac672bfd7db39c609e828acb07a321964">OPJ_FALSE</a>, <a class="el" href="openjpeg_8h.html#a04830036d767cba56cbf5ae5bdc481d3">OPJ_TRUE</a>, and <a class="el" href="structopj__event__mgr.html#af0954e95dec628614f22a501f2b6ce9b">opj_event_mgr::warning_handler</a>.</p>
<p>Referenced by <a class="el" href="jp2k__decoder_8h.html#a261799e8487d1b77fc04948abe701e5f">j2k_to_pnm()</a>.</p>
</div>
</div>
<a class="anchor" id="ad8473386b576be935efe653b9773ba06"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a> opj_setup_decoder </td>
<td>(</td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *&#160;</td>
<td class="paramname"><em>p_codec</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a6b6650daf87a8d475f9a33f1744d8356">opj_dparameters_t</a> *&#160;</td>
<td class="paramname"><em>parameters</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Setup the decoder with decompression parameters provided by the user and with the message handler provided by the user. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">p_codec</td><td>decompressor handler </td></tr>
<tr><td class="paramname">parameters</td><td>decompression parameters</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true if the decoder is correctly set </dd></dl>
<p>References <a class="el" href="event_8h.html#a7323671f4df0a721ae02d610b1269ab9">EVT_ERROR</a>, <a class="el" href="structopj__codec__private.html#a2b260d149ef24ac3bef21d80a804e34e">opj_codec_private::is_decompressor</a>, <a class="el" href="structopj__codec__private.html#a59b2256a734fada5d6775b0e49ae8209">opj_codec_private::m_codec</a>, <a class="el" href="structopj__codec__private.html#acad1e886fe9dd93863fe69edfd9bc17b">opj_codec_private::m_codec_data</a>, <a class="el" href="structopj__codec__private.html#a49ec8119cd2b16a366f706ad415dfbdd">opj_codec_private::m_decompression</a>, <a class="el" href="structopj__codec__private.html#a80c19f6fb64d1bd40b8593042730ea16">opj_codec_private::m_event_mgr</a>, <a class="el" href="group___e_v_e_n_t.html#ga87d9d4bdfd203ccd8a7522d6f197a3b7">opj_event_msg()</a>, <a class="el" href="openjpeg_8h.html#ac672bfd7db39c609e828acb07a321964">OPJ_FALSE</a>, and <a class="el" href="openjpeg_8h.html#a04830036d767cba56cbf5ae5bdc481d3">OPJ_TRUE</a>.</p>
<p>Referenced by <a class="el" href="jp2k__decoder_8h.html#a261799e8487d1b77fc04948abe701e5f">j2k_to_pnm()</a>.</p>
</div>
</div>
<a class="anchor" id="a3e43761364ef5c038070074eeaea1475"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a> opj_setup_encoder </td>
<td>(</td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *&#160;</td>
<td class="paramname"><em>p_codec</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a5c303dd5ddb702b9e6f82b8fbf69637d">opj_cparameters_t</a> *&#160;</td>
<td class="paramname"><em>parameters</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a5c557180c59d54a2f1d29e8639687aa4">opj_image_t</a> *&#160;</td>
<td class="paramname"><em>image</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Setup the encoder parameters using the current image and using user parameters. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">p_codec</td><td>Compressor handle </td></tr>
<tr><td class="paramname">parameters</td><td>Compression parameters </td></tr>
<tr><td class="paramname">image</td><td>Input filled image </td></tr>
</table>
</dd>
</dl>
<p>References <a class="el" href="structopj__codec__private.html#a2b260d149ef24ac3bef21d80a804e34e">opj_codec_private::is_decompressor</a>, <a class="el" href="structopj__codec__private.html#a59b2256a734fada5d6775b0e49ae8209">opj_codec_private::m_codec</a>, <a class="el" href="structopj__codec__private.html#acad1e886fe9dd93863fe69edfd9bc17b">opj_codec_private::m_codec_data</a>, <a class="el" href="structopj__codec__private.html#ad2e8fc92edffc06808ec5ebe069b52ca">opj_codec_private::m_compression</a>, <a class="el" href="structopj__codec__private.html#a80c19f6fb64d1bd40b8593042730ea16">opj_codec_private::m_event_mgr</a>, and <a class="el" href="openjpeg_8h.html#ac672bfd7db39c609e828acb07a321964">OPJ_FALSE</a>.</p>
</div>
</div>
<a class="anchor" id="ae8060b5a32b0a58fd0485a04f55de141"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static <a class="el" href="openjpeg_8h.html#a64948c8a524dee101c5a4d7293e6158c">OPJ_OFF_T</a> opj_skip_from_file </td>
<td>(</td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a64948c8a524dee101c5a4d7293e6158c">OPJ_OFF_T</a>&#160;</td>
<td class="paramname"><em>p_nb_bytes</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">FILE *&#160;</td>
<td class="paramname"><em>p_user_data</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>References <a class="el" href="opj__includes_8h.html#a66051c67bcebedb8a341f0cccee37e1b">OPJ_FSEEK</a>.</p>
<p>Referenced by <a class="el" href="openjpeg_8h.html#a6d339df3cc8521962a1c03ed421f140a">opj_stream_create_file_stream()</a>.</p>
</div>
</div>
<a class="anchor" id="a254b148aa82603b85b2c799dbafe50b3"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a> opj_start_compress </td>
<td>(</td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *&#160;</td>
<td class="paramname"><em>p_codec</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a5c557180c59d54a2f1d29e8639687aa4">opj_image_t</a> *&#160;</td>
<td class="paramname"><em>p_image</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#adf594a74c6b6b194caadf7b49ba9a2cf">opj_stream_t</a> *&#160;</td>
<td class="paramname"><em>p_stream</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Start to compress the current image. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">p_codec</td><td>Compressor handle </td></tr>
<tr><td class="paramname">p_image</td><td>Input filled image </td></tr>
<tr><td class="paramname">p_stream</td><td>Input stgream </td></tr>
</table>
</dd>
</dl>
<p>References <a class="el" href="structopj__codec__private.html#a2b260d149ef24ac3bef21d80a804e34e">opj_codec_private::is_decompressor</a>, <a class="el" href="structopj__codec__private.html#a59b2256a734fada5d6775b0e49ae8209">opj_codec_private::m_codec</a>, <a class="el" href="structopj__codec__private.html#acad1e886fe9dd93863fe69edfd9bc17b">opj_codec_private::m_codec_data</a>, <a class="el" href="structopj__codec__private.html#ad2e8fc92edffc06808ec5ebe069b52ca">opj_codec_private::m_compression</a>, <a class="el" href="structopj__codec__private.html#a80c19f6fb64d1bd40b8593042730ea16">opj_codec_private::m_event_mgr</a>, and <a class="el" href="openjpeg_8h.html#ac672bfd7db39c609e828acb07a321964">OPJ_FALSE</a>.</p>
</div>
</div>
<a class="anchor" id="acb36a77efa64f8332c27fc4ea6be066c"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="openjpeg_8h.html#adf594a74c6b6b194caadf7b49ba9a2cf">opj_stream_t</a>* <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a> opj_stream_create_default_file_stream </td>
<td>(</td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>fname</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a>&#160;</td>
<td class="paramname"><em>p_is_read_stream</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Create a stream from a file identified with its filename with default parameters (helper function) </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">fname</td><td>the filename of the file to stream </td></tr>
<tr><td class="paramname">p_is_read_stream</td><td>whether the stream is a read stream (true) or not (false) </td></tr>
</table>
</dd>
</dl>
<p>References <a class="el" href="openjpeg_8h.html#afdf81a086aee04619038f70556971284">OPJ_J2K_STREAM_CHUNK_SIZE</a>, and <a class="el" href="openjpeg_8c.html#a872f13112894292a165f89ba4dd1078f">opj_stream_create_file_stream()</a>.</p>
<p>Referenced by <a class="el" href="jp2k__decoder_8h.html#a261799e8487d1b77fc04948abe701e5f">j2k_to_pnm()</a>.</p>
</div>
</div>
<a class="anchor" id="a872f13112894292a165f89ba4dd1078f"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="openjpeg_8h.html#adf594a74c6b6b194caadf7b49ba9a2cf">opj_stream_t</a>* <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a> opj_stream_create_file_stream </td>
<td>(</td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>fname</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#aba7397be054e36dc0284a6589736135e">OPJ_SIZE_T</a>&#160;</td>
<td class="paramname"><em>p_buffer_size</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a>&#160;</td>
<td class="paramname"><em>p_is_read_stream</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Create a stream from a file identified with its filename with a specific buffer size. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">fname</td><td>the filename of the file to stream </td></tr>
<tr><td class="paramname">p_buffer_size</td><td>size of the chunk used to stream </td></tr>
<tr><td class="paramname">p_is_read_stream</td><td>whether the stream is a read stream (true) or not (false) </td></tr>
</table>
</dd>
</dl>
<p>References <a class="el" href="openjpeg_8c.html#a12856d08877dbc3558a47a56553a8c8e">opj_get_data_length_from_file()</a>, <a class="el" href="openjpeg_8c.html#a746bb7f088f57fbf986cb373875f001b">opj_read_from_file()</a>, <a class="el" href="openjpeg_8c.html#a3aab793d4767e2899acba18567bb38fa">opj_seek_from_file()</a>, <a class="el" href="openjpeg_8c.html#ae8060b5a32b0a58fd0485a04f55de141">opj_skip_from_file()</a>, <a class="el" href="cio_8c.html#a9fb51f39980fb6bc1e15ef48a2fd1970">opj_stream_create()</a>, <a class="el" href="cio_8c.html#ab53adb04ecf0efbda2b1e066b5bad040">opj_stream_set_read_function()</a>, <a class="el" href="cio_8c.html#aa693f609fb645fa540e37a6b2e7f597c">opj_stream_set_seek_function()</a>, <a class="el" href="cio_8c.html#a05423b3e3cc5114cc845913e1079bdc3">opj_stream_set_skip_function()</a>, <a class="el" href="cio_8c.html#a8c6a736dad88118ccefb3090a0a8bb40">opj_stream_set_user_data()</a>, <a class="el" href="cio_8c.html#ad3a6d67f83a37ac57ace0580d05181e2">opj_stream_set_user_data_length()</a>, <a class="el" href="cio_8c.html#ae0b2d3c47f4dc68c3f52def9eb5fb752">opj_stream_set_write_function()</a>, and <a class="el" href="openjpeg_8c.html#a533e097d761a58ae4a55addfde8b97cd">opj_write_from_file()</a>.</p>
<p>Referenced by <a class="el" href="openjpeg_8h.html#aec377b042454f3b695486f9829d8a490">opj_stream_create_default_file_stream()</a>.</p>
</div>
</div>
<a class="anchor" id="affadae073896fc06f726834c4bcd6eaa"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const char* <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a> opj_version </td>
<td>(</td>
<td class="paramtype">void&#160;</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Referenced by <a class="el" href="group___j2_k.html#ga4a6561d0899d91b38099da38814cbe86">opj_j2k_setup_encoder()</a>.</p>
</div>
</div>
<a class="anchor" id="a533e097d761a58ae4a55addfde8b97cd"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">static <a class="el" href="openjpeg_8h.html#aba7397be054e36dc0284a6589736135e">OPJ_SIZE_T</a> opj_write_from_file </td>
<td>(</td>
<td class="paramtype">void *&#160;</td>
<td class="paramname"><em>p_buffer</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#aba7397be054e36dc0284a6589736135e">OPJ_SIZE_T</a>&#160;</td>
<td class="paramname"><em>p_nb_bytes</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">FILE *&#160;</td>
<td class="paramname"><em>p_file</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Referenced by <a class="el" href="openjpeg_8h.html#a6d339df3cc8521962a1c03ed421f140a">opj_stream_create_file_stream()</a>.</p>
</div>
</div>
<a class="anchor" id="a721e564fa8b835232a139f62ff79a5f8"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> <a class="el" href="openjpeg_8h.html#aedc1e23ea6654d0cc416bc390687458b">OPJ_CALLCONV</a> opj_write_tile </td>
<td>(</td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a7c8b18f9785e36e317bdb10c4fd0bd29">opj_codec_t</a> *&#160;</td>
<td class="paramname"><em>p_codec</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_tile_index</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#a22de44e15bddae7edfacf4e9ac9bb199">OPJ_BYTE</a> *&#160;</td>
<td class="paramname"><em>p_data</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_data_size</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="openjpeg_8h.html#adf594a74c6b6b194caadf7b49ba9a2cf">opj_stream_t</a> *&#160;</td>
<td class="paramname"><em>p_stream</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Writes a tile with the given data. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">p_codec</td><td>the jpeg2000 codec. </td></tr>
<tr><td class="paramname">p_tile_index</td><td>the index of the tile to write. At the moment, the tiles must be written from 0 to n-1 in sequence. </td></tr>
<tr><td class="paramname">p_data</td><td>pointer to the data to write. Data is arranged in sequence, data_comp0, then data_comp1, then ... NO INTERLEAVING should be set. </td></tr>
<tr><td class="paramname">p_data_size</td><td>this value os used to make sure the data being written is correct. The size must be equal to the sum for each component of tile_width * tile_height * component_size. component_size can be 1,2 or 4 bytes, depending on the precision of the given component. </td></tr>
<tr><td class="paramname">p_stream</td><td>the stream to write data to.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>true if the data could be written. </dd></dl>
<p>References <a class="el" href="structopj__codec__private.html#a2b260d149ef24ac3bef21d80a804e34e">opj_codec_private::is_decompressor</a>, <a class="el" href="structopj__codec__private.html#a59b2256a734fada5d6775b0e49ae8209">opj_codec_private::m_codec</a>, <a class="el" href="structopj__codec__private.html#acad1e886fe9dd93863fe69edfd9bc17b">opj_codec_private::m_codec_data</a>, <a class="el" href="structopj__codec__private.html#ad2e8fc92edffc06808ec5ebe069b52ca">opj_codec_private::m_compression</a>, <a class="el" href="structopj__codec__private.html#a80c19f6fb64d1bd40b8593042730ea16">opj_codec_private::m_event_mgr</a>, and <a class="el" href="openjpeg_8h.html#ac672bfd7db39c609e828acb07a321964">OPJ_FALSE</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.11
</small></address>
</body>
</html>