aboutsummaryrefslogtreecommitdiffstats
path: root/doc/html/HSL_8hpp_source.html
diff options
context:
space:
mode:
authorcathook <b01902109@csie.ntu.edu.tw>2014-06-23 17:03:55 +0800
committercathook <b01902109@csie.ntu.edu.tw>2014-06-23 17:03:55 +0800
commitbafcb16a9048268c78210c65577ce7ec7b2577d0 (patch)
tree989725dd680de7b40f833dd78e59008808b26b76 /doc/html/HSL_8hpp_source.html
parentfe926756145c5e5cf5f315af0acdbfd85ba27543 (diff)
downloadmeow-bafcb16a9048268c78210c65577ce7ec7b2577d0.tar
meow-bafcb16a9048268c78210c65577ce7ec7b2577d0.tar.gz
meow-bafcb16a9048268c78210c65577ce7ec7b2577d0.tar.bz2
meow-bafcb16a9048268c78210c65577ce7ec7b2577d0.tar.lz
meow-bafcb16a9048268c78210c65577ce7ec7b2577d0.tar.xz
meow-bafcb16a9048268c78210c65577ce7ec7b2577d0.tar.zst
meow-bafcb16a9048268c78210c65577ce7ec7b2577d0.zip
update stylesheet.css, Self.h
Diffstat (limited to 'doc/html/HSL_8hpp_source.html')
-rw-r--r--doc/html/HSL_8hpp_source.html247
1 files changed, 247 insertions, 0 deletions
diff --git a/doc/html/HSL_8hpp_source.html b/doc/html/HSL_8hpp_source.html
new file mode 100644
index 0000000..22bcb41
--- /dev/null
+++ b/doc/html/HSL_8hpp_source.html
@@ -0,0 +1,247 @@
+<!-- HTML header for doxygen 1.8.3.1-->
+<!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.6"/>
+<title>Templates -- Meow: meowpp/colors/HSL.hpp Source File</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="navtree.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="resize.js"></script>
+<script type="text/javascript" src="navtree.js"></script>
+<script type="text/javascript">
+ $(document).ready(initResizable);
+ $(window).load(resizeHeight);
+</script>
+<link href="stylesheet.css" rel="stylesheet" type="text/css" />
+<link href="custom.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="projectlogo"><img alt="Logo" src="logo.png"/></td>
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">Templates -- Meow
+ &#160;<span id="projectnumber">1.1.4</span>
+ </div>
+ <div id="projectbrief">A C++ template which is unable and also not allowed to compile to obj-file first.</div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+</div><!-- top -->
+<div id="side-nav" class="ui-resizable side-nav-resizable">
+ <div id="nav-tree">
+ <div id="nav-tree-contents">
+ <div id="nav-sync" class="sync"></div>
+ </div>
+ </div>
+ <div id="splitbar" style="-moz-user-select:none;"
+ class="ui-resizable-handle">
+ </div>
+</div>
+<script type="text/javascript">
+$(document).ready(function(){initNavTree('HSL_8hpp_source.html','');});
+</script>
+<div id="doc-content">
+<div class="header">
+ <div class="headertitle">
+<div class="title">HSL.hpp</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="HSL_8hpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="HSL_8h.html">HSL.h</a>&quot;</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;</div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="RGB_8h.html">RGB.h</a>&quot;</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="YUV_8h.html">YUV.h</a>&quot;</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;</div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="preprocessor">#include &quot;../utility.h&quot;</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;</div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="keyword">namespace </span>meow{</div>
+<div class="line"><a name="l00009"></a><span class="lineno"><a class="line" href="classmeow_1_1HSL.html#a535248e246711f0d634afae7f31326cc"> 9</a></span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt; <span class="keyword">inline</span> <a class="code" href="classmeow_1_1HSL.html#a535248e246711f0d634afae7f31326cc">HSL&lt;T&gt;::HSL</a>(){ }</div>
+<div class="line"><a name="l00010"></a><span class="lineno"><a class="line" href="classmeow_1_1HSL.html#a7d487721b6575e6573afaf182a38b4a0"> 10</a></span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt; <span class="keyword">inline</span> <a class="code" href="classmeow_1_1HSL.html#a535248e246711f0d634afae7f31326cc">HSL&lt;T&gt;::HSL</a>(T <span class="keyword">const</span>&amp; h, T <span class="keyword">const</span>&amp; s, T <span class="keyword">const</span>&amp; l){</div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160; hsl_[0] = h; hsl_[1] = s; hsl_[2] = l;</div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160; }</div>
+<div class="line"><a name="l00013"></a><span class="lineno"><a class="line" href="classmeow_1_1HSL.html#a6e7c0b7f8999b71159c856f6c12fee7c"> 13</a></span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt; <span class="keyword">inline</span> <a class="code" href="classmeow_1_1HSL.html#a535248e246711f0d634afae7f31326cc">HSL&lt;T&gt;::HSL</a>(T <span class="keyword">const</span>* hsl){</div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160; <span class="keywordflow">for</span>(<span class="keywordtype">int</span> i = 0; i &lt; 3; i++) hsl_[i] = hsl[i];</div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160; }</div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160; </div>
+<div class="line"><a name="l00017"></a><span class="lineno"><a class="line" href="classmeow_1_1HSL.html#aa4389db431631775dddfdfa1d4b2516d"> 17</a></span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt; <span class="keyword">inline</span> T <a class="code" href="classmeow_1_1HSL.html#aa4389db431631775dddfdfa1d4b2516d">HSL&lt;T&gt;::h</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> hsl_[0]; }</div>
+<div class="line"><a name="l00018"></a><span class="lineno"><a class="line" href="classmeow_1_1HSL.html#a8586f2ff8547406af2cc268d47a9bece"> 18</a></span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt; <span class="keyword">inline</span> T <a class="code" href="classmeow_1_1HSL.html#a8586f2ff8547406af2cc268d47a9bece">HSL&lt;T&gt;::s</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> hsl_[1]; }</div>
+<div class="line"><a name="l00019"></a><span class="lineno"><a class="line" href="classmeow_1_1HSL.html#a33425776fc45b1a6872a53ad90499e90"> 19</a></span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt; <span class="keyword">inline</span> T <a class="code" href="classmeow_1_1HSL.html#a33425776fc45b1a6872a53ad90499e90">HSL&lt;T&gt;::l</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> hsl_[2]; }</div>
+<div class="line"><a name="l00020"></a><span class="lineno"><a class="line" href="classmeow_1_1HSL.html#a5916a5e44dbcac7bcb8759bd664edba0"> 20</a></span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt; <span class="keyword">inline</span> T <a class="code" href="classmeow_1_1HSL.html#a5916a5e44dbcac7bcb8759bd664edba0">HSL&lt;T&gt;::hsl</a>(<span class="keywordtype">size_t</span> i)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160; <span class="keywordflow">return</span> hsl_[std::min((<span class="keywordtype">size_t</span>)3 - 1, i)];</div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160; }</div>
+<div class="line"><a name="l00023"></a><span class="lineno"><a class="line" href="classmeow_1_1HSL.html#a1a80ecb0bc823881404a8b2a5912bc88"> 23</a></span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt; <span class="keyword">inline</span> T <a class="code" href="classmeow_1_1HSL.html#a1a80ecb0bc823881404a8b2a5912bc88">HSL&lt;T&gt;::lsh</a>(<span class="keywordtype">size_t</span> i)<span class="keyword">const</span>{<span class="keywordflow">return</span> hsl(2-i);}</div>
+<div class="line"><a name="l00024"></a><span class="lineno"><a class="line" href="classmeow_1_1HSL.html#a849c9dcf01096923f7afe4d301cb1bd7"> 24</a></span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt; <span class="keyword">inline</span> T <a class="code" href="classmeow_1_1HSL.html#aa4389db431631775dddfdfa1d4b2516d">HSL&lt;T&gt;::h</a>(T <span class="keyword">const</span>&amp; val){<span class="keywordflow">return</span> (hsl_[0]=val);}</div>
+<div class="line"><a name="l00025"></a><span class="lineno"><a class="line" href="classmeow_1_1HSL.html#a2232b01e3982350a82b9c64218e01135"> 25</a></span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt; <span class="keyword">inline</span> T <a class="code" href="classmeow_1_1HSL.html#a8586f2ff8547406af2cc268d47a9bece">HSL&lt;T&gt;::s</a>(T <span class="keyword">const</span>&amp; val){<span class="keywordflow">return</span> (hsl_[1]=val);}</div>
+<div class="line"><a name="l00026"></a><span class="lineno"><a class="line" href="classmeow_1_1HSL.html#a90ae45e95f95bcdd5e27b3bce5a67075"> 26</a></span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt; <span class="keyword">inline</span> T <a class="code" href="classmeow_1_1HSL.html#a33425776fc45b1a6872a53ad90499e90">HSL&lt;T&gt;::l</a>(T <span class="keyword">const</span>&amp; val){<span class="keywordflow">return</span> (hsl_[2]=val);}</div>
+<div class="line"><a name="l00027"></a><span class="lineno"><a class="line" href="classmeow_1_1HSL.html#ad633293d7d39312a9173b52ba6572cea"> 27</a></span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt; <span class="keyword">inline</span> T <a class="code" href="classmeow_1_1HSL.html#a5916a5e44dbcac7bcb8759bd664edba0">HSL&lt;T&gt;::hsl</a>(<span class="keywordtype">size_t</span> i, T <span class="keyword">const</span>&amp; val){</div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; <span class="keywordflow">return</span> (hsl_[std::min((<span class="keywordtype">size_t</span>)3 - 1, i)] = val);</div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; }</div>
+<div class="line"><a name="l00030"></a><span class="lineno"><a class="line" href="classmeow_1_1HSL.html#a353c0c68c740e0b7ee1ac6f0f20e5c6d"> 30</a></span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt; <span class="keyword">inline</span> T <a class="code" href="classmeow_1_1HSL.html#a1a80ecb0bc823881404a8b2a5912bc88">HSL&lt;T&gt;::lsh</a>(<span class="keywordtype">size_t</span> i, T <span class="keyword">const</span>&amp; val){</div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; <span class="keywordflow">return</span> hsl(2 - i, val);</div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; }</div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; </div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; </div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; </div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; </div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; </div>
+<div class="line"><a name="l00038"></a><span class="lineno"><a class="line" href="classmeow_1_1HSLf.html#a1d39eceb03f088155ac9eaf888802d9d"> 38</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="classmeow_1_1HSLf.html#a1d39eceb03f088155ac9eaf888802d9d">HSLf:: HSLf</a>(): <a class="code" href="classmeow_1_1HSL.html">HSL</a>(){ }</div>
+<div class="line"><a name="l00039"></a><span class="lineno"><a class="line" href="classmeow_1_1HSLf.html#a86199f1024d1a31543aa52a2ddd2e2ae"> 39</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="classmeow_1_1HSLf.html#a86199f1024d1a31543aa52a2ddd2e2ae">HSLf::~HSLf</a>(){ }</div>
+<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="classmeow_1_1HSLf.html#a8a73ac7707b52b644e02f723d1eb49fd"> 40</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="classmeow_1_1HSLf.html#a1d39eceb03f088155ac9eaf888802d9d">HSLf::HSLf</a>(<span class="keywordtype">double</span> <span class="keyword">const</span>&amp;h,<span class="keywordtype">double</span> <span class="keyword">const</span>&amp;s,<span class="keywordtype">double</span> <span class="keyword">const</span>&amp;l):<a class="code" href="classmeow_1_1HSL.html">HSL</a>(h,s,l){}</div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="classmeow_1_1HSLf.html#a4d14744c37a248fd94fccf8f0afc9bbb"> 41</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="classmeow_1_1HSLf.html#a1d39eceb03f088155ac9eaf888802d9d">HSLf::HSLf</a>(<span class="keywordtype">double</span> <span class="keyword">const</span>* hsl):<a class="code" href="classmeow_1_1HSL.html">HSL</a>(hsl){}</div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="classmeow_1_1HSLf.html#a149826315b4abba3edc86958b6de69e2"> 42</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">double</span> <a class="code" href="classmeow_1_1HSLf.html#a149826315b4abba3edc86958b6de69e2">HSLf::hMin</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> 0.0; }</div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="classmeow_1_1HSLf.html#ae558ad5682570217c00e366a5d63bd5b"> 43</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">double</span> <a class="code" href="classmeow_1_1HSLf.html#ae558ad5682570217c00e366a5d63bd5b">HSLf::hMax</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> 2.0 * <a class="code" href="namespacemeow.html#aa86d5920087a4e73078b759bc3996f76">PI</a>; }</div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="classmeow_1_1HSLf.html#a11be863a86b8d0a4c8223715d5ec551a"> 44</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">double</span> <a class="code" href="classmeow_1_1HSLf.html#a11be863a86b8d0a4c8223715d5ec551a">HSLf::sMin</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> 0.0; }</div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="classmeow_1_1HSLf.html#acf12ea2adf34f0abe2b9e03526f37d05"> 45</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">double</span> <a class="code" href="classmeow_1_1HSLf.html#acf12ea2adf34f0abe2b9e03526f37d05">HSLf::sMax</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> 1.0; }</div>
+<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="classmeow_1_1HSLf.html#a264c07bfc3de5bb6df54bf173874b0c6"> 46</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">double</span> <a class="code" href="classmeow_1_1HSLf.html#a264c07bfc3de5bb6df54bf173874b0c6">HSLf::lMin</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> 0.0; }</div>
+<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="classmeow_1_1HSLf.html#a1c7aa2c5026ca359b74a46d7c28195be"> 47</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">double</span> <a class="code" href="classmeow_1_1HSLf.html#a1c7aa2c5026ca359b74a46d7c28195be">HSLf::lMax</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> 1.0; }</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; </div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; </div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; </div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; </div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="namespacemeow.html#ab5a740e832854cb4edd4db00b0550b03"> 52</a></span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">class</span> RGB_T, <span class="keyword">class</span> HSL_T&gt; <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="namespacemeow.html#ab5a740e832854cb4edd4db00b0550b03">RGB_to_HSL</a>(</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <a class="code" href="classmeow_1_1RGB.html">RGB&lt;RGB_T&gt;</a> <span class="keyword">const</span>&amp; rgb,</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <a class="code" href="classmeow_1_1HSL.html">HSL&lt;HSL_T&gt;</a> * hsl){</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="keywordtype">double</span> r = <a class="code" href="namespacemeow.html#aebe1ad335556790c578c4cf7836fd9ca">normalize</a>(rgb.<a class="code" href="classmeow_1_1RGB.html#a348908dfe16b5a77e30c69d2126fb010">rMin</a>(), rgb.<a class="code" href="classmeow_1_1RGB.html#acf1e98a92ee1415e1278420c48976398">rMax</a>(), rgb.<a class="code" href="classmeow_1_1RGB.html#af404b8c2793659741bf4dcd3f9599c74">r</a>());</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="keywordtype">double</span> g = <a class="code" href="namespacemeow.html#aebe1ad335556790c578c4cf7836fd9ca">normalize</a>(rgb.<a class="code" href="classmeow_1_1RGB.html#abc9f6654db5515946b10c7d593fc49cd">gMin</a>(), rgb.<a class="code" href="classmeow_1_1RGB.html#ac1e1bd0f904c0bc4d68d117ec9a88932">gMax</a>(), rgb.<a class="code" href="classmeow_1_1RGB.html#ad427ada53b9a14dfc46150d54e983cfb">g</a>());</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="keywordtype">double</span> b = <a class="code" href="namespacemeow.html#aebe1ad335556790c578c4cf7836fd9ca">normalize</a>(rgb.<a class="code" href="classmeow_1_1RGB.html#ab9f74cc384f67615ad172e994a645de9">bMin</a>(), rgb.<a class="code" href="classmeow_1_1RGB.html#aa040fb899d8ecf152d95a6f7a4b3b066">bMax</a>(), rgb.<a class="code" href="classmeow_1_1RGB.html#aebff34ce6c558095ae73164a84f2e4c3">b</a>());</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="keywordtype">double</span> mx = std::max(std::max(r, g), b);</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="keywordtype">double</span> mn = std::min(std::min(r, g), b);</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="keywordtype">double</span> h, s, l;</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="keywordflow">if</span> (mx == mn ) h = 0;</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span>(mx == r &amp;&amp; g &gt;= b) h = <a class="code" href="namespacemeow.html#aa86d5920087a4e73078b759bc3996f76">PI</a>/3.0 * (g-b) / (mx-mn);</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span>(mx == r &amp;&amp; g &lt; b) h = <a class="code" href="namespacemeow.html#aa86d5920087a4e73078b759bc3996f76">PI</a>/3.0 * (g-b) / (mx-mn) + <a class="code" href="namespacemeow.html#aa86d5920087a4e73078b759bc3996f76">PI</a> * 2.0;</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span>(mx == g ) h = <a class="code" href="namespacemeow.html#aa86d5920087a4e73078b759bc3996f76">PI</a>/3.0 * (b-r) / (mx-mn) + <a class="code" href="namespacemeow.html#aa86d5920087a4e73078b759bc3996f76">PI</a>/3.0*2.0;</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="keywordflow">else</span> h = <a class="code" href="namespacemeow.html#aa86d5920087a4e73078b759bc3996f76">PI</a>/3.0 * (r-g) / (mx-mn) + <a class="code" href="namespacemeow.html#aa86d5920087a4e73078b759bc3996f76">PI</a>/3.0*4.0;</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; l = 0.5 * (mx + mn);</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="keywordflow">if</span> (l == 0 || mx == mn) s = 0;</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span>(l &lt; 0.5 ) s = (mx - mn) / (2.0 * l);</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keywordflow">else</span> s = (mx - mn) / (2 - 2.0 * l);</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; hsl-&gt;<a class="code" href="classmeow_1_1HSL.html#aa4389db431631775dddfdfa1d4b2516d">h</a>(h);</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; hsl-&gt;<a class="code" href="classmeow_1_1HSL.html#a8586f2ff8547406af2cc268d47a9bece">s</a>(s);</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; hsl-&gt;<a class="code" href="classmeow_1_1HSL.html#a33425776fc45b1a6872a53ad90499e90">l</a>(l);</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; }</div>
+<div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="namespacemeow.html#a0ef9dd19ef8613c009398be225d7dba5"> 74</a></span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">class</span> HSL_T, <span class="keyword">class</span> RGB_T&gt; <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="namespacemeow.html#a0ef9dd19ef8613c009398be225d7dba5">HSL_to_RGB</a>(</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <a class="code" href="classmeow_1_1HSL.html">HSL&lt;HSL_T&gt;</a> <span class="keyword">const</span>&amp; hsl,</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <a class="code" href="classmeow_1_1RGB.html">RGB&lt;RGB_T&gt;</a> * rgb){</div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keywordtype">double</span> h = <a class="code" href="namespacemeow.html#aebe1ad335556790c578c4cf7836fd9ca">normalize</a>(hsl.<a class="code" href="classmeow_1_1HSL.html#a895814d6b6f3c2a6a542fe1799be737f">hMin</a>(), hsl.<a class="code" href="classmeow_1_1HSL.html#ade1bddf4a6177269ceca10872f1d7ad2">hMax</a>(), hsl.<a class="code" href="classmeow_1_1HSL.html#aa4389db431631775dddfdfa1d4b2516d">h</a>());</div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="keywordtype">double</span> s = <a class="code" href="namespacemeow.html#aebe1ad335556790c578c4cf7836fd9ca">normalize</a>(hsl.<a class="code" href="classmeow_1_1HSL.html#a28e8d9a9f2b2cf9a498121508a38efb1">sMin</a>(), hsl.<a class="code" href="classmeow_1_1HSL.html#a19f89700fea77d2d373f136e2a758804">sMax</a>(), hsl.<a class="code" href="classmeow_1_1HSL.html#a8586f2ff8547406af2cc268d47a9bece">s</a>());</div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keywordtype">double</span> l = <a class="code" href="namespacemeow.html#aebe1ad335556790c578c4cf7836fd9ca">normalize</a>(hsl.<a class="code" href="classmeow_1_1HSL.html#ac54f6e5f58a27772ff2b74df8e1279b1">lMin</a>(), hsl.<a class="code" href="classmeow_1_1HSL.html#a58b52c74a59e14ef507894931bbeab28">lMax</a>(), hsl.<a class="code" href="classmeow_1_1HSL.html#a33425776fc45b1a6872a53ad90499e90">l</a>());</div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="keywordflow">if</span>(s == 0){</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; rgb-&gt;<a class="code" href="classmeow_1_1RGB.html#af404b8c2793659741bf4dcd3f9599c74">r</a>(<a class="code" href="namespacemeow.html#af95cfca15ad7a51ed4d07b06e1296080">denormalize</a>(rgb-&gt;<a class="code" href="classmeow_1_1RGB.html#a348908dfe16b5a77e30c69d2126fb010">rMin</a>(), rgb-&gt;<a class="code" href="classmeow_1_1RGB.html#acf1e98a92ee1415e1278420c48976398">rMax</a>(), l));</div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; rgb-&gt;<a class="code" href="classmeow_1_1RGB.html#ad427ada53b9a14dfc46150d54e983cfb">g</a>(<a class="code" href="namespacemeow.html#af95cfca15ad7a51ed4d07b06e1296080">denormalize</a>(rgb-&gt;<a class="code" href="classmeow_1_1RGB.html#abc9f6654db5515946b10c7d593fc49cd">gMin</a>(), rgb-&gt;<a class="code" href="classmeow_1_1RGB.html#ac1e1bd0f904c0bc4d68d117ec9a88932">gMax</a>(), l));</div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; rgb-&gt;<a class="code" href="classmeow_1_1RGB.html#aebff34ce6c558095ae73164a84f2e4c3">b</a>(<a class="code" href="namespacemeow.html#af95cfca15ad7a51ed4d07b06e1296080">denormalize</a>(rgb-&gt;<a class="code" href="classmeow_1_1RGB.html#ab9f74cc384f67615ad172e994a645de9">bMin</a>(), rgb-&gt;<a class="code" href="classmeow_1_1RGB.html#aa040fb899d8ecf152d95a6f7a4b3b066">bMax</a>(), l));</div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; return ;</div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; }</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <span class="keywordtype">double</span> q = (l &lt; 0.5 ? (l * (1 + s)) : (l + s - (l * s)));</div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="keywordtype">double</span> p = 2 * l - q;</div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="keywordtype">double</span> t_r = h + 1.0 / 3.0;</div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="keywordtype">double</span> t_g = h;</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="keywordtype">double</span> t_b = h - 1.0 / 3.0;</div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="keywordflow">if</span>(t_r &lt; 0) t_r = t_r + 1.0;</div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="keywordflow">if</span>(t_r &gt; 1) t_r = t_r - 1.0;</div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="keywordflow">if</span>(t_g &lt; 0) t_g = t_g + 1.0;</div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="keywordflow">if</span>(t_g &gt; 1) t_g = t_g - 1.0;</div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <span class="keywordflow">if</span>(t_b &lt; 0) t_b = t_b + 1.0;</div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="keywordflow">if</span>(t_b &gt; 1) t_b = t_b - 1.0;</div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <span class="keywordtype">double</span> r, g, b;</div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="keywordflow">if</span> (t_r &lt; 1.0 / 6.0) r = p + (q - p) * 6 * t_r;</div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span>(t_r &lt; 0.5 ) r = q;</div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span>(t_r &lt; 2.0 / 3.0) r = p + (q - p) * 6 * (2.0 / 3.0 - t_r);</div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keywordflow">else</span> r = p;</div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="keywordflow">if</span> (t_g &lt; 1.0 / 6.0) g = p + (q - p) * 6 * t_g;</div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span>(t_g &lt; 0.5 ) g = q;</div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span>(t_g &lt; 2.0 / 3.0) g = p + (q - p) * 6 * (2.0 / 3.0 - t_g);</div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="keywordflow">else</span> g = p;</div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="keywordflow">if</span> (t_b &lt; 1.0 / 6.0) b = p + (q - p) * 6 * t_b;</div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span>(t_b &lt; 0.5 ) b = q;</div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span>(t_b &lt; 2.0 / 3.0) b = p + (q - p) * 6 * (2.0 / 3.0 - t_b);</div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <span class="keywordflow">else</span> b = p;</div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; rgb-&gt;<a class="code" href="classmeow_1_1RGB.html#af404b8c2793659741bf4dcd3f9599c74">r</a>(<a class="code" href="namespacemeow.html#af95cfca15ad7a51ed4d07b06e1296080">denormalize</a>(rgb-&gt;<a class="code" href="classmeow_1_1RGB.html#a348908dfe16b5a77e30c69d2126fb010">rMin</a>(), rgb-&gt;<a class="code" href="classmeow_1_1RGB.html#acf1e98a92ee1415e1278420c48976398">rMax</a>(), r));</div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; rgb-&gt;<a class="code" href="classmeow_1_1RGB.html#ad427ada53b9a14dfc46150d54e983cfb">g</a>(<a class="code" href="namespacemeow.html#af95cfca15ad7a51ed4d07b06e1296080">denormalize</a>(rgb-&gt;<a class="code" href="classmeow_1_1RGB.html#abc9f6654db5515946b10c7d593fc49cd">gMin</a>(), rgb-&gt;<a class="code" href="classmeow_1_1RGB.html#ac1e1bd0f904c0bc4d68d117ec9a88932">gMax</a>(), g));</div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; rgb-&gt;<a class="code" href="classmeow_1_1RGB.html#aebff34ce6c558095ae73164a84f2e4c3">b</a>(<a class="code" href="namespacemeow.html#af95cfca15ad7a51ed4d07b06e1296080">denormalize</a>(rgb-&gt;<a class="code" href="classmeow_1_1RGB.html#ab9f74cc384f67615ad172e994a645de9">bMin</a>(), rgb-&gt;<a class="code" href="classmeow_1_1RGB.html#aa040fb899d8ecf152d95a6f7a4b3b066">bMax</a>(), b));</div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; }</div>
+<div class="line"><a name="l00114"></a><span class="lineno"><a class="line" href="namespacemeow.html#ac568f9be6b54c16176377ab7941b82ff"> 114</a></span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">class</span> YUV_T, <span class="keyword">class</span> HSL_T&gt; <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="namespacemeow.html#ac568f9be6b54c16176377ab7941b82ff">YUV_to_HSL</a>(</div>
+<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <a class="code" href="classmeow_1_1YUV.html">YUV&lt;YUV_T&gt;</a> <span class="keyword">const</span>&amp; yuv,</div>
+<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <a class="code" href="classmeow_1_1HSL.html">HSL&lt;HSL_T&gt;</a> * hsl){</div>
+<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <a class="code" href="classmeow_1_1RGBf.html">RGBf</a> tmp;</div>
+<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <a class="code" href="namespacemeow.html#ace828526337b865be410d3a78d07d8b0">YUV_to_RGB</a>(yuv, &amp;tmp);</div>
+<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <a class="code" href="namespacemeow.html#ab5a740e832854cb4edd4db00b0550b03">RGB_to_HSL</a>(tmp, hsl);</div>
+<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; }</div>
+<div class="line"><a name="l00121"></a><span class="lineno"><a class="line" href="namespacemeow.html#a1ec923575a53dcd2d9a40e49b228ceed"> 121</a></span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">class</span> HSL_T, <span class="keyword">class</span> YUV_T&gt; <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="namespacemeow.html#a1ec923575a53dcd2d9a40e49b228ceed">HSL_to_YUV</a>(</div>
+<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <a class="code" href="classmeow_1_1HSL.html">HSL&lt;HSL_T&gt;</a> <span class="keyword">const</span>&amp; hsl,</div>
+<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <a class="code" href="classmeow_1_1YUV.html">YUV&lt;YUV_T&gt;</a> * yuv){</div>
+<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <a class="code" href="classmeow_1_1RGBf.html">RGBf</a> tmp;</div>
+<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <a class="code" href="namespacemeow.html#a0ef9dd19ef8613c009398be225d7dba5">HSL_to_RGB</a>(hsl, &amp;tmp);</div>
+<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <a class="code" href="namespacemeow.html#a9682162b4b67148649d87c2049175820">RGB_to_YUV</a>(tmp, yuv);</div>
+<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; }</div>
+<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;}</div>
+<div class="ttc" id="HSL_8h_html"><div class="ttname"><a href="HSL_8h.html">HSL.h</a></div></div>
+<div class="ttc" id="classmeow_1_1RGB_html_acf1e98a92ee1415e1278420c48976398"><div class="ttname"><a href="classmeow_1_1RGB.html#acf1e98a92ee1415e1278420c48976398">meow::RGB::rMax</a></div><div class="ttdeci">virtual T rMax() const =0</div></div>
+<div class="ttc" id="classmeow_1_1HSL_html_a535248e246711f0d634afae7f31326cc"><div class="ttname"><a href="classmeow_1_1HSL.html#a535248e246711f0d634afae7f31326cc">meow::HSL::HSL</a></div><div class="ttdeci">HSL()</div><div class="ttdef"><b>Definition:</b> <a href="HSL_8hpp_source.html#l00009">HSL.hpp:9</a></div></div>
+<div class="ttc" id="namespacemeow_html_aebe1ad335556790c578c4cf7836fd9ca"><div class="ttname"><a href="namespacemeow.html#aebe1ad335556790c578c4cf7836fd9ca">meow::normalize</a></div><div class="ttdeci">T normalize(T lower, T upper, T value)</div><div class="ttdoc">(value-lower)/(upper-lower) </div><div class="ttdef"><b>Definition:</b> <a href="math_2utility_8h_source.html#l00027">utility.h:27</a></div></div>
+<div class="ttc" id="classmeow_1_1HSL_html_a1a80ecb0bc823881404a8b2a5912bc88"><div class="ttname"><a href="classmeow_1_1HSL.html#a1a80ecb0bc823881404a8b2a5912bc88">meow::HSL::lsh</a></div><div class="ttdeci">T lsh(size_t i) const </div><div class="ttdef"><b>Definition:</b> <a href="HSL_8hpp_source.html#l00023">HSL.hpp:23</a></div></div>
+<div class="ttc" id="classmeow_1_1HSL_html_ac54f6e5f58a27772ff2b74df8e1279b1"><div class="ttname"><a href="classmeow_1_1HSL.html#ac54f6e5f58a27772ff2b74df8e1279b1">meow::HSL::lMin</a></div><div class="ttdeci">virtual T lMin() const =0</div></div>
+<div class="ttc" id="RGB_8h_html"><div class="ttname"><a href="RGB_8h.html">RGB.h</a></div></div>
+<div class="ttc" id="classmeow_1_1HSLf_html_ae558ad5682570217c00e366a5d63bd5b"><div class="ttname"><a href="classmeow_1_1HSLf.html#ae558ad5682570217c00e366a5d63bd5b">meow::HSLf::hMax</a></div><div class="ttdeci">double hMax() const </div><div class="ttdef"><b>Definition:</b> <a href="HSL_8hpp_source.html#l00043">HSL.hpp:43</a></div></div>
+<div class="ttc" id="classmeow_1_1HSL_html_a5916a5e44dbcac7bcb8759bd664edba0"><div class="ttname"><a href="classmeow_1_1HSL.html#a5916a5e44dbcac7bcb8759bd664edba0">meow::HSL::hsl</a></div><div class="ttdeci">T hsl(size_t i) const </div><div class="ttdef"><b>Definition:</b> <a href="HSL_8hpp_source.html#l00020">HSL.hpp:20</a></div></div>
+<div class="ttc" id="classmeow_1_1HSL_html_aa4389db431631775dddfdfa1d4b2516d"><div class="ttname"><a href="classmeow_1_1HSL.html#aa4389db431631775dddfdfa1d4b2516d">meow::HSL::h</a></div><div class="ttdeci">T h() const </div><div class="ttdef"><b>Definition:</b> <a href="HSL_8hpp_source.html#l00017">HSL.hpp:17</a></div></div>
+<div class="ttc" id="classmeow_1_1HSL_html_a895814d6b6f3c2a6a542fe1799be737f"><div class="ttname"><a href="classmeow_1_1HSL.html#a895814d6b6f3c2a6a542fe1799be737f">meow::HSL::hMin</a></div><div class="ttdeci">virtual T hMin() const =0</div></div>
+<div class="ttc" id="classmeow_1_1HSLf_html_a11be863a86b8d0a4c8223715d5ec551a"><div class="ttname"><a href="classmeow_1_1HSLf.html#a11be863a86b8d0a4c8223715d5ec551a">meow::HSLf::sMin</a></div><div class="ttdeci">double sMin() const </div><div class="ttdef"><b>Definition:</b> <a href="HSL_8hpp_source.html#l00044">HSL.hpp:44</a></div></div>
+<div class="ttc" id="classmeow_1_1RGB_html_aa040fb899d8ecf152d95a6f7a4b3b066"><div class="ttname"><a href="classmeow_1_1RGB.html#aa040fb899d8ecf152d95a6f7a4b3b066">meow::RGB::bMax</a></div><div class="ttdeci">virtual T bMax() const =0</div></div>
+<div class="ttc" id="namespacemeow_html_a0ef9dd19ef8613c009398be225d7dba5"><div class="ttname"><a href="namespacemeow.html#a0ef9dd19ef8613c009398be225d7dba5">meow::HSL_to_RGB</a></div><div class="ttdeci">void HSL_to_RGB(HSL&lt; HSL_T &gt; const &amp;hsl, RGB&lt; RGB_T &gt; *rgb)</div><div class="ttdef"><b>Definition:</b> <a href="HSL_8hpp_source.html#l00074">HSL.hpp:74</a></div></div>
+<div class="ttc" id="classmeow_1_1RGB_html"><div class="ttname"><a href="classmeow_1_1RGB.html">meow::RGB</a></div><div class="ttdef"><b>Definition:</b> <a href="RGB_8h_source.html#l00005">RGB.h:5</a></div></div>
+<div class="ttc" id="classmeow_1_1RGB_html_af404b8c2793659741bf4dcd3f9599c74"><div class="ttname"><a href="classmeow_1_1RGB.html#af404b8c2793659741bf4dcd3f9599c74">meow::RGB::r</a></div><div class="ttdeci">T r() const </div><div class="ttdef"><b>Definition:</b> <a href="RGB_8hpp_source.html#l00014">RGB.hpp:14</a></div></div>
+<div class="ttc" id="namespacemeow_html_a1ec923575a53dcd2d9a40e49b228ceed"><div class="ttname"><a href="namespacemeow.html#a1ec923575a53dcd2d9a40e49b228ceed">meow::HSL_to_YUV</a></div><div class="ttdeci">void HSL_to_YUV(HSL&lt; HSL_T &gt; const &amp;hsl, YUV&lt; YUV_T &gt; *yuv)</div><div class="ttdef"><b>Definition:</b> <a href="HSL_8hpp_source.html#l00121">HSL.hpp:121</a></div></div>
+<div class="ttc" id="namespacemeow_html_af95cfca15ad7a51ed4d07b06e1296080"><div class="ttname"><a href="namespacemeow.html#af95cfca15ad7a51ed4d07b06e1296080">meow::denormalize</a></div><div class="ttdeci">T denormalize(T lower, T upper, T _ratio)</div><div class="ttdoc">(lower+_ratio*(upper-lower)) </div><div class="ttdef"><b>Definition:</b> <a href="math_2utility_8h_source.html#l00035">utility.h:35</a></div></div>
+<div class="ttc" id="classmeow_1_1RGB_html_ab9f74cc384f67615ad172e994a645de9"><div class="ttname"><a href="classmeow_1_1RGB.html#ab9f74cc384f67615ad172e994a645de9">meow::RGB::bMin</a></div><div class="ttdeci">virtual T bMin() const =0</div></div>
+<div class="ttc" id="classmeow_1_1RGBf_html"><div class="ttname"><a href="classmeow_1_1RGBf.html">meow::RGBf</a></div><div class="ttdef"><b>Definition:</b> <a href="RGB_8h_source.html#l00034">RGB.h:34</a></div></div>
+<div class="ttc" id="classmeow_1_1HSLf_html_a149826315b4abba3edc86958b6de69e2"><div class="ttname"><a href="classmeow_1_1HSLf.html#a149826315b4abba3edc86958b6de69e2">meow::HSLf::hMin</a></div><div class="ttdeci">double hMin() const </div><div class="ttdef"><b>Definition:</b> <a href="HSL_8hpp_source.html#l00042">HSL.hpp:42</a></div></div>
+<div class="ttc" id="classmeow_1_1YUV_html"><div class="ttname"><a href="classmeow_1_1YUV.html">meow::YUV</a></div><div class="ttdef"><b>Definition:</b> <a href="YUV_8h_source.html#l00007">YUV.h:7</a></div></div>
+<div class="ttc" id="classmeow_1_1HSL_html_a58b52c74a59e14ef507894931bbeab28"><div class="ttname"><a href="classmeow_1_1HSL.html#a58b52c74a59e14ef507894931bbeab28">meow::HSL::lMax</a></div><div class="ttdeci">virtual T lMax() const =0</div></div>
+<div class="ttc" id="namespacemeow_html_a9682162b4b67148649d87c2049175820"><div class="ttname"><a href="namespacemeow.html#a9682162b4b67148649d87c2049175820">meow::RGB_to_YUV</a></div><div class="ttdeci">void RGB_to_YUV(RGB&lt; RGB_T &gt; const &amp;rgb, YUV&lt; YUV_T &gt; *yuv)</div><div class="ttdef"><b>Definition:</b> <a href="YUV_8hpp_source.html#l00047">YUV.hpp:47</a></div></div>
+<div class="ttc" id="classmeow_1_1HSLf_html_a86199f1024d1a31543aa52a2ddd2e2ae"><div class="ttname"><a href="classmeow_1_1HSLf.html#a86199f1024d1a31543aa52a2ddd2e2ae">meow::HSLf::~HSLf</a></div><div class="ttdeci">~HSLf()</div><div class="ttdef"><b>Definition:</b> <a href="HSL_8hpp_source.html#l00039">HSL.hpp:39</a></div></div>
+<div class="ttc" id="classmeow_1_1HSL_html_a19f89700fea77d2d373f136e2a758804"><div class="ttname"><a href="classmeow_1_1HSL.html#a19f89700fea77d2d373f136e2a758804">meow::HSL::sMax</a></div><div class="ttdeci">virtual T sMax() const =0</div></div>
+<div class="ttc" id="classmeow_1_1HSLf_html_acf12ea2adf34f0abe2b9e03526f37d05"><div class="ttname"><a href="classmeow_1_1HSLf.html#acf12ea2adf34f0abe2b9e03526f37d05">meow::HSLf::sMax</a></div><div class="ttdeci">double sMax() const </div><div class="ttdef"><b>Definition:</b> <a href="HSL_8hpp_source.html#l00045">HSL.hpp:45</a></div></div>
+<div class="ttc" id="classmeow_1_1HSLf_html_a1d39eceb03f088155ac9eaf888802d9d"><div class="ttname"><a href="classmeow_1_1HSLf.html#a1d39eceb03f088155ac9eaf888802d9d">meow::HSLf::HSLf</a></div><div class="ttdeci">HSLf()</div><div class="ttdef"><b>Definition:</b> <a href="HSL_8hpp_source.html#l00038">HSL.hpp:38</a></div></div>
+<div class="ttc" id="classmeow_1_1HSL_html"><div class="ttname"><a href="classmeow_1_1HSL.html">meow::HSL</a></div><div class="ttdef"><b>Definition:</b> <a href="HSL_8h_source.html#l00008">HSL.h:8</a></div></div>
+<div class="ttc" id="namespacemeow_html_ac568f9be6b54c16176377ab7941b82ff"><div class="ttname"><a href="namespacemeow.html#ac568f9be6b54c16176377ab7941b82ff">meow::YUV_to_HSL</a></div><div class="ttdeci">void YUV_to_HSL(YUV&lt; YUV_T &gt; const &amp;yuv, HSL&lt; HSL_T &gt; *hsl)</div><div class="ttdef"><b>Definition:</b> <a href="HSL_8hpp_source.html#l00114">HSL.hpp:114</a></div></div>
+<div class="ttc" id="namespacemeow_html_ace828526337b865be410d3a78d07d8b0"><div class="ttname"><a href="namespacemeow.html#ace828526337b865be410d3a78d07d8b0">meow::YUV_to_RGB</a></div><div class="ttdeci">void YUV_to_RGB(YUV&lt; YUV_T &gt; const &amp;yuv, RGB&lt; RGB_T &gt; *rgb)</div><div class="ttdef"><b>Definition:</b> <a href="YUV_8hpp_source.html#l00060">YUV.hpp:60</a></div></div>
+<div class="ttc" id="classmeow_1_1HSLf_html_a1c7aa2c5026ca359b74a46d7c28195be"><div class="ttname"><a href="classmeow_1_1HSLf.html#a1c7aa2c5026ca359b74a46d7c28195be">meow::HSLf::lMax</a></div><div class="ttdeci">double lMax() const </div><div class="ttdef"><b>Definition:</b> <a href="HSL_8hpp_source.html#l00047">HSL.hpp:47</a></div></div>
+<div class="ttc" id="classmeow_1_1HSL_html_ade1bddf4a6177269ceca10872f1d7ad2"><div class="ttname"><a href="classmeow_1_1HSL.html#ade1bddf4a6177269ceca10872f1d7ad2">meow::HSL::hMax</a></div><div class="ttdeci">virtual T hMax() const =0</div></div>
+<div class="ttc" id="classmeow_1_1RGB_html_ac1e1bd0f904c0bc4d68d117ec9a88932"><div class="ttname"><a href="classmeow_1_1RGB.html#ac1e1bd0f904c0bc4d68d117ec9a88932">meow::RGB::gMax</a></div><div class="ttdeci">virtual T gMax() const =0</div></div>
+<div class="ttc" id="namespacemeow_html_aa86d5920087a4e73078b759bc3996f76"><div class="ttname"><a href="namespacemeow.html#aa86d5920087a4e73078b759bc3996f76">meow::PI</a></div><div class="ttdeci">static const double PI</div><div class="ttdoc">圓周率... </div><div class="ttdef"><b>Definition:</b> <a href="math_2utility_8h_source.html#l00012">utility.h:12</a></div></div>
+<div class="ttc" id="classmeow_1_1RGB_html_a348908dfe16b5a77e30c69d2126fb010"><div class="ttname"><a href="classmeow_1_1RGB.html#a348908dfe16b5a77e30c69d2126fb010">meow::RGB::rMin</a></div><div class="ttdeci">virtual T rMin() const =0</div></div>
+<div class="ttc" id="classmeow_1_1RGB_html_ad427ada53b9a14dfc46150d54e983cfb"><div class="ttname"><a href="classmeow_1_1RGB.html#ad427ada53b9a14dfc46150d54e983cfb">meow::RGB::g</a></div><div class="ttdeci">T g() const </div><div class="ttdef"><b>Definition:</b> <a href="RGB_8hpp_source.html#l00015">RGB.hpp:15</a></div></div>
+<div class="ttc" id="classmeow_1_1RGB_html_abc9f6654db5515946b10c7d593fc49cd"><div class="ttname"><a href="classmeow_1_1RGB.html#abc9f6654db5515946b10c7d593fc49cd">meow::RGB::gMin</a></div><div class="ttdeci">virtual T gMin() const =0</div></div>
+<div class="ttc" id="namespacemeow_html_ab5a740e832854cb4edd4db00b0550b03"><div class="ttname"><a href="namespacemeow.html#ab5a740e832854cb4edd4db00b0550b03">meow::RGB_to_HSL</a></div><div class="ttdeci">void RGB_to_HSL(RGB&lt; RGB_T &gt; const &amp;rgb, HSL&lt; HSL_T &gt; *hsl)</div><div class="ttdef"><b>Definition:</b> <a href="HSL_8hpp_source.html#l00052">HSL.hpp:52</a></div></div>
+<div class="ttc" id="classmeow_1_1HSL_html_a8586f2ff8547406af2cc268d47a9bece"><div class="ttname"><a href="classmeow_1_1HSL.html#a8586f2ff8547406af2cc268d47a9bece">meow::HSL::s</a></div><div class="ttdeci">T s() const </div><div class="ttdef"><b>Definition:</b> <a href="HSL_8hpp_source.html#l00018">HSL.hpp:18</a></div></div>
+<div class="ttc" id="classmeow_1_1HSL_html_a33425776fc45b1a6872a53ad90499e90"><div class="ttname"><a href="classmeow_1_1HSL.html#a33425776fc45b1a6872a53ad90499e90">meow::HSL::l</a></div><div class="ttdeci">T l() const </div><div class="ttdef"><b>Definition:</b> <a href="HSL_8hpp_source.html#l00019">HSL.hpp:19</a></div></div>
+<div class="ttc" id="classmeow_1_1RGB_html_aebff34ce6c558095ae73164a84f2e4c3"><div class="ttname"><a href="classmeow_1_1RGB.html#aebff34ce6c558095ae73164a84f2e4c3">meow::RGB::b</a></div><div class="ttdeci">T b() const </div><div class="ttdef"><b>Definition:</b> <a href="RGB_8hpp_source.html#l00016">RGB.hpp:16</a></div></div>
+<div class="ttc" id="classmeow_1_1HSL_html_a28e8d9a9f2b2cf9a498121508a38efb1"><div class="ttname"><a href="classmeow_1_1HSL.html#a28e8d9a9f2b2cf9a498121508a38efb1">meow::HSL::sMin</a></div><div class="ttdeci">virtual T sMin() const =0</div></div>
+<div class="ttc" id="classmeow_1_1HSLf_html_a264c07bfc3de5bb6df54bf173874b0c6"><div class="ttname"><a href="classmeow_1_1HSLf.html#a264c07bfc3de5bb6df54bf173874b0c6">meow::HSLf::lMin</a></div><div class="ttdeci">double lMin() const </div><div class="ttdef"><b>Definition:</b> <a href="HSL_8hpp_source.html#l00046">HSL.hpp:46</a></div></div>
+<div class="ttc" id="YUV_8h_html"><div class="ttname"><a href="YUV_8h.html">YUV.h</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+</div><!-- doc-content -->
+<!-- HTML footer for doxygen 1.8.3.1-->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+ <ul>
+ <li class="navelem"><a class="el" href="dir_92fecd8d02dd5e7a67429447fdf0f60f.html">meowpp</a></li><li class="navelem"><a class="el" href="dir_f6840b2fecd08a3779df34f0add0e074.html">colors</a></li><li class="navelem"><a class="el" href="HSL_8hpp.html">HSL.hpp</a></li>
+ <li class="footer">Generated on Mon Jun 23 2014 17:02:02 for Templates -- Meow by
+ <a href="http://www.doxygen.org/index.html">
+ <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.6 </li>
+ </ul>
+</div>
+</body>
+</html>