OLD | NEW |
(Empty) | |
| 1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.or
g/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.3.1"/> |
| 7 <title>TurboJPEG: tjtransform 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="search/search.css" rel="stylesheet" type="text/css"/> |
| 12 <script type="text/javascript" src="search/search.js"></script> |
| 13 <script type="text/javascript"> |
| 14 $(document).ready(function() { searchBox.OnSelectItem(0); }); |
| 15 </script> |
| 16 <link href="doxygen.css" rel="stylesheet" type="text/css" /> |
| 17 <link href="doxygen-extra.css" rel="stylesheet" type="text/css"/> |
| 18 </head> |
| 19 <body> |
| 20 <div id="top"><!-- do not remove this div, it is closed by doxygen! --> |
| 21 <div id="titlearea"> |
| 22 <table cellspacing="0" cellpadding="0"> |
| 23 <tbody> |
| 24 <tr style="height: 56px;"> |
| 25 <td style="padding-left: 0.5em;"> |
| 26 <div id="projectname">TurboJPEG |
| 27  <span id="projectnumber">1.5</span> |
| 28 </div> |
| 29 </td> |
| 30 </tr> |
| 31 </tbody> |
| 32 </table> |
| 33 </div> |
| 34 <!-- end header part --> |
| 35 <!-- Generated by Doxygen 1.8.3.1 --> |
| 36 <script type="text/javascript"> |
| 37 var searchBox = new SearchBox("searchBox", "search",false,'Search'); |
| 38 </script> |
| 39 <div id="navrow1" class="tabs"> |
| 40 <ul class="tablist"> |
| 41 <li><a href="index.html"><span>Main Page</span></a></li> |
| 42 <li><a href="modules.html"><span>Modules</span></a></li> |
| 43 <li class="current"><a href="annotated.html"><span>Data Structures</s
pan></a></li> |
| 44 <li> |
| 45 <div id="MSearchBox" class="MSearchBoxInactive"> |
| 46 <span class="left"> |
| 47 <img id="MSearchSelect" src="search/mag_sel.png" |
| 48 onmouseover="return searchBox.OnSearchSelectShow()" |
| 49 onmouseout="return searchBox.OnSearchSelectHide()" |
| 50 alt=""/> |
| 51 <input type="text" id="MSearchField" value="Search" accesskey="S" |
| 52 onfocus="searchBox.OnSearchFieldFocus(true)" |
| 53 onblur="searchBox.OnSearchFieldFocus(false)" |
| 54 onkeyup="searchBox.OnSearchFieldChange(event)"/> |
| 55 </span><span class="right"> |
| 56 <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()
"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a> |
| 57 </span> |
| 58 </div> |
| 59 </li> |
| 60 </ul> |
| 61 </div> |
| 62 <div id="navrow2" class="tabs2"> |
| 63 <ul class="tablist"> |
| 64 <li><a href="annotated.html"><span>Data Structures</span></a></li> |
| 65 <li><a href="classes.html"><span>Data Structure Index</span></a>
</li> |
| 66 <li><a href="functions.html"><span>Data Fields</span></a></li> |
| 67 </ul> |
| 68 </div> |
| 69 <!-- window showing the filter options --> |
| 70 <div id="MSearchSelectWindow" |
| 71 onmouseover="return searchBox.OnSearchSelectShow()" |
| 72 onmouseout="return searchBox.OnSearchSelectHide()" |
| 73 onkeydown="return searchBox.OnSearchSelectKey(event)"> |
| 74 <a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(
0)"><span class="SelectionMark"> </span>All</a><a class="SelectItem" href="
javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMa
rk"> </span>Data Structures</a><a class="SelectItem" href="javascript:void(
0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark"> </span
>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox
.OnSelectItem(3)"><span class="SelectionMark"> </span>Variables</a><a class
="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><spa
n class="SelectionMark"> </span>Typedefs</a><a class="SelectItem" href="jav
ascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark"
> </span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" on
click="searchBox.OnSelectItem(6)"><span class="SelectionMark"> </span>Enume
rator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSe
lectItem(7)"><span class="SelectionMark"> </span>Groups</a></div> |
| 75 |
| 76 <!-- iframe showing the search results (closed by default) --> |
| 77 <div id="MSearchResultsWindow"> |
| 78 <iframe src="javascript:void(0)" frameborder="0" |
| 79 name="MSearchResults" id="MSearchResults"> |
| 80 </iframe> |
| 81 </div> |
| 82 |
| 83 </div><!-- top --> |
| 84 <div class="header"> |
| 85 <div class="summary"> |
| 86 <a href="#pub-attribs">Data Fields</a> </div> |
| 87 <div class="headertitle"> |
| 88 <div class="title">tjtransform Struct Reference<div class="ingroups"><a class="e
l" href="group___turbo_j_p_e_g.html">TurboJPEG</a></div></div> </div> |
| 89 </div><!--header--> |
| 90 <div class="contents"> |
| 91 |
| 92 <p>Lossless transform. |
| 93 <a href="structtjtransform.html#details">More...</a></p> |
| 94 |
| 95 <p><code>#include <turbojpeg.h></code></p> |
| 96 <table class="memberdecls"> |
| 97 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs
"></a> |
| 98 Data Fields</h2></td></tr> |
| 99 <tr class="memitem:ac324e5e442abec8a961e5bf219db12cf"><td class="memItemLeft" al
ign="right" valign="top"><a class="el" href="structtjregion.html">tjregion</a>&#
160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtjtr
ansform.html#ac324e5e442abec8a961e5bf219db12cf">r</a></td></tr> |
| 100 <tr class="memdesc:ac324e5e442abec8a961e5bf219db12cf"><td class="mdescLeft">
0;</td><td class="mdescRight">Cropping region. <a href="#ac324e5e442abec8a961e5
bf219db12cf">More...</a><br/></td></tr> |
| 101 <tr class="separator:ac324e5e442abec8a961e5bf219db12cf"><td class="memSeparator"
colspan="2"> </td></tr> |
| 102 <tr class="memitem:a2525aab4ba6978a1c273f74fef50e498"><td class="memItemLeft" al
ign="right" valign="top">int </td><td class="memItemRight" valign="bottom">
<a class="el" href="structtjtransform.html#a2525aab4ba6978a1c273f74fef50e498">op
</a></td></tr> |
| 103 <tr class="memdesc:a2525aab4ba6978a1c273f74fef50e498"><td class="mdescLeft">
0;</td><td class="mdescRight">One of the <a class="el" href="group___turbo_j_p_e
_g.html#ga2de531af4e7e6c4f124908376b354866">transform operations</a>. <a href="
#a2525aab4ba6978a1c273f74fef50e498">More...</a><br/></td></tr> |
| 104 <tr class="separator:a2525aab4ba6978a1c273f74fef50e498"><td class="memSeparator"
colspan="2"> </td></tr> |
| 105 <tr class="memitem:ac0e74655baa4402209a21e1ae481c8f6"><td class="memItemLeft" al
ign="right" valign="top">int </td><td class="memItemRight" valign="bottom">
<a class="el" href="structtjtransform.html#ac0e74655baa4402209a21e1ae481c8f6">op
tions</a></td></tr> |
| 106 <tr class="memdesc:ac0e74655baa4402209a21e1ae481c8f6"><td class="mdescLeft">
0;</td><td class="mdescRight">The bitwise OR of one of more of the <a class="el"
href="group___turbo_j_p_e_g.html#ga9c771a757fc1294add611906b89ab2d2">transform
options</a>. <a href="#ac0e74655baa4402209a21e1ae481c8f6">More...</a><br/></td>
</tr> |
| 107 <tr class="separator:ac0e74655baa4402209a21e1ae481c8f6"><td class="memSeparator"
colspan="2"> </td></tr> |
| 108 <tr class="memitem:a688fe8f1a8ecc12a538d9e561cf338e3"><td class="memItemLeft" al
ign="right" valign="top">void * </td><td class="memItemRight" valign="botto
m"><a class="el" href="structtjtransform.html#a688fe8f1a8ecc12a538d9e561cf338e3"
>data</a></td></tr> |
| 109 <tr class="memdesc:a688fe8f1a8ecc12a538d9e561cf338e3"><td class="mdescLeft">
0;</td><td class="mdescRight">Arbitrary data that can be accessed within the bod
y of the callback function. <a href="#a688fe8f1a8ecc12a538d9e561cf338e3">More..
.</a><br/></td></tr> |
| 110 <tr class="separator:a688fe8f1a8ecc12a538d9e561cf338e3"><td class="memSeparator"
colspan="2"> </td></tr> |
| 111 <tr class="memitem:a43ee1bcdd2a8d7249a756774f78793c1"><td class="memItemLeft" al
ign="right" valign="top">int(* </td><td class="memItemRight" valign="bottom
"><a class="el" href="structtjtransform.html#a43ee1bcdd2a8d7249a756774f78793c1">
customFilter</a> )(short *coeffs, <a class="el" href="structtjregion.html">tjreg
ion</a> arrayRegion, <a class="el" href="structtjregion.html">tjregion</a> plane
Region, int componentIndex, int transformIndex, struct <a class="el" href="struc
ttjtransform.html">tjtransform</a> *transform)</td></tr> |
| 112 <tr class="memdesc:a43ee1bcdd2a8d7249a756774f78793c1"><td class="mdescLeft">
0;</td><td class="mdescRight">A callback function that can be used to modify the
DCT coefficients after they are losslessly transformed but before they are tran
scoded to a new JPEG image. <a href="#a43ee1bcdd2a8d7249a756774f78793c1">More..
.</a><br/></td></tr> |
| 113 <tr class="separator:a43ee1bcdd2a8d7249a756774f78793c1"><td class="memSeparator"
colspan="2"> </td></tr> |
| 114 </table> |
| 115 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description<
/h2> |
| 116 <div class="textblock"><p>Lossless transform. </p> |
| 117 </div><h2 class="groupheader">Field Documentation</h2> |
| 118 <a class="anchor" id="a43ee1bcdd2a8d7249a756774f78793c1"></a> |
| 119 <div class="memitem"> |
| 120 <div class="memproto"> |
| 121 <table class="memname"> |
| 122 <tr> |
| 123 <td class="memname">int(* tjtransform::customFilter)(short *coeffs, <a
class="el" href="structtjregion.html">tjregion</a> arrayRegion, <a class="el" h
ref="structtjregion.html">tjregion</a> planeRegion, int componentIndex, int tran
sformIndex, struct <a class="el" href="structtjtransform.html">tjtransform</a> *
transform)</td> |
| 124 </tr> |
| 125 </table> |
| 126 </div><div class="memdoc"> |
| 127 |
| 128 <p>A callback function that can be used to modify the DCT coefficients after the
y are losslessly transformed but before they are transcoded to a new JPEG image.
</p> |
| 129 <p>This allows for custom filters or other transformations to be applied in the
frequency domain.</p> |
| 130 <dl class="params"><dt>Parameters</dt><dd> |
| 131 <table class="params"> |
| 132 <tr><td class="paramname">coeffs</td><td>pointer to an array of transformed
DCT coefficients. (NOTE: this pointer is not guaranteed to be valid once the cal
lback returns, so applications wishing to hand off the DCT coefficients to anoth
er function or library should make a copy of them within the body of the callbac
k.)</td></tr> |
| 133 <tr><td class="paramname">arrayRegion</td><td><a class="el" href="structtjre
gion.html" title="Cropping region.">tjregion</a> structure containing the width
and height of the array pointed to by <code>coeffs</code> as well as its offset
relative to the component plane. TurboJPEG implementations may choose to split e
ach component plane into multiple DCT coefficient arrays and call the callback f
unction once for each array.</td></tr> |
| 134 <tr><td class="paramname">planeRegion</td><td><a class="el" href="structtjre
gion.html" title="Cropping region.">tjregion</a> structure containing the width
and height of the component plane to which <code>coeffs</code> belongs</td></tr> |
| 135 <tr><td class="paramname">componentID</td><td>ID number of the component pla
ne to which <code>coeffs</code> belongs (Y, Cb, and Cr have, respectively, ID's
of 0, 1, and 2 in typical JPEG images.)</td></tr> |
| 136 <tr><td class="paramname">transformID</td><td>ID number of the transformed i
mage to which <code>coeffs</code> belongs. This is the same as the index of the
transform in the <code>transforms</code> array that was passed to <a class="el"
href="group___turbo_j_p_e_g.html#gad02cd42b69f193a0623a9c801788df3a" title="Loss
lessly transform a JPEG image into another JPEG image.">tjTransform()</a>.</td><
/tr> |
| 137 <tr><td class="paramname">transform</td><td>a pointer to a <a class="el" hre
f="structtjtransform.html" title="Lossless transform.">tjtransform</a> structure
that specifies the parameters and/or cropping region for this transform</td></t
r> |
| 138 </table> |
| 139 </dd> |
| 140 </dl> |
| 141 <dl class="section return"><dt>Returns</dt><dd>0 if the callback was successful,
or -1 if an error occurred. </dd></dl> |
| 142 |
| 143 </div> |
| 144 </div> |
| 145 <a class="anchor" id="a688fe8f1a8ecc12a538d9e561cf338e3"></a> |
| 146 <div class="memitem"> |
| 147 <div class="memproto"> |
| 148 <table class="memname"> |
| 149 <tr> |
| 150 <td class="memname">void* tjtransform::data</td> |
| 151 </tr> |
| 152 </table> |
| 153 </div><div class="memdoc"> |
| 154 |
| 155 <p>Arbitrary data that can be accessed within the body of the callback function.
</p> |
| 156 |
| 157 </div> |
| 158 </div> |
| 159 <a class="anchor" id="a2525aab4ba6978a1c273f74fef50e498"></a> |
| 160 <div class="memitem"> |
| 161 <div class="memproto"> |
| 162 <table class="memname"> |
| 163 <tr> |
| 164 <td class="memname">int tjtransform::op</td> |
| 165 </tr> |
| 166 </table> |
| 167 </div><div class="memdoc"> |
| 168 |
| 169 <p>One of the <a class="el" href="group___turbo_j_p_e_g.html#ga2de531af4e7e6c4f1
24908376b354866">transform operations</a>. </p> |
| 170 |
| 171 </div> |
| 172 </div> |
| 173 <a class="anchor" id="ac0e74655baa4402209a21e1ae481c8f6"></a> |
| 174 <div class="memitem"> |
| 175 <div class="memproto"> |
| 176 <table class="memname"> |
| 177 <tr> |
| 178 <td class="memname">int tjtransform::options</td> |
| 179 </tr> |
| 180 </table> |
| 181 </div><div class="memdoc"> |
| 182 |
| 183 <p>The bitwise OR of one of more of the <a class="el" href="group___turbo_j_p_e_
g.html#ga9c771a757fc1294add611906b89ab2d2">transform options</a>. </p> |
| 184 |
| 185 </div> |
| 186 </div> |
| 187 <a class="anchor" id="ac324e5e442abec8a961e5bf219db12cf"></a> |
| 188 <div class="memitem"> |
| 189 <div class="memproto"> |
| 190 <table class="memname"> |
| 191 <tr> |
| 192 <td class="memname"><a class="el" href="structtjregion.html">tjregion<
/a> tjtransform::r</td> |
| 193 </tr> |
| 194 </table> |
| 195 </div><div class="memdoc"> |
| 196 |
| 197 <p>Cropping region. </p> |
| 198 |
| 199 </div> |
| 200 </div> |
| 201 <hr/>The documentation for this struct was generated from the following file:<ul
> |
| 202 <li>turbojpeg.h</li> |
| 203 </ul> |
| 204 </div><!-- contents --> |
| 205 <!-- start footer part --> |
| 206 <hr class="footer"/><address class="footer"><small> |
| 207 Generated by  <a href="http://www.doxygen.org/index.html"> |
| 208 <img class="footer" src="doxygen.png" alt="doxygen"/> |
| 209 </a> 1.8.3.1 |
| 210 </small></address> |
| 211 </body> |
| 212 </html> |
OLD | NEW |