Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > 4f45e7bdfd4a5ff17f5f8eaab90d017f > files > 1517

albumshaper-2.1-6mdv2010.0.i586.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>AlbumShaper: redEye_internal.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css">
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.5.9 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="annotated.html"><span>Classes</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <li><a href="files.html"><span>File&nbsp;List</span></a></li>
      <li><a href="globals.html"><span>File&nbsp;Members</span></a></li>
    </ul>
  </div>
<h1>redEye_internal.h</h1><a href="redEye__internal_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">//==============================================</span>
<a name="l00002"></a>00002 <span class="comment">//  copyright            : (C) 2003-2005 by Will Stokes</span>
<a name="l00003"></a>00003 <span class="comment">//==============================================</span>
<a name="l00004"></a>00004 <span class="comment">//  This program is free software; you can redistribute it</span>
<a name="l00005"></a>00005 <span class="comment">//  and/or modify it under the terms of the GNU General</span>
<a name="l00006"></a>00006 <span class="comment">//  Public License as published by the Free Software</span>
<a name="l00007"></a>00007 <span class="comment">//  Foundation; either version 2 of the License, or</span>
<a name="l00008"></a>00008 <span class="comment">//  (at your option) any later version.</span>
<a name="l00009"></a>00009 <span class="comment">//==============================================</span>
<a name="l00010"></a>00010 
<a name="l00011"></a>00011 <span class="preprocessor">#ifndef BACKEND_ENHANCEMENTS_REDEYE_INTERNAL_H</span>
<a name="l00012"></a>00012 <span class="preprocessor"></span><span class="preprocessor">#define BACKEND_ENHANCEMENTS_REDEYE_INTERNAL_H</span>
<a name="l00013"></a>00013 <span class="preprocessor"></span>
<a name="l00014"></a>00014 <span class="preprocessor">#include &lt;qimage.h&gt;</span>
<a name="l00015"></a>00015 <span class="preprocessor">#include &lt;qvaluestack.h&gt;</span>
<a name="l00016"></a>00016 <span class="preprocessor">#include &lt;qpoint.h&gt;</span>
<a name="l00017"></a>00017 
<a name="l00018"></a>00018 <span class="comment">//--------------------</span>
<a name="l00019"></a>00019 <span class="comment">//forward declarations</span>
<a name="l00020"></a>00020 <span class="comment">//--------------------</span>
<a name="l00021"></a><a class="code" href="redEye__internal_8h.html#65b682074aef9e63bb1dad48c3e9e9df">00021</a> <span class="keyword">class </span><a class="code" href="classStatusWidget.html">StatusWidget</a>;
<a name="l00022"></a>00022 
<a name="l00023"></a>00023 <span class="comment">//------  </span>
<a name="l00024"></a>00024 <span class="comment">//handle on status widget</span>
<a name="l00025"></a>00025 <a class="code" href="classStatusWidget.html">StatusWidget</a>* <a class="code" href="redEye__internal_8h.html#65b682074aef9e63bb1dad48c3e9e9df">status</a>;
<a name="l00026"></a>00026 
<a name="l00027"></a>00027 <span class="comment">//update increment variable used to determine when progress bar should be updated</span>
<a name="l00028"></a><a class="code" href="redEye__internal_8h.html#32598f506d413f48cda8e1c930dae6b3">00028</a> <span class="keywordtype">int</span> <a class="code" href="redEye__internal_8h.html#32598f506d413f48cda8e1c930dae6b3">updateIncrement</a>;
<a name="l00029"></a>00029 
<a name="l00030"></a>00030 <span class="comment">//progress tracker, used to determine when to update the progress bar</span>
<a name="l00031"></a><a class="code" href="redEye__internal_8h.html#caa08422437cae250a76ca488cbe1567">00031</a> <span class="keywordtype">int</span> <a class="code" href="redEye__internal_8h.html#caa08422437cae250a76ca488cbe1567">newProgress</a>;
<a name="l00032"></a>00032 
<a name="l00033"></a>00033 <span class="comment">//original image</span>
<a name="l00034"></a><a class="code" href="redEye__internal_8h.html#5ff9c5ed4b72841b490d7a3ce1602423">00034</a> QImage <a class="code" href="redEye__internal_8h.html#5ff9c5ed4b72841b490d7a3ce1602423">rawImage</a>;
<a name="l00035"></a>00035 
<a name="l00036"></a>00036 <span class="comment">//modified image</span>
<a name="l00037"></a><a class="code" href="redEye__internal_8h.html#63116a8b94b4ed0e99ddcb7f6f3bd919">00037</a> QImage* <a class="code" href="redEye__internal_8h.html#63116a8b94b4ed0e99ddcb7f6f3bd919">editedImage</a>;
<a name="l00038"></a>00038 <span class="comment">//------  </span>
<a name="l00039"></a>00039 <span class="comment">//find region within image that blob pixels are within</span>
<a name="l00040"></a>00040 <span class="keywordtype">void</span> <a class="code" href="redEye_8cpp.html#bf1a28f820dfa8bba3056128a76e2b31">findRegionOfInterest</a>(QPoint topLeftExtreme, QPoint bottomRightExtreme);
<a name="l00041"></a>00041 
<a name="l00042"></a><a class="code" href="redEye__internal_8h.html#6a9aebec61b1a6732045c187a6156f4f">00042</a> QPoint <a class="code" href="redEye__internal_8h.html#6a9aebec61b1a6732045c187a6156f4f">topLeft</a>, <a class="code" href="redEye__internal_8h.html#75e80edb449bc9a0925be60719132bd0">bottomRight</a>;
<a name="l00043"></a>00043 <span class="comment">//------- </span>
<a name="l00044"></a>00044 <span class="comment">//find all blobs, including their size (pixel count) and width/height aspect ratio</span>
<a name="l00045"></a>00045 <span class="keywordtype">void</span> <a class="code" href="redEye_8cpp.html#ee8db73b8ae2738abf7e7d45530e2aea">findBlobs</a>();
<a name="l00046"></a>00046 
<a name="l00047"></a><a class="code" href="redEye__internal_8h.html#0ec7142cbb09aaf2b806440129c0884c">00047</a> <span class="keywordtype">int</span> <a class="code" href="redEye__internal_8h.html#0ec7142cbb09aaf2b806440129c0884c">regionWidth</a>, <a class="code" href="redEye__internal_8h.html#d61f84d3753db9df2a7ecee3c3323770">regionHeight</a>;  
<a name="l00048"></a>00048 
<a name="l00049"></a><a class="code" href="redEye__internal_8h.html#9ca3db90b1887965fb41c967436c63d8">00049</a> <span class="keywordtype">int</span> <a class="code" href="redEye__internal_8h.html#9ca3db90b1887965fb41c967436c63d8">blobPixelCount</a>;
<a name="l00050"></a><a class="code" href="redEye__internal_8h.html#8ab8b83c4822f5950cb6b7c17ce2d740">00050</a> QPoint <a class="code" href="redEye__internal_8h.html#8ab8b83c4822f5950cb6b7c17ce2d740">blobTopLeft</a>, <a class="code" href="redEye__internal_8h.html#d1ca7aedb85d44e293176769bdfea6c8">blobBottomRight</a>;
<a name="l00051"></a>00051 
<a name="l00052"></a><a class="code" href="redEye__internal_8h.html#670ca124358ed2ce8380d0b335dedda1">00052</a> <span class="keywordtype">int</span>* <a class="code" href="redEye__internal_8h.html#670ca124358ed2ce8380d0b335dedda1">regionOfInterest</a>;
<a name="l00053"></a>00053 <span class="keywordtype">void</span> <a class="code" href="redEye_8cpp.html#53e8ae2ad8b93ea9947e891d10471862">pushPixel</a>(<span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y, <span class="keywordtype">int</span> <span class="keywordtype">id</span>);
<a name="l00054"></a><a class="code" href="redEye__internal_8h.html#2c631e95efba7b4f9f3100c70b51dab5">00054</a> QValueStack&lt;QPoint&gt; <a class="code" href="redEye__internal_8h.html#2c631e95efba7b4f9f3100c70b51dab5">spreadablePixels</a>;
<a name="l00055"></a>00055 
<a name="l00056"></a><a class="code" href="redEye__internal_8h.html#f55dfde32d7c01326d7fba53fc627296">00056</a> QValueStack&lt;int&gt; <a class="code" href="redEye__internal_8h.html#f55dfde32d7c01326d7fba53fc627296">blobIDs</a>;
<a name="l00057"></a><a class="code" href="redEye__internal_8h.html#9da65c9567b26aa798fbd74c220a6322">00057</a> QValueStack&lt;int&gt; <a class="code" href="redEye__internal_8h.html#9da65c9567b26aa798fbd74c220a6322">blobSizes</a>;
<a name="l00058"></a><a class="code" href="redEye__internal_8h.html#4e2f76562964b5c6e1224f547cff0be7">00058</a> QValueStack&lt;double&gt; <a class="code" href="redEye__internal_8h.html#4e2f76562964b5c6e1224f547cff0be7">blobAspectRatios</a>;  
<a name="l00059"></a>00059 <span class="comment">//-------  </span>
<a name="l00060"></a>00060 <span class="comment">//sort blob list by decreasing size (pixel count)</span>
<a name="l00061"></a>00061 <span class="keywordtype">void</span> <a class="code" href="redEye_8cpp.html#3aaacc5ca86e794b9b1eb5cbae4b33c0">sortBlobsByDecreasingSize</a>();
<a name="l00062"></a>00062 
<a name="l00063"></a><a class="code" href="redEye__internal_8h.html#a46d418947b61aba8afc97ea215333a6">00063</a> <span class="keywordtype">int</span> <a class="code" href="redEye__internal_8h.html#a46d418947b61aba8afc97ea215333a6">blobCount</a>;
<a name="l00064"></a><a class="code" href="redEye__internal_8h.html#6081d5fc46a8899b4beb60b0df7dd190">00064</a> <span class="keywordtype">int</span>* <a class="code" href="redEye__internal_8h.html#6081d5fc46a8899b4beb60b0df7dd190">ids</a>;
<a name="l00065"></a><a class="code" href="redEye__internal_8h.html#fcc291f06aa904173ea1ada4741707f6">00065</a> <span class="keywordtype">int</span>* <a class="code" href="redEye__internal_8h.html#fcc291f06aa904173ea1ada4741707f6">sizes</a>;
<a name="l00066"></a><a class="code" href="redEye__internal_8h.html#6cb43dbc00001c7da1b1a22be982a58a">00066</a> <span class="keywordtype">double</span>* <a class="code" href="redEye__internal_8h.html#6cb43dbc00001c7da1b1a22be982a58a">ratios</a>;
<a name="l00067"></a>00067 <span class="comment">//------- </span>
<a name="l00068"></a>00068 <span class="comment">//find biggest two consecutive blobs with similar aspect ratios</span>
<a name="l00069"></a>00069 <span class="keywordtype">void</span> <a class="code" href="redEye_8cpp.html#7f1ea49f9377698b39bbe4c95d3dfacf">findBestTwoBlobs</a>();
<a name="l00070"></a>00070 
<a name="l00071"></a><a class="code" href="redEye__internal_8h.html#bff687cb542be70b85afa82d0c3496d0">00071</a> <span class="keywordtype">int</span> <a class="code" href="redEye__internal_8h.html#0c133898e18cb9e8871148f231b91499">id1</a>, <a class="code" href="redEye__internal_8h.html#bff687cb542be70b85afa82d0c3496d0">id2</a>;
<a name="l00072"></a>00072 <span class="comment">//-------   </span>
<a name="l00073"></a>00073 <span class="comment">//desaturate selected blobs</span>
<a name="l00074"></a>00074 <span class="keywordtype">void</span> <a class="code" href="redEye_8cpp.html#58dd38d7509fe0a51a8f364190018018">desaturateBlobs</a>();
<a name="l00075"></a>00075 
<a name="l00076"></a>00076 <span class="comment">//desaturate entire image - only used if no two good blobs found</span>
<a name="l00077"></a>00077 <span class="keywordtype">void</span> <a class="code" href="redEye_8cpp.html#f4dcda43e955d647a9c8e1f00056a41c">desaturateEntireImage</a>(QPoint topLeftExtreme, QPoint bottomRightExtreme);
<a name="l00078"></a>00078 
<a name="l00079"></a>00079 <span class="keywordtype">bool</span> <a class="code" href="redEye_8cpp.html#996bbc1105cce6820c704c4b1174981c">IDedPixel</a>( <span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y);
<a name="l00080"></a>00080 <span class="keywordtype">double</span> <a class="code" href="redEye_8cpp.html#7a6d47eeb0f1fbac201599af4bda8719">desaturateAlpha</a>(<span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y);
<a name="l00081"></a>00081 <span class="comment">//------</span>
<a name="l00082"></a>00082 
<a name="l00083"></a>00083 <span class="preprocessor">#endif //BACKEND_ENHANCEMENTS_REDEYE_INTERNAL_H</span>
</pre></div></div>
<hr size="1"><address style="text-align: right;"><small>Generated on Sun Aug 23 02:34:27 2009 for AlbumShaper by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.9 </small></address>
</body>
</html>