1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2 <html xmlns="http://www.w3.org/1999/xhtml">
4 <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
5 <meta http-equiv="X-UA-Compatible" content="IE=9"/>
6 <meta name="generator" content="Doxygen 1.8.10"/>
7 <title>OpenJPEG: opj_tccp_info Struct Reference</title>
8 <link href="tabs.css" rel="stylesheet" type="text/css"/>
9 <script type="text/javascript" src="jquery.js"></script>
10 <script type="text/javascript" src="dynsections.js"></script>
11 <link href="doxygen.css" rel="stylesheet" type="text/css" />
14 <div id="top"><!-- do not remove this div, it is closed by doxygen! -->
16 <table cellspacing="0" cellpadding="0">
18 <tr style="height: 56px;">
19 <td id="projectalign" style="padding-left: 0.5em;">
20 <div id="projectname">OpenJPEG
21  <span id="projectnumber">2.3.0</span>
28 <!-- end header part -->
29 <!-- Generated by Doxygen 1.8.10 -->
30 <div id="navrow1" class="tabs">
32 <li><a href="index.html"><span>Main Page</span></a></li>
33 <li><a href="pages.html"><span>Related Pages</span></a></li>
34 <li><a href="modules.html"><span>Modules</span></a></li>
35 <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
36 <li><a href="files.html"><span>Files</span></a></li>
39 <div id="navrow2" class="tabs2">
41 <li><a href="annotated.html"><span>Data Structures</span></a></li>
42 <li><a href="functions.html"><span>Data Fields</span></a></li>
48 <a href="#pub-attribs">Data Fields</a> </div>
49 <div class="headertitle">
50 <div class="title">opj_tccp_info Struct Reference</div> </div>
52 <div class="contents">
54 <p>Tile-component coding parameters information.
55 <a href="structopj__tccp__info.html#details">More...</a></p>
57 <p><code>#include <<a class="el" href="openjpeg_8h_source.html">openjpeg.h</a>></code></p>
58 <table class="memberdecls">
59 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
60 Data Fields</h2></td></tr>
61 <tr class="memitem:aafded29af274e144a964bb13e88cc9d8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structopj__tccp__info.html#aafded29af274e144a964bb13e88cc9d8">compno</a></td></tr>
62 <tr class="memdesc:aafded29af274e144a964bb13e88cc9d8"><td class="mdescLeft"> </td><td class="mdescRight">component index <a href="#aafded29af274e144a964bb13e88cc9d8">More...</a><br /></td></tr>
63 <tr class="separator:aafded29af274e144a964bb13e88cc9d8"><td class="memSeparator" colspan="2"> </td></tr>
64 <tr class="memitem:ae37109d3d593d69d7783a8a73ec88c79"><td class="memItemLeft" align="right" valign="top"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structopj__tccp__info.html#ae37109d3d593d69d7783a8a73ec88c79">csty</a></td></tr>
65 <tr class="memdesc:ae37109d3d593d69d7783a8a73ec88c79"><td class="mdescLeft"> </td><td class="mdescRight">coding style <a href="#ae37109d3d593d69d7783a8a73ec88c79">More...</a><br /></td></tr>
66 <tr class="separator:ae37109d3d593d69d7783a8a73ec88c79"><td class="memSeparator" colspan="2"> </td></tr>
67 <tr class="memitem:a9a0ed66904bfe8bcfce631904f32a57e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structopj__tccp__info.html#a9a0ed66904bfe8bcfce631904f32a57e">numresolutions</a></td></tr>
68 <tr class="memdesc:a9a0ed66904bfe8bcfce631904f32a57e"><td class="mdescLeft"> </td><td class="mdescRight">number of resolutions <a href="#a9a0ed66904bfe8bcfce631904f32a57e">More...</a><br /></td></tr>
69 <tr class="separator:a9a0ed66904bfe8bcfce631904f32a57e"><td class="memSeparator" colspan="2"> </td></tr>
70 <tr class="memitem:a478efbaa1f919968e499a888bb3c2621"><td class="memItemLeft" align="right" valign="top"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structopj__tccp__info.html#a478efbaa1f919968e499a888bb3c2621">cblkw</a></td></tr>
71 <tr class="memdesc:a478efbaa1f919968e499a888bb3c2621"><td class="mdescLeft"> </td><td class="mdescRight">log2 of code-blocks width <a href="#a478efbaa1f919968e499a888bb3c2621">More...</a><br /></td></tr>
72 <tr class="separator:a478efbaa1f919968e499a888bb3c2621"><td class="memSeparator" colspan="2"> </td></tr>
73 <tr class="memitem:a2ff0c978e5f34d71602a0e5dbab3794b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structopj__tccp__info.html#a2ff0c978e5f34d71602a0e5dbab3794b">cblkh</a></td></tr>
74 <tr class="memdesc:a2ff0c978e5f34d71602a0e5dbab3794b"><td class="mdescLeft"> </td><td class="mdescRight">log2 of code-blocks height <a href="#a2ff0c978e5f34d71602a0e5dbab3794b">More...</a><br /></td></tr>
75 <tr class="separator:a2ff0c978e5f34d71602a0e5dbab3794b"><td class="memSeparator" colspan="2"> </td></tr>
76 <tr class="memitem:a94c5b17f636a7a070de7a9c70864eb2a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structopj__tccp__info.html#a94c5b17f636a7a070de7a9c70864eb2a">cblksty</a></td></tr>
77 <tr class="memdesc:a94c5b17f636a7a070de7a9c70864eb2a"><td class="mdescLeft"> </td><td class="mdescRight">code-block coding style <a href="#a94c5b17f636a7a070de7a9c70864eb2a">More...</a><br /></td></tr>
78 <tr class="separator:a94c5b17f636a7a070de7a9c70864eb2a"><td class="memSeparator" colspan="2"> </td></tr>
79 <tr class="memitem:a096e7d038c212c6c8eaf75ff06939d4f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structopj__tccp__info.html#a096e7d038c212c6c8eaf75ff06939d4f">qmfbid</a></td></tr>
80 <tr class="memdesc:a096e7d038c212c6c8eaf75ff06939d4f"><td class="mdescLeft"> </td><td class="mdescRight">discrete wavelet transform identifier: 0 = 9-7 irreversible, 1 = 5-3 reversible <a href="#a096e7d038c212c6c8eaf75ff06939d4f">More...</a><br /></td></tr>
81 <tr class="separator:a096e7d038c212c6c8eaf75ff06939d4f"><td class="memSeparator" colspan="2"> </td></tr>
82 <tr class="memitem:ac4c5bb35ad0d5208cad5164c7b342ced"><td class="memItemLeft" align="right" valign="top"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structopj__tccp__info.html#ac4c5bb35ad0d5208cad5164c7b342ced">qntsty</a></td></tr>
83 <tr class="memdesc:ac4c5bb35ad0d5208cad5164c7b342ced"><td class="mdescLeft"> </td><td class="mdescRight">quantisation style <a href="#ac4c5bb35ad0d5208cad5164c7b342ced">More...</a><br /></td></tr>
84 <tr class="separator:ac4c5bb35ad0d5208cad5164c7b342ced"><td class="memSeparator" colspan="2"> </td></tr>
85 <tr class="memitem:abf244dd9106b1db867e32a6abb84a9b5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structopj__tccp__info.html#abf244dd9106b1db867e32a6abb84a9b5">stepsizes_mant</a> [<a class="el" href="openjpeg_8h.html#a3c4792de45c6b5b13112be890d502b0d">OPJ_J2K_MAXBANDS</a>]</td></tr>
86 <tr class="memdesc:abf244dd9106b1db867e32a6abb84a9b5"><td class="mdescLeft"> </td><td class="mdescRight">stepsizes used for quantization <a href="#abf244dd9106b1db867e32a6abb84a9b5">More...</a><br /></td></tr>
87 <tr class="separator:abf244dd9106b1db867e32a6abb84a9b5"><td class="memSeparator" colspan="2"> </td></tr>
88 <tr class="memitem:a9061c1d462e89e1b024aa369117e4182"><td class="memItemLeft" align="right" valign="top"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structopj__tccp__info.html#a9061c1d462e89e1b024aa369117e4182">stepsizes_expn</a> [<a class="el" href="openjpeg_8h.html#a3c4792de45c6b5b13112be890d502b0d">OPJ_J2K_MAXBANDS</a>]</td></tr>
89 <tr class="memdesc:a9061c1d462e89e1b024aa369117e4182"><td class="mdescLeft"> </td><td class="mdescRight">stepsizes used for quantization <a href="#a9061c1d462e89e1b024aa369117e4182">More...</a><br /></td></tr>
90 <tr class="separator:a9061c1d462e89e1b024aa369117e4182"><td class="memSeparator" colspan="2"> </td></tr>
91 <tr class="memitem:ab18c34b70814a92452cbff1e3acb0dd4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structopj__tccp__info.html#ab18c34b70814a92452cbff1e3acb0dd4">numgbits</a></td></tr>
92 <tr class="memdesc:ab18c34b70814a92452cbff1e3acb0dd4"><td class="mdescLeft"> </td><td class="mdescRight">number of guard bits <a href="#ab18c34b70814a92452cbff1e3acb0dd4">More...</a><br /></td></tr>
93 <tr class="separator:ab18c34b70814a92452cbff1e3acb0dd4"><td class="memSeparator" colspan="2"> </td></tr>
94 <tr class="memitem:a495d19259ef11a4887dd4027e7983f35"><td class="memItemLeft" align="right" valign="top"><a class="el" href="openjpeg_8h.html#a3cec91ef9e73677f0dbd60d4e42401b9">OPJ_INT32</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structopj__tccp__info.html#a495d19259ef11a4887dd4027e7983f35">roishift</a></td></tr>
95 <tr class="memdesc:a495d19259ef11a4887dd4027e7983f35"><td class="mdescLeft"> </td><td class="mdescRight">Region Of Interest shift. <a href="#a495d19259ef11a4887dd4027e7983f35">More...</a><br /></td></tr>
96 <tr class="separator:a495d19259ef11a4887dd4027e7983f35"><td class="memSeparator" colspan="2"> </td></tr>
97 <tr class="memitem:ac94549d3b177cd66d2cb26d2a41c5df6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structopj__tccp__info.html#ac94549d3b177cd66d2cb26d2a41c5df6">prcw</a> [<a class="el" href="openjpeg_8h.html#a86df1f90c5bd2c069ed8ea20712664d8">OPJ_J2K_MAXRLVLS</a>]</td></tr>
98 <tr class="memdesc:ac94549d3b177cd66d2cb26d2a41c5df6"><td class="mdescLeft"> </td><td class="mdescRight">precinct width <a href="#ac94549d3b177cd66d2cb26d2a41c5df6">More...</a><br /></td></tr>
99 <tr class="separator:ac94549d3b177cd66d2cb26d2a41c5df6"><td class="memSeparator" colspan="2"> </td></tr>
100 <tr class="memitem:aafadcf7ae52525e66644e4b6d90702ea"><td class="memItemLeft" align="right" valign="top"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structopj__tccp__info.html#aafadcf7ae52525e66644e4b6d90702ea">prch</a> [<a class="el" href="openjpeg_8h.html#a86df1f90c5bd2c069ed8ea20712664d8">OPJ_J2K_MAXRLVLS</a>]</td></tr>
101 <tr class="memdesc:aafadcf7ae52525e66644e4b6d90702ea"><td class="mdescLeft"> </td><td class="mdescRight">precinct height <a href="#aafadcf7ae52525e66644e4b6d90702ea">More...</a><br /></td></tr>
102 <tr class="separator:aafadcf7ae52525e66644e4b6d90702ea"><td class="memSeparator" colspan="2"> </td></tr>
104 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
105 <div class="textblock"><p>Tile-component coding parameters information. </p>
106 </div><h2 class="groupheader">Field Documentation</h2>
107 <a class="anchor" id="a2ff0c978e5f34d71602a0e5dbab3794b"></a>
108 <div class="memitem">
109 <div class="memproto">
110 <table class="memname">
112 <td class="memname"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> opj_tccp_info::cblkh</td>
115 </div><div class="memdoc">
117 <p>log2 of code-blocks height </p>
119 <p>Referenced by <a class="el" href="j2k_8h.html#a4e0a9f42c8240828e7293a064c143a24">j2k_get_cstr_info()</a>.</p>
123 <a class="anchor" id="a94c5b17f636a7a070de7a9c70864eb2a"></a>
124 <div class="memitem">
125 <div class="memproto">
126 <table class="memname">
128 <td class="memname"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> opj_tccp_info::cblksty</td>
131 </div><div class="memdoc">
133 <p>code-block coding style </p>
135 <p>Referenced by <a class="el" href="j2k_8h.html#a4e0a9f42c8240828e7293a064c143a24">j2k_get_cstr_info()</a>.</p>
139 <a class="anchor" id="a478efbaa1f919968e499a888bb3c2621"></a>
140 <div class="memitem">
141 <div class="memproto">
142 <table class="memname">
144 <td class="memname"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> opj_tccp_info::cblkw</td>
147 </div><div class="memdoc">
149 <p>log2 of code-blocks width </p>
151 <p>Referenced by <a class="el" href="j2k_8h.html#a4e0a9f42c8240828e7293a064c143a24">j2k_get_cstr_info()</a>.</p>
155 <a class="anchor" id="aafded29af274e144a964bb13e88cc9d8"></a>
156 <div class="memitem">
157 <div class="memproto">
158 <table class="memname">
160 <td class="memname"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> opj_tccp_info::compno</td>
163 </div><div class="memdoc">
165 <p>component index </p>
169 <a class="anchor" id="ae37109d3d593d69d7783a8a73ec88c79"></a>
170 <div class="memitem">
171 <div class="memproto">
172 <table class="memname">
174 <td class="memname"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> opj_tccp_info::csty</td>
177 </div><div class="memdoc">
181 <p>Referenced by <a class="el" href="j2k_8h.html#a4e0a9f42c8240828e7293a064c143a24">j2k_get_cstr_info()</a>.</p>
185 <a class="anchor" id="ab18c34b70814a92452cbff1e3acb0dd4"></a>
186 <div class="memitem">
187 <div class="memproto">
188 <table class="memname">
190 <td class="memname"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> opj_tccp_info::numgbits</td>
193 </div><div class="memdoc">
195 <p>number of guard bits </p>
197 <p>Referenced by <a class="el" href="j2k_8h.html#a4e0a9f42c8240828e7293a064c143a24">j2k_get_cstr_info()</a>.</p>
201 <a class="anchor" id="a9a0ed66904bfe8bcfce631904f32a57e"></a>
202 <div class="memitem">
203 <div class="memproto">
204 <table class="memname">
206 <td class="memname"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> opj_tccp_info::numresolutions</td>
209 </div><div class="memdoc">
211 <p>number of resolutions </p>
213 <p>Referenced by <a class="el" href="j2k_8h.html#a4e0a9f42c8240828e7293a064c143a24">j2k_get_cstr_info()</a>.</p>
217 <a class="anchor" id="aafadcf7ae52525e66644e4b6d90702ea"></a>
218 <div class="memitem">
219 <div class="memproto">
220 <table class="memname">
222 <td class="memname"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> opj_tccp_info::prch[<a class="el" href="openjpeg_8h.html#a86df1f90c5bd2c069ed8ea20712664d8">OPJ_J2K_MAXRLVLS</a>]</td>
225 </div><div class="memdoc">
227 <p>precinct height </p>
229 <p>Referenced by <a class="el" href="j2k_8h.html#a4e0a9f42c8240828e7293a064c143a24">j2k_get_cstr_info()</a>.</p>
233 <a class="anchor" id="ac94549d3b177cd66d2cb26d2a41c5df6"></a>
234 <div class="memitem">
235 <div class="memproto">
236 <table class="memname">
238 <td class="memname"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> opj_tccp_info::prcw[<a class="el" href="openjpeg_8h.html#a86df1f90c5bd2c069ed8ea20712664d8">OPJ_J2K_MAXRLVLS</a>]</td>
241 </div><div class="memdoc">
243 <p>precinct width </p>
245 <p>Referenced by <a class="el" href="j2k_8h.html#a4e0a9f42c8240828e7293a064c143a24">j2k_get_cstr_info()</a>.</p>
249 <a class="anchor" id="a096e7d038c212c6c8eaf75ff06939d4f"></a>
250 <div class="memitem">
251 <div class="memproto">
252 <table class="memname">
254 <td class="memname"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> opj_tccp_info::qmfbid</td>
257 </div><div class="memdoc">
259 <p>discrete wavelet transform identifier: 0 = 9-7 irreversible, 1 = 5-3 reversible </p>
261 <p>Referenced by <a class="el" href="j2k_8h.html#a4e0a9f42c8240828e7293a064c143a24">j2k_get_cstr_info()</a>.</p>
265 <a class="anchor" id="ac4c5bb35ad0d5208cad5164c7b342ced"></a>
266 <div class="memitem">
267 <div class="memproto">
268 <table class="memname">
270 <td class="memname"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> opj_tccp_info::qntsty</td>
273 </div><div class="memdoc">
275 <p>quantisation style </p>
277 <p>Referenced by <a class="el" href="j2k_8h.html#a4e0a9f42c8240828e7293a064c143a24">j2k_get_cstr_info()</a>.</p>
281 <a class="anchor" id="a495d19259ef11a4887dd4027e7983f35"></a>
282 <div class="memitem">
283 <div class="memproto">
284 <table class="memname">
286 <td class="memname"><a class="el" href="openjpeg_8h.html#a3cec91ef9e73677f0dbd60d4e42401b9">OPJ_INT32</a> opj_tccp_info::roishift</td>
289 </div><div class="memdoc">
291 <p>Region Of Interest shift. </p>
293 <p>Referenced by <a class="el" href="j2k_8h.html#a4e0a9f42c8240828e7293a064c143a24">j2k_get_cstr_info()</a>.</p>
297 <a class="anchor" id="a9061c1d462e89e1b024aa369117e4182"></a>
298 <div class="memitem">
299 <div class="memproto">
300 <table class="memname">
302 <td class="memname"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> opj_tccp_info::stepsizes_expn[<a class="el" href="openjpeg_8h.html#a3c4792de45c6b5b13112be890d502b0d">OPJ_J2K_MAXBANDS</a>]</td>
305 </div><div class="memdoc">
307 <p>stepsizes used for quantization </p>
309 <p>Referenced by <a class="el" href="j2k_8h.html#a4e0a9f42c8240828e7293a064c143a24">j2k_get_cstr_info()</a>.</p>
313 <a class="anchor" id="abf244dd9106b1db867e32a6abb84a9b5"></a>
314 <div class="memitem">
315 <div class="memproto">
316 <table class="memname">
318 <td class="memname"><a class="el" href="openjpeg_8h.html#a4cb1e6e6b6ef2df499d5c02f7df54cbb">OPJ_UINT32</a> opj_tccp_info::stepsizes_mant[<a class="el" href="openjpeg_8h.html#a3c4792de45c6b5b13112be890d502b0d">OPJ_J2K_MAXBANDS</a>]</td>
321 </div><div class="memdoc">
323 <p>stepsizes used for quantization </p>
325 <p>Referenced by <a class="el" href="j2k_8h.html#a4e0a9f42c8240828e7293a064c143a24">j2k_get_cstr_info()</a>.</p>
329 <hr/>The documentation for this struct was generated from the following file:<ul>
330 <li><a class="el" href="openjpeg_8h_source.html">openjpeg.h</a></li>
332 </div><!-- contents -->
333 <!-- start footer part -->
334 <hr class="footer"/><address class="footer"><small>
335 Generated by  <a href="http://www.doxygen.org/index.html">
336 <img class="footer" src="doxygen.png" alt="doxygen"/>