Update ABI/API compatibility reports after commit cc1919b183f76d5ac79cc9927fb899b4770...
[openjpeg.git] / doxygen / group___s_p_a_r_s_e___a_r_r_a_y.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2 <html xmlns="http://www.w3.org/1999/xhtml">
3 <head>
4 <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
5 <meta http-equiv="X-UA-Compatible" content="IE=9"/>
6 <meta name="generator" content="Doxygen 1.8.11"/>
7 <title>OpenJPEG: SPARSE ARRAYS - Sparse arrays</title>
8 <link href="tabs.css" rel="stylesheet" type="text/css"/>
9 <script type="text/javascript" src="jquery.js"></script>
10 <script type="text/javascript" src="dynsections.js"></script>
11 <link href="doxygen.css" rel="stylesheet" type="text/css" />
12 </head>
13 <body>
14 <div id="top"><!-- do not remove this div, it is closed by doxygen! -->
15 <div id="titlearea">
16 <table cellspacing="0" cellpadding="0">
17  <tbody>
18  <tr style="height: 56px;">
19   <td id="projectalign" style="padding-left: 0.5em;">
20    <div id="projectname">OpenJPEG
21    &#160;<span id="projectnumber">2.4.0</span>
22    </div>
23   </td>
24  </tr>
25  </tbody>
26 </table>
27 </div>
28 <!-- end header part -->
29 <!-- Generated by Doxygen 1.8.11 -->
30   <div id="navrow1" class="tabs">
31     <ul class="tablist">
32       <li><a href="index.html"><span>Main&#160;Page</span></a></li>
33       <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
34       <li class="current"><a href="modules.html"><span>Modules</span></a></li>
35       <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
36       <li><a href="files.html"><span>Files</span></a></li>
37     </ul>
38   </div>
39 </div><!-- top -->
40 <div class="header">
41   <div class="summary">
42 <a href="#typedef-members">Typedefs</a> &#124;
43 <a href="#func-members">Functions</a>  </div>
44   <div class="headertitle">
45 <div class="title">SPARSE ARRAYS - Sparse arrays</div>  </div>
46 </div><!--header-->
47 <div class="contents">
48 <table class="memberdecls">
49 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
50 Typedefs</h2></td></tr>
51 <tr class="memitem:gab63770624f4ec03e6e022c6a0b80e6ff"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structopj__sparse__array__int32.html">opj_sparse_array_int32</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___s_p_a_r_s_e___a_r_r_a_y.html#gab63770624f4ec03e6e022c6a0b80e6ff">opj_sparse_array_int32_t</a></td></tr>
52 <tr class="memdesc:gab63770624f4ec03e6e022c6a0b80e6ff"><td class="mdescLeft">&#160;</td><td class="mdescRight">Opaque type for sparse arrays that contain int32 values.  <a href="#gab63770624f4ec03e6e022c6a0b80e6ff">More...</a><br /></td></tr>
53 <tr class="separator:gab63770624f4ec03e6e022c6a0b80e6ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
54 </table><table class="memberdecls">
55 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
56 Functions</h2></td></tr>
57 <tr class="memitem:ga41953de4fab74677337c2597a67c9843"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group___s_p_a_r_s_e___a_r_r_a_y.html#gab63770624f4ec03e6e022c6a0b80e6ff">opj_sparse_array_int32_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___s_p_a_r_s_e___a_r_r_a_y.html#ga41953de4fab74677337c2597a67c9843">opj_sparse_array_int32_create</a> (<a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> width, <a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> height, <a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> block_width, <a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> block_height)</td></tr>
58 <tr class="memdesc:ga41953de4fab74677337c2597a67c9843"><td class="mdescLeft">&#160;</td><td class="mdescRight">Creates a new sparse array.  <a href="#ga41953de4fab74677337c2597a67c9843">More...</a><br /></td></tr>
59 <tr class="separator:ga41953de4fab74677337c2597a67c9843"><td class="memSeparator" colspan="2">&#160;</td></tr>
60 <tr class="memitem:gad70f920d05b4915853b474d010a9a336"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___s_p_a_r_s_e___a_r_r_a_y.html#gad70f920d05b4915853b474d010a9a336">opj_sparse_array_int32_free</a> (<a class="el" href="group___s_p_a_r_s_e___a_r_r_a_y.html#gab63770624f4ec03e6e022c6a0b80e6ff">opj_sparse_array_int32_t</a> *sa)</td></tr>
61 <tr class="memdesc:gad70f920d05b4915853b474d010a9a336"><td class="mdescLeft">&#160;</td><td class="mdescRight">Frees a sparse array.  <a href="#gad70f920d05b4915853b474d010a9a336">More...</a><br /></td></tr>
62 <tr class="separator:gad70f920d05b4915853b474d010a9a336"><td class="memSeparator" colspan="2">&#160;</td></tr>
63 <tr class="memitem:ga2b5c5075af6a30d35569e4378931ed4c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___s_p_a_r_s_e___a_r_r_a_y.html#ga2b5c5075af6a30d35569e4378931ed4c">opj_sparse_array_is_region_valid</a> (const <a class="el" href="group___s_p_a_r_s_e___a_r_r_a_y.html#gab63770624f4ec03e6e022c6a0b80e6ff">opj_sparse_array_int32_t</a> *sa, <a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> x0, <a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> y0, <a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> x1, <a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> y1)</td></tr>
64 <tr class="memdesc:ga2b5c5075af6a30d35569e4378931ed4c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns whether region bounds are valid (non empty and within array bounds)  <a href="#ga2b5c5075af6a30d35569e4378931ed4c">More...</a><br /></td></tr>
65 <tr class="separator:ga2b5c5075af6a30d35569e4378931ed4c"><td class="memSeparator" colspan="2">&#160;</td></tr>
66 <tr class="memitem:ga092675bfa99d062ce36fa45aff4766da"><td class="memItemLeft" align="right" valign="top"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___s_p_a_r_s_e___a_r_r_a_y.html#ga092675bfa99d062ce36fa45aff4766da">opj_sparse_array_int32_read</a> (const <a class="el" href="group___s_p_a_r_s_e___a_r_r_a_y.html#gab63770624f4ec03e6e022c6a0b80e6ff">opj_sparse_array_int32_t</a> *sa, <a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> x0, <a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> y0, <a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> x1, <a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> y1, <a class="el" href="openjpeg_8h.html#a3cec91ef9e73677f0dbd60d4e42401b9">OPJ_INT32</a> *dest, <a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> dest_col_stride, <a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> dest_line_stride, <a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> forgiving)</td></tr>
67 <tr class="memdesc:ga092675bfa99d062ce36fa45aff4766da"><td class="mdescLeft">&#160;</td><td class="mdescRight">Read the content of a rectangular region of the sparse array into a user buffer.  <a href="#ga092675bfa99d062ce36fa45aff4766da">More...</a><br /></td></tr>
68 <tr class="separator:ga092675bfa99d062ce36fa45aff4766da"><td class="memSeparator" colspan="2">&#160;</td></tr>
69 <tr class="memitem:ga174b3ef4cb89af58cdd7c2b9f0a20559"><td class="memItemLeft" align="right" valign="top"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group___s_p_a_r_s_e___a_r_r_a_y.html#ga174b3ef4cb89af58cdd7c2b9f0a20559">opj_sparse_array_int32_write</a> (<a class="el" href="group___s_p_a_r_s_e___a_r_r_a_y.html#gab63770624f4ec03e6e022c6a0b80e6ff">opj_sparse_array_int32_t</a> *sa, <a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> x0, <a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> y0, <a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> x1, <a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> y1, const <a class="el" href="openjpeg_8h.html#a3cec91ef9e73677f0dbd60d4e42401b9">OPJ_INT32</a> *src, <a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> src_col_stride, <a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> src_line_stride, <a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> forgiving)</td></tr>
70 <tr class="memdesc:ga174b3ef4cb89af58cdd7c2b9f0a20559"><td class="mdescLeft">&#160;</td><td class="mdescRight">Write the content of a rectangular region into the sparse array from a user buffer.  <a href="#ga174b3ef4cb89af58cdd7c2b9f0a20559">More...</a><br /></td></tr>
71 <tr class="separator:ga174b3ef4cb89af58cdd7c2b9f0a20559"><td class="memSeparator" colspan="2">&#160;</td></tr>
72 </table>
73 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
74 <h2 class="groupheader">Typedef Documentation</h2>
75 <a class="anchor" id="gab63770624f4ec03e6e022c6a0b80e6ff"></a>
76 <div class="memitem">
77 <div class="memproto">
78       <table class="memname">
79         <tr>
80           <td class="memname">typedef struct <a class="el" href="structopj__sparse__array__int32.html">opj_sparse_array_int32</a> <a class="el" href="group___s_p_a_r_s_e___a_r_r_a_y.html#gab63770624f4ec03e6e022c6a0b80e6ff">opj_sparse_array_int32_t</a></td>
81         </tr>
82       </table>
83 </div><div class="memdoc">
84
85 <p>Opaque type for sparse arrays that contain int32 values. </p>
86
87 </div>
88 </div>
89 <h2 class="groupheader">Function Documentation</h2>
90 <a class="anchor" id="ga41953de4fab74677337c2597a67c9843"></a>
91 <div class="memitem">
92 <div class="memproto">
93       <table class="memname">
94         <tr>
95           <td class="memname"><a class="el" href="group___s_p_a_r_s_e___a_r_r_a_y.html#gab63770624f4ec03e6e022c6a0b80e6ff">opj_sparse_array_int32_t</a>* opj_sparse_array_int32_create </td>
96           <td>(</td>
97           <td class="paramtype"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a>&#160;</td>
98           <td class="paramname"><em>width</em>, </td>
99         </tr>
100         <tr>
101           <td class="paramkey"></td>
102           <td></td>
103           <td class="paramtype"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a>&#160;</td>
104           <td class="paramname"><em>height</em>, </td>
105         </tr>
106         <tr>
107           <td class="paramkey"></td>
108           <td></td>
109           <td class="paramtype"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a>&#160;</td>
110           <td class="paramname"><em>block_width</em>, </td>
111         </tr>
112         <tr>
113           <td class="paramkey"></td>
114           <td></td>
115           <td class="paramtype"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a>&#160;</td>
116           <td class="paramname"><em>block_height</em>&#160;</td>
117         </tr>
118         <tr>
119           <td></td>
120           <td>)</td>
121           <td></td><td></td>
122         </tr>
123       </table>
124 </div><div class="memdoc">
125
126 <p>Creates a new sparse array. </p>
127 <dl class="params"><dt>Parameters</dt><dd>
128   <table class="params">
129     <tr><td class="paramname">width</td><td>total width of the array. </td></tr>
130     <tr><td class="paramname">height</td><td>total height of the array </td></tr>
131     <tr><td class="paramname">block_width</td><td>width of a block. </td></tr>
132     <tr><td class="paramname">block_height</td><td>height of a block. </td></tr>
133   </table>
134   </dd>
135 </dl>
136 <dl class="section return"><dt>Returns</dt><dd>a new sparse array instance, or NULL in case of failure. </dd></dl>
137
138 <p>References <a class="el" href="structopj__sparse__array__int32.html#a3e4065eb08fe228175101035b6f218ed">opj_sparse_array_int32::block_count_hor</a>, <a class="el" href="structopj__sparse__array__int32.html#aee2f11c522fd981408e3ae164c142baf">opj_sparse_array_int32::block_count_ver</a>, <a class="el" href="structopj__sparse__array__int32.html#a8879d3a7726f3f6ff228d5e341ada8b3">opj_sparse_array_int32::block_height</a>, <a class="el" href="structopj__sparse__array__int32.html#a97a62a6f3c09048f6fd8ec4192d71b5f">opj_sparse_array_int32::block_width</a>, <a class="el" href="structopj__sparse__array__int32.html#aa8740069e9f55f024b69b0e96b6f4f56">opj_sparse_array_int32::data_blocks</a>, <a class="el" href="structopj__sparse__array__int32.html#acbfd23999d0b817fb40ed58073bb6cf2">opj_sparse_array_int32::height</a>, <a class="el" href="group___m_i_s_c.html#ga7fe6dfcb0a623dbec30daf0f48624bf7">opj_calloc()</a>, <a class="el" href="group___m_i_s_c.html#ga2bd00e2482ae36197631bde0665cfdfe">opj_free()</a>, <a class="el" href="group___o_p_j___i_n_t_m_a_t_h.html#gae4b2e5a7c8b8f09faacc4a895f866ea1">opj_uint_ceildiv()</a>, and <a class="el" href="structopj__sparse__array__int32.html#a427c80944840803fd7f5592317ad8564">opj_sparse_array_int32::width</a>.</p>
139
140 <p>Referenced by <a class="el" href="test__sparse__array_8c.html#ae66f6b31b5ad750f1fe042a706a4e3d4">main()</a>, and <a class="el" href="dwt_8c.html#a57c042791753ac46c7bb073abcc245ba">opj_dwt_init_sparse_array()</a>.</p>
141
142 </div>
143 </div>
144 <a class="anchor" id="gad70f920d05b4915853b474d010a9a336"></a>
145 <div class="memitem">
146 <div class="memproto">
147       <table class="memname">
148         <tr>
149           <td class="memname">void opj_sparse_array_int32_free </td>
150           <td>(</td>
151           <td class="paramtype"><a class="el" href="group___s_p_a_r_s_e___a_r_r_a_y.html#gab63770624f4ec03e6e022c6a0b80e6ff">opj_sparse_array_int32_t</a> *&#160;</td>
152           <td class="paramname"><em>sa</em></td><td>)</td>
153           <td></td>
154         </tr>
155       </table>
156 </div><div class="memdoc">
157
158 <p>Frees a sparse array. </p>
159 <dl class="params"><dt>Parameters</dt><dd>
160   <table class="params">
161     <tr><td class="paramname">sa</td><td>sparse array instance. </td></tr>
162   </table>
163   </dd>
164 </dl>
165
166 <p>References <a class="el" href="structopj__sparse__array__int32.html#a3e4065eb08fe228175101035b6f218ed">opj_sparse_array_int32::block_count_hor</a>, <a class="el" href="structopj__sparse__array__int32.html#aee2f11c522fd981408e3ae164c142baf">opj_sparse_array_int32::block_count_ver</a>, <a class="el" href="structopj__sparse__array__int32.html#aa8740069e9f55f024b69b0e96b6f4f56">opj_sparse_array_int32::data_blocks</a>, and <a class="el" href="group___m_i_s_c.html#ga2bd00e2482ae36197631bde0665cfdfe">opj_free()</a>.</p>
167
168 <p>Referenced by <a class="el" href="test__sparse__array_8c.html#ae66f6b31b5ad750f1fe042a706a4e3d4">main()</a>, <a class="el" href="dwt_8c.html#a75cd080404aadce6662457dec7cc9d21">opj_dwt_decode_partial_97()</a>, <a class="el" href="group___d_w_t.html#ga74b827f7914de05bf5bfc52894894803">opj_dwt_decode_partial_tile()</a>, and <a class="el" href="dwt_8c.html#a57c042791753ac46c7bb073abcc245ba">opj_dwt_init_sparse_array()</a>.</p>
169
170 </div>
171 </div>
172 <a class="anchor" id="ga092675bfa99d062ce36fa45aff4766da"></a>
173 <div class="memitem">
174 <div class="memproto">
175       <table class="memname">
176         <tr>
177           <td class="memname"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> opj_sparse_array_int32_read </td>
178           <td>(</td>
179           <td class="paramtype">const <a class="el" href="group___s_p_a_r_s_e___a_r_r_a_y.html#gab63770624f4ec03e6e022c6a0b80e6ff">opj_sparse_array_int32_t</a> *&#160;</td>
180           <td class="paramname"><em>sa</em>, </td>
181         </tr>
182         <tr>
183           <td class="paramkey"></td>
184           <td></td>
185           <td class="paramtype"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a>&#160;</td>
186           <td class="paramname"><em>x0</em>, </td>
187         </tr>
188         <tr>
189           <td class="paramkey"></td>
190           <td></td>
191           <td class="paramtype"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a>&#160;</td>
192           <td class="paramname"><em>y0</em>, </td>
193         </tr>
194         <tr>
195           <td class="paramkey"></td>
196           <td></td>
197           <td class="paramtype"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a>&#160;</td>
198           <td class="paramname"><em>x1</em>, </td>
199         </tr>
200         <tr>
201           <td class="paramkey"></td>
202           <td></td>
203           <td class="paramtype"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a>&#160;</td>
204           <td class="paramname"><em>y1</em>, </td>
205         </tr>
206         <tr>
207           <td class="paramkey"></td>
208           <td></td>
209           <td class="paramtype"><a class="el" href="openjpeg_8h.html#a3cec91ef9e73677f0dbd60d4e42401b9">OPJ_INT32</a> *&#160;</td>
210           <td class="paramname"><em>dest</em>, </td>
211         </tr>
212         <tr>
213           <td class="paramkey"></td>
214           <td></td>
215           <td class="paramtype"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a>&#160;</td>
216           <td class="paramname"><em>dest_col_stride</em>, </td>
217         </tr>
218         <tr>
219           <td class="paramkey"></td>
220           <td></td>
221           <td class="paramtype"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a>&#160;</td>
222           <td class="paramname"><em>dest_line_stride</em>, </td>
223         </tr>
224         <tr>
225           <td class="paramkey"></td>
226           <td></td>
227           <td class="paramtype"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a>&#160;</td>
228           <td class="paramname"><em>forgiving</em>&#160;</td>
229         </tr>
230         <tr>
231           <td></td>
232           <td>)</td>
233           <td></td><td></td>
234         </tr>
235       </table>
236 </div><div class="memdoc">
237
238 <p>Read the content of a rectangular region of the sparse array into a user buffer. </p>
239 <p>Regions not written with <a class="el" href="group___s_p_a_r_s_e___a_r_r_a_y.html#ga174b3ef4cb89af58cdd7c2b9f0a20559" title="Write the content of a rectangular region into the sparse array from a user buffer. ">opj_sparse_array_int32_write()</a> are read as 0.</p>
240 <dl class="params"><dt>Parameters</dt><dd>
241   <table class="params">
242     <tr><td class="paramname">sa</td><td>sparse array instance. </td></tr>
243     <tr><td class="paramname">x0</td><td>left x coordinate of the region to read in the sparse array. </td></tr>
244     <tr><td class="paramname">y0</td><td>top x coordinate of the region to read in the sparse array. </td></tr>
245     <tr><td class="paramname">x1</td><td>right x coordinate (not included) of the region to read in the sparse array. Must be greater than x0. </td></tr>
246     <tr><td class="paramname">y1</td><td>bottom y coordinate (not included) of the region to read in the sparse array. Must be greater than y0. </td></tr>
247     <tr><td class="paramname">dest</td><td>user buffer to fill. Must be at least sizeof(int32) * ( (y1 - y0 - 1) * dest_line_stride + (x1 - x0 - 1) * dest_col_stride + 1) bytes large. </td></tr>
248     <tr><td class="paramname">dest_col_stride</td><td>spacing (in elements, not in bytes) in x dimension between consecutive elements of the user buffer. </td></tr>
249     <tr><td class="paramname">dest_line_stride</td><td>spacing (in elements, not in bytes) in y dimension between consecutive elements of the user buffer. </td></tr>
250     <tr><td class="paramname">forgiving</td><td>if set to TRUE and the region is invalid, OPJ_TRUE will still be returned. </td></tr>
251   </table>
252   </dd>
253 </dl>
254 <dl class="section return"><dt>Returns</dt><dd>OPJ_TRUE in case of success. </dd></dl>
255
256 <p>References <a class="el" href="sparse__array_8c.html#a175c52e28cac6cad5ccdc24200e67a60">opj_sparse_array_int32_read_or_write()</a>, and <a class="el" href="openjpeg_8h.html#a04830036d767cba56cbf5ae5bdc481d3">OPJ_TRUE</a>.</p>
257
258 <p>Referenced by <a class="el" href="test__sparse__array_8c.html#ae66f6b31b5ad750f1fe042a706a4e3d4">main()</a>, <a class="el" href="dwt_8c.html#a75cd080404aadce6662457dec7cc9d21">opj_dwt_decode_partial_97()</a>, <a class="el" href="group___d_w_t.html#ga74b827f7914de05bf5bfc52894894803">opj_dwt_decode_partial_tile()</a>, <a class="el" href="dwt_8c.html#aa9f1030974db43df751380437e5167af">opj_dwt_interleave_partial_h()</a>, <a class="el" href="dwt_8c.html#ad7a304bcf13f2427c0a6835e6c527d3e">opj_dwt_interleave_partial_v()</a>, <a class="el" href="dwt_8c.html#a9caacdf7450ad73f0023e864f3a74cf1">opj_v8dwt_interleave_partial_h()</a>, and <a class="el" href="dwt_8c.html#a4d4acbc44226a14f02cff29831301f8e">opj_v8dwt_interleave_partial_v()</a>.</p>
259
260 </div>
261 </div>
262 <a class="anchor" id="ga174b3ef4cb89af58cdd7c2b9f0a20559"></a>
263 <div class="memitem">
264 <div class="memproto">
265       <table class="memname">
266         <tr>
267           <td class="memname"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> opj_sparse_array_int32_write </td>
268           <td>(</td>
269           <td class="paramtype"><a class="el" href="group___s_p_a_r_s_e___a_r_r_a_y.html#gab63770624f4ec03e6e022c6a0b80e6ff">opj_sparse_array_int32_t</a> *&#160;</td>
270           <td class="paramname"><em>sa</em>, </td>
271         </tr>
272         <tr>
273           <td class="paramkey"></td>
274           <td></td>
275           <td class="paramtype"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a>&#160;</td>
276           <td class="paramname"><em>x0</em>, </td>
277         </tr>
278         <tr>
279           <td class="paramkey"></td>
280           <td></td>
281           <td class="paramtype"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a>&#160;</td>
282           <td class="paramname"><em>y0</em>, </td>
283         </tr>
284         <tr>
285           <td class="paramkey"></td>
286           <td></td>
287           <td class="paramtype"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a>&#160;</td>
288           <td class="paramname"><em>x1</em>, </td>
289         </tr>
290         <tr>
291           <td class="paramkey"></td>
292           <td></td>
293           <td class="paramtype"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a>&#160;</td>
294           <td class="paramname"><em>y1</em>, </td>
295         </tr>
296         <tr>
297           <td class="paramkey"></td>
298           <td></td>
299           <td class="paramtype">const <a class="el" href="openjpeg_8h.html#a3cec91ef9e73677f0dbd60d4e42401b9">OPJ_INT32</a> *&#160;</td>
300           <td class="paramname"><em>src</em>, </td>
301         </tr>
302         <tr>
303           <td class="paramkey"></td>
304           <td></td>
305           <td class="paramtype"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a>&#160;</td>
306           <td class="paramname"><em>src_col_stride</em>, </td>
307         </tr>
308         <tr>
309           <td class="paramkey"></td>
310           <td></td>
311           <td class="paramtype"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a>&#160;</td>
312           <td class="paramname"><em>src_line_stride</em>, </td>
313         </tr>
314         <tr>
315           <td class="paramkey"></td>
316           <td></td>
317           <td class="paramtype"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a>&#160;</td>
318           <td class="paramname"><em>forgiving</em>&#160;</td>
319         </tr>
320         <tr>
321           <td></td>
322           <td>)</td>
323           <td></td><td></td>
324         </tr>
325       </table>
326 </div><div class="memdoc">
327
328 <p>Write the content of a rectangular region into the sparse array from a user buffer. </p>
329 <p>Blocks intersecting the region are allocated, if not already done.</p>
330 <dl class="params"><dt>Parameters</dt><dd>
331   <table class="params">
332     <tr><td class="paramname">sa</td><td>sparse array instance. </td></tr>
333     <tr><td class="paramname">x0</td><td>left x coordinate of the region to write into the sparse array. </td></tr>
334     <tr><td class="paramname">y0</td><td>top x coordinate of the region to write into the sparse array. </td></tr>
335     <tr><td class="paramname">x1</td><td>right x coordinate (not included) of the region to write into the sparse array. Must be greater than x0. </td></tr>
336     <tr><td class="paramname">y1</td><td>bottom y coordinate (not included) of the region to write into the sparse array. Must be greater than y0. </td></tr>
337     <tr><td class="paramname">src</td><td>user buffer to fill. Must be at least sizeof(int32) * ( (y1 - y0 - 1) * src_line_stride + (x1 - x0 - 1) * src_col_stride + 1) bytes large. </td></tr>
338     <tr><td class="paramname">src_col_stride</td><td>spacing (in elements, not in bytes) in x dimension between consecutive elements of the user buffer. </td></tr>
339     <tr><td class="paramname">src_line_stride</td><td>spacing (in elements, not in bytes) in y dimension between consecutive elements of the user buffer. </td></tr>
340     <tr><td class="paramname">forgiving</td><td>if set to TRUE and the region is invalid, OPJ_TRUE will still be returned. </td></tr>
341   </table>
342   </dd>
343 </dl>
344 <dl class="section return"><dt>Returns</dt><dd>OPJ_TRUE in case of success. </dd></dl>
345
346 <p>References <a class="el" href="openjpeg_8h.html#ac672bfd7db39c609e828acb07a321964">OPJ_FALSE</a>, and <a class="el" href="sparse__array_8c.html#a175c52e28cac6cad5ccdc24200e67a60">opj_sparse_array_int32_read_or_write()</a>.</p>
347
348 <p>Referenced by <a class="el" href="test__sparse__array_8c.html#ae66f6b31b5ad750f1fe042a706a4e3d4">main()</a>, <a class="el" href="dwt_8c.html#a75cd080404aadce6662457dec7cc9d21">opj_dwt_decode_partial_97()</a>, <a class="el" href="group___d_w_t.html#ga74b827f7914de05bf5bfc52894894803">opj_dwt_decode_partial_tile()</a>, and <a class="el" href="dwt_8c.html#a57c042791753ac46c7bb073abcc245ba">opj_dwt_init_sparse_array()</a>.</p>
349
350 </div>
351 </div>
352 <a class="anchor" id="ga2b5c5075af6a30d35569e4378931ed4c"></a>
353 <div class="memitem">
354 <div class="memproto">
355       <table class="memname">
356         <tr>
357           <td class="memname"><a class="el" href="openjpeg_8h.html#abb5dad6294f4611f1925388e919b16f4">OPJ_BOOL</a> opj_sparse_array_is_region_valid </td>
358           <td>(</td>
359           <td class="paramtype">const <a class="el" href="group___s_p_a_r_s_e___a_r_r_a_y.html#gab63770624f4ec03e6e022c6a0b80e6ff">opj_sparse_array_int32_t</a> *&#160;</td>
360           <td class="paramname"><em>sa</em>, </td>
361         </tr>
362         <tr>
363           <td class="paramkey"></td>
364           <td></td>
365           <td class="paramtype"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a>&#160;</td>
366           <td class="paramname"><em>x0</em>, </td>
367         </tr>
368         <tr>
369           <td class="paramkey"></td>
370           <td></td>
371           <td class="paramtype"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a>&#160;</td>
372           <td class="paramname"><em>y0</em>, </td>
373         </tr>
374         <tr>
375           <td class="paramkey"></td>
376           <td></td>
377           <td class="paramtype"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a>&#160;</td>
378           <td class="paramname"><em>x1</em>, </td>
379         </tr>
380         <tr>
381           <td class="paramkey"></td>
382           <td></td>
383           <td class="paramtype"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a>&#160;</td>
384           <td class="paramname"><em>y1</em>&#160;</td>
385         </tr>
386         <tr>
387           <td></td>
388           <td>)</td>
389           <td></td><td></td>
390         </tr>
391       </table>
392 </div><div class="memdoc">
393
394 <p>Returns whether region bounds are valid (non empty and within array bounds) </p>
395 <dl class="params"><dt>Parameters</dt><dd>
396   <table class="params">
397     <tr><td class="paramname">sa</td><td>sparse array instance. </td></tr>
398     <tr><td class="paramname">x0</td><td>left x coordinate of the region. </td></tr>
399     <tr><td class="paramname">y0</td><td>top x coordinate of the region. </td></tr>
400     <tr><td class="paramname">x1</td><td>right x coordinate (not included) of the region. Must be greater than x0. </td></tr>
401     <tr><td class="paramname">y1</td><td>bottom y coordinate (not included) of the region. Must be greater than y0. </td></tr>
402   </table>
403   </dd>
404 </dl>
405 <dl class="section return"><dt>Returns</dt><dd>OPJ_TRUE or OPJ_FALSE. </dd></dl>
406
407 <p>References <a class="el" href="structopj__sparse__array__int32.html#acbfd23999d0b817fb40ed58073bb6cf2">opj_sparse_array_int32::height</a>, and <a class="el" href="structopj__sparse__array__int32.html#a427c80944840803fd7f5592317ad8564">opj_sparse_array_int32::width</a>.</p>
408
409 <p>Referenced by <a class="el" href="sparse__array_8c.html#a175c52e28cac6cad5ccdc24200e67a60">opj_sparse_array_int32_read_or_write()</a>.</p>
410
411 </div>
412 </div>
413 </div><!-- contents -->
414 <!-- start footer part -->
415 <hr class="footer"/><address class="footer"><small>
416 Generated by &#160;<a href="http://www.doxygen.org/index.html">
417 <img class="footer" src="doxygen.png" alt="doxygen"/>
418 </a> 1.8.11
419 </small></address>
420 </body>
421 </html>