Browse Source

Update

gh-pages
falkTX 10 years ago
parent
commit
2c0f450169
100 changed files with 23380 additions and 1455 deletions
  1. +197
    -0
      App_8hpp_source.html
  2. +286
    -0
      Base_8hpp_source.html
  3. +217
    -0
      Color_8hpp_source.html
  4. +350
    -0
      DistrhoInfo_8hpp_source.html
  5. +738
    -892
      DistrhoPlugin_8hpp_source.html
  6. +181
    -166
      DistrhoUI_8hpp_source.html
  7. +159
    -155
      DistrhoUtils_8hpp_source.html
  8. +892
    -0
      Geometry_8hpp_source.html
  9. +161
    -0
      ImageAboutWindow_8hpp_source.html
  10. +175
    -0
      ImageButton_8hpp_source.html
  11. +216
    -0
      ImageKnob_8hpp_source.html
  12. +208
    -0
      ImageSlider_8hpp_source.html
  13. +171
    -0
      ImageSwitch_8hpp_source.html
  14. +260
    -0
      Image_8hpp_source.html
  15. +993
    -0
      NanoVG_8hpp_source.html
  16. +187
    -0
      StandaloneWindow_8hpp_source.html
  17. +539
    -0
      Widget_8hpp_source.html
  18. +242
    -0
      Window_8hpp_source.html
  19. +56
    -10
      annotated.html
  20. +107
    -0
      classApp-members.html
  21. +247
    -0
      classApp.html
  22. BIN
      classApp.png
  23. +120
    -0
      classCircle-members.html
  24. +102
    -0
      classIdleCallback-members.html
  25. +114
    -0
      classIdleCallback.html
  26. +120
    -0
      classImage-members.html
  27. +620
    -0
      classImage.html
  28. +171
    -0
      classImageAboutWindow-members.html
  29. +380
    -0
      classImageAboutWindow.html
  30. BIN
      classImageAboutWindow.png
  31. +143
    -0
      classImageButton-members.html
  32. +302
    -0
      classImageButton.html
  33. BIN
      classImageButton.png
  34. +106
    -0
      classImageButton_1_1Callback-members.html
  35. +114
    -0
      classImageButton_1_1Callback.html
  36. +154
    -0
      classImageKnob-members.html
  37. +358
    -0
      classImageKnob.html
  38. BIN
      classImageKnob.png
  39. +108
    -0
      classImageKnob_1_1Callback-members.html
  40. +120
    -0
      classImageKnob_1_1Callback.html
  41. +150
    -0
      classImageSlider-members.html
  42. +323
    -0
      classImageSlider.html
  43. BIN
      classImageSlider.png
  44. +108
    -0
      classImageSlider_1_1Callback-members.html
  45. +120
    -0
      classImageSlider_1_1Callback.html
  46. +143
    -0
      classImageSwitch-members.html
  47. +275
    -0
      classImageSwitch.html
  48. BIN
      classImageSwitch.png
  49. +106
    -0
      classImageSwitch_1_1Callback-members.html
  50. +114
    -0
      classImageSwitch_1_1Callback.html
  51. +103
    -0
      classLeakedObjectDetector-members.html
  52. +151
    -0
      classLeakedObjectDetector.html
  53. +128
    -0
      classLine-members.html
  54. +105
    -0
      classMutex-members.html
  55. +116
    -0
      classMutex.html
  56. +105
    -0
      classNanoImage-members.html
  57. +225
    -0
      classNanoImage.html
  58. +211
    -0
      classNanoVG-members.html
  59. +2827
    -0
      classNanoVG.html
  60. BIN
      classNanoVG.png
  61. +248
    -0
      classNanoWidget-members.html
  62. +467
    -0
      classNanoWidget.html
  63. BIN
      classNanoWidget.png
  64. +27
    -27
      classPlugin-members.html
  65. +128
    -119
      classPlugin.html
  66. +124
    -0
      classPoint-members.html
  67. +560
    -0
      classPoint.html
  68. +137
    -0
      classRectangle-members.html
  69. +105
    -0
      classRecursiveMutex-members.html
  70. +116
    -0
      classRecursiveMutex.html
  71. +102
    -0
      classScopedLocker-members.html
  72. +110
    -0
      classScopedLocker.html
  73. +112
    -0
      classScopedPointer-members.html
  74. +467
    -0
      classScopedPointer.html
  75. +102
    -0
      classScopedUnlocker-members.html
  76. +110
    -0
      classScopedUnlocker.html
  77. +125
    -0
      classSize-members.html
  78. +600
    -0
      classSize.html
  79. +139
    -0
      classStandaloneWindow-members.html
  80. +232
    -0
      classStandaloneWindow.html
  81. BIN
      classStandaloneWindow.png
  82. +110
    -0
      classThread-members.html
  83. +142
    -0
      classThread.html
  84. +113
    -0
      classTriangle-members.html
  85. +17
    -17
      classUI-members.html
  86. +57
    -57
      classUI.html
  87. +138
    -0
      classWidget-members.html
  88. +1137
    -0
      classWidget.html
  89. BIN
      classWidget.png
  90. +135
    -0
      classWindow-members.html
  91. +233
    -0
      classWindow.html
  92. BIN
      classWindow.png
  93. +147
    -0
      classd__string-members.html
  94. +242
    -0
      classd__string.html
  95. +35
    -12
      classes.html
  96. +241
    -0
      d__leakdetector_8hpp_source.html
  97. +332
    -0
      d__mutex_8hpp_source.html
  98. +357
    -0
      d__scopedpointer_8hpp_source.html
  99. +160
    -0
      d__sleep_8hpp_source.html
  100. +849
    -0
      d__string_8hpp_source.html

+ 197
- 0
App_8hpp_source.html View File

@@ -0,0 +1,197 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: dgl/App.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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</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>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_99893ac99dd47c2a73745483a12a725f.html">dgl</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">App.hpp</div> </div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> * DISTRHO Plugin Framework (DPF)</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright (C) 2012-2014 Filipe Coelho &lt;falktx@falktx.com&gt;</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * Permission to use, copy, modify, and/or distribute this software for any purpose with</span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * or without fee is hereby granted, provided that the above copyright notice and this</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * permission notice appear in all copies.</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * THE SOFTWARE IS PROVIDED &quot;AS IS&quot; AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> */</span></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"> 17</span>&#160;<span class="preprocessor">#ifndef DGL_APP_HPP_INCLUDED</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="preprocessor">#define DGL_APP_HPP_INCLUDED</span></div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;</div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="preprocessor">#include &quot;Base.hpp&quot;</span></div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;</div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;START_NAMESPACE_DGL</div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;</div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment">// Forward class names</span></div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;</div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="keyword">class </span><a class="code" href="classWindow.html">Window</a>;</div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;</div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment">/**</span></div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> Base DGL Application class.</span></div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="comment"> One application instance is required for creating a window.</span></div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="comment"> There&#39;s no single/global application instance in DGL, and multiple</span></div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="comment"> windows can share the same app instance.</span></div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="comment"> In standalone mode an application will automatically quit its</span></div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="comment"> event-loop when all its windows are closed.</span></div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="classApp.html"> 41</a></span>&#160;<span class="keyword">class </span><a class="code" href="classApp.html">App</a></div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;{</div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="keyword">public</span>:<span class="comment"></span></div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment"> Constructor.</span></div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <a class="code" href="classApp.html#acb8cbf3e285b91d0170ffe87df5989c5">App</a>();</div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="comment"> Destructor.</span></div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <a class="code" href="classApp.html#a34f1f253b1cef5f4ecbac66eaf6964ec">~App</a>();</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="comment"> Idle function.</span></div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="comment"> This runs the application event-loop once.</span></div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classApp.html#a4309d67edf51bdf612a82220285ada49">idle</a>();</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="comment"> Run the application event-loop until all Windows are closed.</span></div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="comment"> idle() is called at regular intervals.</span></div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="comment"> @note: This function is meant for standalones only, *never* call this from plugins.</span></div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classApp.html#a94fa325175749054947480e1ae66b110">exec</a>();</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="comment"> Quit the application.</span></div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="comment"> This stops the event-loop and closes all Windows.</span></div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classApp.html#ab474007a8e53ffa41f9a13e0640b387f">quit</a>();</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="comment"> Check if the application is about to quit.</span></div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="comment"> Returning true means there&#39;s no event-loop running at the moment (or it&#39;s just about to stop).</span></div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classApp.html#af7471b06a9bfccc16293b020268d0401">isQuiting</a>() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="keyword">struct </span>PrivateData;</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; PrivateData* <span class="keyword">const</span> pData;</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classWindow.html">Window</a>;</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; DISTRHO_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR(<a class="code" href="classApp.html">App</a>)</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;</div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;END_NAMESPACE_DGL</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;</div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="preprocessor">#endif // DGL_APP_HPP_INCLUDED</span></div>
<div class="ttc" id="classApp_html_acb8cbf3e285b91d0170ffe87df5989c5"><div class="ttname"><a href="classApp.html#acb8cbf3e285b91d0170ffe87df5989c5">App::App</a></div><div class="ttdeci">App()</div></div>
<div class="ttc" id="classApp_html_a94fa325175749054947480e1ae66b110"><div class="ttname"><a href="classApp.html#a94fa325175749054947480e1ae66b110">App::exec</a></div><div class="ttdeci">void exec()</div></div>
<div class="ttc" id="classWindow_html"><div class="ttname"><a href="classWindow.html">Window</a></div><div class="ttdef"><b>Definition:</b> Window.hpp:30</div></div>
<div class="ttc" id="classApp_html_a34f1f253b1cef5f4ecbac66eaf6964ec"><div class="ttname"><a href="classApp.html#a34f1f253b1cef5f4ecbac66eaf6964ec">App::~App</a></div><div class="ttdeci">~App()</div></div>
<div class="ttc" id="classApp_html_af7471b06a9bfccc16293b020268d0401"><div class="ttname"><a href="classApp.html#af7471b06a9bfccc16293b020268d0401">App::isQuiting</a></div><div class="ttdeci">bool isQuiting() const noexcept</div></div>
<div class="ttc" id="classApp_html_ab474007a8e53ffa41f9a13e0640b387f"><div class="ttname"><a href="classApp.html#ab474007a8e53ffa41f9a13e0640b387f">App::quit</a></div><div class="ttdeci">void quit()</div></div>
<div class="ttc" id="classApp_html_a4309d67edf51bdf612a82220285ada49"><div class="ttname"><a href="classApp.html#a4309d67edf51bdf612a82220285ada49">App::idle</a></div><div class="ttdeci">void idle()</div></div>
<div class="ttc" id="classApp_html"><div class="ttname"><a href="classApp.html">App</a></div><div class="ttdef"><b>Definition:</b> App.hpp:41</div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 286
- 0
Base_8hpp_source.html View File

@@ -0,0 +1,286 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: dgl/Base.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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</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>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_99893ac99dd47c2a73745483a12a725f.html">dgl</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">Base.hpp</div> </div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> * DISTRHO Plugin Framework (DPF)</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright (C) 2012-2014 Filipe Coelho &lt;falktx@falktx.com&gt;</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * Permission to use, copy, modify, and/or distribute this software for any purpose with</span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * or without fee is hereby granted, provided that the above copyright notice and this</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * permission notice appear in all copies.</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * THE SOFTWARE IS PROVIDED &quot;AS IS&quot; AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> */</span></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"> 17</span>&#160;<span class="preprocessor">#ifndef DGL_BASE_HPP_INCLUDED</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="preprocessor">#define DGL_BASE_HPP_INCLUDED</span></div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;</div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="preprocessor">#include &quot;../distrho/extra/d_leakdetector.hpp&quot;</span></div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="preprocessor">#include &quot;../distrho/extra/d_scopedpointer.hpp&quot;</span></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"> 23</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment">// Define namespace</span></div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;</div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="preprocessor">#ifndef DGL_NAMESPACE</span></div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="preprocessor"># define DGL_NAMESPACE DGL</span></div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="preprocessor">#endif</span></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"> 30</span>&#160;<span class="preprocessor">#define START_NAMESPACE_DGL namespace DGL_NAMESPACE {</span></div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="preprocessor">#define END_NAMESPACE_DGL }</span></div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="preprocessor">#define USE_NAMESPACE_DGL using namespace DGL_NAMESPACE;</span></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;<span class="preprocessor">#ifdef DISTRHO_OS_WINDOWS</span></div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="comment">// Fix OpenGL includes for Windows, based on glfw code</span></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"> 38</span>&#160;<span class="preprocessor">#ifndef APIENTRY</span></div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor"># define APIENTRY __stdcall</span></div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#endif // APIENTRY</span></div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment">/* We need WINGDIAPI defined */</span></div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#ifndef WINGDIAPI</span></div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor"># if defined(_MSC_VER) || defined(__BORLANDC__) || defined(__POCC__)</span></div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor"># define WINGDIAPI __declspec(dllimport)</span></div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor"># elif defined(__LCC__)</span></div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor"># define WINGDIAPI __stdcall</span></div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor"># else</span></div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor"># define WINGDIAPI extern</span></div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="preprocessor"># endif</span></div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="preprocessor"># define DGL_WINGDIAPI_DEFINED</span></div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="preprocessor">#endif // WINGDIAPI</span></div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="comment">/* Some &lt;GL/glu.h&gt; files also need CALLBACK defined */</span></div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="preprocessor">#ifndef CALLBACK</span></div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="preprocessor"># if defined(_MSC_VER)</span></div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="preprocessor"># if (defined(_M_MRX000) || defined(_M_IX86) || defined(_M_ALPHA) || defined(_M_PPC)) &amp;&amp; !defined(MIDL_PASS)</span></div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="preprocessor"># define CALLBACK __stdcall</span></div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="preprocessor"># else</span></div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="preprocessor"># define CALLBACK</span></div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="preprocessor"># endif</span></div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="preprocessor"># else</span></div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="preprocessor"># define CALLBACK __stdcall</span></div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="preprocessor"># endif</span></div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="preprocessor"># define DGL_CALLBACK_DEFINED</span></div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="preprocessor">#endif // CALLBACK</span></div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;</div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="comment">/* Most GL/glu.h variants on Windows need wchar_t */</span></div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="preprocessor">#include &lt;cstddef&gt;</span></div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="preprocessor">#endif // DISTRHO_OS_WINDOWS</span></div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="comment">// OpenGL includes</span></div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="preprocessor">#ifdef DISTRHO_OS_MAC</span></div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="preprocessor"># include &quot;OpenGL/gl.h&quot;</span></div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="preprocessor">#else</span></div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="preprocessor"># define GL_GLEXT_PROTOTYPES</span></div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="preprocessor"># include &quot;GL/gl.h&quot;</span></div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="preprocessor"># include &quot;GL/glext.h&quot;</span></div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<span class="comment">// Missing OpenGL defines</span></div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;</div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="preprocessor">#if defined(GL_BGR_EXT) &amp;&amp; ! defined(GL_BGR)</span></div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="preprocessor"># define GL_BGR GL_BGR_EXT</span></div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;</div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="preprocessor">#if defined(GL_BGRA_EXT) &amp;&amp; ! defined(GL_BGRA)</span></div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;<span class="preprocessor"># define GL_BGRA GL_BGRA_EXT</span></div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<span class="preprocessor">#ifndef GL_CLAMP_TO_BORDER</span></div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;<span class="preprocessor"># define GL_CLAMP_TO_BORDER 0x812D</span></div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;</div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;<span class="preprocessor">#ifdef DISTRHO_OS_WINDOWS</span></div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;<span class="comment">// Fix OpenGL includes for Windows, based on glfw code</span></div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;</div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="preprocessor">#ifdef DGL_WINGDIAPI_DEFINED</span></div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="preprocessor"># undef WINGDIAPI</span></div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<span class="preprocessor"># undef DGL_WINGDIAPI_DEFINED</span></div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;</div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;<span class="preprocessor">#ifdef DGL_CALLBACK_DEFINED</span></div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;<span class="preprocessor"># undef CALLBACK</span></div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;<span class="preprocessor"># undef DGL_CALLBACK_DEFINED</span></div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;</div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;<span class="preprocessor">#endif // DISTRHO_OS_WINDOWS</span></div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;</div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;START_NAMESPACE_DGL</div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;<span class="comment">// Base DGL enums</span></div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;<span class="comment">/**</span></div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;<span class="comment"> Convenience symbols for ASCII control characters.</span></div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;<span class="keyword">enum</span> Char {</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; CHAR_BACKSPACE = 0x08,</div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; CHAR_ESCAPE = 0x1B,</div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; CHAR_DELETE = 0x7F</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;<span class="comment"></span></div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;<span class="comment">/**</span></div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;<span class="comment"> Keyboard modifier flags.</span></div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;<span class="keyword">enum</span> Modifier {</div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; MODIFIER_SHIFT = 1 &lt;&lt; 0, <span class="comment">/**&lt; Shift key */</span></div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; MODIFIER_CTRL = 1 &lt;&lt; 1, <span class="comment">/**&lt; Control key */</span></div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; MODIFIER_ALT = 1 &lt;&lt; 2, <span class="comment">/**&lt; Alt/Option key */</span></div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; MODIFIER_SUPER = 1 &lt;&lt; 3 <span class="comment">/**&lt; Mod4/Command/Windows key */</span></div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;};</div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;<span class="comment">/**</span></div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;<span class="comment"> Special (non-Unicode) keyboard keys.</span></div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;<span class="keyword">enum</span> Key {</div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; KEY_F1 = 1,</div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; KEY_F2,</div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; KEY_F3,</div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; KEY_F4,</div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; KEY_F5,</div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; KEY_F6,</div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; KEY_F7,</div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; KEY_F8,</div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; KEY_F9,</div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; KEY_F10,</div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; KEY_F11,</div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; KEY_F12,</div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; KEY_LEFT,</div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; KEY_UP,</div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; KEY_RIGHT,</div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; KEY_DOWN,</div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; KEY_PAGE_UP,</div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; KEY_PAGE_DOWN,</div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; KEY_HOME,</div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; KEY_END,</div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; KEY_INSERT,</div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; KEY_SHIFT,</div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; KEY_CTRL,</div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; KEY_ALT,</div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; KEY_SUPER</div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;};</div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;</div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;<span class="comment">// Base DGL classes</span></div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160;<span class="comment">/**</span></div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160;<span class="comment"> Idle callback.</span></div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00176"></a><span class="lineno"><a class="line" href="classIdleCallback.html"> 176</a></span>&#160;<span class="keyword">class </span><a class="code" href="classIdleCallback.html">IdleCallback</a></div>
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160;{</div>
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; <span class="keyword">virtual</span> ~<a class="code" href="classIdleCallback.html">IdleCallback</a>() {}</div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> idleCallback() = 0;</div>
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160;};</div>
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;</div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;</div>
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160;END_NAMESPACE_DGL</div>
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;</div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;<span class="preprocessor">#endif // DGL_BASE_HPP_INCLUDED</span></div>
<div class="ttc" id="classIdleCallback_html"><div class="ttname"><a href="classIdleCallback.html">IdleCallback</a></div><div class="ttdef"><b>Definition:</b> Base.hpp:176</div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 217
- 0
Color_8hpp_source.html View File

@@ -0,0 +1,217 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: dgl/Color.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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</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>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_99893ac99dd47c2a73745483a12a725f.html">dgl</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">Color.hpp</div> </div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> * DISTRHO Plugin Framework (DPF)</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright (C) 2012-2014 Filipe Coelho &lt;falktx@falktx.com&gt;</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * Permission to use, copy, modify, and/or distribute this software for any purpose with</span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * or without fee is hereby granted, provided that the above copyright notice and this</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * permission notice appear in all copies.</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * THE SOFTWARE IS PROVIDED &quot;AS IS&quot; AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> */</span></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"> 17</span>&#160;<span class="preprocessor">#ifndef DGL_COLOR_HPP_INCLUDED</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="preprocessor">#define DGL_COLOR_HPP_INCLUDED</span></div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;</div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="preprocessor">#include &quot;Base.hpp&quot;</span></div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;</div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="keyword">struct </span>NVGcolor;</div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;</div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;START_NAMESPACE_DGL</div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;</div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;</div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment">// TODO: create color from &quot;#333&quot; and &quot;#112233&quot; like strings</span></div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment">/**</span></div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> A color made from red, green, blue and alpha floating-point values in [0..1] range.</span></div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment">*/</span></div>
<div class="line"><a name="l00033"></a><span class="lineno"><a class="line" href="structColor.html"> 33</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structColor.html">Color</a> {<span class="comment"></span></div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="comment"> Direct access to the color values.</span></div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; <span class="keyword">union </span>{</div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; <span class="keywordtype">float</span> rgba[4];</div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; <span class="keyword">struct </span>{ <span class="keywordtype">float</span> red, green, blue, alpha; };</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; };</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment"> Create black color.</span></div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; <a class="code" href="structColor.html#acbbdba6661c2bbd987ef27de59813b47">Color</a>() noexcept;</div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="comment"> Create a color from red, green, blue and alpha numeric values.</span></div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="comment"> Values must be in [0..255] range.</span></div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <a class="code" href="structColor.html#acbbdba6661c2bbd987ef27de59813b47">Color</a>(<span class="keywordtype">int</span> red, <span class="keywordtype">int</span> green, <span class="keywordtype">int</span> blue, <span class="keywordtype">int</span> alpha = 255) noexcept;</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="comment"> Create a color from red, green, blue and alpha floating-point values.</span></div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="comment"> Values must in [0..1] range.</span></div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <a class="code" href="structColor.html#acbbdba6661c2bbd987ef27de59813b47">Color</a>(<span class="keywordtype">float</span> red, <span class="keywordtype">float</span> green, <span class="keywordtype">float</span> blue, <span class="keywordtype">float</span> alpha = 1.0f) noexcept;</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="comment"> Create a color by copying another color.</span></div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <a class="code" href="structColor.html#acbbdba6661c2bbd987ef27de59813b47">Color</a>(<span class="keyword">const</span> <a class="code" href="structColor.html">Color</a>&amp; color) noexcept;</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <a class="code" href="structColor.html">Color</a>&amp; operator=(<span class="keyword">const</span> <a class="code" href="structColor.html">Color</a>&amp; color) noexcept;</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="comment"> Create a color by linearly interpolating two other colors.</span></div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <a class="code" href="structColor.html#acbbdba6661c2bbd987ef27de59813b47">Color</a>(<span class="keyword">const</span> <a class="code" href="structColor.html">Color</a>&amp; color1, <span class="keyword">const</span> <a class="code" href="structColor.html">Color</a>&amp; color2, <span class="keywordtype">float</span> u) noexcept;</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="comment"> Create a color specified by hue, saturation and lightness.</span></div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="comment"> Values must in [0..1] range.</span></div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="keyword">static</span> <a class="code" href="structColor.html">Color</a> <a class="code" href="structColor.html#a41820f7349e997489d53f98036e76a0c">fromHSL</a>(<span class="keywordtype">float</span> hue, <span class="keywordtype">float</span> saturation, <span class="keywordtype">float</span> lightness, <span class="keywordtype">float</span> alpha = 1.0f);</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="comment"> Create a color from a HTML string like &quot;#333&quot; or &quot;#112233&quot;.</span></div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keyword">static</span> <a class="code" href="structColor.html">Color</a> <a class="code" href="structColor.html#a57a79f611e15fb0abd288838a85990cb">fromHTML</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* rgb, <span class="keywordtype">float</span> alpha = 1.0f);</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="comment"> Linearly interpolate this color against another.</span></div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keywordtype">void</span> <a class="code" href="structColor.html#a96283f5b9ad6f6465e40f69012aca00f">interpolate</a>(<span class="keyword">const</span> <a class="code" href="structColor.html">Color</a>&amp; other, <span class="keywordtype">float</span> u) noexcept;</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="comment"> Check if this color matches another.</span></div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="comment"> @note: Comparison is forced within 8-bit color values.</span></div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="structColor.html#a16880d42b2d52ed23eb307ed2980a9a3">isEqual</a>(<span class="keyword">const</span> <a class="code" href="structColor.html">Color</a>&amp; color, <span class="keywordtype">bool</span> withAlpha = <span class="keyword">true</span>) noexcept;</div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="keywordtype">bool</span> isNotEqual(<span class="keyword">const</span> <a class="code" href="structColor.html">Color</a>&amp; color, <span class="keywordtype">bool</span> withAlpha = <span class="keyword">true</span>) noexcept;</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> <a class="code" href="structColor.html">Color</a>&amp; color) noexcept;</div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> <a class="code" href="structColor.html">Color</a>&amp; color) noexcept;</div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;<span class="comment"> Fix color bounds if needed.</span></div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="keywordtype">void</span> <a class="code" href="structColor.html#aad01f46af4cdb18b2bcbddd3f63d14d5">fixBounds</a>() noexcept;</div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;<span class="comment"> @internal</span></div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;<span class="comment"> Needed for NanoVG compatibility.</span></div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <a class="code" href="structColor.html#acbbdba6661c2bbd987ef27de59813b47">Color</a>(<span class="keyword">const</span> NVGcolor&amp;) noexcept;</div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="keyword">operator</span> NVGcolor() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;};</div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;</div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;</div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;END_NAMESPACE_DGL</div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;</div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;<span class="preprocessor">#endif // DGL_COLOR_HPP_INCLUDED</span></div>
<div class="ttc" id="structColor_html_aad01f46af4cdb18b2bcbddd3f63d14d5"><div class="ttname"><a href="structColor.html#aad01f46af4cdb18b2bcbddd3f63d14d5">Color::fixBounds</a></div><div class="ttdeci">void fixBounds() noexcept</div></div>
<div class="ttc" id="structColor_html"><div class="ttname"><a href="structColor.html">Color</a></div><div class="ttdef"><b>Definition:</b> Color.hpp:33</div></div>
<div class="ttc" id="structColor_html_acbbdba6661c2bbd987ef27de59813b47"><div class="ttname"><a href="structColor.html#acbbdba6661c2bbd987ef27de59813b47">Color::Color</a></div><div class="ttdeci">Color() noexcept</div></div>
<div class="ttc" id="structColor_html_a41820f7349e997489d53f98036e76a0c"><div class="ttname"><a href="structColor.html#a41820f7349e997489d53f98036e76a0c">Color::fromHSL</a></div><div class="ttdeci">static Color fromHSL(float hue, float saturation, float lightness, float alpha=1.0f)</div></div>
<div class="ttc" id="structColor_html_a16880d42b2d52ed23eb307ed2980a9a3"><div class="ttname"><a href="structColor.html#a16880d42b2d52ed23eb307ed2980a9a3">Color::isEqual</a></div><div class="ttdeci">bool isEqual(const Color &amp;color, bool withAlpha=true) noexcept</div></div>
<div class="ttc" id="structColor_html_a96283f5b9ad6f6465e40f69012aca00f"><div class="ttname"><a href="structColor.html#a96283f5b9ad6f6465e40f69012aca00f">Color::interpolate</a></div><div class="ttdeci">void interpolate(const Color &amp;other, float u) noexcept</div></div>
<div class="ttc" id="structColor_html_a57a79f611e15fb0abd288838a85990cb"><div class="ttname"><a href="structColor.html#a57a79f611e15fb0abd288838a85990cb">Color::fromHTML</a></div><div class="ttdeci">static Color fromHTML(const char *rgb, float alpha=1.0f)</div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 350
- 0
DistrhoInfo_8hpp_source.html View File

@@ -0,0 +1,350 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: distrho/DistrhoInfo.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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</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>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_37257469cca17bab24b582e18a78eb75.html">distrho</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">DistrhoInfo.hpp</div> </div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> * DISTRHO Plugin Framework (DPF)</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright (C) 2012-2015 Filipe Coelho &lt;falktx@falktx.com&gt;</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * Permission to use, copy, modify, and/or distribute this software for any purpose with</span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * or without fee is hereby granted, provided that the above copyright notice and this</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * permission notice appear in all copies.</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * THE SOFTWARE IS PROVIDED &quot;AS IS&quot; AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> */</span></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"> 17</span>&#160;<span class="preprocessor">#ifdef DOXYGEN</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;</div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="preprocessor">#include &quot;src/DistrhoDefines.h&quot;</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;</div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;START_NAMESPACE_DISTRHO</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"> 23</span>&#160;<span class="comment">/* ------------------------------------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * Intro */</span></div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment">/**</span></div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> @mainpage DISTRHO %Plugin Framework</span></div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> DISTRHO %Plugin Framework (or @b DPF for short)</span></div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> is a plugin framework designed to make development of new plugins an easy and enjoyable task.@n</span></div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> It allows developers to create plugins with custom UIs using a simple C++ API.</span></div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> @section Macros</span></div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="comment"> You start by creating a &quot;DistrhoPluginInfo.h&quot; file describing the plugin via macros, see @ref PluginMacros.@n</span></div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="comment"> This file is included in the main DPF code to figure out which features for each plugin format to export.</span></div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="comment"> For example, a plugin (with %UI) that use states will require LV2 hosts to support Atom and Worker extensions for</span></div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="comment"> message passing from the %UI to the plugin.@n</span></div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="comment"> If your plugin does not make use of states, the Worker extension is not set as a required feature.</span></div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment"> @section Plugin</span></div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment"> The next step is to create your plugin code by subclassing DPF&#39;s @ref Plugin class.@n</span></div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment"> You need to pass the number of parameters in the constructor and also the number of programs and states, if any.</span></div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment"> Here&#39;s an example of an audio plugin that simply mutes the host output:</span></div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="comment"> @code</span></div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment"> class MutePlugin : public Plugin</span></div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="comment"> {</span></div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="comment"> public:</span></div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="comment"> MutePlugin()</span></div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="comment"> : Plugin(0, 0, 0) // 0 parameters, 0 programs and 0 states</span></div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="comment"> {</span></div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="comment"> }</span></div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="comment"> protected:</span></div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="comment"> const char* getLabel() const override</span></div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="comment"> {</span></div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="comment"> return &quot;Mute&quot;;</span></div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="comment"> }</span></div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="comment"> const char* getMaker() const override</span></div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="comment"> {</span></div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="comment"> return &quot;DPF&quot;;</span></div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="comment"> }</span></div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="comment"> const char* getLicense() const override</span></div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="comment"> {</span></div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="comment"> return &quot;MIT&quot;;</span></div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="comment"> }</span></div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="comment"> uint32_t getVersion() const override</span></div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="comment"> {</span></div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="comment"> return 0x1000;</span></div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="comment"> }</span></div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="comment"> int64_t getUniqueId() const override</span></div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="comment"> {</span></div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="comment"> return cconst(&#39;M&#39;, &#39;u&#39;, &#39;t&#39;, &#39;e&#39;);</span></div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="comment"> }</span></div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="comment"> void run(const float**, float** outputs, uint32_t frames) override</span></div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="comment"> {</span></div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="comment"> // get the left and right audio outputs</span></div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="comment"> float* const outL = outputs[0];</span></div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<span class="comment"> float* const outR = outputs[1];</span></div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="comment"> // mute audio</span></div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="comment"> std::memset(outL, 0, sizeof(float)*frames);</span></div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="comment"> std::memset(outR, 0, sizeof(float)*frames);</span></div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;<span class="comment"> }</span></div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="comment"> };</span></div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;<span class="comment"> @endcode</span></div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;<span class="comment"> See the @ref Plugin class for more information and to understand what each function does.</span></div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;<span class="comment"> @section Parameters</span></div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;<span class="comment"> describe input and output, automable and rt safe, boolean etc, cv</span></div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;<span class="comment"> @section Programs</span></div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;<span class="comment"> describe them</span></div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;<span class="comment"> @section States</span></div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="comment"> describe them</span></div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<span class="comment"> @section MIDI</span></div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<span class="comment"> describe them</span></div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;<span class="comment"> @section Latency</span></div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;<span class="comment"> describe it</span></div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;<span class="comment"> @section Time-Position</span></div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;<span class="comment"> describe it</span></div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;<span class="comment"> @section UI</span></div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;<span class="comment"> describe them</span></div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;<span class="comment">*/</span></div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;</div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;<span class="comment">/* ------------------------------------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;<span class="comment"> * Plugin Macros */</span></div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;<span class="comment">/**</span></div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;<span class="comment"> @defgroup PluginMacros Plugin Macros</span></div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;<span class="comment"> C Macros that describe your plugin. (defined in the &quot;DistrhoPluginInfo.h&quot; file)</span></div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;<span class="comment"> With these macros you can tell the host what features your plugin requires.@n</span></div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;<span class="comment"> Depending on which macros you enable, new functions will be available to call and/or override.</span></div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;<span class="comment"> All values are either integer or strings.@n</span></div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;<span class="comment"> For boolean-like values 1 means &#39;on&#39; and 0 means &#39;off&#39;.</span></div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;<span class="comment"> The values defined in this group are for documentation purposes only.@n</span></div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;<span class="comment"> All macros are disabled by default.</span></div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;<span class="comment"> Only 4 macros are required, they are:</span></div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;<span class="comment"> - @ref DISTRHO_PLUGIN_NAME</span></div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;<span class="comment"> - @ref DISTRHO_PLUGIN_NUM_INPUTS</span></div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;<span class="comment"> - @ref DISTRHO_PLUGIN_NUM_OUTPUTS</span></div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;<span class="comment"> - @ref DISTRHO_PLUGIN_URI</span></div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;<span class="comment"> @{</span></div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;<span class="comment">/**</span></div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;<span class="comment"> The plugin name.@n</span></div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;<span class="comment"> This is used to identify your plugin before a Plugin instance can be created.</span></div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;<span class="comment"> @note This macro is required.</span></div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00148"></a><span class="lineno"><a class="line" href="group__PluginMacros.html#ga888482a9f695c2ca2f433e5f3172dcc4"> 148</a></span>&#160;<span class="preprocessor">#define DISTRHO_PLUGIN_NAME &quot;Plugin Name&quot;</span></div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;<span class="comment">/**</span></div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;<span class="comment"> Number of audio inputs the plugin has.</span></div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;<span class="comment"> @note This macro is required.</span></div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00154"></a><span class="lineno"><a class="line" href="group__PluginMacros.html#ga5f4f3d9a5dc3c23882d158e636319998"> 154</a></span>&#160;<span class="preprocessor">#define DISTRHO_PLUGIN_NUM_INPUTS 2</span></div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;<span class="comment">/**</span></div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;<span class="comment"> Number of audio outputs the plugin has.</span></div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;<span class="comment"> @note This macro is required.</span></div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00160"></a><span class="lineno"><a class="line" href="group__PluginMacros.html#ga917195804ebcb2bb48c9fad52b20b3ca"> 160</a></span>&#160;<span class="preprocessor">#define DISTRHO_PLUGIN_NUM_OUTPUTS 2</span></div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;<span class="comment">/**</span></div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;<span class="comment"> The plugin URI when exporting in LV2 format.</span></div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;<span class="comment"> @note This macro is required.</span></div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00166"></a><span class="lineno"><a class="line" href="group__PluginMacros.html#ga9cc186448134e6a1956474b3878c97a8"> 166</a></span>&#160;<span class="preprocessor">#define DISTRHO_PLUGIN_URI &quot;urn:distrho:name&quot;</span></div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;<span class="comment">/**</span></div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;<span class="comment"> Wherever the plugin has a custom %UI.</span></div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;<span class="comment"> @see DISTRHO_UI_USE_NANOVG</span></div>
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;<span class="comment"> @see UI</span></div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00173"></a><span class="lineno"><a class="line" href="group__PluginMacros.html#gacf8a1af679c09637ba0bdc5f4f8e37dd"> 173</a></span>&#160;<span class="preprocessor">#define DISTRHO_PLUGIN_HAS_UI 1</span></div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160;<span class="comment">/**</span></div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;<span class="comment"> Wherever the plugin processing is realtime-safe.@n</span></div>
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160;<span class="comment"> TODO - list rtsafe requirements</span></div>
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00179"></a><span class="lineno"><a class="line" href="group__PluginMacros.html#ga82546dd199fcea338b113f2f6da84ced"> 179</a></span>&#160;<span class="preprocessor">#define DISTRHO_PLUGIN_IS_RT_SAFE 1</span></div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160;<span class="comment">/**</span></div>
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;<span class="comment"> Wherever the plugin is a synth.@n</span></div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;<span class="comment"> @ref DISTRHO_PLUGIN_WANT_MIDI_INPUT is automatically enabled when this is too.</span></div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;<span class="comment"> @see DISTRHO_PLUGIN_WANT_MIDI_INPUT</span></div>
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00186"></a><span class="lineno"><a class="line" href="group__PluginMacros.html#ga854bde6b6fdb0d47182149dbab0fed72"> 186</a></span>&#160;<span class="preprocessor">#define DISTRHO_PLUGIN_IS_SYNTH 1</span></div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;<span class="comment">/**</span></div>
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;<span class="comment"> Enable direct access between the %UI and plugin code.</span></div>
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;<span class="comment"> @see UI::getPluginInstancePointer()</span></div>
<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160;<span class="comment"> @note DO NOT USE THIS UNLESS STRICTLY NECESSARY!!</span></div>
<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160;<span class="comment"> Try to avoid it at all costs!</span></div>
<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00194"></a><span class="lineno"><a class="line" href="group__PluginMacros.html#gac6873a3950f52f3fde8e386af63b69a1"> 194</a></span>&#160;<span class="preprocessor">#define DISTRHO_PLUGIN_WANT_DIRECT_ACCESS 0</span></div>
<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160;<span class="comment">/**</span></div>
<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160;<span class="comment"> Wherever the plugin introduces latency during audio or midi processing.</span></div>
<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;<span class="comment"> @see Plugin::setLatency(uint32_t)</span></div>
<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00200"></a><span class="lineno"><a class="line" href="group__PluginMacros.html#gad6b0ebf10e048f4742f29735da4d4930"> 200</a></span>&#160;<span class="preprocessor">#define DISTRHO_PLUGIN_WANT_LATENCY 1</span></div>
<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160;<span class="comment">/**</span></div>
<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160;<span class="comment"> Wherever the plugin wants MIDI input.@n</span></div>
<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160;<span class="comment"> This is automatically enabled if @ref DISTRHO_PLUGIN_IS_SYNTH is true.</span></div>
<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00206"></a><span class="lineno"><a class="line" href="group__PluginMacros.html#gadf2e2eb7550e4116001c816adfb04a70"> 206</a></span>&#160;<span class="preprocessor">#define DISTRHO_PLUGIN_WANT_MIDI_INPUT 1</span></div>
<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160;<span class="comment">/**</span></div>
<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160;<span class="comment"> Wherever the plugin wants MIDI output.</span></div>
<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160;<span class="comment"> @see Plugin::writeMidiEvent(const MidiEvent&amp;)</span></div>
<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00212"></a><span class="lineno"><a class="line" href="group__PluginMacros.html#ga548522eb91344a45841a5a95ff4f8073"> 212</a></span>&#160;<span class="preprocessor">#define DISTRHO_PLUGIN_WANT_MIDI_OUTPUT 1</span></div>
<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160;<span class="comment">/**</span></div>
<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160;<span class="comment"> Wherever the plugin provides its own internal programs.</span></div>
<div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160;<span class="comment"> @see Plugin::initProgramName(uint32_t, String&amp;)</span></div>
<div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160;<span class="comment"> @see Plugin::setProgram(uint32_t)</span></div>
<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00219"></a><span class="lineno"><a class="line" href="group__PluginMacros.html#gad95e24b17f196260cee15255fdb5b677"> 219</a></span>&#160;<span class="preprocessor">#define DISTRHO_PLUGIN_WANT_PROGRAMS 1</span></div>
<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160;<span class="comment">/**</span></div>
<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160;<span class="comment"> Wherever the plugin uses internal non-parameter data.</span></div>
<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160;<span class="comment"> @see Plugin::initState(uint32_t, String&amp;, String&amp;)</span></div>
<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160;<span class="comment"> @see Plugin::setState(const char*, const char*)</span></div>
<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00226"></a><span class="lineno"><a class="line" href="group__PluginMacros.html#ga255f43cc0997af8b56abcca260c875e0"> 226</a></span>&#160;<span class="preprocessor">#define DISTRHO_PLUGIN_WANT_STATE 1</span></div>
<div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160;<span class="comment">/**</span></div>
<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160;<span class="comment"> Wherever the plugin wants time position information from the host.</span></div>
<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160;<span class="comment"> @see Plugin::getTimePosition()</span></div>
<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00232"></a><span class="lineno"><a class="line" href="group__PluginMacros.html#ga496610b956d931b1940d07da48d123f2"> 232</a></span>&#160;<span class="preprocessor">#define DISTRHO_PLUGIN_WANT_TIMEPOS 1</span></div>
<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160;<span class="comment">/**</span></div>
<div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160;<span class="comment"> Wherever the %UI uses NanoVG for drawing instead of the default raw OpenGL calls.@n</span></div>
<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160;<span class="comment"> When enabled your %UI instance will subclass @ref NanoWidget instead of @ref Widget.</span></div>
<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00238"></a><span class="lineno"><a class="line" href="group__PluginMacros.html#gad49e79936a2aa5afa089cbc051426ccd"> 238</a></span>&#160;<span class="preprocessor">#define DISTRHO_UI_USE_NANOVG 1</span></div>
<div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160;<span class="comment">/**</span></div>
<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160;<span class="comment"> The %UI URI when exporting in LV2 format.@n</span></div>
<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160;<span class="comment"> By default this is set to @ref DISTRHO_PLUGIN_URI with &quot;#UI&quot; as suffix.</span></div>
<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00244"></a><span class="lineno"><a class="line" href="group__PluginMacros.html#ga420a88022da249b9f38a6046998dbd7c"> 244</a></span>&#160;<span class="preprocessor">#define DISTRHO_UI_URI DISTRHO_PLUGIN_URI &quot;#UI&quot;</span></div>
<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160;<span class="comment">/** @} */</span></div>
<div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160;</div>
<div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160;<span class="comment">// -----------------------------------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160;</div>
<div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160;END_NAMESPACE_DISTRHO</div>
<div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160;</div>
<div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160;<span class="preprocessor">#endif // DOXYGEN</span></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 738
- 892
DistrhoPlugin_8hpp_source.html
File diff suppressed because it is too large
View File


+ 181
- 166
DistrhoUI_8hpp_source.html View File

@@ -123,187 +123,202 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="comment"> * DPF UI */</span></div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="comment">/**</span></div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="comment"> DPF UI class from where UI instances are created.</span></div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="comment"> TODO.</span></div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="comment"> @addtogroup MainClasses</span></div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="comment"> @{</span></div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment"> must call setSize during construction,</span></div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="classUI.html"> 43</a></span>&#160;<span class="keyword">class </span><a class="code" href="classUI.html">UI</a> : <span class="keyword">public</span> UIWidget</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;{</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="keyword">public</span>:<span class="comment"></span></div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment"> UI class constructor.</span></div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="comment"> The UI should be initialized to a default state that matches the plugin side.</span></div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <a class="code" href="classUI.html#ad3425075e4a23234a8568d1893b54f22">UI</a>(uint width = 0, uint height = 0);</div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="comment"> Destructor.</span></div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment">/**</span></div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment"> DPF UI class from where UI instances are created.</span></div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment"> TODO.</span></div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="comment"> must call setSize during construction,</span></div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="classUI.html"> 48</a></span>&#160;<span class="keyword">class </span><a class="code" href="classUI.html">UI</a> : <span class="keyword">public</span> UIWidget</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;<span class="keyword">public</span>:<span class="comment"></span></div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="comment"> UI class constructor.</span></div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="comment"> The UI should be initialized to a default state that matches the plugin side.</span></div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="keyword">virtual</span> <a class="code" href="classUI.html#a47e7b6111faba049dfee4738d067cc42">~UI</a>();</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="comment">/* --------------------------------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="comment"> * Host state */</span></div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="comment"> Get the current sample rate used in plugin processing.</span></div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="comment"> @see d_sampleRateChanged(double)</span></div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <span class="keywordtype">double</span> <a class="code" href="classUI.html#ab6cbe4dcade92f7f49d4405e51ee639c">d_getSampleRate</a>() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="comment"> TODO: Document this.</span></div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <a class="code" href="classUI.html#ad3425075e4a23234a8568d1893b54f22">UI</a>(uint width = 0, uint height = 0);</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="comment"> Destructor.</span></div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="keyword">virtual</span> <a class="code" href="classUI.html#a47e7b6111faba049dfee4738d067cc42">~UI</a>();</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="comment">/* --------------------------------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="comment"> * Host state */</span></div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="comment"> Get the current sample rate used in plugin processing.</span></div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="comment"> @see sampleRateChanged(double)</span></div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classUI.html#a768b898d1e063d5c0112197b99ccba99">d_editParameter</a>(<span class="keyword">const</span> uint32_t index, <span class="keyword">const</span> <span class="keywordtype">bool</span> started);</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keywordtype">double</span> <a class="code" href="classUI.html#a97d880182254652f94e7bed355370c07">getSampleRate</a>() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="comment"> TODO: Document this.</span></div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classUI.html#a310a08018194f82937ca92bed4e77f1f">d_setParameterValue</a>(<span class="keyword">const</span> uint32_t index, <span class="keyword">const</span> <span class="keywordtype">float</span> value);</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="preprocessor">#if DISTRHO_PLUGIN_WANT_STATE</span></div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="comment"> TODO: Document this.</span></div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classUI.html#ac32cb7fd88c642eadebf64137acd910e">d_setState</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keyword">const</span> key, <span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keyword">const</span> value);</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="preprocessor">#if DISTRHO_PLUGIN_IS_SYNTH</span></div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<span class="comment"> TODO: Document this.</span></div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classUI.html#a621c381126d8e2f0124199b82cdcd456">d_sendNote</a>(<span class="keyword">const</span> uint8_t channel, <span class="keyword">const</span> uint8_t note, <span class="keyword">const</span> uint8_t velocity);</div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;<span class="preprocessor">#if DISTRHO_PLUGIN_WANT_DIRECT_ACCESS</span></div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="comment">/* --------------------------------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;<span class="comment"> * Direct DSP access - DO NOT USE THIS UNLESS STRICTLY NECESSARY!! */</span></div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<span class="comment"> TODO: Document this.</span></div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <span class="keywordtype">void</span>* <a class="code" href="classUI.html#a5393f505fc8702905c15c70c9fcf0d48">d_getPluginInstancePointer</a>() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;</div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;<span class="keyword">protected</span>:</div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="comment">/* --------------------------------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;<span class="comment"> * DSP/Plugin Callbacks */</span></div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<span class="comment"> A parameter has changed on the plugin side.</span></div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<span class="comment"> This is called by the host to inform the UI about parameter changes.</span></div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classUI.html#a9599da33720f4648e9ce78cc18249b07">d_parameterChanged</a>(uint32_t index, <span class="keywordtype">float</span> value) = 0;</div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;</div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;<span class="preprocessor">#if DISTRHO_PLUGIN_WANT_PROGRAMS</span></div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;<span class="comment"> The current program has changed on the plugin side.</span></div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;<span class="comment"> This is called by the host to inform the UI about program changes.</span></div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classUI.html#a7d703d2caff4765f270686b8428a2fa0">d_programChanged</a>(uint32_t index) = 0;</div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;</div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;<span class="preprocessor">#if DISTRHO_PLUGIN_WANT_STATE</span></div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;<span class="comment"> A state has changed on the plugin side.</span></div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;<span class="comment"> This is called by the host to inform the UI about state changes.</span></div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classUI.html#a7f508ebffec7a5168b532ccb9d81df70">d_stateChanged</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* key, <span class="keyword">const</span> <span class="keywordtype">char</span>* value) = 0;</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;</div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="comment">/* --------------------------------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;<span class="comment"> * DSP/Plugin Callbacks (optional) */</span></div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;<span class="comment"> Optional callback to inform the UI about a sample rate change on the plugin side.</span></div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;<span class="comment"> @see d_getSampleRate()</span></div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classUI.html#a18f4b84a973405fc098e69047e0d1994">d_sampleRateChanged</a>(<span class="keywordtype">double</span> newSampleRate);</div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;</div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <span class="comment">/* --------------------------------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;<span class="comment"> * UI Callbacks (optional) */</span></div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;<span class="comment"> TODO: Document this.</span></div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00141"></a><span class="lineno"><a class="line" href="classUI.html#aa320b8d3e826394dad9f7c36692f9b6c"> 141</a></span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classUI.html#aa320b8d3e826394dad9f7c36692f9b6c">d_uiIdle</a>() {}</div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classUI.html#aeea59720583d501254284e5be540f60e">editParameter</a>(<span class="keyword">const</span> uint32_t index, <span class="keyword">const</span> <span class="keywordtype">bool</span> started);</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="comment"> TODO: Document this.</span></div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classUI.html#ab280fd0729e3b51d15ededbd61f5c93c">setParameterValue</a>(<span class="keyword">const</span> uint32_t index, <span class="keyword">const</span> <span class="keywordtype">float</span> value);</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="preprocessor">#if DISTRHO_PLUGIN_WANT_STATE</span></div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="comment"> TODO: Document this.</span></div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classUI.html#aa50fc2fef715805435a14f653cb90cbd">setState</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keyword">const</span> key, <span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keyword">const</span> value);</div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;</div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="preprocessor">#if DISTRHO_PLUGIN_IS_SYNTH</span></div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;<span class="comment"> TODO: Document this.</span></div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classUI.html#a95d686f44e486f7ed1505399612b4f84">sendNote</a>(<span class="keyword">const</span> uint8_t channel, <span class="keyword">const</span> uint8_t note, <span class="keyword">const</span> uint8_t velocity);</div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<span class="preprocessor">#if DISTRHO_PLUGIN_WANT_DIRECT_ACCESS</span></div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="comment">/* --------------------------------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;<span class="comment"> * Direct DSP access - DO NOT USE THIS UNLESS STRICTLY NECESSARY!! */</span></div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;<span class="comment"> TODO: Document this.</span></div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="keywordtype">void</span>* <a class="code" href="classUI.html#a0863a8f7ca7fc7e172e703c58518329f">getPluginInstancePointer</a>() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;</div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<span class="keyword">protected</span>:</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="comment">/* --------------------------------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="comment"> * DSP/Plugin Callbacks */</span></div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;<span class="comment"> A parameter has changed on the plugin side.</span></div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;<span class="comment"> This is called by the host to inform the UI about parameter changes.</span></div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classUI.html#ab3086d302a9685b25abf144ade3e88f6">parameterChanged</a>(uint32_t index, <span class="keywordtype">float</span> value) = 0;</div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;</div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;<span class="preprocessor">#if DISTRHO_PLUGIN_WANT_PROGRAMS</span></div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;<span class="comment"> The current program has changed on the plugin side.</span></div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;<span class="comment"> This is called by the host to inform the UI about program changes.</span></div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classUI.html#a84c36578d87c5b569d1ab6a372f31937">programChanged</a>(uint32_t index) = 0;</div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;</div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;<span class="preprocessor">#if DISTRHO_PLUGIN_WANT_STATE</span></div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;<span class="comment"> A state has changed on the plugin side.</span></div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;<span class="comment"> This is called by the host to inform the UI about state changes.</span></div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classUI.html#a1bdc7e158d974e82f0535f1658d66575">stateChanged</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* key, <span class="keyword">const</span> <span class="keywordtype">char</span>* value) = 0;</div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;</div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="comment">/* --------------------------------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;<span class="comment"> * DSP/Plugin Callbacks (optional) */</span></div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;<span class="comment"> Optional callback to inform the UI about a sample rate change on the plugin side.</span></div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;<span class="comment"> @see getSampleRate()</span></div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classUI.html#ac3e98726ca71f95a1e6c867706ebd9be">sampleRateChanged</a>(<span class="keywordtype">double</span> newSampleRate);</div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;</div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <span class="comment">/* --------------------------------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;<span class="comment"> * UI Callbacks (optional) */</span></div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;<span class="comment"> File browser selected function.</span></div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;<span class="comment"> @see Window::fileBrowserSelected(const char*)</span></div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classUI.html#ab10300e34b40d6b447b1213813f474c0">d_uiFileBrowserSelected</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* filename);</div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;<span class="comment"> OpenGL window reshape function, called when parent window is resized.</span></div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;<span class="comment"> You can reimplement this function for a custom OpenGL state.</span></div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;<span class="comment"> @see Window::onReshape(uint,uint)</span></div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classUI.html#aaf729415450434ad6690db93fd936bbf">d_uiReshape</a>(uint width, uint height);</div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;</div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <span class="comment">/* --------------------------------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;<span class="comment"> * UI Resize Handling, internal */</span></div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;<span class="comment"> OpenGL widget resize function, called when the widget is resized.</span></div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;<span class="comment"> This is overriden here so the host knows when the UI is resized by you.</span></div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;<span class="comment"> @see Widget::onResize(const ResizeEvent&amp;)</span></div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classUI.html#a8de15be030bbdf0eb81461349cb1cc77">onResize</a>(<span class="keyword">const</span> ResizeEvent&amp; ev) <span class="keyword">override</span>;</div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;</div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <span class="comment">// -------------------------------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;</div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <span class="keyword">struct </span>PrivateData;</div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; PrivateData* <span class="keyword">const</span> pData;</div>
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="keyword">friend</span> <span class="keyword">class </span>UIExporter;</div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <span class="keyword">friend</span> <span class="keyword">class </span>UIExporterWindow;</div>
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160;</div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; <span class="comment">// these should not be used</span></div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; <span class="keywordtype">void</span> setAbsoluteX(<span class="keywordtype">int</span>) const noexcept {}</div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <span class="keywordtype">void</span> setAbsoluteY(<span class="keywordtype">int</span>) const noexcept {}</div>
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <span class="keywordtype">void</span> setAbsolutePos(<span class="keywordtype">int</span>, <span class="keywordtype">int</span>) const noexcept {}</div>
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; <span class="keywordtype">void</span> setAbsolutePos(<span class="keyword">const</span> DGL::Point&lt;int&gt;&amp;) const noexcept {}</div>
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; <span class="keywordtype">void</span> setNeedsFullViewport(<span class="keywordtype">bool</span>) const noexcept {}</div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;</div>
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; DISTRHO_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR(<a class="code" href="classUI.html">UI</a>)</div>
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;};</div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;</div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;<span class="comment">/* ------------------------------------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160;<span class="comment"> * Create UI, entry point */</span></div>
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;<span class="comment">/**</span></div>
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;<span class="comment"> TODO.</span></div>
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;<span class="keyword">extern</span> <a class="code" href="classUI.html">UI</a>* createUI();</div>
<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160;</div>
<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160;<span class="comment">// -----------------------------------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;</div>
<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160;END_NAMESPACE_DISTRHO</div>
<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;</div>
<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160;<span class="preprocessor">#endif // DISTRHO_UI_HPP_INCLUDED</span></div>
<div class="ttc" id="classUI_html_a18f4b84a973405fc098e69047e0d1994"><div class="ttname"><a href="classUI.html#a18f4b84a973405fc098e69047e0d1994">UI::d_sampleRateChanged</a></div><div class="ttdeci">virtual void d_sampleRateChanged(double newSampleRate)</div></div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;<span class="comment"> TODO: Document this.</span></div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00146"></a><span class="lineno"><a class="line" href="classUI.html#af8de639088f3b2d42c266a2d2d6719da"> 146</a></span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classUI.html#af8de639088f3b2d42c266a2d2d6719da">uiIdle</a>() {}</div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;<span class="comment"> File browser selected function.</span></div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;<span class="comment"> @see Window::fileBrowserSelected(const char*)</span></div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classUI.html#a6d4697296129d3a6bc34fc810d6297ac">uiFileBrowserSelected</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* filename);</div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;<span class="comment"> OpenGL window reshape function, called when parent window is resized.</span></div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;<span class="comment"> You can reimplement this function for a custom OpenGL state.</span></div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;<span class="comment"> @see Window::onReshape(uint,uint)</span></div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classUI.html#ab6861389e1bb01268a189dadbeb4fbcc">uiReshape</a>(uint width, uint height);</div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;</div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <span class="comment">/* --------------------------------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;<span class="comment"> * UI Resize Handling, internal */</span></div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;<span class="comment"> OpenGL widget resize function, called when the widget is resized.</span></div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;<span class="comment"> This is overriden here so the host knows when the UI is resized by you.</span></div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;<span class="comment"> @see Widget::onResize(const ResizeEvent&amp;)</span></div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classUI.html#a8de15be030bbdf0eb81461349cb1cc77">onResize</a>(<span class="keyword">const</span> ResizeEvent&amp; ev) <span class="keyword">override</span>;</div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;</div>
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="comment">// -------------------------------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;</div>
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; <span class="keyword">struct </span>PrivateData;</div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; PrivateData* <span class="keyword">const</span> pData;</div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <span class="keyword">friend</span> <span class="keyword">class </span>UIExporter;</div>
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <span class="keyword">friend</span> <span class="keyword">class </span>UIExporterWindow;</div>
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160;</div>
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; <span class="comment">// these should not be used</span></div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; <span class="keywordtype">void</span> setAbsoluteX(<span class="keywordtype">int</span>) const noexcept {}</div>
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; <span class="keywordtype">void</span> setAbsoluteY(<span class="keywordtype">int</span>) const noexcept {}</div>
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; <span class="keywordtype">void</span> setAbsolutePos(<span class="keywordtype">int</span>, <span class="keywordtype">int</span>) const noexcept {}</div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <span class="keywordtype">void</span> setAbsolutePos(<span class="keyword">const</span> DGL::Point&lt;int&gt;&amp;) const noexcept {}</div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; <span class="keywordtype">void</span> setNeedsFullViewport(<span class="keywordtype">bool</span>) const noexcept {}</div>
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160;</div>
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; DISTRHO_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR(<a class="code" href="classUI.html">UI</a>)</div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;};</div>
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;<span class="comment">/** @} */</span></div>
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;</div>
<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160;<span class="comment">/* ------------------------------------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160;<span class="comment"> * Create UI, entry point */</span></div>
<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160;<span class="comment">/**</span></div>
<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;<span class="comment"> @addtogroup EntryPoints</span></div>
<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160;<span class="comment"> @{</span></div>
<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160;<span class="comment">/**</span></div>
<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160;<span class="comment"> TODO.</span></div>
<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160;<span class="keyword">extern</span> <a class="code" href="classUI.html">UI</a>* <a class="code" href="group__EntryPoints.html#gaad0ced21537a067680729bee6a65d8c8">createUI</a>();</div>
<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160;<span class="comment">/** @} */</span></div>
<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160;</div>
<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160;<span class="comment">// -----------------------------------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160;</div>
<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160;END_NAMESPACE_DISTRHO</div>
<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160;</div>
<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160;<span class="preprocessor">#endif // DISTRHO_UI_HPP_INCLUDED</span></div>
<div class="ttc" id="classUI_html_ab3086d302a9685b25abf144ade3e88f6"><div class="ttname"><a href="classUI.html#ab3086d302a9685b25abf144ade3e88f6">UI::parameterChanged</a></div><div class="ttdeci">virtual void parameterChanged(uint32_t index, float value)=0</div></div>
<div class="ttc" id="classUI_html_a8de15be030bbdf0eb81461349cb1cc77"><div class="ttname"><a href="classUI.html#a8de15be030bbdf0eb81461349cb1cc77">UI::onResize</a></div><div class="ttdeci">void onResize(const ResizeEvent &amp;ev) override</div></div>
<div class="ttc" id="classUI_html_a47e7b6111faba049dfee4738d067cc42"><div class="ttname"><a href="classUI.html#a47e7b6111faba049dfee4738d067cc42">UI::~UI</a></div><div class="ttdeci">virtual ~UI()</div></div>
<div class="ttc" id="classUI_html_a7f508ebffec7a5168b532ccb9d81df70"><div class="ttname"><a href="classUI.html#a7f508ebffec7a5168b532ccb9d81df70">UI::d_stateChanged</a></div><div class="ttdeci">virtual void d_stateChanged(const char *key, const char *value)=0</div></div>
<div class="ttc" id="classUI_html_a5393f505fc8702905c15c70c9fcf0d48"><div class="ttname"><a href="classUI.html#a5393f505fc8702905c15c70c9fcf0d48">UI::d_getPluginInstancePointer</a></div><div class="ttdeci">void * d_getPluginInstancePointer() const noexcept</div></div>
<div class="ttc" id="classUI_html_a9599da33720f4648e9ce78cc18249b07"><div class="ttname"><a href="classUI.html#a9599da33720f4648e9ce78cc18249b07">UI::d_parameterChanged</a></div><div class="ttdeci">virtual void d_parameterChanged(uint32_t index, float value)=0</div></div>
<div class="ttc" id="classUI_html_ab10300e34b40d6b447b1213813f474c0"><div class="ttname"><a href="classUI.html#ab10300e34b40d6b447b1213813f474c0">UI::d_uiFileBrowserSelected</a></div><div class="ttdeci">virtual void d_uiFileBrowserSelected(const char *filename)</div></div>
<div class="ttc" id="classUI_html_ac32cb7fd88c642eadebf64137acd910e"><div class="ttname"><a href="classUI.html#ac32cb7fd88c642eadebf64137acd910e">UI::d_setState</a></div><div class="ttdeci">void d_setState(const char *const key, const char *const value)</div></div>
<div class="ttc" id="classUI_html_a7d703d2caff4765f270686b8428a2fa0"><div class="ttname"><a href="classUI.html#a7d703d2caff4765f270686b8428a2fa0">UI::d_programChanged</a></div><div class="ttdeci">virtual void d_programChanged(uint32_t index)=0</div></div>
<div class="ttc" id="classUI_html_aeea59720583d501254284e5be540f60e"><div class="ttname"><a href="classUI.html#aeea59720583d501254284e5be540f60e">UI::editParameter</a></div><div class="ttdeci">void editParameter(const uint32_t index, const bool started)</div></div>
<div class="ttc" id="classUI_html_a0863a8f7ca7fc7e172e703c58518329f"><div class="ttname"><a href="classUI.html#a0863a8f7ca7fc7e172e703c58518329f">UI::getPluginInstancePointer</a></div><div class="ttdeci">void * getPluginInstancePointer() const noexcept</div></div>
<div class="ttc" id="classUI_html_a84c36578d87c5b569d1ab6a372f31937"><div class="ttname"><a href="classUI.html#a84c36578d87c5b569d1ab6a372f31937">UI::programChanged</a></div><div class="ttdeci">virtual void programChanged(uint32_t index)=0</div></div>
<div class="ttc" id="classUI_html_ac3e98726ca71f95a1e6c867706ebd9be"><div class="ttname"><a href="classUI.html#ac3e98726ca71f95a1e6c867706ebd9be">UI::sampleRateChanged</a></div><div class="ttdeci">virtual void sampleRateChanged(double newSampleRate)</div></div>
<div class="ttc" id="classUI_html_aa50fc2fef715805435a14f653cb90cbd"><div class="ttname"><a href="classUI.html#aa50fc2fef715805435a14f653cb90cbd">UI::setState</a></div><div class="ttdeci">void setState(const char *const key, const char *const value)</div></div>
<div class="ttc" id="classUI_html_ad3425075e4a23234a8568d1893b54f22"><div class="ttname"><a href="classUI.html#ad3425075e4a23234a8568d1893b54f22">UI::UI</a></div><div class="ttdeci">UI(uint width=0, uint height=0)</div></div>
<div class="ttc" id="classUI_html_aa320b8d3e826394dad9f7c36692f9b6c"><div class="ttname"><a href="classUI.html#aa320b8d3e826394dad9f7c36692f9b6c">UI::d_uiIdle</a></div><div class="ttdeci">virtual void d_uiIdle()</div><div class="ttdef"><b>Definition:</b> DistrhoUI.hpp:141</div></div>
<div class="ttc" id="classUI_html_a621c381126d8e2f0124199b82cdcd456"><div class="ttname"><a href="classUI.html#a621c381126d8e2f0124199b82cdcd456">UI::d_sendNote</a></div><div class="ttdeci">void d_sendNote(const uint8_t channel, const uint8_t note, const uint8_t velocity)</div></div>
<div class="ttc" id="classUI_html_a768b898d1e063d5c0112197b99ccba99"><div class="ttname"><a href="classUI.html#a768b898d1e063d5c0112197b99ccba99">UI::d_editParameter</a></div><div class="ttdeci">void d_editParameter(const uint32_t index, const bool started)</div></div>
<div class="ttc" id="classUI_html"><div class="ttname"><a href="classUI.html">UI</a></div><div class="ttdef"><b>Definition:</b> DistrhoUI.hpp:43</div></div>
<div class="ttc" id="classUI_html_ab6cbe4dcade92f7f49d4405e51ee639c"><div class="ttname"><a href="classUI.html#ab6cbe4dcade92f7f49d4405e51ee639c">UI::d_getSampleRate</a></div><div class="ttdeci">double d_getSampleRate() const noexcept</div></div>
<div class="ttc" id="classUI_html_a310a08018194f82937ca92bed4e77f1f"><div class="ttname"><a href="classUI.html#a310a08018194f82937ca92bed4e77f1f">UI::d_setParameterValue</a></div><div class="ttdeci">void d_setParameterValue(const uint32_t index, const float value)</div></div>
<div class="ttc" id="classUI_html_aaf729415450434ad6690db93fd936bbf"><div class="ttname"><a href="classUI.html#aaf729415450434ad6690db93fd936bbf">UI::d_uiReshape</a></div><div class="ttdeci">virtual void d_uiReshape(uint width, uint height)</div></div>
<div class="ttc" id="group__EntryPoints_html_gaad0ced21537a067680729bee6a65d8c8"><div class="ttname"><a href="group__EntryPoints.html#gaad0ced21537a067680729bee6a65d8c8">createUI</a></div><div class="ttdeci">UI * createUI()</div></div>
<div class="ttc" id="classUI_html_ab280fd0729e3b51d15ededbd61f5c93c"><div class="ttname"><a href="classUI.html#ab280fd0729e3b51d15ededbd61f5c93c">UI::setParameterValue</a></div><div class="ttdeci">void setParameterValue(const uint32_t index, const float value)</div></div>
<div class="ttc" id="classUI_html_a1bdc7e158d974e82f0535f1658d66575"><div class="ttname"><a href="classUI.html#a1bdc7e158d974e82f0535f1658d66575">UI::stateChanged</a></div><div class="ttdeci">virtual void stateChanged(const char *key, const char *value)=0</div></div>
<div class="ttc" id="classUI_html_a97d880182254652f94e7bed355370c07"><div class="ttname"><a href="classUI.html#a97d880182254652f94e7bed355370c07">UI::getSampleRate</a></div><div class="ttdeci">double getSampleRate() const noexcept</div></div>
<div class="ttc" id="classUI_html_a95d686f44e486f7ed1505399612b4f84"><div class="ttname"><a href="classUI.html#a95d686f44e486f7ed1505399612b4f84">UI::sendNote</a></div><div class="ttdeci">void sendNote(const uint8_t channel, const uint8_t note, const uint8_t velocity)</div></div>
<div class="ttc" id="classUI_html_a6d4697296129d3a6bc34fc810d6297ac"><div class="ttname"><a href="classUI.html#a6d4697296129d3a6bc34fc810d6297ac">UI::uiFileBrowserSelected</a></div><div class="ttdeci">virtual void uiFileBrowserSelected(const char *filename)</div></div>
<div class="ttc" id="classUI_html_ab6861389e1bb01268a189dadbeb4fbcc"><div class="ttname"><a href="classUI.html#ab6861389e1bb01268a189dadbeb4fbcc">UI::uiReshape</a></div><div class="ttdeci">virtual void uiReshape(uint width, uint height)</div></div>
<div class="ttc" id="classUI_html"><div class="ttname"><a href="classUI.html">UI</a></div><div class="ttdef"><b>Definition:</b> DistrhoUI.hpp:48</div></div>
<div class="ttc" id="classUI_html_af8de639088f3b2d42c266a2d2d6719da"><div class="ttname"><a href="classUI.html#af8de639088f3b2d42c266a2d2d6719da">UI::uiIdle</a></div><div class="ttdeci">virtual void uiIdle()</div><div class="ttdef"><b>Definition:</b> DistrhoUI.hpp:146</div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Fri Apr 24 2015 00:23:57 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>


+ 159
- 155
DistrhoUtils_8hpp_source.html View File

@@ -135,164 +135,168 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;}</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#endif</span></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;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="comment">// misc functions</span></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"> 52</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="comment"> * Return a 64-bit number from 4 8-bit numbers.</span></div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="keyword">static</span> <span class="keyword">inline</span></div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;int64_t d_cconst(<span class="keyword">const</span> uint8_t a, <span class="keyword">const</span> uint8_t b, <span class="keyword">const</span> uint8_t c, <span class="keyword">const</span> uint8_t d) noexcept</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;{</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="keywordflow">return</span> (a &lt;&lt; 24) | (b &lt;&lt; 16) | (c &lt;&lt; 8) | (d &lt;&lt; 0);</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;}</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="comment"> * Dummy function.</span></div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="keyword">static</span> <span class="keyword">inline</span></div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="keywordtype">void</span> d_pass() noexcept {}</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;</div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="comment">// string print functions</span></div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="comment"> * Print a string to stdout with newline (gray color).</span></div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="comment"> * Does nothing if DEBUG is not defined.</span></div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="preprocessor">#ifndef DEBUG</span></div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="preprocessor"># define d_debug(...)</span></div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="preprocessor">#else</span></div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="keyword">static</span> <span class="keyword">inline</span></div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="keywordtype">void</span> d_debug(<span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keyword">const</span> fmt, ...) noexcept</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;{</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="keywordflow">try</span> {</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; ::va_list args;</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; ::va_start(args, fmt);</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; std::fprintf(stdout, <span class="stringliteral">&quot;\x1b[30;1m&quot;</span>);</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; std::vfprintf(stdout, fmt, args);</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; std::fprintf(stdout, <span class="stringliteral">&quot;\x1b[0m\n&quot;</span>);</div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; ::va_end(args);</div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; } <span class="keywordflow">catch</span> (...) {}</div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;}</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;</div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;<span class="comment"> * Print a string to stdout with newline.</span></div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;<span class="keyword">static</span> <span class="keyword">inline</span></div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<span class="keywordtype">void</span> d_stdout(<span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keyword">const</span> fmt, ...) noexcept</div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;{</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <span class="keywordflow">try</span> {</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; ::va_list args;</div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; ::va_start(args, fmt);</div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; std::vfprintf(stdout, fmt, args);</div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; std::fprintf(stdout, <span class="stringliteral">&quot;\n&quot;</span>);</div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; ::va_end(args);</div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; } <span class="keywordflow">catch</span> (...) {}</div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;}</div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="comment"> * Print a string to stderr with newline.</span></div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;<span class="keyword">static</span> <span class="keyword">inline</span></div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;<span class="keywordtype">void</span> d_stderr(<span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keyword">const</span> fmt, ...) noexcept</div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;{</div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <span class="keywordflow">try</span> {</div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; ::va_list args;</div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; ::va_start(args, fmt);</div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; std::vfprintf(stderr, fmt, args);</div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; std::fprintf(stderr, <span class="stringliteral">&quot;\n&quot;</span>);</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; ::va_end(args);</div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; } <span class="keywordflow">catch</span> (...) {}</div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;}</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"> 121</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;<span class="comment"> * Print a string to stderr with newline (red color).</span></div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;<span class="keyword">static</span> <span class="keyword">inline</span></div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;<span class="keywordtype">void</span> d_stderr2(<span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keyword">const</span> fmt, ...) noexcept</div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;{</div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="keywordflow">try</span> {</div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; ::va_list args;</div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; ::va_start(args, fmt);</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; std::fprintf(stderr, <span class="stringliteral">&quot;\x1b[31m&quot;</span>);</div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; std::vfprintf(stderr, fmt, args);</div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; std::fprintf(stderr, <span class="stringliteral">&quot;\x1b[0m\n&quot;</span>);</div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; ::va_end(args);</div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; } <span class="keywordflow">catch</span> (...) {}</div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;}</div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;</div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;<span class="comment"> * Print a safe assertion error message.</span></div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;<span class="keyword">static</span> <span class="keyword">inline</span></div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;<span class="keywordtype">void</span> d_safe_assert(<span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keyword">const</span> assertion, <span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keyword">const</span> file, <span class="keyword">const</span> <span class="keywordtype">int</span> line) noexcept</div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;{</div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; d_stderr2(<span class="stringliteral">&quot;assertion failure: \&quot;%s\&quot; in file %s, line %i&quot;</span>, assertion, file, line);</div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;}</div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;</div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;<span class="comment"> * Print a safe exception error message.</span></div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;<span class="keyword">static</span> <span class="keyword">inline</span></div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;<span class="keywordtype">void</span> d_safe_exception(<span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keyword">const</span> exception, <span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keyword">const</span> file, <span class="keyword">const</span> <span class="keywordtype">int</span> line) noexcept</div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;{</div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; d_stderr2(<span class="stringliteral">&quot;exception caught: \&quot;%s\&quot; in file %s, line %i&quot;</span>, exception, file, line);</div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;}</div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;</div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;<span class="comment">// math functions</span></div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;</div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;<span class="comment"> * Safely compare two floating point numbers.</span></div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;<span class="comment"> * Returns true if they match.</span></div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;<span class="keyword">static</span> <span class="keyword">inline</span></div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;<span class="keywordtype">bool</span> d_isEqual(<span class="keyword">const</span> T&amp; v1, <span class="keyword">const</span> T&amp; v2)</div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;{</div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <span class="keywordflow">return</span> std::abs(v1-v2) &lt; std::numeric_limits&lt;T&gt;::epsilon();</div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;}</div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;</div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;<span class="comment"> * Safely compare two floating point numbers.</span></div>
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;<span class="comment"> * Returns true if they don&#39;t match.</span></div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160;<span class="keyword">static</span> <span class="keyword">inline</span></div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160;<span class="keywordtype">bool</span> d_isNotEqual(<span class="keyword">const</span> T&amp; v1, <span class="keyword">const</span> T&amp; v2)</div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;{</div>
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <span class="keywordflow">return</span> std::abs(v1-v2) &gt;= std::numeric_limits&lt;T&gt;::epsilon();</div>
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160;}</div>
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;</div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160;<span class="comment"> * Safely check if a floating point number is zero.</span></div>
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;<span class="keyword">static</span> <span class="keyword">inline</span></div>
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160;<span class="keywordtype">bool</span> d_isZero(<span class="keyword">const</span> T&amp; value)</div>
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;{</div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; <span class="keywordflow">return</span> std::abs(value) &lt; std::numeric_limits&lt;T&gt;::epsilon();</div>
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;}</div>
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;</div>
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160;<span class="comment"> * Safely check if a floating point number is not zero.</span></div>
<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160;<span class="keyword">static</span> <span class="keyword">inline</span></div>
<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;<span class="keywordtype">bool</span> d_isNotZero(<span class="keyword">const</span> T&amp; value)</div>
<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160;{</div>
<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; <span class="keywordflow">return</span> std::abs(value) &gt;= std::numeric_limits&lt;T&gt;::epsilon();</div>
<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;}</div>
<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160;</div>
<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160;</div>
<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160;<span class="preprocessor">#endif // DISTRHO_UTILS_HPP_INCLUDED</span></div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor">#ifndef M_PI</span></div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="preprocessor"># define M_PI 3.14159265358979323846</span></div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="comment">// misc functions</span></div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="comment"> * Return a 64-bit number from 4 8-bit numbers.</span></div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="keyword">static</span> <span class="keyword">inline</span></div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;int64_t d_cconst(<span class="keyword">const</span> uint8_t a, <span class="keyword">const</span> uint8_t b, <span class="keyword">const</span> uint8_t c, <span class="keyword">const</span> uint8_t d) noexcept</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;{</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="keywordflow">return</span> (a &lt;&lt; 24) | (b &lt;&lt; 16) | (c &lt;&lt; 8) | (d &lt;&lt; 0);</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;}</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="comment"> * Dummy function.</span></div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="keyword">static</span> <span class="keyword">inline</span></div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="keywordtype">void</span> d_pass() noexcept {}</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="comment">// string print functions</span></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"> 74</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="comment"> * Print a string to stdout with newline (gray color).</span></div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="comment"> * Does nothing if DEBUG is not defined.</span></div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="preprocessor">#ifndef DEBUG</span></div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="preprocessor"># define d_debug(...)</span></div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="preprocessor">#else</span></div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="keyword">static</span> <span class="keyword">inline</span></div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="keywordtype">void</span> d_debug(<span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keyword">const</span> fmt, ...) noexcept</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;{</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keywordflow">try</span> {</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; ::va_list args;</div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; ::va_start(args, fmt);</div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; std::fprintf(stdout, <span class="stringliteral">&quot;\x1b[30;1m&quot;</span>);</div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; std::vfprintf(stdout, fmt, args);</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; std::fprintf(stdout, <span class="stringliteral">&quot;\x1b[0m\n&quot;</span>);</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; ::va_end(args);</div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; } <span class="keywordflow">catch</span> (...) {}</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;}</div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;<span class="comment"> * Print a string to stdout with newline.</span></div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;<span class="keyword">static</span> <span class="keyword">inline</span></div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;<span class="keywordtype">void</span> d_stdout(<span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keyword">const</span> fmt, ...) noexcept</div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;{</div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keywordflow">try</span> {</div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; ::va_list args;</div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; ::va_start(args, fmt);</div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; std::vfprintf(stdout, fmt, args);</div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; std::fprintf(stdout, <span class="stringliteral">&quot;\n&quot;</span>);</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; ::va_end(args);</div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; } <span class="keywordflow">catch</span> (...) {}</div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;}</div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;</div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;<span class="comment"> * Print a string to stderr with newline.</span></div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;<span class="keyword">static</span> <span class="keyword">inline</span></div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;<span class="keywordtype">void</span> d_stderr(<span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keyword">const</span> fmt, ...) noexcept</div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;{</div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <span class="keywordflow">try</span> {</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; ::va_list args;</div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; ::va_start(args, fmt);</div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; std::vfprintf(stderr, fmt, args);</div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; std::fprintf(stderr, <span class="stringliteral">&quot;\n&quot;</span>);</div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; ::va_end(args);</div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; } <span class="keywordflow">catch</span> (...) {}</div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;}</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;</div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;<span class="comment"> * Print a string to stderr with newline (red color).</span></div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;<span class="keyword">static</span> <span class="keyword">inline</span></div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;<span class="keywordtype">void</span> d_stderr2(<span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keyword">const</span> fmt, ...) noexcept</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;{</div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="keywordflow">try</span> {</div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; ::va_list args;</div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; ::va_start(args, fmt);</div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; std::fprintf(stderr, <span class="stringliteral">&quot;\x1b[31m&quot;</span>);</div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; std::vfprintf(stderr, fmt, args);</div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; std::fprintf(stderr, <span class="stringliteral">&quot;\x1b[0m\n&quot;</span>);</div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; ::va_end(args);</div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; } <span class="keywordflow">catch</span> (...) {}</div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;}</div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;</div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;<span class="comment"> * Print a safe assertion error message.</span></div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;<span class="keyword">static</span> <span class="keyword">inline</span></div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;<span class="keywordtype">void</span> d_safe_assert(<span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keyword">const</span> assertion, <span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keyword">const</span> file, <span class="keyword">const</span> <span class="keywordtype">int</span> line) noexcept</div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;{</div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; d_stderr2(<span class="stringliteral">&quot;assertion failure: \&quot;%s\&quot; in file %s, line %i&quot;</span>, assertion, file, line);</div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;}</div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;</div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;<span class="comment"> * Print a safe exception error message.</span></div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;<span class="keyword">static</span> <span class="keyword">inline</span></div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;<span class="keywordtype">void</span> d_safe_exception(<span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keyword">const</span> exception, <span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keyword">const</span> file, <span class="keyword">const</span> <span class="keywordtype">int</span> line) noexcept</div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;{</div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; d_stderr2(<span class="stringliteral">&quot;exception caught: \&quot;%s\&quot; in file %s, line %i&quot;</span>, exception, file, line);</div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;}</div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;</div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;<span class="comment">// math functions</span></div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;</div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;<span class="comment"> * Safely compare two floating point numbers.</span></div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;<span class="comment"> * Returns true if they match.</span></div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;<span class="keyword">static</span> <span class="keyword">inline</span></div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;<span class="keywordtype">bool</span> d_isEqual(<span class="keyword">const</span> T&amp; v1, <span class="keyword">const</span> T&amp; v2)</div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;{</div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; <span class="keywordflow">return</span> std::abs(v1-v2) &lt; std::numeric_limits&lt;T&gt;::epsilon();</div>
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;}</div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;</div>
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160;<span class="comment"> * Safely compare two floating point numbers.</span></div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160;<span class="comment"> * Returns true if they don&#39;t match.</span></div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160;<span class="keyword">static</span> <span class="keyword">inline</span></div>
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;<span class="keywordtype">bool</span> d_isNotEqual(<span class="keyword">const</span> T&amp; v1, <span class="keyword">const</span> T&amp; v2)</div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;{</div>
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; <span class="keywordflow">return</span> std::abs(v1-v2) &gt;= std::numeric_limits&lt;T&gt;::epsilon();</div>
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;}</div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;</div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160;<span class="comment"> * Safely check if a floating point number is zero.</span></div>
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;<span class="keyword">static</span> <span class="keyword">inline</span></div>
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;<span class="keywordtype">bool</span> d_isZero(<span class="keyword">const</span> T&amp; value)</div>
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;{</div>
<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; <span class="keywordflow">return</span> std::abs(value) &lt; std::numeric_limits&lt;T&gt;::epsilon();</div>
<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160;}</div>
<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;</div>
<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;<span class="comment"> * Safely check if a floating point number is not zero.</span></div>
<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;<span class="keyword">static</span> <span class="keyword">inline</span></div>
<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160;<span class="keywordtype">bool</span> d_isNotZero(<span class="keyword">const</span> T&amp; value)</div>
<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160;{</div>
<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; <span class="keywordflow">return</span> std::abs(value) &gt;= std::numeric_limits&lt;T&gt;::epsilon();</div>
<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160;}</div>
<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160;</div>
<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160;</div>
<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160;<span class="preprocessor">#endif // DISTRHO_UTILS_HPP_INCLUDED</span></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Fri Apr 24 2015 00:23:57 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>


+ 892
- 0
Geometry_8hpp_source.html View File

@@ -0,0 +1,892 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: dgl/Geometry.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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</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>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_99893ac99dd47c2a73745483a12a725f.html">dgl</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">Geometry.hpp</div> </div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> * DISTRHO Plugin Framework (DPF)</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright (C) 2012-2014 Filipe Coelho &lt;falktx@falktx.com&gt;</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * Permission to use, copy, modify, and/or distribute this software for any purpose with</span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * or without fee is hereby granted, provided that the above copyright notice and this</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * permission notice appear in all copies.</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * THE SOFTWARE IS PROVIDED &quot;AS IS&quot; AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> */</span></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"> 17</span>&#160;<span class="preprocessor">#ifndef DGL_GEOMETRY_HPP_INCLUDED</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="preprocessor">#define DGL_GEOMETRY_HPP_INCLUDED</span></div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;</div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="preprocessor">#include &quot;Base.hpp&quot;</span></div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;</div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;START_NAMESPACE_DGL</div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;</div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment">// Forward class names</span></div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;</div>
<div class="line"><a name="l00027"></a><span class="lineno"><a class="line" href="singletonLine.html"> 27</a></span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">typename</span>&gt; <span class="keyword">class </span><a class="code" href="singletonLine.html">Line</a>;</div>
<div class="line"><a name="l00028"></a><span class="lineno"><a class="line" href="singletonCircle.html"> 28</a></span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">typename</span>&gt; <span class="keyword">class </span><a class="code" href="singletonCircle.html">Circle</a>;</div>
<div class="line"><a name="l00029"></a><span class="lineno"><a class="line" href="singletonTriangle.html"> 29</a></span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">typename</span>&gt; <span class="keyword">class </span><a class="code" href="singletonTriangle.html">Triangle</a>;</div>
<div class="line"><a name="l00030"></a><span class="lineno"><a class="line" href="singletonRectangle.html"> 30</a></span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">typename</span>&gt; <span class="keyword">class </span><a class="code" href="singletonRectangle.html">Rectangle</a>;</div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;</div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="comment">/**</span></div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="comment"> DGL Point class.</span></div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="comment"> This class describes a single point in space, defined by an X and Y value.</span></div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="classPoint.html"> 40</a></span>&#160;<span class="keyword">class </span><a class="code" href="classPoint.html">Point</a></div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;{</div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="keyword">public</span>:<span class="comment"></span></div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment"> Constructor for (0, 0) point.</span></div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <a class="code" href="classPoint.html#ada3e3f5f840cf70db3c7f884843a3d01">Point</a>() noexcept;</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="comment"> Constructor using custom X and Y values.</span></div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <a class="code" href="classPoint.html#ada3e3f5f840cf70db3c7f884843a3d01">Point</a>(<span class="keyword">const</span> T&amp; x, <span class="keyword">const</span> T&amp; y) noexcept;</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="comment"> Constructor using another Point class values.</span></div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <a class="code" href="classPoint.html#ada3e3f5f840cf70db3c7f884843a3d01">Point</a>(<span class="keyword">const</span> <a class="code" href="classPoint.html">Point&lt;T&gt;</a>&amp; pos) noexcept;</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="comment"> Get X value.</span></div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="keyword">const</span> T&amp; <a class="code" href="classPoint.html#af6d528d5f73b06282aae5be3b188528e">getX</a>() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="comment"> Get Y value.</span></div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keyword">const</span> T&amp; <a class="code" href="classPoint.html#ab0250670052f5169c57de84a09d7534b">getY</a>() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="comment"> Set X value to @a x.</span></div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classPoint.html#a1539a6f24282a1d637b60ccfbbf46629">setX</a>(<span class="keyword">const</span> T&amp; x) noexcept;</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="comment"> Set Y value to @a y.</span></div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classPoint.html#a8ffe6785dc851accf06d02917fba54cf">setY</a>(<span class="keyword">const</span> T&amp; y) noexcept;</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="comment"> Set X and Y values to @a x and @a y respectively.</span></div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classPoint.html#aac5c7220da858d14140ff0c78684d4e2">setPos</a>(<span class="keyword">const</span> T&amp; x, <span class="keyword">const</span> T&amp; y) noexcept;</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="comment"> Set X and Y values according to @a pos.</span></div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classPoint.html#aac5c7220da858d14140ff0c78684d4e2">setPos</a>(<span class="keyword">const</span> <a class="code" href="classPoint.html">Point&lt;T&gt;</a>&amp; pos) noexcept;</div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="comment"> Move this point by @a x and @a y values.</span></div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classPoint.html#a541cdef0c235dc26d79c0b6ee7118346">moveBy</a>(<span class="keyword">const</span> T&amp; x, <span class="keyword">const</span> T&amp; y) noexcept;</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;<span class="comment"> Move this point by @a pos.</span></div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classPoint.html#a541cdef0c235dc26d79c0b6ee7118346">moveBy</a>(<span class="keyword">const</span> <a class="code" href="classPoint.html">Point&lt;T&gt;</a>&amp; pos) noexcept;</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;<span class="comment"> Return true if point is (0, 0).</span></div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classPoint.html#a845d59d29722c962c7af8f602bcf9ba4">isZero</a>() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="comment"> Return true if point is not (0, 0).</span></div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classPoint.html#aede5df141963951a746d7e207fa7e073">isNotZero</a>() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;</div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <a class="code" href="classPoint.html">Point&lt;T&gt;</a> operator+(<span class="keyword">const</span> <a class="code" href="classPoint.html">Point&lt;T&gt;</a>&amp; pos) noexcept;</div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <a class="code" href="classPoint.html">Point&lt;T&gt;</a> operator-(<span class="keyword">const</span> <a class="code" href="classPoint.html">Point&lt;T&gt;</a>&amp; pos) noexcept;</div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <a class="code" href="classPoint.html">Point&lt;T&gt;</a>&amp; operator=(<span class="keyword">const</span> <a class="code" href="classPoint.html">Point&lt;T&gt;</a>&amp; pos) noexcept;</div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <a class="code" href="classPoint.html">Point&lt;T&gt;</a>&amp; operator+=(<span class="keyword">const</span> <a class="code" href="classPoint.html">Point&lt;T&gt;</a>&amp; pos) noexcept;</div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <a class="code" href="classPoint.html">Point&lt;T&gt;</a>&amp; operator-=(<span class="keyword">const</span> <a class="code" href="classPoint.html">Point&lt;T&gt;</a>&amp; pos) noexcept;</div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> <a class="code" href="classPoint.html">Point&lt;T&gt;</a>&amp; pos) <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> <a class="code" href="classPoint.html">Point&lt;T&gt;</a>&amp; pos) <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;</div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; T fX, fY;</div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">typename</span>&gt; <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="singletonLine.html">Line</a>;</div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">typename</span>&gt; <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="singletonCircle.html">Circle</a>;</div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">typename</span>&gt; <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="singletonTriangle.html">Triangle</a>;</div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">typename</span>&gt; <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="singletonRectangle.html">Rectangle</a>;</div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;};</div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;<span class="comment">/**</span></div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;<span class="comment"> DGL Size class.</span></div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;<span class="comment"> This class describes a size, defined by a width and height value.</span></div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
<div class="line"><a name="l00132"></a><span class="lineno"><a class="line" href="classSize.html"> 132</a></span>&#160;<span class="keyword">class </span><a class="code" href="classSize.html">Size</a></div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;{</div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;<span class="keyword">public</span>:<span class="comment"></span></div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;<span class="comment"> Constructor for null size (0x0).</span></div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <a class="code" href="classSize.html#ada0c1f75029742b2514ede5466993776">Size</a>() noexcept;</div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;<span class="comment"> Constructor using custom width and height values.</span></div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; <a class="code" href="classSize.html#ada0c1f75029742b2514ede5466993776">Size</a>(<span class="keyword">const</span> T&amp; width, <span class="keyword">const</span> T&amp; height) noexcept;</div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;<span class="comment"> Constructor using another Size class values.</span></div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <a class="code" href="classSize.html#ada0c1f75029742b2514ede5466993776">Size</a>(<span class="keyword">const</span> <a class="code" href="classSize.html">Size&lt;T&gt;</a>&amp; size) noexcept;</div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;<span class="comment"> Get width.</span></div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <span class="keyword">const</span> T&amp; <a class="code" href="classSize.html#a3e65e5ff12f6bf57eaa6f45c54346942">getWidth</a>() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;<span class="comment"> Get height.</span></div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <span class="keyword">const</span> T&amp; <a class="code" href="classSize.html#a562e9d68738d1873a6aa0615af80505b">getHeight</a>() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;<span class="comment"> Set width.</span></div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSize.html#aa552662217b3e8e9c0b6d69d7bc22665">setWidth</a>(<span class="keyword">const</span> T&amp; width) noexcept;</div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;<span class="comment"> Set height.</span></div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSize.html#a30d453133d7a677e14641f010204237e">setHeight</a>(<span class="keyword">const</span> T&amp; height) noexcept;</div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;<span class="comment"> Set size to @a width and @a height.</span></div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSize.html#a6dd4d69857ef92c65dd941eea3356ed9">setSize</a>(<span class="keyword">const</span> T&amp; width, <span class="keyword">const</span> T&amp; height) noexcept;</div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;<span class="comment"> Set size.</span></div>
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSize.html#a6dd4d69857ef92c65dd941eea3356ed9">setSize</a>(<span class="keyword">const</span> <a class="code" href="classSize.html">Size&lt;T&gt;</a>&amp; size) noexcept;</div>
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160;<span class="comment"> Grow size by @a multiplier.</span></div>
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSize.html#ac6cb1721051ed5c8f21467f009d72982">growBy</a>(<span class="keywordtype">double</span> multiplier) noexcept;</div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;<span class="comment"> Shrink size by @a divider.</span></div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classSize.html#abbcf98f504b23679162cab3b6f818949">shrinkBy</a>(<span class="keywordtype">double</span> divider) noexcept;</div>
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160;<span class="comment"> Return true if size is null (0x0).</span></div>
<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160;<span class="comment"> An null size is also invalid.</span></div>
<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSize.html#ab49a572da2fb72ab4f6dfd7a06b000c8">isNull</a>() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160;<span class="comment"> Return true if size is not null (0x0).</span></div>
<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;<span class="comment"> A non-null size is still invalid if its width or height is negative.</span></div>
<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSize.html#a57093e93dcdfadc9f720b9d8fda4b59e">isNotNull</a>() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160;<span class="comment"> Return true if size is valid (width and height are higher than zero).</span></div>
<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSize.html#a1e6c381d5a5c19e7ab2c83118ebbd0ec">isValid</a>() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160;<span class="comment"> Return true if size is invalid (width or height are lower or equal to zero).</span></div>
<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160;<span class="comment"> An invalid size might not be null under some circumstances.</span></div>
<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classSize.html#ab832e37b50a2d98648be4ac811af305f">isInvalid</a>() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160;</div>
<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; <a class="code" href="classSize.html">Size&lt;T&gt;</a> operator+(<span class="keyword">const</span> <a class="code" href="classSize.html">Size&lt;T&gt;</a>&amp; size) noexcept;</div>
<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; <a class="code" href="classSize.html">Size&lt;T&gt;</a> operator-(<span class="keyword">const</span> <a class="code" href="classSize.html">Size&lt;T&gt;</a>&amp; size) noexcept;</div>
<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; <a class="code" href="classSize.html">Size&lt;T&gt;</a>&amp; operator=(<span class="keyword">const</span> <a class="code" href="classSize.html">Size&lt;T&gt;</a>&amp; size) noexcept;</div>
<div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; <a class="code" href="classSize.html">Size&lt;T&gt;</a>&amp; operator+=(<span class="keyword">const</span> <a class="code" href="classSize.html">Size&lt;T&gt;</a>&amp; size) noexcept;</div>
<div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; <a class="code" href="classSize.html">Size&lt;T&gt;</a>&amp; operator-=(<span class="keyword">const</span> <a class="code" href="classSize.html">Size&lt;T&gt;</a>&amp; size) noexcept;</div>
<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; <a class="code" href="classSize.html">Size&lt;T&gt;</a>&amp; operator*=(<span class="keywordtype">double</span> m) noexcept;</div>
<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; <a class="code" href="classSize.html">Size&lt;T&gt;</a>&amp; operator/=(<span class="keywordtype">double</span> d) noexcept;</div>
<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> <a class="code" href="classSize.html">Size&lt;T&gt;</a>&amp; size) <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> <a class="code" href="classSize.html">Size&lt;T&gt;</a>&amp; size) <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160;</div>
<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; T fWidth, fHeight;</div>
<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">typename</span>&gt; <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="singletonRectangle.html">Rectangle</a>;</div>
<div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160;};</div>
<div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160;</div>
<div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160;<span class="comment">/**</span></div>
<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160;<span class="comment"> DGL Line class.</span></div>
<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160;<span class="comment"> This class describes a line, defined by two points.</span></div>
<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160;<span class="keyword">class </span><a class="code" href="singletonLine.html">Line</a></div>
<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160;{</div>
<div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160;<span class="keyword">public</span>:<span class="comment"></span></div>
<div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160;<span class="comment"> Constructor for a null line ([0,0] to [0,0]).</span></div>
<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; <a class="code" href="singletonLine.html#a7895211d4fa97f63b3495ca5c9bfaed1">Line</a>() noexcept;</div>
<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160;<span class="comment"> Constructor using custom start X, start Y, end X and end Y values.</span></div>
<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; <a class="code" href="singletonLine.html">Line</a>(const T&amp; startX, const T&amp; startY, const T&amp; endX, const T&amp; endY) noexcept;</div>
<div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160;<span class="comment"> Constructor using custom start X, start Y and end pos values.</span></div>
<div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; <a class="code" href="singletonLine.html">Line</a>(const T&amp; startX, const T&amp; startY, const <a class="code" href="classPoint.html">Point</a>&lt;T&gt;&amp; endPos) noexcept;</div>
<div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160;<span class="comment"> Constructor using custom start pos, end X and end Y values.</span></div>
<div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; <a class="code" href="singletonLine.html">Line</a>(const <a class="code" href="classPoint.html">Point</a>&lt;T&gt;&amp; startPos, const T&amp; endX, const T&amp; endY) noexcept;</div>
<div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160;<span class="comment"> Constructor using custom start and end pos values.</span></div>
<div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; <a class="code" href="singletonLine.html">Line</a>(const <a class="code" href="classPoint.html">Point</a>&lt;T&gt;&amp; startPos, const <a class="code" href="classPoint.html">Point</a>&lt;T&gt;&amp; endPos) noexcept;</div>
<div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160;<span class="comment"> Constructor using another Line class values.</span></div>
<div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; <a class="code" href="singletonLine.html">Line</a>(const <a class="code" href="singletonLine.html">Line</a>&lt;T&gt;&amp; line) noexcept;</div>
<div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160;<span class="comment"> Get start X value.</span></div>
<div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; const T&amp; <a class="code" href="singletonLine.html#a7f3af6a8c08af69188714a83353e09fb">getStartX</a>() const noexcept;</div>
<div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160;<span class="comment"> Get start Y value.</span></div>
<div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; const T&amp; <a class="code" href="singletonLine.html#a5a5ef0a94283339f2c20406a3d9fbb04">getStartY</a>() const noexcept;</div>
<div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160;<span class="comment"> Get end X value.</span></div>
<div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; const T&amp; <a class="code" href="singletonLine.html#a15462cbbe5154d8b27fd6c53ddafc17f">getEndX</a>() const noexcept;</div>
<div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160;<span class="comment"> Get end Y value.</span></div>
<div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; const T&amp; <a class="code" href="singletonLine.html#a5c5de1ccedae8ea85fd711eab10359dd">getEndY</a>() const noexcept;</div>
<div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160;<span class="comment"> Get start position.</span></div>
<div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; const <a class="code" href="classPoint.html">Point</a>&lt;T&gt;&amp; <a class="code" href="singletonLine.html#a2c5ecf6513f1b1fd846a80915aff5744">getStartPos</a>() const noexcept;</div>
<div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160;<span class="comment"> Get end position.</span></div>
<div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; const <a class="code" href="classPoint.html">Point</a>&lt;T&gt;&amp; <a class="code" href="singletonLine.html#aa3f70d792719c026b35b3f32dc19ac65">getEndPos</a>() const noexcept;</div>
<div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160;<span class="comment"> Set start X value to @a x.</span></div>
<div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; <span class="keywordtype">void</span> <a class="code" href="singletonLine.html#ad2b10d3144ba0711f9ecb444bb08ad4c">setStartX</a>(const T&amp; x) noexcept;</div>
<div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160;<span class="comment"> Set start Y value to @a y.</span></div>
<div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; <span class="keywordtype">void</span> <a class="code" href="singletonLine.html#ae35ba55c6ff3bae24c7f05133b9e003b">setStartY</a>(const T&amp; y) noexcept;</div>
<div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160;<span class="comment"> Set start X and Y values to @a x and @a y respectively.</span></div>
<div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; <span class="keywordtype">void</span> <a class="code" href="singletonLine.html#a958d534b1b0c2d581b110dd26c0d4cea">setStartPos</a>(const T&amp; x, const T&amp; y) noexcept;</div>
<div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160;<span class="comment"> Set start X and Y values according to @a pos.</span></div>
<div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; <span class="keywordtype">void</span> <a class="code" href="singletonLine.html#a958d534b1b0c2d581b110dd26c0d4cea">setStartPos</a>(const <a class="code" href="classPoint.html">Point</a>&lt;T&gt;&amp; pos) noexcept;</div>
<div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160;<span class="comment"> Set end X value to @a x.</span></div>
<div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; <span class="keywordtype">void</span> <a class="code" href="singletonLine.html#a17061d9ae2e85a5f929148e5106504bf">setEndX</a>(const T&amp; x) noexcept;</div>
<div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160;<span class="comment"> Set end Y value to @a y.</span></div>
<div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; <span class="keywordtype">void</span> <a class="code" href="singletonLine.html#a0dcd399a55aef168e91c645958670ee6">setEndY</a>(const T&amp; y) noexcept;</div>
<div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160;<span class="comment"> Set end X and Y values to @a x and @a y respectively.</span></div>
<div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; <span class="keywordtype">void</span> <a class="code" href="singletonLine.html#af05002adedbeaeea698d26bf4afadff0">setEndPos</a>(const T&amp; x, const T&amp; y) noexcept;</div>
<div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160;<span class="comment"> Set end X and Y values according to @a pos.</span></div>
<div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; <span class="keywordtype">void</span> <a class="code" href="singletonLine.html#af05002adedbeaeea698d26bf4afadff0">setEndPos</a>(const <a class="code" href="classPoint.html">Point</a>&lt;T&gt;&amp; pos) noexcept;</div>
<div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160;<span class="comment"> Move this line by @a x and @a y values.</span></div>
<div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160; <span class="keywordtype">void</span> <a class="code" href="singletonLine.html#a47c83b136a3d4df6ac688ac41126b967">moveBy</a>(const T&amp; x, const T&amp; y) noexcept;</div>
<div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160;<span class="comment"> Move this line by @a pos.</span></div>
<div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; <span class="keywordtype">void</span> <a class="code" href="singletonLine.html#a47c83b136a3d4df6ac688ac41126b967">moveBy</a>(const <a class="code" href="classPoint.html">Point</a>&lt;T&gt;&amp; pos) noexcept;</div>
<div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160;<span class="comment"> Draw this line using the current OpenGL state.</span></div>
<div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; <span class="keywordtype">void</span> <a class="code" href="singletonLine.html#af3eebf8905576276741caab216516949">draw</a>();</div>
<div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160;<span class="comment"> Return true if line is null (start and end pos are equal).</span></div>
<div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="singletonLine.html#ab300b2e8deeda3d08cc7e70299c3955d">isNull</a>() const noexcept;</div>
<div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160;<span class="comment"> Return true if line is not null (start and end pos are different).</span></div>
<div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="singletonLine.html#ad156bd44539aa28e052207a25d705695">isNotNull</a>() const noexcept;</div>
<div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160;</div>
<div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; <a class="code" href="singletonLine.html">Line</a>&lt;T&gt;&amp; operator=(const <a class="code" href="singletonLine.html">Line</a>&lt;T&gt;&amp; line) noexcept;</div>
<div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; <span class="keywordtype">bool</span> operator==(const <a class="code" href="singletonLine.html">Line</a>&lt;T&gt;&amp; line) const noexcept;</div>
<div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; <span class="keywordtype">bool</span> operator!=(const <a class="code" href="singletonLine.html">Line</a>&lt;T&gt;&amp; line) const noexcept;</div>
<div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160;</div>
<div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160;private:</div>
<div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; <a class="code" href="classPoint.html">Point</a>&lt;T&gt; fPosStart, fPosEnd;</div>
<div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160;};</div>
<div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160;</div>
<div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160;<span class="comment">/**</span></div>
<div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160;<span class="comment"> DGL Circle class.</span></div>
<div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160;<span class="comment"> This class describes a circle, defined by position, size and a minimum of 3 segments.</span></div>
<div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160;<span class="comment"> TODO: report if circle starts at top-left, bottom-right or center.</span></div>
<div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160;<span class="comment"> and size grows from which point?</span></div>
<div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160;template&lt;typename T&gt;</div>
<div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160;class <a class="code" href="singletonCircle.html">Circle</a></div>
<div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160;{</div>
<div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160;<span class="keyword">public</span>:<span class="comment"></span></div>
<div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160;<span class="comment"> Constructor for a null circle.</span></div>
<div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; Circle() noexcept;</div>
<div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160;<span class="comment"> Constructor using custom X, Y and size values.</span></div>
<div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; Circle(const T&amp; x, const T&amp; y, const <span class="keywordtype">float</span> size, const uint numSegments = 300);</div>
<div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160;<span class="comment"> Constructor using custom position and size values.</span></div>
<div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; Circle(const <a class="code" href="classPoint.html">Point</a>&lt;T&gt;&amp; pos, const <span class="keywordtype">float</span> size, const uint numSegments = 300);</div>
<div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160;<span class="comment"> Constructor using another Circle class values.</span></div>
<div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; Circle(const Circle&lt;T&gt;&amp; cir) noexcept;</div>
<div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160;<span class="comment"> Get X value.</span></div>
<div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160; const T&amp; getX() const noexcept;</div>
<div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160;<span class="comment"> Get Y value.</span></div>
<div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; const T&amp; getY() const noexcept;</div>
<div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160;<span class="comment"> Get position.</span></div>
<div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; const <a class="code" href="classPoint.html">Point</a>&lt;T&gt;&amp; getPos() const noexcept;</div>
<div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160;<span class="comment"> Set X value to @a x.</span></div>
<div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; <span class="keywordtype">void</span> setX(const T&amp; x) noexcept;</div>
<div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160;<span class="comment"> Set Y value to @a y.</span></div>
<div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160; <span class="keywordtype">void</span> setY(const T&amp; y) noexcept;</div>
<div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160;<span class="comment"> Set X and Y values to @a x and @a y respectively.</span></div>
<div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; <span class="keywordtype">void</span> setPos(const T&amp; x, const T&amp; y) noexcept;</div>
<div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160;<span class="comment"> Set X and Y values according to @a pos.</span></div>
<div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; <span class="keywordtype">void</span> setPos(const <a class="code" href="classPoint.html">Point</a>&lt;T&gt;&amp; pos) noexcept;</div>
<div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160;<span class="comment"> Get size.</span></div>
<div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; <span class="keywordtype">float</span> getSize() const noexcept;</div>
<div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160;<span class="comment"> Set size.</span></div>
<div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160;<span class="comment"> @note Must always be &gt; 0</span></div>
<div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160; <span class="keywordtype">void</span> setSize(const <span class="keywordtype">float</span> size) noexcept;</div>
<div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160;<span class="comment"> Get the current number of line segments that make this circle.</span></div>
<div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160; uint getNumSegments() const noexcept;</div>
<div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160;<span class="comment"> Set the number of line segments that will make this circle.</span></div>
<div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160;<span class="comment"> @note Must always be &gt;= 3</span></div>
<div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; <span class="keywordtype">void</span> setNumSegments(const uint num);</div>
<div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160;<span class="comment"> Draw this circle using the current OpenGL state.</span></div>
<div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160; <span class="keywordtype">void</span> draw();</div>
<div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160;<span class="comment"> Draw lines (outline of this circle) using the current OpenGL state.</span></div>
<div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160; <span class="keywordtype">void</span> drawOutline();</div>
<div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160;</div>
<div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160; Circle&lt;T&gt;&amp; operator=(const Circle&lt;T&gt;&amp; cir) noexcept;</div>
<div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160; <span class="keywordtype">bool</span> operator==(const Circle&lt;T&gt;&amp; cir) const noexcept;</div>
<div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160; <span class="keywordtype">bool</span> operator!=(const Circle&lt;T&gt;&amp; cir) const noexcept;</div>
<div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160;</div>
<div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160;private:</div>
<div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160; <a class="code" href="classPoint.html">Point</a>&lt;T&gt; fPos;</div>
<div class="line"><a name="l00479"></a><span class="lineno"> 479</span>&#160; <span class="keywordtype">float</span> fSize;</div>
<div class="line"><a name="l00480"></a><span class="lineno"> 480</span>&#160; uint fNumSegments;</div>
<div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160;</div>
<div class="line"><a name="l00482"></a><span class="lineno"> 482</span>&#160; <span class="comment">// cached values</span></div>
<div class="line"><a name="l00483"></a><span class="lineno"> 483</span>&#160; <span class="keywordtype">float</span> fTheta, fCos, fSin;</div>
<div class="line"><a name="l00484"></a><span class="lineno"> 484</span>&#160;</div>
<div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160; <span class="keywordtype">void</span> _draw(const <span class="keywordtype">bool</span> outline);</div>
<div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160;};</div>
<div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160;</div>
<div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160;<span class="comment">/**</span></div>
<div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160;<span class="comment"> DGL Triangle class.</span></div>
<div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160;<span class="comment"> This class describes a triangle, defined by 3 points.</span></div>
<div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00495"></a><span class="lineno"> 495</span>&#160;template&lt;typename T&gt;</div>
<div class="line"><a name="l00496"></a><span class="lineno"> 496</span>&#160;class <a class="code" href="singletonTriangle.html">Triangle</a></div>
<div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160;{</div>
<div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160;<span class="keyword">public</span>:<span class="comment"></span></div>
<div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160;<span class="comment"> Constructor for a null triangle.</span></div>
<div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160; Triangle() noexcept;</div>
<div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160;<span class="comment"> Constructor using custom X and Y values.</span></div>
<div class="line"><a name="l00506"></a><span class="lineno"> 506</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00507"></a><span class="lineno"> 507</span>&#160; Triangle(const T&amp; x1, const T&amp; y1, const T&amp; x2, const T&amp; y2, const T&amp; x3, const T&amp; y3) noexcept;</div>
<div class="line"><a name="l00508"></a><span class="lineno"> 508</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160;<span class="comment"> Constructor using custom position values.</span></div>
<div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160; Triangle(const <a class="code" href="classPoint.html">Point</a>&lt;T&gt;&amp; pos1, const <a class="code" href="classPoint.html">Point</a>&lt;T&gt;&amp; pos2, const <a class="code" href="classPoint.html">Point</a>&lt;T&gt;&amp; pos3) noexcept;</div>
<div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00515"></a><span class="lineno"> 515</span>&#160;<span class="comment"> Constructor using another Triangle class values.</span></div>
<div class="line"><a name="l00516"></a><span class="lineno"> 516</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00517"></a><span class="lineno"> 517</span>&#160; Triangle(const Triangle&lt;T&gt;&amp; tri) noexcept;</div>
<div class="line"><a name="l00518"></a><span class="lineno"> 518</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00520"></a><span class="lineno"> 520</span>&#160;<span class="comment"> Draw this triangle using the current OpenGL state.</span></div>
<div class="line"><a name="l00521"></a><span class="lineno"> 521</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00522"></a><span class="lineno"> 522</span>&#160; <span class="keywordtype">void</span> draw();</div>
<div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00524"></a><span class="lineno"> 524</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00525"></a><span class="lineno"> 525</span>&#160;<span class="comment"> Draw lines (outline of this triangle) using the current OpenGL state.</span></div>
<div class="line"><a name="l00526"></a><span class="lineno"> 526</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00527"></a><span class="lineno"> 527</span>&#160; <span class="keywordtype">void</span> drawOutline();</div>
<div class="line"><a name="l00528"></a><span class="lineno"> 528</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00529"></a><span class="lineno"> 529</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00530"></a><span class="lineno"> 530</span>&#160;<span class="comment"> Return true if triangle is null (all its points are equal).</span></div>
<div class="line"><a name="l00531"></a><span class="lineno"> 531</span>&#160;<span class="comment"> An null triangle is also invalid.</span></div>
<div class="line"><a name="l00532"></a><span class="lineno"> 532</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00533"></a><span class="lineno"> 533</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="singletonLine.html#ab300b2e8deeda3d08cc7e70299c3955d">isNull</a>() const noexcept;</div>
<div class="line"><a name="l00534"></a><span class="lineno"> 534</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00535"></a><span class="lineno"> 535</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00536"></a><span class="lineno"> 536</span>&#160;<span class="comment"> Return true if triangle is not null (one its points is different from the others).</span></div>
<div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160;<span class="comment"> A non-null triangle is still invalid if two of its points are equal.</span></div>
<div class="line"><a name="l00538"></a><span class="lineno"> 538</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00539"></a><span class="lineno"> 539</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="singletonLine.html#ad156bd44539aa28e052207a25d705695">isNotNull</a>() const noexcept;</div>
<div class="line"><a name="l00540"></a><span class="lineno"> 540</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00541"></a><span class="lineno"> 541</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00542"></a><span class="lineno"> 542</span>&#160;<span class="comment"> Return true if triangle is valid (all its points are different).</span></div>
<div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00544"></a><span class="lineno"> 544</span>&#160; <span class="keywordtype">bool</span> isValid() const noexcept;</div>
<div class="line"><a name="l00545"></a><span class="lineno"> 545</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00546"></a><span class="lineno"> 546</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00547"></a><span class="lineno"> 547</span>&#160;<span class="comment"> Return true if triangle is invalid (one or two of its points are equal).</span></div>
<div class="line"><a name="l00548"></a><span class="lineno"> 548</span>&#160;<span class="comment"> An invalid triangle might not be null under some circumstances.</span></div>
<div class="line"><a name="l00549"></a><span class="lineno"> 549</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00550"></a><span class="lineno"> 550</span>&#160; <span class="keywordtype">bool</span> isInvalid() const noexcept;</div>
<div class="line"><a name="l00551"></a><span class="lineno"> 551</span>&#160;</div>
<div class="line"><a name="l00552"></a><span class="lineno"> 552</span>&#160; Triangle&lt;T&gt;&amp; operator=(const Triangle&lt;T&gt;&amp; tri) noexcept;</div>
<div class="line"><a name="l00553"></a><span class="lineno"> 553</span>&#160; <span class="keywordtype">bool</span> operator==(const Triangle&lt;T&gt;&amp; tri) const noexcept;</div>
<div class="line"><a name="l00554"></a><span class="lineno"> 554</span>&#160; <span class="keywordtype">bool</span> operator!=(const Triangle&lt;T&gt;&amp; tri) const noexcept;</div>
<div class="line"><a name="l00555"></a><span class="lineno"> 555</span>&#160;</div>
<div class="line"><a name="l00556"></a><span class="lineno"> 556</span>&#160;private:</div>
<div class="line"><a name="l00557"></a><span class="lineno"> 557</span>&#160; <a class="code" href="classPoint.html">Point</a>&lt;T&gt; fPos1, fPos2, fPos3;</div>
<div class="line"><a name="l00558"></a><span class="lineno"> 558</span>&#160;</div>
<div class="line"><a name="l00559"></a><span class="lineno"> 559</span>&#160; <span class="keywordtype">void</span> _draw(const <span class="keywordtype">bool</span> outline);</div>
<div class="line"><a name="l00560"></a><span class="lineno"> 560</span>&#160;};</div>
<div class="line"><a name="l00561"></a><span class="lineno"> 561</span>&#160;</div>
<div class="line"><a name="l00562"></a><span class="lineno"> 562</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00563"></a><span class="lineno"> 563</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00564"></a><span class="lineno"> 564</span>&#160;<span class="comment">/**</span></div>
<div class="line"><a name="l00565"></a><span class="lineno"> 565</span>&#160;<span class="comment"> DGL Rectangle class.</span></div>
<div class="line"><a name="l00566"></a><span class="lineno"> 566</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00567"></a><span class="lineno"> 567</span>&#160;<span class="comment"> This class describes a rectangle, defined by a starting point and a size.</span></div>
<div class="line"><a name="l00568"></a><span class="lineno"> 568</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00569"></a><span class="lineno"> 569</span>&#160;template&lt;typename T&gt;</div>
<div class="line"><a name="l00570"></a><span class="lineno"> 570</span>&#160;class <a class="code" href="singletonRectangle.html">Rectangle</a></div>
<div class="line"><a name="l00571"></a><span class="lineno"> 571</span>&#160;{</div>
<div class="line"><a name="l00572"></a><span class="lineno"> 572</span>&#160;<span class="keyword">public</span>:<span class="comment"></span></div>
<div class="line"><a name="l00573"></a><span class="lineno"> 573</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00574"></a><span class="lineno"> 574</span>&#160;<span class="comment"> Constructor for a null rectangle.</span></div>
<div class="line"><a name="l00575"></a><span class="lineno"> 575</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00576"></a><span class="lineno"> 576</span>&#160; Rectangle() noexcept;</div>
<div class="line"><a name="l00577"></a><span class="lineno"> 577</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00578"></a><span class="lineno"> 578</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00579"></a><span class="lineno"> 579</span>&#160;<span class="comment"> Constructor using custom X, Y, width and height values.</span></div>
<div class="line"><a name="l00580"></a><span class="lineno"> 580</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00581"></a><span class="lineno"> 581</span>&#160; Rectangle(const T&amp; x, const T&amp; y, const T&amp; width, const T&amp; height) noexcept;</div>
<div class="line"><a name="l00582"></a><span class="lineno"> 582</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00583"></a><span class="lineno"> 583</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00584"></a><span class="lineno"> 584</span>&#160;<span class="comment"> Constructor using custom X, Y and size values.</span></div>
<div class="line"><a name="l00585"></a><span class="lineno"> 585</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00586"></a><span class="lineno"> 586</span>&#160; Rectangle(const T&amp; x, const T&amp; y, const <a class="code" href="classSize.html">Size</a>&lt;T&gt;&amp; size) noexcept;</div>
<div class="line"><a name="l00587"></a><span class="lineno"> 587</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00588"></a><span class="lineno"> 588</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00589"></a><span class="lineno"> 589</span>&#160;<span class="comment"> Constructor using custom pos, width and height values.</span></div>
<div class="line"><a name="l00590"></a><span class="lineno"> 590</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00591"></a><span class="lineno"> 591</span>&#160; Rectangle(const <a class="code" href="classPoint.html">Point</a>&lt;T&gt;&amp; pos, const T&amp; width, const T&amp; height) noexcept;</div>
<div class="line"><a name="l00592"></a><span class="lineno"> 592</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00593"></a><span class="lineno"> 593</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00594"></a><span class="lineno"> 594</span>&#160;<span class="comment"> Constructor using custom position and size.</span></div>
<div class="line"><a name="l00595"></a><span class="lineno"> 595</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00596"></a><span class="lineno"> 596</span>&#160; Rectangle(const <a class="code" href="classPoint.html">Point</a>&lt;T&gt;&amp; pos, const <a class="code" href="classSize.html">Size</a>&lt;T&gt;&amp; size) noexcept;</div>
<div class="line"><a name="l00597"></a><span class="lineno"> 597</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00598"></a><span class="lineno"> 598</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00599"></a><span class="lineno"> 599</span>&#160;<span class="comment"> Constructor using another Rectangle class values.</span></div>
<div class="line"><a name="l00600"></a><span class="lineno"> 600</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00601"></a><span class="lineno"> 601</span>&#160; Rectangle(const Rectangle&lt;T&gt;&amp; rect) noexcept;</div>
<div class="line"><a name="l00602"></a><span class="lineno"> 602</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00603"></a><span class="lineno"> 603</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00604"></a><span class="lineno"> 604</span>&#160;<span class="comment"> Get X value.</span></div>
<div class="line"><a name="l00605"></a><span class="lineno"> 605</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00606"></a><span class="lineno"> 606</span>&#160; const T&amp; getX() const noexcept;</div>
<div class="line"><a name="l00607"></a><span class="lineno"> 607</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00608"></a><span class="lineno"> 608</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00609"></a><span class="lineno"> 609</span>&#160;<span class="comment"> Get Y value.</span></div>
<div class="line"><a name="l00610"></a><span class="lineno"> 610</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00611"></a><span class="lineno"> 611</span>&#160; const T&amp; getY() const noexcept;</div>
<div class="line"><a name="l00612"></a><span class="lineno"> 612</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00613"></a><span class="lineno"> 613</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00614"></a><span class="lineno"> 614</span>&#160;<span class="comment"> Get width.</span></div>
<div class="line"><a name="l00615"></a><span class="lineno"> 615</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00616"></a><span class="lineno"> 616</span>&#160; const T&amp; getWidth() const noexcept;</div>
<div class="line"><a name="l00617"></a><span class="lineno"> 617</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00618"></a><span class="lineno"> 618</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00619"></a><span class="lineno"> 619</span>&#160;<span class="comment"> Get height.</span></div>
<div class="line"><a name="l00620"></a><span class="lineno"> 620</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00621"></a><span class="lineno"> 621</span>&#160; const T&amp; getHeight() const noexcept;</div>
<div class="line"><a name="l00622"></a><span class="lineno"> 622</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00623"></a><span class="lineno"> 623</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00624"></a><span class="lineno"> 624</span>&#160;<span class="comment"> Get position.</span></div>
<div class="line"><a name="l00625"></a><span class="lineno"> 625</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00626"></a><span class="lineno"> 626</span>&#160; const <a class="code" href="classPoint.html">Point</a>&lt;T&gt;&amp; getPos() const noexcept;</div>
<div class="line"><a name="l00627"></a><span class="lineno"> 627</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00628"></a><span class="lineno"> 628</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00629"></a><span class="lineno"> 629</span>&#160;<span class="comment"> Get size.</span></div>
<div class="line"><a name="l00630"></a><span class="lineno"> 630</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00631"></a><span class="lineno"> 631</span>&#160; const <a class="code" href="classSize.html">Size</a>&lt;T&gt;&amp; getSize() const noexcept;</div>
<div class="line"><a name="l00632"></a><span class="lineno"> 632</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00633"></a><span class="lineno"> 633</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00634"></a><span class="lineno"> 634</span>&#160;<span class="comment"> Set X value as @a x.</span></div>
<div class="line"><a name="l00635"></a><span class="lineno"> 635</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00636"></a><span class="lineno"> 636</span>&#160; <span class="keywordtype">void</span> setX(const T&amp; x) noexcept;</div>
<div class="line"><a name="l00637"></a><span class="lineno"> 637</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00638"></a><span class="lineno"> 638</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00639"></a><span class="lineno"> 639</span>&#160;<span class="comment"> Set Y value as @a y.</span></div>
<div class="line"><a name="l00640"></a><span class="lineno"> 640</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00641"></a><span class="lineno"> 641</span>&#160; <span class="keywordtype">void</span> setY(const T&amp; y) noexcept;</div>
<div class="line"><a name="l00642"></a><span class="lineno"> 642</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00643"></a><span class="lineno"> 643</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00644"></a><span class="lineno"> 644</span>&#160;<span class="comment"> Set X and Y values as @a x and @a y respectively.</span></div>
<div class="line"><a name="l00645"></a><span class="lineno"> 645</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00646"></a><span class="lineno"> 646</span>&#160; <span class="keywordtype">void</span> setPos(const T&amp; x, const T&amp; y) noexcept;</div>
<div class="line"><a name="l00647"></a><span class="lineno"> 647</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00648"></a><span class="lineno"> 648</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00649"></a><span class="lineno"> 649</span>&#160;<span class="comment"> Set X and Y values according to @a pos.</span></div>
<div class="line"><a name="l00650"></a><span class="lineno"> 650</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00651"></a><span class="lineno"> 651</span>&#160; <span class="keywordtype">void</span> setPos(const <a class="code" href="classPoint.html">Point</a>&lt;T&gt;&amp; pos) noexcept;</div>
<div class="line"><a name="l00652"></a><span class="lineno"> 652</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00653"></a><span class="lineno"> 653</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00654"></a><span class="lineno"> 654</span>&#160;<span class="comment"> Move this rectangle by @a x and @a y values.</span></div>
<div class="line"><a name="l00655"></a><span class="lineno"> 655</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00656"></a><span class="lineno"> 656</span>&#160; <span class="keywordtype">void</span> <a class="code" href="singletonLine.html#a47c83b136a3d4df6ac688ac41126b967">moveBy</a>(const T&amp; x, const T&amp; y) noexcept;</div>
<div class="line"><a name="l00657"></a><span class="lineno"> 657</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00658"></a><span class="lineno"> 658</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00659"></a><span class="lineno"> 659</span>&#160;<span class="comment"> Move this rectangle by @a pos.</span></div>
<div class="line"><a name="l00660"></a><span class="lineno"> 660</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00661"></a><span class="lineno"> 661</span>&#160; <span class="keywordtype">void</span> <a class="code" href="singletonLine.html#a47c83b136a3d4df6ac688ac41126b967">moveBy</a>(const <a class="code" href="classPoint.html">Point</a>&lt;T&gt;&amp; pos) noexcept;</div>
<div class="line"><a name="l00662"></a><span class="lineno"> 662</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00663"></a><span class="lineno"> 663</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00664"></a><span class="lineno"> 664</span>&#160;<span class="comment"> Set width.</span></div>
<div class="line"><a name="l00665"></a><span class="lineno"> 665</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00666"></a><span class="lineno"> 666</span>&#160; <span class="keywordtype">void</span> setWidth(const T&amp; width) noexcept;</div>
<div class="line"><a name="l00667"></a><span class="lineno"> 667</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00668"></a><span class="lineno"> 668</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00669"></a><span class="lineno"> 669</span>&#160;<span class="comment"> Set height.</span></div>
<div class="line"><a name="l00670"></a><span class="lineno"> 670</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00671"></a><span class="lineno"> 671</span>&#160; <span class="keywordtype">void</span> setHeight(const T&amp; height) noexcept;</div>
<div class="line"><a name="l00672"></a><span class="lineno"> 672</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00673"></a><span class="lineno"> 673</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00674"></a><span class="lineno"> 674</span>&#160;<span class="comment"> Set size using @a width and @a height.</span></div>
<div class="line"><a name="l00675"></a><span class="lineno"> 675</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00676"></a><span class="lineno"> 676</span>&#160; <span class="keywordtype">void</span> setSize(const T&amp; width, const T&amp; height) noexcept;</div>
<div class="line"><a name="l00677"></a><span class="lineno"> 677</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00678"></a><span class="lineno"> 678</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00679"></a><span class="lineno"> 679</span>&#160;<span class="comment"> Set size.</span></div>
<div class="line"><a name="l00680"></a><span class="lineno"> 680</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00681"></a><span class="lineno"> 681</span>&#160; <span class="keywordtype">void</span> setSize(const <a class="code" href="classSize.html">Size</a>&lt;T&gt;&amp; size) noexcept;</div>
<div class="line"><a name="l00682"></a><span class="lineno"> 682</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00683"></a><span class="lineno"> 683</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00684"></a><span class="lineno"> 684</span>&#160;<span class="comment"> Grow size by @a multiplier.</span></div>
<div class="line"><a name="l00685"></a><span class="lineno"> 685</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00686"></a><span class="lineno"> 686</span>&#160; <span class="keywordtype">void</span> growBy(<span class="keywordtype">double</span> multiplier) noexcept;</div>
<div class="line"><a name="l00687"></a><span class="lineno"> 687</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00688"></a><span class="lineno"> 688</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00689"></a><span class="lineno"> 689</span>&#160;<span class="comment"> Shrink size by @a divider.</span></div>
<div class="line"><a name="l00690"></a><span class="lineno"> 690</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00691"></a><span class="lineno"> 691</span>&#160; <span class="keywordtype">void</span> shrinkBy(<span class="keywordtype">double</span> divider) noexcept;</div>
<div class="line"><a name="l00692"></a><span class="lineno"> 692</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00693"></a><span class="lineno"> 693</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00694"></a><span class="lineno"> 694</span>&#160;<span class="comment"> Set rectangle using @a pos and @a size.</span></div>
<div class="line"><a name="l00695"></a><span class="lineno"> 695</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00696"></a><span class="lineno"> 696</span>&#160; <span class="keywordtype">void</span> setRectangle(const <a class="code" href="classPoint.html">Point</a>&lt;T&gt;&amp; pos, const <a class="code" href="classSize.html">Size</a>&lt;T&gt;&amp; size) noexcept;</div>
<div class="line"><a name="l00697"></a><span class="lineno"> 697</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00698"></a><span class="lineno"> 698</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00699"></a><span class="lineno"> 699</span>&#160;<span class="comment"> Set rectangle.</span></div>
<div class="line"><a name="l00700"></a><span class="lineno"> 700</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00701"></a><span class="lineno"> 701</span>&#160; <span class="keywordtype">void</span> setRectangle(const Rectangle&lt;T&gt;&amp; rect) noexcept;</div>
<div class="line"><a name="l00702"></a><span class="lineno"> 702</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00703"></a><span class="lineno"> 703</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00704"></a><span class="lineno"> 704</span>&#160;<span class="comment"> Check if this rectangle contains the point defined by @a X and @a Y.</span></div>
<div class="line"><a name="l00705"></a><span class="lineno"> 705</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00706"></a><span class="lineno"> 706</span>&#160; <span class="keywordtype">bool</span> contains(const T&amp; x, const T&amp; y) const noexcept;</div>
<div class="line"><a name="l00707"></a><span class="lineno"> 707</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00708"></a><span class="lineno"> 708</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00709"></a><span class="lineno"> 709</span>&#160;<span class="comment"> Check if this rectangle contains the point @a pos.</span></div>
<div class="line"><a name="l00710"></a><span class="lineno"> 710</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00711"></a><span class="lineno"> 711</span>&#160; <span class="keywordtype">bool</span> contains(const <a class="code" href="classPoint.html">Point</a>&lt;T&gt;&amp; pos) const noexcept;</div>
<div class="line"><a name="l00712"></a><span class="lineno"> 712</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00713"></a><span class="lineno"> 713</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00714"></a><span class="lineno"> 714</span>&#160;<span class="comment"> Check if this rectangle contains X.</span></div>
<div class="line"><a name="l00715"></a><span class="lineno"> 715</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00716"></a><span class="lineno"> 716</span>&#160; <span class="keywordtype">bool</span> containsX(const T&amp; x) const noexcept;</div>
<div class="line"><a name="l00717"></a><span class="lineno"> 717</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00718"></a><span class="lineno"> 718</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00719"></a><span class="lineno"> 719</span>&#160;<span class="comment"> Check if this rectangle contains Y.</span></div>
<div class="line"><a name="l00720"></a><span class="lineno"> 720</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00721"></a><span class="lineno"> 721</span>&#160; <span class="keywordtype">bool</span> containsY(const T&amp; y) const noexcept;</div>
<div class="line"><a name="l00722"></a><span class="lineno"> 722</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00723"></a><span class="lineno"> 723</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00724"></a><span class="lineno"> 724</span>&#160;<span class="comment"> Draw this rectangle using the current OpenGL state.</span></div>
<div class="line"><a name="l00725"></a><span class="lineno"> 725</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00726"></a><span class="lineno"> 726</span>&#160; <span class="keywordtype">void</span> draw();</div>
<div class="line"><a name="l00727"></a><span class="lineno"> 727</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00728"></a><span class="lineno"> 728</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00729"></a><span class="lineno"> 729</span>&#160;<span class="comment"> Draw lines (outline of this rectangle) using the current OpenGL state.</span></div>
<div class="line"><a name="l00730"></a><span class="lineno"> 730</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00731"></a><span class="lineno"> 731</span>&#160; <span class="keywordtype">void</span> drawOutline();</div>
<div class="line"><a name="l00732"></a><span class="lineno"> 732</span>&#160;</div>
<div class="line"><a name="l00733"></a><span class="lineno"> 733</span>&#160; Rectangle&lt;T&gt;&amp; operator=(const Rectangle&lt;T&gt;&amp; rect) noexcept;</div>
<div class="line"><a name="l00734"></a><span class="lineno"> 734</span>&#160; Rectangle&lt;T&gt;&amp; operator*=(<span class="keywordtype">double</span> m) noexcept;</div>
<div class="line"><a name="l00735"></a><span class="lineno"> 735</span>&#160; Rectangle&lt;T&gt;&amp; operator/=(<span class="keywordtype">double</span> d) noexcept;</div>
<div class="line"><a name="l00736"></a><span class="lineno"> 736</span>&#160; <span class="keywordtype">bool</span> operator==(const Rectangle&lt;T&gt;&amp; size) const noexcept;</div>
<div class="line"><a name="l00737"></a><span class="lineno"> 737</span>&#160; <span class="keywordtype">bool</span> operator!=(const Rectangle&lt;T&gt;&amp; size) const noexcept;</div>
<div class="line"><a name="l00738"></a><span class="lineno"> 738</span>&#160;</div>
<div class="line"><a name="l00739"></a><span class="lineno"> 739</span>&#160;private:</div>
<div class="line"><a name="l00740"></a><span class="lineno"> 740</span>&#160; <a class="code" href="classPoint.html">Point</a>&lt;T&gt; fPos;</div>
<div class="line"><a name="l00741"></a><span class="lineno"> 741</span>&#160; <a class="code" href="classSize.html">Size</a>&lt;T&gt; fSize;</div>
<div class="line"><a name="l00742"></a><span class="lineno"> 742</span>&#160;</div>
<div class="line"><a name="l00743"></a><span class="lineno"> 743</span>&#160; <span class="keywordtype">void</span> _draw(const <span class="keywordtype">bool</span> outline);</div>
<div class="line"><a name="l00744"></a><span class="lineno"> 744</span>&#160;};</div>
<div class="line"><a name="l00745"></a><span class="lineno"> 745</span>&#160;</div>
<div class="line"><a name="l00746"></a><span class="lineno"> 746</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00747"></a><span class="lineno"> 747</span>&#160;</div>
<div class="line"><a name="l00748"></a><span class="lineno"> 748</span>&#160;END_NAMESPACE_DGL</div>
<div class="line"><a name="l00749"></a><span class="lineno"> 749</span>&#160;</div>
<div class="line"><a name="l00750"></a><span class="lineno"> 750</span>&#160;<span class="preprocessor">#endif // DGL_GEOMETRY_HPP_INCLUDED</span></div>
<div class="ttc" id="classSize_html_a57093e93dcdfadc9f720b9d8fda4b59e"><div class="ttname"><a href="classSize.html#a57093e93dcdfadc9f720b9d8fda4b59e">Size::isNotNull</a></div><div class="ttdeci">bool isNotNull() const noexcept</div></div>
<div class="ttc" id="singletonLine_html_a47c83b136a3d4df6ac688ac41126b967"><div class="ttname"><a href="singletonLine.html#a47c83b136a3d4df6ac688ac41126b967">Line::moveBy</a></div><div class="ttdeci">void moveBy(const T &amp;x, const T &amp;y) noexcept</div></div>
<div class="ttc" id="classPoint_html_a1539a6f24282a1d637b60ccfbbf46629"><div class="ttname"><a href="classPoint.html#a1539a6f24282a1d637b60ccfbbf46629">Point::setX</a></div><div class="ttdeci">void setX(const T &amp;x) noexcept</div></div>
<div class="ttc" id="singletonLine_html_a7f3af6a8c08af69188714a83353e09fb"><div class="ttname"><a href="singletonLine.html#a7f3af6a8c08af69188714a83353e09fb">Line::getStartX</a></div><div class="ttdeci">const T &amp; getStartX() const noexcept</div></div>
<div class="ttc" id="singletonCircle_html"><div class="ttname"><a href="singletonCircle.html">Circle</a></div><div class="ttdef"><b>Definition:</b> Geometry.hpp:28</div></div>
<div class="ttc" id="singletonLine_html_a5c5de1ccedae8ea85fd711eab10359dd"><div class="ttname"><a href="singletonLine.html#a5c5de1ccedae8ea85fd711eab10359dd">Line::getEndY</a></div><div class="ttdeci">const T &amp; getEndY() const noexcept</div></div>
<div class="ttc" id="classSize_html_a1e6c381d5a5c19e7ab2c83118ebbd0ec"><div class="ttname"><a href="classSize.html#a1e6c381d5a5c19e7ab2c83118ebbd0ec">Size::isValid</a></div><div class="ttdeci">bool isValid() const noexcept</div></div>
<div class="ttc" id="singletonLine_html_ad2b10d3144ba0711f9ecb444bb08ad4c"><div class="ttname"><a href="singletonLine.html#ad2b10d3144ba0711f9ecb444bb08ad4c">Line::setStartX</a></div><div class="ttdeci">void setStartX(const T &amp;x) noexcept</div></div>
<div class="ttc" id="singletonLine_html_a17061d9ae2e85a5f929148e5106504bf"><div class="ttname"><a href="singletonLine.html#a17061d9ae2e85a5f929148e5106504bf">Line::setEndX</a></div><div class="ttdeci">void setEndX(const T &amp;x) noexcept</div></div>
<div class="ttc" id="classPoint_html_ab0250670052f5169c57de84a09d7534b"><div class="ttname"><a href="classPoint.html#ab0250670052f5169c57de84a09d7534b">Point::getY</a></div><div class="ttdeci">const T &amp; getY() const noexcept</div></div>
<div class="ttc" id="classSize_html_abbcf98f504b23679162cab3b6f818949"><div class="ttname"><a href="classSize.html#abbcf98f504b23679162cab3b6f818949">Size::shrinkBy</a></div><div class="ttdeci">void shrinkBy(double divider) noexcept</div></div>
<div class="ttc" id="classPoint_html_af6d528d5f73b06282aae5be3b188528e"><div class="ttname"><a href="classPoint.html#af6d528d5f73b06282aae5be3b188528e">Point::getX</a></div><div class="ttdeci">const T &amp; getX() const noexcept</div></div>
<div class="ttc" id="classPoint_html"><div class="ttname"><a href="classPoint.html">Point</a></div><div class="ttdef"><b>Definition:</b> Geometry.hpp:40</div></div>
<div class="ttc" id="singletonLine_html_ae35ba55c6ff3bae24c7f05133b9e003b"><div class="ttname"><a href="singletonLine.html#ae35ba55c6ff3bae24c7f05133b9e003b">Line::setStartY</a></div><div class="ttdeci">void setStartY(const T &amp;y) noexcept</div></div>
<div class="ttc" id="classSize_html_a6dd4d69857ef92c65dd941eea3356ed9"><div class="ttname"><a href="classSize.html#a6dd4d69857ef92c65dd941eea3356ed9">Size::setSize</a></div><div class="ttdeci">void setSize(const T &amp;width, const T &amp;height) noexcept</div></div>
<div class="ttc" id="classSize_html"><div class="ttname"><a href="classSize.html">Size</a></div><div class="ttdef"><b>Definition:</b> Geometry.hpp:132</div></div>
<div class="ttc" id="singletonLine_html_a2c5ecf6513f1b1fd846a80915aff5744"><div class="ttname"><a href="singletonLine.html#a2c5ecf6513f1b1fd846a80915aff5744">Line::getStartPos</a></div><div class="ttdeci">const Point&lt; T &gt; &amp; getStartPos() const noexcept</div></div>
<div class="ttc" id="classSize_html_a30d453133d7a677e14641f010204237e"><div class="ttname"><a href="classSize.html#a30d453133d7a677e14641f010204237e">Size::setHeight</a></div><div class="ttdeci">void setHeight(const T &amp;height) noexcept</div></div>
<div class="ttc" id="classPoint_html_ada3e3f5f840cf70db3c7f884843a3d01"><div class="ttname"><a href="classPoint.html#ada3e3f5f840cf70db3c7f884843a3d01">Point::Point</a></div><div class="ttdeci">Point() noexcept</div></div>
<div class="ttc" id="classPoint_html_aac5c7220da858d14140ff0c78684d4e2"><div class="ttname"><a href="classPoint.html#aac5c7220da858d14140ff0c78684d4e2">Point::setPos</a></div><div class="ttdeci">void setPos(const T &amp;x, const T &amp;y) noexcept</div></div>
<div class="ttc" id="singletonLine_html_af05002adedbeaeea698d26bf4afadff0"><div class="ttname"><a href="singletonLine.html#af05002adedbeaeea698d26bf4afadff0">Line::setEndPos</a></div><div class="ttdeci">void setEndPos(const T &amp;x, const T &amp;y) noexcept</div></div>
<div class="ttc" id="classSize_html_ab49a572da2fb72ab4f6dfd7a06b000c8"><div class="ttname"><a href="classSize.html#ab49a572da2fb72ab4f6dfd7a06b000c8">Size::isNull</a></div><div class="ttdeci">bool isNull() const noexcept</div></div>
<div class="ttc" id="classSize_html_ab832e37b50a2d98648be4ac811af305f"><div class="ttname"><a href="classSize.html#ab832e37b50a2d98648be4ac811af305f">Size::isInvalid</a></div><div class="ttdeci">bool isInvalid() const noexcept</div></div>
<div class="ttc" id="classPoint_html_a541cdef0c235dc26d79c0b6ee7118346"><div class="ttname"><a href="classPoint.html#a541cdef0c235dc26d79c0b6ee7118346">Point::moveBy</a></div><div class="ttdeci">void moveBy(const T &amp;x, const T &amp;y) noexcept</div></div>
<div class="ttc" id="singletonTriangle_html"><div class="ttname"><a href="singletonTriangle.html">Triangle</a></div><div class="ttdef"><b>Definition:</b> Geometry.hpp:29</div></div>
<div class="ttc" id="classSize_html_aa552662217b3e8e9c0b6d69d7bc22665"><div class="ttname"><a href="classSize.html#aa552662217b3e8e9c0b6d69d7bc22665">Size::setWidth</a></div><div class="ttdeci">void setWidth(const T &amp;width) noexcept</div></div>
<div class="ttc" id="singletonLine_html_a15462cbbe5154d8b27fd6c53ddafc17f"><div class="ttname"><a href="singletonLine.html#a15462cbbe5154d8b27fd6c53ddafc17f">Line::getEndX</a></div><div class="ttdeci">const T &amp; getEndX() const noexcept</div></div>
<div class="ttc" id="singletonLine_html_a958d534b1b0c2d581b110dd26c0d4cea"><div class="ttname"><a href="singletonLine.html#a958d534b1b0c2d581b110dd26c0d4cea">Line::setStartPos</a></div><div class="ttdeci">void setStartPos(const T &amp;x, const T &amp;y) noexcept</div></div>
<div class="ttc" id="classSize_html_ac6cb1721051ed5c8f21467f009d72982"><div class="ttname"><a href="classSize.html#ac6cb1721051ed5c8f21467f009d72982">Size::growBy</a></div><div class="ttdeci">void growBy(double multiplier) noexcept</div></div>
<div class="ttc" id="singletonRectangle_html"><div class="ttname"><a href="singletonRectangle.html">Rectangle</a></div><div class="ttdef"><b>Definition:</b> Geometry.hpp:30</div></div>
<div class="ttc" id="singletonLine_html_a0dcd399a55aef168e91c645958670ee6"><div class="ttname"><a href="singletonLine.html#a0dcd399a55aef168e91c645958670ee6">Line::setEndY</a></div><div class="ttdeci">void setEndY(const T &amp;y) noexcept</div></div>
<div class="ttc" id="classSize_html_ada0c1f75029742b2514ede5466993776"><div class="ttname"><a href="classSize.html#ada0c1f75029742b2514ede5466993776">Size::Size</a></div><div class="ttdeci">Size() noexcept</div></div>
<div class="ttc" id="singletonLine_html"><div class="ttname"><a href="singletonLine.html">Line</a></div><div class="ttdef"><b>Definition:</b> Geometry.hpp:27</div></div>
<div class="ttc" id="classSize_html_a562e9d68738d1873a6aa0615af80505b"><div class="ttname"><a href="classSize.html#a562e9d68738d1873a6aa0615af80505b">Size::getHeight</a></div><div class="ttdeci">const T &amp; getHeight() const noexcept</div></div>
<div class="ttc" id="singletonLine_html_a5a5ef0a94283339f2c20406a3d9fbb04"><div class="ttname"><a href="singletonLine.html#a5a5ef0a94283339f2c20406a3d9fbb04">Line::getStartY</a></div><div class="ttdeci">const T &amp; getStartY() const noexcept</div></div>
<div class="ttc" id="singletonLine_html_ad156bd44539aa28e052207a25d705695"><div class="ttname"><a href="singletonLine.html#ad156bd44539aa28e052207a25d705695">Line::isNotNull</a></div><div class="ttdeci">bool isNotNull() const noexcept</div></div>
<div class="ttc" id="singletonLine_html_ab300b2e8deeda3d08cc7e70299c3955d"><div class="ttname"><a href="singletonLine.html#ab300b2e8deeda3d08cc7e70299c3955d">Line::isNull</a></div><div class="ttdeci">bool isNull() const noexcept</div></div>
<div class="ttc" id="singletonLine_html_af3eebf8905576276741caab216516949"><div class="ttname"><a href="singletonLine.html#af3eebf8905576276741caab216516949">Line::draw</a></div><div class="ttdeci">void draw()</div></div>
<div class="ttc" id="classPoint_html_a8ffe6785dc851accf06d02917fba54cf"><div class="ttname"><a href="classPoint.html#a8ffe6785dc851accf06d02917fba54cf">Point::setY</a></div><div class="ttdeci">void setY(const T &amp;y) noexcept</div></div>
<div class="ttc" id="singletonLine_html_aa3f70d792719c026b35b3f32dc19ac65"><div class="ttname"><a href="singletonLine.html#aa3f70d792719c026b35b3f32dc19ac65">Line::getEndPos</a></div><div class="ttdeci">const Point&lt; T &gt; &amp; getEndPos() const noexcept</div></div>
<div class="ttc" id="classPoint_html_aede5df141963951a746d7e207fa7e073"><div class="ttname"><a href="classPoint.html#aede5df141963951a746d7e207fa7e073">Point::isNotZero</a></div><div class="ttdeci">bool isNotZero() const noexcept</div></div>
<div class="ttc" id="singletonLine_html_a7895211d4fa97f63b3495ca5c9bfaed1"><div class="ttname"><a href="singletonLine.html#a7895211d4fa97f63b3495ca5c9bfaed1">Line::Line</a></div><div class="ttdeci">Line() noexcept</div></div>
<div class="ttc" id="classPoint_html_a845d59d29722c962c7af8f602bcf9ba4"><div class="ttname"><a href="classPoint.html#a845d59d29722c962c7af8f602bcf9ba4">Point::isZero</a></div><div class="ttdeci">bool isZero() const noexcept</div></div>
<div class="ttc" id="classSize_html_a3e65e5ff12f6bf57eaa6f45c54346942"><div class="ttname"><a href="classSize.html#a3e65e5ff12f6bf57eaa6f45c54346942">Size::getWidth</a></div><div class="ttdeci">const T &amp; getWidth() const noexcept</div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 161
- 0
ImageAboutWindow_8hpp_source.html View File

@@ -0,0 +1,161 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: dgl/ImageAboutWindow.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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</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>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_99893ac99dd47c2a73745483a12a725f.html">dgl</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">ImageAboutWindow.hpp</div> </div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> * DISTRHO Plugin Framework (DPF)</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright (C) 2012-2014 Filipe Coelho &lt;falktx@falktx.com&gt;</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * Permission to use, copy, modify, and/or distribute this software for any purpose with</span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * or without fee is hereby granted, provided that the above copyright notice and this</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * permission notice appear in all copies.</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * THE SOFTWARE IS PROVIDED &quot;AS IS&quot; AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> */</span></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"> 17</span>&#160;<span class="preprocessor">#ifndef DGL_IMAGE_ABOUT_WINDOW_HPP_INCLUDED</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="preprocessor">#define DGL_IMAGE_ABOUT_WINDOW_HPP_INCLUDED</span></div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;</div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="preprocessor">#include &quot;Image.hpp&quot;</span></div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="preprocessor">#include &quot;Widget.hpp&quot;</span></div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="preprocessor">#include &quot;Window.hpp&quot;</span></div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;</div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;START_NAMESPACE_DGL</div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;</div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;</div>
<div class="line"><a name="l00028"></a><span class="lineno"><a class="line" href="classImageAboutWindow.html"> 28</a></span>&#160;<span class="keyword">class </span><a class="code" href="classImageAboutWindow.html">ImageAboutWindow</a> : <span class="keyword">public</span> <a class="code" href="classWindow.html">Window</a>,</div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; <span class="keyword">public</span> <a class="code" href="classWidget.html">Widget</a></div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;{</div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; <span class="keyword">explicit</span> <a class="code" href="classImageAboutWindow.html">ImageAboutWindow</a>(<a class="code" href="classWindow.html">Window</a>&amp; parent, <span class="keyword">const</span> <a class="code" href="classImage.html">Image</a>&amp; image = <a class="code" href="classImage.html">Image</a>());</div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; <span class="keyword">explicit</span> <a class="code" href="classImageAboutWindow.html">ImageAboutWindow</a>(<a class="code" href="classWidget.html">Widget</a>* widget, <span class="keyword">const</span> <a class="code" href="classImage.html">Image</a>&amp; image = <a class="code" href="classImage.html">Image</a>());</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; <span class="keywordtype">void</span> setImage(<span class="keyword">const</span> <a class="code" href="classImage.html">Image</a>&amp; image);</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;<span class="keyword">protected</span>:</div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classImageAboutWindow.html#a4ebc99f9674e37ebdeeaa1ef9a71a0fc">onDisplay</a>() <span class="keyword">override</span>;</div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classImageAboutWindow.html#a952891b12bf379fafc184abc77daef24">onKeyboard</a>(<span class="keyword">const</span> <a class="code" href="structWidget_1_1KeyboardEvent.html">KeyboardEvent</a>&amp;) <span class="keyword">override</span>;</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classImageAboutWindow.html#a5af153208057de4baf7264c9a7bd30cd">onMouse</a>(<span class="keyword">const</span> <a class="code" href="structWidget_1_1MouseEvent.html">MouseEvent</a>&amp;) <span class="keyword">override</span>;</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <span class="keywordtype">void</span> onReshape(uint width, uint height) <span class="keyword">override</span>;</div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <a class="code" href="classImage.html">Image</a> fImgBackground;</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; DISTRHO_DECLARE_NON_COPY_CLASS(<a class="code" href="classImageAboutWindow.html">ImageAboutWindow</a>)</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <span class="comment">//DISTRHO_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR(ImageAboutWindow)</span></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;<span class="comment">// -----------------------------------------------------------------------</span></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"> 52</span>&#160;END_NAMESPACE_DGL</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="preprocessor">#endif // DGL_IMAGE_ABOUT_WINDOW_HPP_INCLUDED</span></div>
<div class="ttc" id="classImageAboutWindow_html"><div class="ttname"><a href="classImageAboutWindow.html">ImageAboutWindow</a></div><div class="ttdef"><b>Definition:</b> ImageAboutWindow.hpp:28</div></div>
<div class="ttc" id="classWindow_html"><div class="ttname"><a href="classWindow.html">Window</a></div><div class="ttdef"><b>Definition:</b> Window.hpp:30</div></div>
<div class="ttc" id="structWidget_1_1KeyboardEvent_html"><div class="ttname"><a href="structWidget_1_1KeyboardEvent.html">Widget::KeyboardEvent</a></div><div class="ttdef"><b>Definition:</b> Widget.hpp:75</div></div>
<div class="ttc" id="classImageAboutWindow_html_a952891b12bf379fafc184abc77daef24"><div class="ttname"><a href="classImageAboutWindow.html#a952891b12bf379fafc184abc77daef24">ImageAboutWindow::onKeyboard</a></div><div class="ttdeci">bool onKeyboard(const KeyboardEvent &amp;) override</div></div>
<div class="ttc" id="classImageAboutWindow_html_a4ebc99f9674e37ebdeeaa1ef9a71a0fc"><div class="ttname"><a href="classImageAboutWindow.html#a4ebc99f9674e37ebdeeaa1ef9a71a0fc">ImageAboutWindow::onDisplay</a></div><div class="ttdeci">void onDisplay() override</div></div>
<div class="ttc" id="classWidget_html"><div class="ttname"><a href="classWidget.html">Widget</a></div><div class="ttdef"><b>Definition:</b> Widget.hpp:51</div></div>
<div class="ttc" id="structWidget_1_1MouseEvent_html"><div class="ttname"><a href="structWidget_1_1MouseEvent.html">Widget::MouseEvent</a></div><div class="ttdef"><b>Definition:</b> Widget.hpp:110</div></div>
<div class="ttc" id="classImageAboutWindow_html_a5af153208057de4baf7264c9a7bd30cd"><div class="ttname"><a href="classImageAboutWindow.html#a5af153208057de4baf7264c9a7bd30cd">ImageAboutWindow::onMouse</a></div><div class="ttdeci">bool onMouse(const MouseEvent &amp;) override</div></div>
<div class="ttc" id="classImage_html"><div class="ttname"><a href="classImage.html">Image</a></div><div class="ttdef"><b>Definition:</b> Image.hpp:38</div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 175
- 0
ImageButton_8hpp_source.html View File

@@ -0,0 +1,175 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: dgl/ImageButton.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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</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>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_99893ac99dd47c2a73745483a12a725f.html">dgl</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">ImageButton.hpp</div> </div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> * DISTRHO Plugin Framework (DPF)</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright (C) 2012-2014 Filipe Coelho &lt;falktx@falktx.com&gt;</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * Permission to use, copy, modify, and/or distribute this software for any purpose with</span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * or without fee is hereby granted, provided that the above copyright notice and this</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * permission notice appear in all copies.</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * THE SOFTWARE IS PROVIDED &quot;AS IS&quot; AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> */</span></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"> 17</span>&#160;<span class="preprocessor">#ifndef DGL_IMAGE_BUTTON_HPP_INCLUDED</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="preprocessor">#define DGL_IMAGE_BUTTON_HPP_INCLUDED</span></div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;</div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="preprocessor">#include &quot;Image.hpp&quot;</span></div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="preprocessor">#include &quot;Widget.hpp&quot;</span></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"> 23</span>&#160;START_NAMESPACE_DGL</div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;</div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;</div>
<div class="line"><a name="l00027"></a><span class="lineno"><a class="line" href="classImageButton.html"> 27</a></span>&#160;<span class="keyword">class </span><a class="code" href="classImageButton.html">ImageButton</a> : <span class="keyword">public</span> <a class="code" href="classWidget.html">Widget</a></div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;{</div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00030"></a><span class="lineno"><a class="line" href="classImageButton_1_1Callback.html"> 30</a></span>&#160; <span class="keyword">class </span><a class="code" href="classImageButton_1_1Callback.html">Callback</a></div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; {</div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; <span class="keyword">public</span>:</div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; <span class="keyword">virtual</span> ~<a class="code" href="classImageButton_1_1Callback.html">Callback</a>() {}</div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> imageButtonClicked(<a class="code" href="classImageButton.html">ImageButton</a>* imageButton, <span class="keywordtype">int</span> button) = 0;</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; <span class="keyword">explicit</span> <a class="code" href="classImageButton.html">ImageButton</a>(<a class="code" href="classWindow.html">Window</a>&amp; parent, <span class="keyword">const</span> <a class="code" href="classImage.html">Image</a>&amp; image) noexcept;</div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; <span class="keyword">explicit</span> <a class="code" href="classImageButton.html">ImageButton</a>(<a class="code" href="classWindow.html">Window</a>&amp; parent, <span class="keyword">const</span> <a class="code" href="classImage.html">Image</a>&amp; imageNormal, <span class="keyword">const</span> <a class="code" href="classImage.html">Image</a>&amp; imageHover, <span class="keyword">const</span> <a class="code" href="classImage.html">Image</a>&amp; imageDown) noexcept;</div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; <span class="keyword">explicit</span> <a class="code" href="classImageButton.html">ImageButton</a>(<a class="code" href="classWidget.html">Widget</a>* widget, <span class="keyword">const</span> <a class="code" href="classImage.html">Image</a>&amp; image) noexcept;</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; <span class="keyword">explicit</span> <a class="code" href="classImageButton.html">ImageButton</a>(<a class="code" href="classWidget.html">Widget</a>* widget, <span class="keyword">const</span> <a class="code" href="classImage.html">Image</a>&amp; imageNormal, <span class="keyword">const</span> <a class="code" href="classImage.html">Image</a>&amp; imageHover, <span class="keyword">const</span> <a class="code" href="classImage.html">Image</a>&amp; imageDown) noexcept;</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <span class="keyword">explicit</span> <a class="code" href="classImageButton.html">ImageButton</a>(<span class="keyword">const</span> <a class="code" href="classImageButton.html">ImageButton</a>&amp; imageButton) noexcept;</div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <a class="code" href="classImageButton.html">ImageButton</a>&amp; operator=(<span class="keyword">const</span> <a class="code" href="classImageButton.html">ImageButton</a>&amp; imageButton) noexcept;</div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <span class="keywordtype">void</span> setCallback(<a class="code" href="classImageButton_1_1Callback.html">Callback</a>* callback) noexcept;</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="keyword">protected</span>:</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classImageButton.html#abb0d1081f8c794657ccbbcffb2d75efc">onDisplay</a>() <span class="keyword">override</span>;</div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classImageButton.html#acea33c4a730d0dce4f87a67cc290d747">onMouse</a>(<span class="keyword">const</span> <a class="code" href="structWidget_1_1MouseEvent.html">MouseEvent</a>&amp;) <span class="keyword">override</span>;</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classImageButton.html#a53676b7a0cc31f78a371ef363344f7ba">onMotion</a>(<span class="keyword">const</span> <a class="code" href="structWidget_1_1MotionEvent.html">MotionEvent</a>&amp;) <span class="keyword">override</span>;</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;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <a class="code" href="classImage.html">Image</a> fImageNormal;</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <a class="code" href="classImage.html">Image</a> fImageHover;</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <a class="code" href="classImage.html">Image</a> fImageDown;</div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <a class="code" href="classImage.html">Image</a>* fCurImage;</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="keywordtype">int</span> fCurButton;</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <a class="code" href="classImageButton_1_1Callback.html">Callback</a>* fCallback;</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; DISTRHO_LEAK_DETECTOR(<a class="code" href="classImageButton.html">ImageButton</a>)</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;};</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;END_NAMESPACE_DGL</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;</div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="preprocessor">#endif // DGL_IMAGE_BUTTON_HPP_INCLUDED</span></div>
<div class="ttc" id="classWindow_html"><div class="ttname"><a href="classWindow.html">Window</a></div><div class="ttdef"><b>Definition:</b> Window.hpp:30</div></div>
<div class="ttc" id="classImageButton_html_abb0d1081f8c794657ccbbcffb2d75efc"><div class="ttname"><a href="classImageButton.html#abb0d1081f8c794657ccbbcffb2d75efc">ImageButton::onDisplay</a></div><div class="ttdeci">void onDisplay() override</div></div>
<div class="ttc" id="classImageButton_html"><div class="ttname"><a href="classImageButton.html">ImageButton</a></div><div class="ttdef"><b>Definition:</b> ImageButton.hpp:27</div></div>
<div class="ttc" id="classImageButton_html_acea33c4a730d0dce4f87a67cc290d747"><div class="ttname"><a href="classImageButton.html#acea33c4a730d0dce4f87a67cc290d747">ImageButton::onMouse</a></div><div class="ttdeci">bool onMouse(const MouseEvent &amp;) override</div></div>
<div class="ttc" id="structWidget_1_1MotionEvent_html"><div class="ttname"><a href="structWidget_1_1MotionEvent.html">Widget::MotionEvent</a></div><div class="ttdef"><b>Definition:</b> Widget.hpp:128</div></div>
<div class="ttc" id="classWidget_html"><div class="ttname"><a href="classWidget.html">Widget</a></div><div class="ttdef"><b>Definition:</b> Widget.hpp:51</div></div>
<div class="ttc" id="structWidget_1_1MouseEvent_html"><div class="ttname"><a href="structWidget_1_1MouseEvent.html">Widget::MouseEvent</a></div><div class="ttdef"><b>Definition:</b> Widget.hpp:110</div></div>
<div class="ttc" id="classImage_html"><div class="ttname"><a href="classImage.html">Image</a></div><div class="ttdef"><b>Definition:</b> Image.hpp:38</div></div>
<div class="ttc" id="classImageButton_html_a53676b7a0cc31f78a371ef363344f7ba"><div class="ttname"><a href="classImageButton.html#a53676b7a0cc31f78a371ef363344f7ba">ImageButton::onMotion</a></div><div class="ttdeci">bool onMotion(const MotionEvent &amp;) override</div></div>
<div class="ttc" id="classImageButton_1_1Callback_html"><div class="ttname"><a href="classImageButton_1_1Callback.html">ImageButton::Callback</a></div><div class="ttdef"><b>Definition:</b> ImageButton.hpp:30</div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 216
- 0
ImageKnob_8hpp_source.html View File

@@ -0,0 +1,216 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: dgl/ImageKnob.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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</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>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_99893ac99dd47c2a73745483a12a725f.html">dgl</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">ImageKnob.hpp</div> </div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> * DISTRHO Plugin Framework (DPF)</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright (C) 2012-2014 Filipe Coelho &lt;falktx@falktx.com&gt;</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * Permission to use, copy, modify, and/or distribute this software for any purpose with</span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * or without fee is hereby granted, provided that the above copyright notice and this</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * permission notice appear in all copies.</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * THE SOFTWARE IS PROVIDED &quot;AS IS&quot; AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> */</span></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"> 17</span>&#160;<span class="preprocessor">#ifndef DGL_IMAGE_KNOB_HPP_INCLUDED</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="preprocessor">#define DGL_IMAGE_KNOB_HPP_INCLUDED</span></div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;</div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="preprocessor">#include &quot;Image.hpp&quot;</span></div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="preprocessor">#include &quot;Widget.hpp&quot;</span></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"> 23</span>&#160;START_NAMESPACE_DGL</div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;</div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;</div>
<div class="line"><a name="l00027"></a><span class="lineno"><a class="line" href="classImageKnob.html"> 27</a></span>&#160;<span class="keyword">class </span><a class="code" href="classImageKnob.html">ImageKnob</a> : <span class="keyword">public</span> <a class="code" href="classWidget.html">Widget</a></div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;{</div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; <span class="keyword">enum</span> Orientation {</div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; Horizontal,</div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; Vertical</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"><a class="line" href="classImageKnob_1_1Callback.html"> 35</a></span>&#160; <span class="keyword">class </span><a class="code" href="classImageKnob_1_1Callback.html">Callback</a></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; <span class="keyword">public</span>:</div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; <span class="keyword">virtual</span> ~<a class="code" href="classImageKnob_1_1Callback.html">Callback</a>() {}</div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> imageKnobDragStarted(<a class="code" href="classImageKnob.html">ImageKnob</a>* imageKnob) = 0;</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> imageKnobDragFinished(<a class="code" href="classImageKnob.html">ImageKnob</a>* imageKnob) = 0;</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> imageKnobValueChanged(<a class="code" href="classImageKnob.html">ImageKnob</a>* imageKnob, <span class="keywordtype">float</span> value) = 0;</div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; };</div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <span class="keyword">explicit</span> <a class="code" href="classImageKnob.html">ImageKnob</a>(<a class="code" href="classWindow.html">Window</a>&amp; parent, <span class="keyword">const</span> <a class="code" href="classImage.html">Image</a>&amp; image, Orientation orientation = Vertical) noexcept;</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; explicit <a class="code" href="classImageKnob.html">ImageKnob</a>(<a class="code" href="classWidget.html">Widget</a>* widget, const <a class="code" href="classImage.html">Image</a>&amp; image, Orientation orientation = Vertical) noexcept;</div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; explicit <a class="code" href="classImageKnob.html">ImageKnob</a>(const <a class="code" href="classImageKnob.html">ImageKnob</a>&amp; imageKnob);</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <a class="code" href="classImageKnob.html">ImageKnob</a>&amp; operator=(const <a class="code" href="classImageKnob.html">ImageKnob</a>&amp; imageKnob);</div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; ~<a class="code" href="classImageKnob.html">ImageKnob</a>() override;</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; <span class="keywordtype">float</span> getValue() const noexcept;</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"> 52</span>&#160; <span class="keywordtype">void</span> setDefault(<span class="keywordtype">float</span> def) noexcept;</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="keywordtype">void</span> setRange(<span class="keywordtype">float</span> min, <span class="keywordtype">float</span> max) noexcept;</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="keywordtype">void</span> setStep(<span class="keywordtype">float</span> step) noexcept;</div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="keywordtype">void</span> setValue(<span class="keywordtype">float</span> value, <span class="keywordtype">bool</span> sendCallback = false) noexcept;</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="keywordtype">void</span> setUsingLogScale(<span class="keywordtype">bool</span> yesNo) noexcept;</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="keywordtype">void</span> setCallback(<a class="code" href="classImageKnob_1_1Callback.html">Callback</a>* callback) noexcept;</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="keywordtype">void</span> setOrientation(Orientation orientation) noexcept;</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="keywordtype">void</span> setRotationAngle(<span class="keywordtype">int</span> angle);</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="keywordtype">void</span> setImageLayerCount(uint count) noexcept;</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;protected:</div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classImageKnob.html#a7123a12c906463700df8c6f24cd0a62f">onDisplay</a>() override;</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classImageKnob.html#a473247914d3751d629dd8690f74af07b">onMouse</a>(const <a class="code" href="structWidget_1_1MouseEvent.html">MouseEvent</a>&amp;) override;</div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classImageKnob.html#a299a1721471747dc173633f21bd75b1f">onMotion</a>(const <a class="code" href="structWidget_1_1MotionEvent.html">MotionEvent</a>&amp;) override;</div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classImageKnob.html#a2cdc26028611554458a74b32740ac33b">onScroll</a>(const <a class="code" href="structWidget_1_1ScrollEvent.html">ScrollEvent</a>&amp;) override;</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;private:</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <a class="code" href="classImage.html">Image</a> fImage;</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keywordtype">float</span> fMinimum;</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordtype">float</span> fMaximum;</div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="keywordtype">float</span> fStep;</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="keywordtype">float</span> fValue;</div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keywordtype">float</span> fValueDef;</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keywordtype">float</span> fValueTmp;</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="keywordtype">bool</span> fUsingDefault;</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keywordtype">bool</span> fUsingLog;</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; Orientation fOrientation;</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keywordtype">int</span> fRotationAngle;</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="keywordtype">bool</span> fDragging;</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keywordtype">int</span> fLastX;</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keywordtype">int</span> fLastY;</div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;</div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <a class="code" href="classImageKnob_1_1Callback.html">Callback</a>* fCallback;</div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="keywordtype">bool</span> fIsImgVertical;</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; uint fImgLayerWidth;</div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; uint fImgLayerHeight;</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; uint fImgLayerCount;</div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="keywordtype">bool</span> fIsReady;</div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; GLuint fTextureId;</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;</div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="keywordtype">float</span> _logscale(<span class="keywordtype">float</span> value) const;</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <span class="keywordtype">float</span> _invlogscale(<span class="keywordtype">float</span> value) const;</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;</div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; DISTRHO_LEAK_DETECTOR(<a class="code" href="classImageKnob.html">ImageKnob</a>)</div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;};</div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;</div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;</div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;END_NAMESPACE_DGL</div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<span class="preprocessor">#endif // DGL_IMAGE_KNOB_HPP_INCLUDED</span></div>
<div class="ttc" id="classImageKnob_html_a7123a12c906463700df8c6f24cd0a62f"><div class="ttname"><a href="classImageKnob.html#a7123a12c906463700df8c6f24cd0a62f">ImageKnob::onDisplay</a></div><div class="ttdeci">void onDisplay() override</div></div>
<div class="ttc" id="classWindow_html"><div class="ttname"><a href="classWindow.html">Window</a></div><div class="ttdef"><b>Definition:</b> Window.hpp:30</div></div>
<div class="ttc" id="classImageKnob_html_a473247914d3751d629dd8690f74af07b"><div class="ttname"><a href="classImageKnob.html#a473247914d3751d629dd8690f74af07b">ImageKnob::onMouse</a></div><div class="ttdeci">bool onMouse(const MouseEvent &amp;) override</div></div>
<div class="ttc" id="classImageKnob_1_1Callback_html"><div class="ttname"><a href="classImageKnob_1_1Callback.html">ImageKnob::Callback</a></div><div class="ttdef"><b>Definition:</b> ImageKnob.hpp:35</div></div>
<div class="ttc" id="structWidget_1_1MotionEvent_html"><div class="ttname"><a href="structWidget_1_1MotionEvent.html">Widget::MotionEvent</a></div><div class="ttdef"><b>Definition:</b> Widget.hpp:128</div></div>
<div class="ttc" id="classImageKnob_html_a299a1721471747dc173633f21bd75b1f"><div class="ttname"><a href="classImageKnob.html#a299a1721471747dc173633f21bd75b1f">ImageKnob::onMotion</a></div><div class="ttdeci">bool onMotion(const MotionEvent &amp;) override</div></div>
<div class="ttc" id="classWidget_html"><div class="ttname"><a href="classWidget.html">Widget</a></div><div class="ttdef"><b>Definition:</b> Widget.hpp:51</div></div>
<div class="ttc" id="structWidget_1_1MouseEvent_html"><div class="ttname"><a href="structWidget_1_1MouseEvent.html">Widget::MouseEvent</a></div><div class="ttdef"><b>Definition:</b> Widget.hpp:110</div></div>
<div class="ttc" id="classImage_html"><div class="ttname"><a href="classImage.html">Image</a></div><div class="ttdef"><b>Definition:</b> Image.hpp:38</div></div>
<div class="ttc" id="classImageKnob_html_a2cdc26028611554458a74b32740ac33b"><div class="ttname"><a href="classImageKnob.html#a2cdc26028611554458a74b32740ac33b">ImageKnob::onScroll</a></div><div class="ttdeci">bool onScroll(const ScrollEvent &amp;) override</div></div>
<div class="ttc" id="classImageKnob_html"><div class="ttname"><a href="classImageKnob.html">ImageKnob</a></div><div class="ttdef"><b>Definition:</b> ImageKnob.hpp:27</div></div>
<div class="ttc" id="structWidget_1_1ScrollEvent_html"><div class="ttname"><a href="structWidget_1_1ScrollEvent.html">Widget::ScrollEvent</a></div><div class="ttdef"><b>Definition:</b> Widget.hpp:143</div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 208
- 0
ImageSlider_8hpp_source.html View File

@@ -0,0 +1,208 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: dgl/ImageSlider.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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</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>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_99893ac99dd47c2a73745483a12a725f.html">dgl</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">ImageSlider.hpp</div> </div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> * DISTRHO Plugin Framework (DPF)</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright (C) 2012-2014 Filipe Coelho &lt;falktx@falktx.com&gt;</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * Permission to use, copy, modify, and/or distribute this software for any purpose with</span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * or without fee is hereby granted, provided that the above copyright notice and this</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * permission notice appear in all copies.</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * THE SOFTWARE IS PROVIDED &quot;AS IS&quot; AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> */</span></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"> 17</span>&#160;<span class="preprocessor">#ifndef DGL_IMAGE_SLIDER_HPP_INCLUDED</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="preprocessor">#define DGL_IMAGE_SLIDER_HPP_INCLUDED</span></div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;</div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="preprocessor">#include &quot;Image.hpp&quot;</span></div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="preprocessor">#include &quot;Widget.hpp&quot;</span></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"> 23</span>&#160;START_NAMESPACE_DGL</div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;</div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;</div>
<div class="line"><a name="l00027"></a><span class="lineno"><a class="line" href="classImageSlider.html"> 27</a></span>&#160;<span class="keyword">class </span><a class="code" href="classImageSlider.html">ImageSlider</a> : <span class="keyword">public</span> <a class="code" href="classWidget.html">Widget</a></div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;{</div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00030"></a><span class="lineno"><a class="line" href="classImageSlider_1_1Callback.html"> 30</a></span>&#160; <span class="keyword">class </span><a class="code" href="classImageSlider_1_1Callback.html">Callback</a></div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; {</div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; <span class="keyword">public</span>:</div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; <span class="keyword">virtual</span> ~<a class="code" href="classImageSlider_1_1Callback.html">Callback</a>() {}</div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> imageSliderDragStarted(<a class="code" href="classImageSlider.html">ImageSlider</a>* imageSlider) = 0;</div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> imageSliderDragFinished(<a class="code" href="classImageSlider.html">ImageSlider</a>* imageSlider) = 0;</div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> imageSliderValueChanged(<a class="code" href="classImageSlider.html">ImageSlider</a>* imageSlider, <span class="keywordtype">float</span> value) = 0;</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"> 38</span>&#160;</div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; <span class="keyword">explicit</span> <a class="code" href="classImageSlider.html">ImageSlider</a>(<a class="code" href="classWindow.html">Window</a>&amp; parent, <span class="keyword">const</span> <a class="code" href="classImage.html">Image</a>&amp; image) noexcept;</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; <span class="keyword">explicit</span> <a class="code" href="classImageSlider.html">ImageSlider</a>(<a class="code" href="classWidget.html">Widget</a>* widget, <span class="keyword">const</span> <a class="code" href="classImage.html">Image</a>&amp; image) noexcept;</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <span class="keyword">explicit</span> <a class="code" href="classImageSlider.html">ImageSlider</a>(<span class="keyword">const</span> <a class="code" href="classImageSlider.html">ImageSlider</a>&amp; imageSlider) noexcept;</div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <a class="code" href="classImageSlider.html">ImageSlider</a>&amp; operator=(<span class="keyword">const</span> <a class="code" href="classImageSlider.html">ImageSlider</a>&amp; imageSlider) noexcept;</div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <span class="keywordtype">float</span> getValue() const noexcept;</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <span class="keywordtype">void</span> setStartPos(const <a class="code" href="classPoint.html">Point</a>&lt;<span class="keywordtype">int</span>&gt;&amp; startPos) noexcept;</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <span class="keywordtype">void</span> setStartPos(<span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y) noexcept;</div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <span class="keywordtype">void</span> setEndPos(const <a class="code" href="classPoint.html">Point</a>&lt;<span class="keywordtype">int</span>&gt;&amp; endPos) noexcept;</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="keywordtype">void</span> setEndPos(<span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y) noexcept;</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; <span class="keywordtype">void</span> setInverted(<span class="keywordtype">bool</span> inverted) noexcept;</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <span class="keywordtype">void</span> setRange(<span class="keywordtype">float</span> min, <span class="keywordtype">float</span> max) noexcept;</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="keywordtype">void</span> setStep(<span class="keywordtype">float</span> step) noexcept;</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="keywordtype">void</span> setValue(<span class="keywordtype">float</span> value, <span class="keywordtype">bool</span> sendCallback = false) noexcept;</div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="keywordtype">void</span> setCallback(<a class="code" href="classImageSlider_1_1Callback.html">Callback</a>* callback) noexcept;</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;protected:</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classImageSlider.html#a6c734dabcf0af01513fb5dec5b716831">onDisplay</a>() override;</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classImageSlider.html#a6ffe0c5b79ef8e397876154b904f0981">onMouse</a>(const <a class="code" href="structWidget_1_1MouseEvent.html">MouseEvent</a>&amp;) override;</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classImageSlider.html#a2950b1058ae7c6d20397135615b4583c">onMotion</a>(const <a class="code" href="structWidget_1_1MotionEvent.html">MotionEvent</a>&amp;) override;</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;private:</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <a class="code" href="classImage.html">Image</a> fImage;</div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="keywordtype">float</span> fMinimum;</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keywordtype">float</span> fMaximum;</div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="keywordtype">float</span> fStep;</div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keywordtype">float</span> fValue;</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keywordtype">float</span> fValueTmp;</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keywordtype">bool</span> fDragging;</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keywordtype">bool</span> fInverted;</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordtype">int</span> fStartedX;</div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="keywordtype">int</span> fStartedY;</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <a class="code" href="classImageSlider_1_1Callback.html">Callback</a>* fCallback;</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <a class="code" href="classPoint.html">Point</a>&lt;<span class="keywordtype">int</span>&gt; fStartPos;</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <a class="code" href="classPoint.html">Point</a>&lt;<span class="keywordtype">int</span>&gt; fEndPos;</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <a class="code" href="singletonRectangle.html">Rectangle</a>&lt;<span class="keywordtype">int</span>&gt; fSliderArea;</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keywordtype">void</span> _recheckArea() noexcept;</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="comment">// these should not be used</span></div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keywordtype">void</span> setAbsoluteX(<span class="keywordtype">int</span>) const noexcept {}</div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <span class="keywordtype">void</span> setAbsoluteY(<span class="keywordtype">int</span>) const noexcept {}</div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="keywordtype">void</span> setAbsolutePos(<span class="keywordtype">int</span>, <span class="keywordtype">int</span>) const noexcept {}</div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="keywordtype">void</span> setAbsolutePos(<span class="keyword">const</span> <a class="code" href="classPoint.html">Point&lt;int&gt;</a>&amp;) const noexcept {}</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="keywordtype">void</span> setNeedsFullViewport(<span class="keywordtype">bool</span>) const noexcept {}</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;</div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; DISTRHO_LEAK_DETECTOR(<a class="code" href="classImageSlider.html">ImageSlider</a>)</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;};</div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;</div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;</div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;END_NAMESPACE_DGL</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;<span class="preprocessor">#endif // DGL_IMAGE_SLIDER_HPP_INCLUDED</span></div>
<div class="ttc" id="classWindow_html"><div class="ttname"><a href="classWindow.html">Window</a></div><div class="ttdef"><b>Definition:</b> Window.hpp:30</div></div>
<div class="ttc" id="classImageSlider_1_1Callback_html"><div class="ttname"><a href="classImageSlider_1_1Callback.html">ImageSlider::Callback</a></div><div class="ttdef"><b>Definition:</b> ImageSlider.hpp:30</div></div>
<div class="ttc" id="classImageSlider_html_a2950b1058ae7c6d20397135615b4583c"><div class="ttname"><a href="classImageSlider.html#a2950b1058ae7c6d20397135615b4583c">ImageSlider::onMotion</a></div><div class="ttdeci">bool onMotion(const MotionEvent &amp;) override</div></div>
<div class="ttc" id="classPoint_html"><div class="ttname"><a href="classPoint.html">Point</a></div><div class="ttdef"><b>Definition:</b> Geometry.hpp:40</div></div>
<div class="ttc" id="structWidget_1_1MotionEvent_html"><div class="ttname"><a href="structWidget_1_1MotionEvent.html">Widget::MotionEvent</a></div><div class="ttdef"><b>Definition:</b> Widget.hpp:128</div></div>
<div class="ttc" id="classImageSlider_html_a6ffe0c5b79ef8e397876154b904f0981"><div class="ttname"><a href="classImageSlider.html#a6ffe0c5b79ef8e397876154b904f0981">ImageSlider::onMouse</a></div><div class="ttdeci">bool onMouse(const MouseEvent &amp;) override</div></div>
<div class="ttc" id="classImageSlider_html_a6c734dabcf0af01513fb5dec5b716831"><div class="ttname"><a href="classImageSlider.html#a6c734dabcf0af01513fb5dec5b716831">ImageSlider::onDisplay</a></div><div class="ttdeci">void onDisplay() override</div></div>
<div class="ttc" id="classWidget_html"><div class="ttname"><a href="classWidget.html">Widget</a></div><div class="ttdef"><b>Definition:</b> Widget.hpp:51</div></div>
<div class="ttc" id="singletonRectangle_html"><div class="ttname"><a href="singletonRectangle.html">Rectangle</a></div><div class="ttdef"><b>Definition:</b> Geometry.hpp:30</div></div>
<div class="ttc" id="structWidget_1_1MouseEvent_html"><div class="ttname"><a href="structWidget_1_1MouseEvent.html">Widget::MouseEvent</a></div><div class="ttdef"><b>Definition:</b> Widget.hpp:110</div></div>
<div class="ttc" id="classImage_html"><div class="ttname"><a href="classImage.html">Image</a></div><div class="ttdef"><b>Definition:</b> Image.hpp:38</div></div>
<div class="ttc" id="classImageSlider_html"><div class="ttname"><a href="classImageSlider.html">ImageSlider</a></div><div class="ttdef"><b>Definition:</b> ImageSlider.hpp:27</div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 171
- 0
ImageSwitch_8hpp_source.html View File

@@ -0,0 +1,171 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: dgl/ImageSwitch.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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</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>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_99893ac99dd47c2a73745483a12a725f.html">dgl</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">ImageSwitch.hpp</div> </div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> * DISTRHO Plugin Framework (DPF)</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright (C) 2012-2014 Filipe Coelho &lt;falktx@falktx.com&gt;</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * Permission to use, copy, modify, and/or distribute this software for any purpose with</span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * or without fee is hereby granted, provided that the above copyright notice and this</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * permission notice appear in all copies.</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * THE SOFTWARE IS PROVIDED &quot;AS IS&quot; AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> */</span></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"> 17</span>&#160;<span class="preprocessor">#ifndef DGL_IMAGE_SWITCH_HPP_INCLUDED</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="preprocessor">#define DGL_IMAGE_SWITCH_HPP_INCLUDED</span></div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;</div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="preprocessor">#include &quot;Image.hpp&quot;</span></div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="preprocessor">#include &quot;Widget.hpp&quot;</span></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"> 23</span>&#160;START_NAMESPACE_DGL</div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;</div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;</div>
<div class="line"><a name="l00027"></a><span class="lineno"><a class="line" href="classImageSwitch.html"> 27</a></span>&#160;<span class="keyword">class </span><a class="code" href="classImageSwitch.html">ImageSwitch</a> : <span class="keyword">public</span> <a class="code" href="classWidget.html">Widget</a></div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;{</div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00030"></a><span class="lineno"><a class="line" href="classImageSwitch_1_1Callback.html"> 30</a></span>&#160; <span class="keyword">class </span><a class="code" href="classImageSwitch_1_1Callback.html">Callback</a></div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; {</div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; <span class="keyword">public</span>:</div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; <span class="keyword">virtual</span> ~<a class="code" href="classImageSwitch_1_1Callback.html">Callback</a>() {}</div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> imageSwitchClicked(<a class="code" href="classImageSwitch.html">ImageSwitch</a>* imageButton, <span class="keywordtype">bool</span> down) = 0;</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; <span class="keyword">explicit</span> <a class="code" href="classImageSwitch.html">ImageSwitch</a>(<a class="code" href="classWindow.html">Window</a>&amp; parent, <span class="keyword">const</span> <a class="code" href="classImage.html">Image</a>&amp; imageNormal, <span class="keyword">const</span> <a class="code" href="classImage.html">Image</a>&amp; imageDown) noexcept;</div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; <span class="keyword">explicit</span> <a class="code" href="classImageSwitch.html">ImageSwitch</a>(<a class="code" href="classWidget.html">Widget</a>* widget, <span class="keyword">const</span> <a class="code" href="classImage.html">Image</a>&amp; imageNormal, <span class="keyword">const</span> <a class="code" href="classImage.html">Image</a>&amp; imageDown) noexcept;</div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; <span class="keyword">explicit</span> <a class="code" href="classImageSwitch.html">ImageSwitch</a>(<span class="keyword">const</span> <a class="code" href="classImageSwitch.html">ImageSwitch</a>&amp; imageSwitch) noexcept;</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; <a class="code" href="classImageSwitch.html">ImageSwitch</a>&amp; operator=(<span class="keyword">const</span> <a class="code" href="classImageSwitch.html">ImageSwitch</a>&amp; imageSwitch) noexcept;</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <span class="keywordtype">bool</span> isDown() const noexcept;</div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <span class="keywordtype">void</span> setDown(<span class="keywordtype">bool</span> down) noexcept;</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; <span class="keywordtype">void</span> setCallback(<a class="code" href="classImageSwitch_1_1Callback.html">Callback</a>* callback) noexcept;</div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;protected:</div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classImageSwitch.html#a45cdf75bf08adf50742150f3d2029f76">onDisplay</a>() override;</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classImageSwitch.html#aa2371a540211636f96ac3a3a161ee563">onMouse</a>(const <a class="code" href="structWidget_1_1MouseEvent.html">MouseEvent</a>&amp;) override;</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;private:</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <a class="code" href="classImage.html">Image</a> fImageNormal;</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <a class="code" href="classImage.html">Image</a> fImageDown;</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="keywordtype">bool</span> fIsDown;</div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <a class="code" href="classImageSwitch_1_1Callback.html">Callback</a>* fCallback;</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; DISTRHO_LEAK_DETECTOR(<a class="code" href="classImageSwitch.html">ImageSwitch</a>)</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;};</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;END_NAMESPACE_DGL</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="preprocessor">#endif // DGL_IMAGE_SWITCH_HPP_INCLUDED</span></div>
<div class="ttc" id="classWindow_html"><div class="ttname"><a href="classWindow.html">Window</a></div><div class="ttdef"><b>Definition:</b> Window.hpp:30</div></div>
<div class="ttc" id="classImageSwitch_html_a45cdf75bf08adf50742150f3d2029f76"><div class="ttname"><a href="classImageSwitch.html#a45cdf75bf08adf50742150f3d2029f76">ImageSwitch::onDisplay</a></div><div class="ttdeci">void onDisplay() override</div></div>
<div class="ttc" id="classImageSwitch_html_aa2371a540211636f96ac3a3a161ee563"><div class="ttname"><a href="classImageSwitch.html#aa2371a540211636f96ac3a3a161ee563">ImageSwitch::onMouse</a></div><div class="ttdeci">bool onMouse(const MouseEvent &amp;) override</div></div>
<div class="ttc" id="classWidget_html"><div class="ttname"><a href="classWidget.html">Widget</a></div><div class="ttdef"><b>Definition:</b> Widget.hpp:51</div></div>
<div class="ttc" id="structWidget_1_1MouseEvent_html"><div class="ttname"><a href="structWidget_1_1MouseEvent.html">Widget::MouseEvent</a></div><div class="ttdef"><b>Definition:</b> Widget.hpp:110</div></div>
<div class="ttc" id="classImage_html"><div class="ttname"><a href="classImage.html">Image</a></div><div class="ttdef"><b>Definition:</b> Image.hpp:38</div></div>
<div class="ttc" id="classImageSwitch_1_1Callback_html"><div class="ttname"><a href="classImageSwitch_1_1Callback.html">ImageSwitch::Callback</a></div><div class="ttdef"><b>Definition:</b> ImageSwitch.hpp:30</div></div>
<div class="ttc" id="classImageSwitch_html"><div class="ttname"><a href="classImageSwitch.html">ImageSwitch</a></div><div class="ttdef"><b>Definition:</b> ImageSwitch.hpp:27</div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 260
- 0
Image_8hpp_source.html View File

@@ -0,0 +1,260 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: dgl/Image.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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</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>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_99893ac99dd47c2a73745483a12a725f.html">dgl</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">Image.hpp</div> </div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> * DISTRHO Plugin Framework (DPF)</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright (C) 2012-2014 Filipe Coelho &lt;falktx@falktx.com&gt;</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * Permission to use, copy, modify, and/or distribute this software for any purpose with</span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * or without fee is hereby granted, provided that the above copyright notice and this</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * permission notice appear in all copies.</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * THE SOFTWARE IS PROVIDED &quot;AS IS&quot; AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> */</span></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"> 17</span>&#160;<span class="preprocessor">#ifndef DGL_IMAGE_HPP_INCLUDED</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="preprocessor">#define DGL_IMAGE_HPP_INCLUDED</span></div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;</div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="preprocessor">#include &quot;Geometry.hpp&quot;</span></div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;</div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;START_NAMESPACE_DGL</div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;</div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment">/**</span></div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> Base DGL Image class.</span></div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> This is an Image class that handles raw image data in pixels.</span></div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> You can init the image data on the contructor or later on by calling loadFromMemory().</span></div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> To generate raw data useful for this class see the utils/png2rgba.py script.</span></div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> Be careful when using a PNG without alpha channel, for those the format is &#39;GL_BGR&#39;</span></div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="comment"> instead of the default &#39;GL_BGRA&#39;.</span></div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="comment"> Images are drawn on screen via 2D textures.</span></div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00038"></a><span class="lineno"><a class="line" href="classImage.html"> 38</a></span>&#160;<span class="keyword">class </span><a class="code" href="classImage.html">Image</a></div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;{</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="keyword">public</span>:<span class="comment"></span></div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment"> Constructor for a null Image.</span></div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <a class="code" href="classImage.html#a58edd1c45b4faeb5f789b0d036d02313">Image</a>();</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment"> Constructor using raw image data.</span></div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="comment"> @note: @a rawData must remain valid for the lifetime of this Image.</span></div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <a class="code" href="classImage.html#a58edd1c45b4faeb5f789b0d036d02313">Image</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keyword">const</span> rawData, <span class="keyword">const</span> uint width, <span class="keyword">const</span> uint height, <span class="keyword">const</span> GLenum format = GL_BGRA, <span class="keyword">const</span> GLenum type = GL_UNSIGNED_BYTE);</div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="comment"> Constructor using raw image data.</span></div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="comment"> @note: @a rawData must remain valid for the lifetime of this Image.</span></div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <a class="code" href="classImage.html#a58edd1c45b4faeb5f789b0d036d02313">Image</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keyword">const</span> rawData, <span class="keyword">const</span> <a class="code" href="classSize.html">Size&lt;uint&gt;</a>&amp; size, <span class="keyword">const</span> GLenum format = GL_BGRA, <span class="keyword">const</span> GLenum type = GL_UNSIGNED_BYTE);</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="comment"> Constructor using another image data.</span></div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <a class="code" href="classImage.html#a58edd1c45b4faeb5f789b0d036d02313">Image</a>(<span class="keyword">const</span> <a class="code" href="classImage.html">Image</a>&amp; image);</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="comment"> Destructor.</span></div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <a class="code" href="classImage.html#a0294f63700543e11c0f0da85601c7ae5">~Image</a>();</div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="comment"> Load image data from memory.</span></div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="comment"> @note: @a rawData must remain valid for the lifetime of this Image.</span></div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classImage.html#a097350feb2b30fd9289c346039298394">loadFromMemory</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keyword">const</span> rawData, <span class="keyword">const</span> uint width, <span class="keyword">const</span> uint height, <span class="keyword">const</span> GLenum format = GL_BGRA, <span class="keyword">const</span> GLenum type = GL_UNSIGNED_BYTE) noexcept;</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="comment"> Load image data from memory.</span></div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="comment"> @note: @a rawData must remain valid for the lifetime of this Image.</span></div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classImage.html#a097350feb2b30fd9289c346039298394">loadFromMemory</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keyword">const</span> rawData, <span class="keyword">const</span> <a class="code" href="classSize.html">Size&lt;uint&gt;</a>&amp; size, <span class="keyword">const</span> GLenum format = GL_BGRA, <span class="keyword">const</span> GLenum type = GL_UNSIGNED_BYTE) noexcept;</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="comment"> Check if this image is valid.</span></div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classImage.html#a761214d2fa016e3e793b5a2d6b8b85ec">isValid</a>() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="comment"> Get width.</span></div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; uint <a class="code" href="classImage.html#a695d30afad2b73bc0e4208a94d052aea">getWidth</a>() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="comment"> Get height.</span></div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; uint <a class="code" href="classImage.html#a464a18561e9d49b9af42f007113d55f6">getHeight</a>() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;<span class="comment"> Get size.</span></div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="keyword">const</span> <a class="code" href="classSize.html">Size&lt;uint&gt;</a>&amp; <a class="code" href="classImage.html#a86b31865bfa07b98b61f503699f5c5d1">getSize</a>() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;<span class="comment"> Get the raw image data.</span></div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classImage.html#a638e0d75e9dff587f028639aaae8981b">getRawData</a>() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<span class="comment"> Get the image format.</span></div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; GLenum <a class="code" href="classImage.html#ac02e8bb7bfcc4adefc1f00557cc40e86">getFormat</a>() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;<span class="comment"> Get the image type.</span></div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; GLenum <a class="code" href="classImage.html#aafdd618cccc80f83a438b0c335de6205">getType</a>() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;<span class="comment"> Draw this image at (0, 0) point.</span></div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classImage.html#ae1e16dcef3072e4e49ec2887a9c1245a">draw</a>();</div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;<span class="comment"> Draw this image at (x, y) point.</span></div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classImage.html#ab63094dc07e6d62624827bca904b5cdd">drawAt</a>(<span class="keyword">const</span> <span class="keywordtype">int</span> x, <span class="keyword">const</span> <span class="keywordtype">int</span> y);</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;<span class="comment"> Draw this image at position @a pos.</span></div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classImage.html#ab63094dc07e6d62624827bca904b5cdd">drawAt</a>(<span class="keyword">const</span> <a class="code" href="classPoint.html">Point&lt;int&gt;</a>&amp; pos);</div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <a class="code" href="classImage.html">Image</a>&amp; operator=(<span class="keyword">const</span> <a class="code" href="classImage.html">Image</a>&amp; image) noexcept;</div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> <a class="code" href="classImage.html">Image</a>&amp; image) <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> <a class="code" href="classImage.html">Image</a>&amp; image) <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;</div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span>* fRawData;</div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <a class="code" href="classSize.html">Size&lt;uint&gt;</a> fSize;</div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; GLenum fFormat;</div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; GLenum fType;</div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; GLuint fTextureId;</div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <span class="keywordtype">bool</span> fIsReady;</div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;};</div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;</div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;</div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;END_NAMESPACE_DGL</div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;</div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;<span class="preprocessor">#endif // DGL_IMAGE_HPP_INCLUDED</span></div>
<div class="ttc" id="classImage_html_aafdd618cccc80f83a438b0c335de6205"><div class="ttname"><a href="classImage.html#aafdd618cccc80f83a438b0c335de6205">Image::getType</a></div><div class="ttdeci">GLenum getType() const noexcept</div></div>
<div class="ttc" id="classImage_html_a0294f63700543e11c0f0da85601c7ae5"><div class="ttname"><a href="classImage.html#a0294f63700543e11c0f0da85601c7ae5">Image::~Image</a></div><div class="ttdeci">~Image()</div></div>
<div class="ttc" id="classPoint_html"><div class="ttname"><a href="classPoint.html">Point&lt; int &gt;</a></div></div>
<div class="ttc" id="classSize_html"><div class="ttname"><a href="classSize.html">Size&lt; uint &gt;</a></div></div>
<div class="ttc" id="classImage_html_a695d30afad2b73bc0e4208a94d052aea"><div class="ttname"><a href="classImage.html#a695d30afad2b73bc0e4208a94d052aea">Image::getWidth</a></div><div class="ttdeci">uint getWidth() const noexcept</div></div>
<div class="ttc" id="classImage_html_ab63094dc07e6d62624827bca904b5cdd"><div class="ttname"><a href="classImage.html#ab63094dc07e6d62624827bca904b5cdd">Image::drawAt</a></div><div class="ttdeci">void drawAt(const int x, const int y)</div></div>
<div class="ttc" id="classImage_html_ae1e16dcef3072e4e49ec2887a9c1245a"><div class="ttname"><a href="classImage.html#ae1e16dcef3072e4e49ec2887a9c1245a">Image::draw</a></div><div class="ttdeci">void draw()</div></div>
<div class="ttc" id="classImage_html_a097350feb2b30fd9289c346039298394"><div class="ttname"><a href="classImage.html#a097350feb2b30fd9289c346039298394">Image::loadFromMemory</a></div><div class="ttdeci">void loadFromMemory(const char *const rawData, const uint width, const uint height, const GLenum format=GL_BGRA, const GLenum type=GL_UNSIGNED_BYTE) noexcept</div></div>
<div class="ttc" id="classImage_html_a638e0d75e9dff587f028639aaae8981b"><div class="ttname"><a href="classImage.html#a638e0d75e9dff587f028639aaae8981b">Image::getRawData</a></div><div class="ttdeci">const char * getRawData() const noexcept</div></div>
<div class="ttc" id="classImage_html"><div class="ttname"><a href="classImage.html">Image</a></div><div class="ttdef"><b>Definition:</b> Image.hpp:38</div></div>
<div class="ttc" id="classImage_html_a58edd1c45b4faeb5f789b0d036d02313"><div class="ttname"><a href="classImage.html#a58edd1c45b4faeb5f789b0d036d02313">Image::Image</a></div><div class="ttdeci">Image()</div></div>
<div class="ttc" id="classImage_html_ac02e8bb7bfcc4adefc1f00557cc40e86"><div class="ttname"><a href="classImage.html#ac02e8bb7bfcc4adefc1f00557cc40e86">Image::getFormat</a></div><div class="ttdeci">GLenum getFormat() const noexcept</div></div>
<div class="ttc" id="classImage_html_a761214d2fa016e3e793b5a2d6b8b85ec"><div class="ttname"><a href="classImage.html#a761214d2fa016e3e793b5a2d6b8b85ec">Image::isValid</a></div><div class="ttdeci">bool isValid() const noexcept</div></div>
<div class="ttc" id="classImage_html_a86b31865bfa07b98b61f503699f5c5d1"><div class="ttname"><a href="classImage.html#a86b31865bfa07b98b61f503699f5c5d1">Image::getSize</a></div><div class="ttdeci">const Size&lt; uint &gt; &amp; getSize() const noexcept</div></div>
<div class="ttc" id="classImage_html_a464a18561e9d49b9af42f007113d55f6"><div class="ttname"><a href="classImage.html#a464a18561e9d49b9af42f007113d55f6">Image::getHeight</a></div><div class="ttdeci">uint getHeight() const noexcept</div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 993
- 0
NanoVG_8hpp_source.html View File

@@ -0,0 +1,993 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: dgl/NanoVG.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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</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>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_99893ac99dd47c2a73745483a12a725f.html">dgl</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">NanoVG.hpp</div> </div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> * DISTRHO Plugin Framework (DPF)</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright (C) 2012-2014 Filipe Coelho &lt;falktx@falktx.com&gt;</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * Permission to use, copy, modify, and/or distribute this software for any purpose with</span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * or without fee is hereby granted, provided that the above copyright notice and this</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * permission notice appear in all copies.</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * THE SOFTWARE IS PROVIDED &quot;AS IS&quot; AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> */</span></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"> 17</span>&#160;<span class="preprocessor">#ifndef DGL_NANO_WIDGET_HPP_INCLUDED</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="preprocessor">#define DGL_NANO_WIDGET_HPP_INCLUDED</span></div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;</div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="preprocessor">#include &quot;Color.hpp&quot;</span></div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="preprocessor">#include &quot;Widget.hpp&quot;</span></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"> 23</span>&#160;<span class="keyword">struct </span>NVGcontext;</div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="keyword">struct </span>NVGpaint;</div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;</div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;START_NAMESPACE_DGL</div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;</div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment">// NanoImage</span></div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment">/**</span></div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> NanoVG Image class.</span></div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="comment"> This implements NanoVG images as a C++ class where deletion is handled automatically.</span></div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="comment"> Images need to be created within a NanoVG or NanoWidget class.</span></div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00037"></a><span class="lineno"><a class="line" href="classNanoImage.html"> 37</a></span>&#160;<span class="keyword">class </span><a class="code" href="classNanoImage.html">NanoImage</a></div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;{</div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="keyword">public</span>:<span class="comment"></span></div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment"> Destructor.</span></div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <a class="code" href="classNanoImage.html#a8915fb5eae1a0180edd3f5babf6a0091">~NanoImage</a>();</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="comment"> Get size.</span></div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <a class="code" href="classSize.html">Size&lt;uint&gt;</a> <a class="code" href="classNanoImage.html#a979cc37d8a10dc0642fcea2d64d3b58c">getSize</a>() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="comment"> Update image data.</span></div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoImage.html#a7d7ef1338879e65b06230ddc45e5dcdc">updateImage</a>(<span class="keyword">const</span> uchar* <span class="keyword">const</span> data);</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="keyword">protected</span>:<span class="comment"></span></div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="comment"> Constructors are protected.</span></div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="comment"> NanoImages must be created within a NanoVG or NanoWidget class.</span></div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <a class="code" href="classNanoImage.html#ae2098db57c51c41247a4013eb1e0216c">NanoImage</a>(NVGcontext* <span class="keyword">const</span> context, <span class="keyword">const</span> <span class="keywordtype">int</span> imageId) noexcept;</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; NVGcontext* fContext;</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <span class="keywordtype">int</span> fImageId;</div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <a class="code" href="classSize.html">Size&lt;uint&gt;</a> fSize;</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classNanoVG.html">NanoVG</a>;</div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;</div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keywordtype">void</span> _updateSize();</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; DISTRHO_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR(<a class="code" href="classNanoImage.html">NanoImage</a>)</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;};</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="comment">// NanoVG</span></div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="comment">/**</span></div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="comment"> NanoVG class.</span></div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="comment"> This class exposes the NanoVG drawing API.</span></div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="comment"> All calls should be wrapped in beginFrame() and endFrame().</span></div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="comment"> @section State Handling</span></div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="comment"> NanoVG contains state which represents how paths will be rendered.</span></div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="comment"> The state contains transform, fill and stroke styles, text and font styles, and scissor clipping.</span></div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="comment"> @section Render styles</span></div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="comment"> Fill and stroke render style can be either a solid color or a paint which is a gradient or a pattern.</span></div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="comment"> Solid color is simply defined as a color value, different kinds of paints can be created</span></div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="comment"> using linearGradient(), boxGradient(), radialGradient() and imagePattern().</span></div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="comment"> Current render style can be saved and restored using save() and restore().</span></div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="comment"> @section Transforms</span></div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;<span class="comment"> The paths, gradients, patterns and scissor region are transformed by an transformation</span></div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<span class="comment"> matrix at the time when they are passed to the API.</span></div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;<span class="comment"> The current transformation matrix is a affine matrix:</span></div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;<span class="comment"> [sx kx tx]</span></div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;<span class="comment"> [ky sy ty]</span></div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;<span class="comment"> [ 0 0 1]</span></div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;<span class="comment"> Where: sx,sy define scaling, kx,ky skewing, and tx,ty translation.</span></div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;<span class="comment"> The last row is assumed to be 0,0,1 and is not stored.</span></div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="comment"> Apart from resetTransform(), each transformation function first creates</span></div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="comment"> specific transformation matrix and pre-multiplies the current transformation by it.</span></div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<span class="comment"> Current coordinate system (transformation) can be saved and restored using save() and restore().</span></div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;<span class="comment"> @section Images</span></div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;<span class="comment"> NanoVG allows you to load jpg, png, psd, tga, pic and gif files to be used for rendering.</span></div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;<span class="comment"> In addition you can upload your own image. The image loading is provided by stb_image.</span></div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;<span class="comment"> @section Paints</span></div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;<span class="comment"> NanoVG supports four types of paints: linear gradient, box gradient, radial gradient and image pattern.</span></div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;<span class="comment"> These can be used as paints for strokes and fills.</span></div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;<span class="comment"> @section Scissoring</span></div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;<span class="comment"> Scissoring allows you to clip the rendering into a rectangle. This is useful for varius</span></div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;<span class="comment"> user interface cases like rendering a text edit or a timeline.</span></div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;<span class="comment"> @section Paths</span></div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;<span class="comment"> Drawing a new shape starts with beginPath(), it clears all the currently defined paths.</span></div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;<span class="comment"> Then you define one or more paths and sub-paths which describe the shape. The are functions</span></div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;<span class="comment"> to draw common shapes like rectangles and circles, and lower level step-by-step functions,</span></div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;<span class="comment"> which allow to define a path curve by curve.</span></div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;<span class="comment"> NanoVG uses even-odd fill rule to draw the shapes. Solid shapes should have counter clockwise</span></div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;<span class="comment"> winding and holes should have counter clockwise order. To specify winding of a path you can</span></div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;<span class="comment"> call pathWinding(). This is useful especially for the common shapes, which are drawn CCW.</span></div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;<span class="comment"> Finally you can fill the path using current fill style by calling fill(), and stroke it</span></div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;<span class="comment"> with current stroke style by calling stroke().</span></div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;<span class="comment"> The curve segments and sub-paths are transformed by the current transform.</span></div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;<span class="comment"> @section Text</span></div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;<span class="comment"> NanoVG allows you to load .ttf files and use the font to render text.</span></div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;<span class="comment"> The appearance of the text can be defined by setting the current text style</span></div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;<span class="comment"> and by specifying the fill color. Common text and font settings such as</span></div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;<span class="comment"> font size, letter spacing and text align are supported. Font blur allows you</span></div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;<span class="comment"> to create simple text effects such as drop shadows.</span></div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;<span class="comment"> At render time the font face can be set based on the font handles or name.</span></div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;<span class="comment"> Font measure functions return values in local space, the calculations are</span></div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;<span class="comment"> carried in the same resolution as the final rendering. This is done because</span></div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;<span class="comment"> the text glyph positions are snapped to the nearest pixels sharp rendering.</span></div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;<span class="comment"> The local space means that values are not rotated or scale as per the current</span></div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;<span class="comment"> transformation. For example if you set font size to 12, which would mean that</span></div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;<span class="comment"> line height is 16, then regardless of the current scaling and rotation, the</span></div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;<span class="comment"> returned line height is always 16. Some measures may vary because of the scaling</span></div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;<span class="comment"> since aforementioned pixel snapping.</span></div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;<span class="comment"> While this may sound a little odd, the setup allows you to always render the</span></div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;<span class="comment"> same way regardless of scaling. i.e. following works regardless of scaling:</span></div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;<span class="comment"> @code</span></div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;<span class="comment"> const char* txt = &quot;Text me up.&quot;;</span></div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;<span class="comment"> textBounds(vg, x,y, txt, NULL, bounds);</span></div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;<span class="comment"> beginPath(vg);</span></div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;<span class="comment"> roundedRect(vg, bounds[0], bounds[1], bounds[2]-bounds[0], bounds[3]-bounds[1]);</span></div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;<span class="comment"> fill(vg);</span></div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;<span class="comment"> @endcode</span></div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;<span class="comment"> Note: currently only solid color fill is supported for text.</span></div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00168"></a><span class="lineno"><a class="line" href="classNanoVG.html"> 168</a></span>&#160;<span class="keyword">class </span><a class="code" href="classNanoVG.html">NanoVG</a></div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;{</div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="keyword">enum</span> Align {</div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <span class="comment">// Horizontal align</span></div>
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; ALIGN_LEFT = 1 &lt;&lt; 0, <span class="comment">// Align horizontally to left (default).</span></div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; ALIGN_CENTER = 1 &lt;&lt; 1, <span class="comment">// Align horizontally to center.</span></div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; ALIGN_RIGHT = 1 &lt;&lt; 2, <span class="comment">// Align horizontally to right.</span></div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <span class="comment">// Vertical align</span></div>
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; ALIGN_TOP = 1 &lt;&lt; 3, <span class="comment">// Align vertically to top.</span></div>
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; ALIGN_MIDDLE = 1 &lt;&lt; 4, <span class="comment">// Align vertically to middle.</span></div>
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; ALIGN_BOTTOM = 1 &lt;&lt; 5, <span class="comment">// Align vertically to bottom.</span></div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; ALIGN_BASELINE = 1 &lt;&lt; 6 <span class="comment">// Align vertically to baseline (default).</span></div>
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; };</div>
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;</div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <span class="keyword">enum</span> Alpha {</div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; STRAIGHT_ALPHA,</div>
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; PREMULTIPLIED_ALPHA</div>
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; };</div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;</div>
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; <span class="keyword">enum</span> LineCap {</div>
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; BUTT,</div>
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; ROUND,</div>
<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; SQUARE,</div>
<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; BEVEL,</div>
<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; MITER</div>
<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; };</div>
<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;</div>
<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; <span class="keyword">enum</span> PatternRepeat {</div>
<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; REPEAT_NONE = 0x0, <span class="comment">// No repeat</span></div>
<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; REPEAT_X = 0x1, <span class="comment">// Repeat in X direction</span></div>
<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; REPEAT_Y = 0x2 <span class="comment">// Repeat in Y direction</span></div>
<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; };</div>
<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160;</div>
<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; <span class="keyword">enum</span> Solidity {</div>
<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; SOLID = 1, <span class="comment">// CCW</span></div>
<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; HOLE = 2 <span class="comment">// CW</span></div>
<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; };</div>
<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160;</div>
<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; <span class="keyword">enum</span> Winding {</div>
<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; CCW = 1, <span class="comment">// Winding for solid shapes</span></div>
<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; CW = 2 <span class="comment">// Winding for holes</span></div>
<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; };</div>
<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160;</div>
<div class="line"><a name="l00212"></a><span class="lineno"><a class="line" href="structNanoVG_1_1Paint.html"> 212</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structNanoVG_1_1Paint.html">Paint</a> {</div>
<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; <span class="keywordtype">float</span> xform[6];</div>
<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; <span class="keywordtype">float</span> extent[2];</div>
<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; <span class="keywordtype">float</span> radius;</div>
<div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; <span class="keywordtype">float</span> feather;</div>
<div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; <a class="code" href="structColor.html">Color</a> innerColor;</div>
<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; <a class="code" href="structColor.html">Color</a> outerColor;</div>
<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; <span class="keywordtype">int</span> imageId;</div>
<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; PatternRepeat repeat;</div>
<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160;</div>
<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; <a class="code" href="structNanoVG_1_1Paint.html">Paint</a>() noexcept;</div>
<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160;<span class="comment"> @internal</span></div>
<div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; <a class="code" href="structNanoVG_1_1Paint.html">Paint</a>(<span class="keyword">const</span> NVGpaint&amp;) noexcept;</div>
<div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; <span class="keyword">operator</span> NVGpaint() <span class="keyword">const</span> noexcept;</div>
<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; };</div>
<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160;</div>
<div class="line"><a name="l00231"></a><span class="lineno"><a class="line" href="structNanoVG_1_1GlyphPosition.html"> 231</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structNanoVG_1_1GlyphPosition.html">GlyphPosition</a> {</div>
<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span>* str; <span class="comment">// Position of the glyph in the input string.</span></div>
<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; <span class="keywordtype">float</span> x; <span class="comment">// The x-coordinate of the logical glyph position.</span></div>
<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; <span class="keywordtype">float</span> minx, maxx; <span class="comment">// The bounds of the glyph shape.</span></div>
<div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; };</div>
<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160;</div>
<div class="line"><a name="l00237"></a><span class="lineno"><a class="line" href="structNanoVG_1_1TextRow.html"> 237</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structNanoVG_1_1TextRow.html">TextRow</a> {</div>
<div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span>* start; <span class="comment">// Pointer to the input text where the row starts.</span></div>
<div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span>* end; <span class="comment">// Pointer to the input text where the row ends (one past the last character).</span></div>
<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span>* next; <span class="comment">// Pointer to the beginning of the next row.</span></div>
<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; <span class="keywordtype">float</span> width; <span class="comment">// Logical width of the row.</span></div>
<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; <span class="keywordtype">float</span> minx, maxx; <span class="comment">// Actual bounds of the row. Logical with and bounds can differ because of kerning and some parts over extending.</span></div>
<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; };</div>
<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160;</div>
<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; <span class="keyword">typedef</span> <span class="keywordtype">int</span> FontId;</div>
<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160;<span class="comment"> Constructor.</span></div>
<div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160;<span class="comment"> Uses 512x512 as default atlas size.</span></div>
<div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; <a class="code" href="classNanoVG.html#a1d6c677037e336e11baa5f32a4a11922">NanoVG</a>();</div>
<div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160;<span class="comment"> Constructor using custom text atlas size.</span></div>
<div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; <a class="code" href="classNanoVG.html#a1d6c677037e336e11baa5f32a4a11922">NanoVG</a>(<span class="keyword">const</span> <span class="keywordtype">int</span> textAtlasWidth, <span class="keyword">const</span> <span class="keywordtype">int</span> textAtlasHeight);</div>
<div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160;<span class="comment"> Destructor.</span></div>
<div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; <span class="keyword">virtual</span> <a class="code" href="classNanoVG.html#a3e05169f4e66e811537adaea17e4bb3f">~NanoVG</a>();</div>
<div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160;<span class="comment"> Get the NanoVG context.</span></div>
<div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160;<span class="comment"> You should not need this under normal circumstances.</span></div>
<div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00267"></a><span class="lineno"><a class="line" href="classNanoVG.html#a8b6f8caad8acb883fadc06a606ccade7"> 267</a></span>&#160; NVGcontext* <a class="code" href="classNanoVG.html#a8b6f8caad8acb883fadc06a606ccade7">getContext</a>() const noexcept</div>
<div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; {</div>
<div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; <span class="keywordflow">return</span> fContext;</div>
<div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; }</div>
<div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160;<span class="comment"> Begin drawing a new frame.</span></div>
<div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160;<span class="comment"> @param withAlha Controls if drawing the shapes to the render target should be done using straight or pre-multiplied alpha.</span></div>
<div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#a202e92a01a9b78d469c77ed659f12c8b">beginFrame</a>(<span class="keyword">const</span> uint width, <span class="keyword">const</span> uint height, <span class="keyword">const</span> <span class="keywordtype">float</span> scaleFactor = 1.0f, <span class="keyword">const</span> Alpha alpha = PREMULTIPLIED_ALPHA);</div>
<div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160;<span class="comment"> Begin drawing a new frame inside a widget.</span></div>
<div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#a202e92a01a9b78d469c77ed659f12c8b">beginFrame</a>(<a class="code" href="classWidget.html">Widget</a>* <span class="keyword">const</span> widget);</div>
<div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160;<span class="comment"> Ends drawing flushing remaining render state.</span></div>
<div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#a432d8c79b21f61eb1010a75cc13ee711">endFrame</a>();</div>
<div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160;</div>
<div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; <span class="comment">/* --------------------------------------------------------------------</span></div>
<div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160;<span class="comment"> * State Handling */</span></div>
<div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160;<span class="comment"> Pushes and saves the current render state into a state stack.</span></div>
<div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160;<span class="comment"> A matching restore() must be used to restore the state.</span></div>
<div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#a05fd441d579c42c76d786bd4a7b437af">save</a>();</div>
<div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160;<span class="comment"> Pops and restores current render state.</span></div>
<div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#aa1da11cb97d4f6718ffe8b4622684c3b">restore</a>();</div>
<div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160;<span class="comment"> Resets current render state to default values. Does not affect the render state stack.</span></div>
<div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#ad5ddb240794b35105eeadd1534f0911b">reset</a>();</div>
<div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160;</div>
<div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; <span class="comment">/* --------------------------------------------------------------------</span></div>
<div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160;<span class="comment"> * Render styles */</span></div>
<div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160;<span class="comment"> Sets current stroke style to a solid color.</span></div>
<div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#acefc70128644fb8ee5abe6dc04d4f710">strokeColor</a>(<span class="keyword">const</span> <a class="code" href="structColor.html">Color</a>&amp; color);</div>
<div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160;<span class="comment"> Sets current stroke style to a solid color, made from red, green, blue and alpha numeric values.</span></div>
<div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160;<span class="comment"> Values must be in [0..255] range.</span></div>
<div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#acefc70128644fb8ee5abe6dc04d4f710">strokeColor</a>(<span class="keyword">const</span> <span class="keywordtype">int</span> red, <span class="keyword">const</span> <span class="keywordtype">int</span> green, <span class="keyword">const</span> <span class="keywordtype">int</span> blue, <span class="keyword">const</span> <span class="keywordtype">int</span> alpha = 255);</div>
<div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160;<span class="comment"> Sets current stroke style to a solid color, made from red, green, blue and alpha numeric values.</span></div>
<div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160;<span class="comment"> Values must in [0..1] range.</span></div>
<div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#acefc70128644fb8ee5abe6dc04d4f710">strokeColor</a>(<span class="keyword">const</span> <span class="keywordtype">float</span> red, <span class="keyword">const</span> <span class="keywordtype">float</span> green, <span class="keyword">const</span> <span class="keywordtype">float</span> blue, <span class="keyword">const</span> <span class="keywordtype">float</span> alpha = 1.0f);</div>
<div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160;<span class="comment"> Sets current stroke style to a paint, which can be a one of the gradients or a pattern.</span></div>
<div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#a8d00b35e0ab5c428af120cc78ff32804">strokePaint</a>(<span class="keyword">const</span> Paint&amp; paint);</div>
<div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160;<span class="comment"> Sets current fill style to a solid color.</span></div>
<div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#a9a802d6e276195d13bc33d0f4b39cff9">fillColor</a>(<span class="keyword">const</span> <a class="code" href="structColor.html">Color</a>&amp; color);</div>
<div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160;<span class="comment"> Sets current fill style to a solid color, made from red, green, blue and alpha numeric values.</span></div>
<div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160;<span class="comment"> Values must be in [0..255] range.</span></div>
<div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#a9a802d6e276195d13bc33d0f4b39cff9">fillColor</a>(<span class="keyword">const</span> <span class="keywordtype">int</span> red, <span class="keyword">const</span> <span class="keywordtype">int</span> green, <span class="keyword">const</span> <span class="keywordtype">int</span> blue, <span class="keyword">const</span> <span class="keywordtype">int</span> alpha = 255);</div>
<div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160;<span class="comment"> Sets current fill style to a solid color, made from red, green, blue and alpha numeric values.</span></div>
<div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160;<span class="comment"> Values must in [0..1] range.</span></div>
<div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#a9a802d6e276195d13bc33d0f4b39cff9">fillColor</a>(<span class="keyword">const</span> <span class="keywordtype">float</span> red, <span class="keyword">const</span> <span class="keywordtype">float</span> green, <span class="keyword">const</span> <span class="keywordtype">float</span> blue, <span class="keyword">const</span> <span class="keywordtype">float</span> alpha = 1.0f);</div>
<div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160;<span class="comment"> Sets current fill style to a paint, which can be a one of the gradients or a pattern.</span></div>
<div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#aca56cc6d1c2455fc9f750cce4dc132d0">fillPaint</a>(<span class="keyword">const</span> Paint&amp; paint);</div>
<div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160;<span class="comment"> Sets the miter limit of the stroke style.</span></div>
<div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160;<span class="comment"> Miter limit controls when a sharp corner is beveled.</span></div>
<div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#a8a5ade44d39d21f28dcd02d27da62d14">miterLimit</a>(<span class="keywordtype">float</span> limit);</div>
<div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160;<span class="comment"> Sets the stroke width of the stroke style.</span></div>
<div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#a373190894070313e8d321b2af0bbab58">strokeWidth</a>(<span class="keywordtype">float</span> size);</div>
<div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160;<span class="comment"> Sets how the end of the line (cap) is drawn,</span></div>
<div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160;<span class="comment"> Can be one of: BUTT, ROUND, SQUARE.</span></div>
<div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#a95dfc697ae6fe9c8d525430c09f839d1">lineCap</a>(LineCap cap = BUTT);</div>
<div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160;<span class="comment"> Sets how sharp path corners are drawn.</span></div>
<div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160;<span class="comment"> Can be one of MITER, ROUND, BEVEL.</span></div>
<div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#a73767c9ade6a757bc6e1f4a2d45bdaeb">lineJoin</a>(LineCap join = MITER);</div>
<div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160;</div>
<div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; <span class="comment">/* --------------------------------------------------------------------</span></div>
<div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160;<span class="comment"> * Transforms */</span></div>
<div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160;<span class="comment"> Resets current transform to a identity matrix.</span></div>
<div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#aac35e4a0ce84c0f4bf8d881d1b8a5b34">resetTransform</a>();</div>
<div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160;<span class="comment"> Pre-multiplies current coordinate system by specified matrix.</span></div>
<div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160;<span class="comment"> The parameters are interpreted as matrix as follows:</span></div>
<div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160;<span class="comment"> [a c e]</span></div>
<div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160;<span class="comment"> [b d f]</span></div>
<div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160;<span class="comment"> [0 0 1]</span></div>
<div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#ad06096ade68bf78bcc256005cd6f2c45">transform</a>(<span class="keywordtype">float</span> a, <span class="keywordtype">float</span> b, <span class="keywordtype">float</span> c, <span class="keywordtype">float</span> d, <span class="keywordtype">float</span> e, <span class="keywordtype">float</span> f);</div>
<div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160;<span class="comment"> Translates current coordinate system.</span></div>
<div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#abc1d6466eb7fdc57a869ec7b9fdd6bdf">translate</a>(<span class="keywordtype">float</span> x, <span class="keywordtype">float</span> y);</div>
<div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160;<span class="comment"> Rotates current coordinate system. Angle is specified in radians.</span></div>
<div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#a13da8f469cd43117c19d8459c178b905">rotate</a>(<span class="keywordtype">float</span> angle);</div>
<div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160;<span class="comment"> Skews the current coordinate system along X axis. Angle is specified in radians.</span></div>
<div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#a4f45e3cf465060491e73427e5868573f">skewX</a>(<span class="keywordtype">float</span> angle);</div>
<div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160;<span class="comment"> Skews the current coordinate system along Y axis. Angle is specified in radians.</span></div>
<div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#a508c4fde6212c1b0598d9f8b32cba0f6">skewY</a>(<span class="keywordtype">float</span> angle);</div>
<div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160;<span class="comment"> Scales the current coordinate system.</span></div>
<div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#a76273b763fa9b84c4a86d37065accee7">scale</a>(<span class="keywordtype">float</span> x, <span class="keywordtype">float</span> y);</div>
<div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160;<span class="comment"> Stores the top part (a-f) of the current transformation matrix in to the specified buffer.</span></div>
<div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160;<span class="comment"> [a c e]</span></div>
<div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160;<span class="comment"> [b d f]</span></div>
<div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160;<span class="comment"> [0 0 1]</span></div>
<div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#ad51cefbcf8819d365205fa004a10b976">currentTransform</a>(<span class="keywordtype">float</span> xform[6]);</div>
<div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160;<span class="comment"> The following functions can be used to make calculations on 2x3 transformation matrices.</span></div>
<div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160;<span class="comment"> A 2x3 matrix is represented as float[6]. */</span></div>
<div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160;<span class="comment"> Sets the transform to identity matrix.</span></div>
<div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#a81c8b60a87be8a8d4a5efce8eeaf1915">transformIdentity</a>(<span class="keywordtype">float</span> dst[6]);</div>
<div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160;<span class="comment"> Sets the transform to translation matrix</span></div>
<div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#a022e3cdfa06f5bc9103b37dfa64adb2c">transformTranslate</a>(<span class="keywordtype">float</span> dst[6], <span class="keywordtype">float</span> tx, <span class="keywordtype">float</span> ty);</div>
<div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160;<span class="comment"> Sets the transform to scale matrix.</span></div>
<div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#a94c1f78baadff1d6c6a5a4d52dd770d7">transformScale</a>(<span class="keywordtype">float</span> dst[6], <span class="keywordtype">float</span> sx, <span class="keywordtype">float</span> sy);</div>
<div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160;<span class="comment"> Sets the transform to rotate matrix. Angle is specified in radians.</span></div>
<div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160; <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#a43e16d0f94dc0a49dae5128d69e75e3c">transformRotate</a>(<span class="keywordtype">float</span> dst[6], <span class="keywordtype">float</span> a);</div>
<div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160;<span class="comment"> Sets the transform to skew-x matrix. Angle is specified in radians.</span></div>
<div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160; <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#a178b6b9a8c755cda91ccba2b6239d279">transformSkewX</a>(<span class="keywordtype">float</span> dst[6], <span class="keywordtype">float</span> a);</div>
<div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160;<span class="comment"> Sets the transform to skew-y matrix. Angle is specified in radians.</span></div>
<div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#af23e7f6a6056e5efe72944fa68767704">transformSkewY</a>(<span class="keywordtype">float</span> dst[6], <span class="keywordtype">float</span> a);</div>
<div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160;<span class="comment"> Sets the transform to the result of multiplication of two transforms, of A = A*B.</span></div>
<div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#a3ac9aade102afb3a4f84966f0727c6c6">transformMultiply</a>(<span class="keywordtype">float</span> dst[6], <span class="keyword">const</span> <span class="keywordtype">float</span> src[6]);</div>
<div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160;<span class="comment"> Sets the transform to the result of multiplication of two transforms, of A = B*A.</span></div>
<div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160; <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#a1416fbff2a0ecada90b2d9852bfbaf42">transformPremultiply</a>(<span class="keywordtype">float</span> dst[6], <span class="keyword">const</span> <span class="keywordtype">float</span> src[6]);</div>
<div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160;<span class="comment"> Sets the destination to inverse of specified transform.</span></div>
<div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160;<span class="comment"> Returns 1 if the inverse could be calculated, else 0.</span></div>
<div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160; <span class="keyword">static</span> <span class="keywordtype">int</span> <a class="code" href="classNanoVG.html#ac5692f82bcac4858f44d9fd0df287cad">transformInverse</a>(<span class="keywordtype">float</span> dst[6], <span class="keyword">const</span> <span class="keywordtype">float</span> src[6]);</div>
<div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160;<span class="comment"> Transform a point by given transform.</span></div>
<div class="line"><a name="l00479"></a><span class="lineno"> 479</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00480"></a><span class="lineno"> 480</span>&#160; <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#ae2e49763ab7f503016c0dede0dbfd3cc">transformPoint</a>(<span class="keywordtype">float</span>&amp; dstx, <span class="keywordtype">float</span>&amp; dsty, <span class="keyword">const</span> <span class="keywordtype">float</span> xform[6], <span class="keywordtype">float</span> srcx, <span class="keywordtype">float</span> srcy);</div>
<div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00482"></a><span class="lineno"> 482</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00483"></a><span class="lineno"> 483</span>&#160;<span class="comment"> Convert degrees to radians.</span></div>
<div class="line"><a name="l00484"></a><span class="lineno"> 484</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160; <span class="keyword">static</span> <span class="keywordtype">float</span> <a class="code" href="classNanoVG.html#ae3913bdf0efc2f5504422f558dca2c45">degToRad</a>(<span class="keywordtype">float</span> deg);</div>
<div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160;<span class="comment"> Convert radians to degrees.</span></div>
<div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160; <span class="keyword">static</span> <span class="keywordtype">float</span> <a class="code" href="classNanoVG.html#a175f4c41e0d89ae5d8bdb65e5580c637">radToDeg</a>(<span class="keywordtype">float</span> rad);</div>
<div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160;</div>
<div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160; <span class="comment">/* --------------------------------------------------------------------</span></div>
<div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160;<span class="comment"> * Images */</span></div>
<div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00495"></a><span class="lineno"> 495</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00496"></a><span class="lineno"> 496</span>&#160;<span class="comment"> Creates image by loading it from the disk from specified file name.</span></div>
<div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160; <a class="code" href="classNanoImage.html">NanoImage</a>* <a class="code" href="classNanoVG.html#af7e33d8123baca23df22910791892874">createImage</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* filename);</div>
<div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160;<span class="comment"> Creates image by loading it from the specified chunk of memory.</span></div>
<div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160; <a class="code" href="classNanoImage.html">NanoImage</a>* <a class="code" href="classNanoVG.html#a78590d08cd1c6a69e0487034ece7ab53">createImageMem</a>(uchar* data, <span class="keywordtype">int</span> ndata);</div>
<div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00506"></a><span class="lineno"> 506</span>&#160;<span class="comment"> Creates image from specified image data.</span></div>
<div class="line"><a name="l00507"></a><span class="lineno"> 507</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00508"></a><span class="lineno"> 508</span>&#160; <a class="code" href="classNanoImage.html">NanoImage</a>* <a class="code" href="classNanoVG.html#a2c37ef18f5eaf0052a57e2dd89723f01">createImageRGBA</a>(uint w, uint h, <span class="keyword">const</span> uchar* data);</div>
<div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160;</div>
<div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160; <span class="comment">/* --------------------------------------------------------------------</span></div>
<div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160;<span class="comment"> * Paints */</span></div>
<div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160;<span class="comment"> Creates and returns a linear gradient. Parameters (sx,sy)-(ex,ey) specify the start and end coordinates</span></div>
<div class="line"><a name="l00515"></a><span class="lineno"> 515</span>&#160;<span class="comment"> of the linear gradient, icol specifies the start color and ocol the end color.</span></div>
<div class="line"><a name="l00516"></a><span class="lineno"> 516</span>&#160;<span class="comment"> The gradient is transformed by the current transform when it is passed to fillPaint() or strokePaint().</span></div>
<div class="line"><a name="l00517"></a><span class="lineno"> 517</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00518"></a><span class="lineno"> 518</span>&#160; Paint <a class="code" href="classNanoVG.html#aa74a49bb588beb28654565a07022a178">linearGradient</a>(<span class="keywordtype">float</span> sx, <span class="keywordtype">float</span> sy, <span class="keywordtype">float</span> ex, <span class="keywordtype">float</span> ey, <span class="keyword">const</span> <a class="code" href="structColor.html">Color</a>&amp; icol, <span class="keyword">const</span> <a class="code" href="structColor.html">Color</a>&amp; ocol);</div>
<div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00520"></a><span class="lineno"> 520</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00521"></a><span class="lineno"> 521</span>&#160;<span class="comment"> Creates and returns a box gradient. Box gradient is a feathered rounded rectangle, it is useful for rendering</span></div>
<div class="line"><a name="l00522"></a><span class="lineno"> 522</span>&#160;<span class="comment"> drop shadows or highlights for boxes. Parameters (x,y) define the top-left corner of the rectangle,</span></div>
<div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160;<span class="comment"> (w,h) define the size of the rectangle, r defines the corner radius, and f feather. Feather defines how blurry</span></div>
<div class="line"><a name="l00524"></a><span class="lineno"> 524</span>&#160;<span class="comment"> the border of the rectangle is. Parameter icol specifies the inner color and ocol the outer color of the gradient.</span></div>
<div class="line"><a name="l00525"></a><span class="lineno"> 525</span>&#160;<span class="comment"> The gradient is transformed by the current transform when it is passed to fillPaint() or strokePaint().</span></div>
<div class="line"><a name="l00526"></a><span class="lineno"> 526</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00527"></a><span class="lineno"> 527</span>&#160; Paint <a class="code" href="classNanoVG.html#a1496424cb5a9e40844ebb4d8dad83799">boxGradient</a>(<span class="keywordtype">float</span> x, <span class="keywordtype">float</span> y, <span class="keywordtype">float</span> w, <span class="keywordtype">float</span> h, <span class="keywordtype">float</span> r, <span class="keywordtype">float</span> f, <span class="keyword">const</span> <a class="code" href="structColor.html">Color</a>&amp; icol, <span class="keyword">const</span> <a class="code" href="structColor.html">Color</a>&amp; ocol);</div>
<div class="line"><a name="l00528"></a><span class="lineno"> 528</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00529"></a><span class="lineno"> 529</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00530"></a><span class="lineno"> 530</span>&#160;<span class="comment"> Creates and returns a radial gradient. Parameters (cx,cy) specify the center, inr and outr specify</span></div>
<div class="line"><a name="l00531"></a><span class="lineno"> 531</span>&#160;<span class="comment"> the inner and outer radius of the gradient, icol specifies the start color and ocol the end color.</span></div>
<div class="line"><a name="l00532"></a><span class="lineno"> 532</span>&#160;<span class="comment"> The gradient is transformed by the current transform when it is passed to fillPaint() or strokePaint().</span></div>
<div class="line"><a name="l00533"></a><span class="lineno"> 533</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00534"></a><span class="lineno"> 534</span>&#160; Paint <a class="code" href="classNanoVG.html#a19d27b1b3a22afe9a6d27f4f9f8bf167">radialGradient</a>(<span class="keywordtype">float</span> cx, <span class="keywordtype">float</span> cy, <span class="keywordtype">float</span> inr, <span class="keywordtype">float</span> outr, <span class="keyword">const</span> <a class="code" href="structColor.html">Color</a>&amp; icol, <span class="keyword">const</span> <a class="code" href="structColor.html">Color</a>&amp; ocol);</div>
<div class="line"><a name="l00535"></a><span class="lineno"> 535</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00536"></a><span class="lineno"> 536</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160;<span class="comment"> Creates and returns an image pattern. Parameters (ox,oy) specify the left-top location of the image pattern,</span></div>
<div class="line"><a name="l00538"></a><span class="lineno"> 538</span>&#160;<span class="comment"> (ex,ey) the size of one image, angle rotation around the top-left corner, image is handle to the image to render,</span></div>
<div class="line"><a name="l00539"></a><span class="lineno"> 539</span>&#160;<span class="comment"> and repeat tells if the image should be repeated across x or y.</span></div>
<div class="line"><a name="l00540"></a><span class="lineno"> 540</span>&#160;<span class="comment"> The gradient is transformed by the current transform when it is passed to fillPaint() or strokePaint().</span></div>
<div class="line"><a name="l00541"></a><span class="lineno"> 541</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00542"></a><span class="lineno"> 542</span>&#160; Paint <a class="code" href="classNanoVG.html#a51ad176349e0169478844f862942af20">imagePattern</a>(<span class="keywordtype">float</span> ox, <span class="keywordtype">float</span> oy, <span class="keywordtype">float</span> ex, <span class="keywordtype">float</span> ey, <span class="keywordtype">float</span> angle, <span class="keyword">const</span> <a class="code" href="classNanoImage.html">NanoImage</a>* image, PatternRepeat repeat);</div>
<div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160;</div>
<div class="line"><a name="l00544"></a><span class="lineno"> 544</span>&#160; <span class="comment">/* --------------------------------------------------------------------</span></div>
<div class="line"><a name="l00545"></a><span class="lineno"> 545</span>&#160;<span class="comment"> * Scissoring */</span></div>
<div class="line"><a name="l00546"></a><span class="lineno"> 546</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00547"></a><span class="lineno"> 547</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00548"></a><span class="lineno"> 548</span>&#160;<span class="comment"> Sets the current</span></div>
<div class="line"><a name="l00549"></a><span class="lineno"> 549</span>&#160;<span class="comment"> The scissor rectangle is transformed by the current transform.</span></div>
<div class="line"><a name="l00550"></a><span class="lineno"> 550</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00551"></a><span class="lineno"> 551</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#a7ac24b9a1ab2b901ab18d4d8dbb92c1c">scissor</a>(<span class="keywordtype">float</span> x, <span class="keywordtype">float</span> y, <span class="keywordtype">float</span> w, <span class="keywordtype">float</span> h);</div>
<div class="line"><a name="l00552"></a><span class="lineno"> 552</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00553"></a><span class="lineno"> 553</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00554"></a><span class="lineno"> 554</span>&#160;<span class="comment"> Reset and disables scissoring.</span></div>
<div class="line"><a name="l00555"></a><span class="lineno"> 555</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00556"></a><span class="lineno"> 556</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#aff2eaea01970f0ec2005d1051f25ad35">resetScissor</a>();</div>
<div class="line"><a name="l00557"></a><span class="lineno"> 557</span>&#160;</div>
<div class="line"><a name="l00558"></a><span class="lineno"> 558</span>&#160; <span class="comment">/* --------------------------------------------------------------------</span></div>
<div class="line"><a name="l00559"></a><span class="lineno"> 559</span>&#160;<span class="comment"> * Paths */</span></div>
<div class="line"><a name="l00560"></a><span class="lineno"> 560</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00561"></a><span class="lineno"> 561</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00562"></a><span class="lineno"> 562</span>&#160;<span class="comment"> Clears the current path and sub-paths.</span></div>
<div class="line"><a name="l00563"></a><span class="lineno"> 563</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00564"></a><span class="lineno"> 564</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#a1cd7ee075338cbd5069e0862dff70b41">beginPath</a>();</div>
<div class="line"><a name="l00565"></a><span class="lineno"> 565</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00566"></a><span class="lineno"> 566</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00567"></a><span class="lineno"> 567</span>&#160;<span class="comment"> Starts new sub-path with specified point as first point.</span></div>
<div class="line"><a name="l00568"></a><span class="lineno"> 568</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00569"></a><span class="lineno"> 569</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#af1ac0918567c17c93e0586c4284e04b9">moveTo</a>(<span class="keywordtype">float</span> x, <span class="keywordtype">float</span> y);</div>
<div class="line"><a name="l00570"></a><span class="lineno"> 570</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00571"></a><span class="lineno"> 571</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00572"></a><span class="lineno"> 572</span>&#160;<span class="comment"> Adds line segment from the last point in the path to the specified point.</span></div>
<div class="line"><a name="l00573"></a><span class="lineno"> 573</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00574"></a><span class="lineno"> 574</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#a63f509eaeb04475a8541ed8e846f352f">lineTo</a>(<span class="keywordtype">float</span> x, <span class="keywordtype">float</span> y);</div>
<div class="line"><a name="l00575"></a><span class="lineno"> 575</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00576"></a><span class="lineno"> 576</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00577"></a><span class="lineno"> 577</span>&#160;<span class="comment"> Adds bezier segment from last point in the path via two control points to the specified point.</span></div>
<div class="line"><a name="l00578"></a><span class="lineno"> 578</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00579"></a><span class="lineno"> 579</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#a44831e8c0c5e457eda688c9141e10f68">bezierTo</a>(<span class="keywordtype">float</span> c1x, <span class="keywordtype">float</span> c1y, <span class="keywordtype">float</span> c2x, <span class="keywordtype">float</span> c2y, <span class="keywordtype">float</span> x, <span class="keywordtype">float</span> y);</div>
<div class="line"><a name="l00580"></a><span class="lineno"> 580</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00581"></a><span class="lineno"> 581</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00582"></a><span class="lineno"> 582</span>&#160;<span class="comment"> Adds an arc segment at the corner defined by the last path point, and two specified points.</span></div>
<div class="line"><a name="l00583"></a><span class="lineno"> 583</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00584"></a><span class="lineno"> 584</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#aea6996381cba59bdcef33a981af853e8">arcTo</a>(<span class="keywordtype">float</span> x1, <span class="keywordtype">float</span> y1, <span class="keywordtype">float</span> x2, <span class="keywordtype">float</span> y2, <span class="keywordtype">float</span> radius);</div>
<div class="line"><a name="l00585"></a><span class="lineno"> 585</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00586"></a><span class="lineno"> 586</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00587"></a><span class="lineno"> 587</span>&#160;<span class="comment"> Closes current sub-path with a line segment.</span></div>
<div class="line"><a name="l00588"></a><span class="lineno"> 588</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00589"></a><span class="lineno"> 589</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#a74ae13eec498c0afb9fa20199eecbd48">closePath</a>();</div>
<div class="line"><a name="l00590"></a><span class="lineno"> 590</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00591"></a><span class="lineno"> 591</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00592"></a><span class="lineno"> 592</span>&#160;<span class="comment"> Sets the current sub-path winding.</span></div>
<div class="line"><a name="l00593"></a><span class="lineno"> 593</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00594"></a><span class="lineno"> 594</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#aaf7f45fc45cf920d261a8b2cfebf9026">pathWinding</a>(Winding dir);</div>
<div class="line"><a name="l00595"></a><span class="lineno"> 595</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00596"></a><span class="lineno"> 596</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00597"></a><span class="lineno"> 597</span>&#160;<span class="comment"> Creates new arc shaped sub-path.</span></div>
<div class="line"><a name="l00598"></a><span class="lineno"> 598</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00599"></a><span class="lineno"> 599</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#a5da07d6030f2918260e1fc20cfb4c9e6">arc</a>(<span class="keywordtype">float</span> cx, <span class="keywordtype">float</span> cy, <span class="keywordtype">float</span> r, <span class="keywordtype">float</span> a0, <span class="keywordtype">float</span> a1, Winding dir);</div>
<div class="line"><a name="l00600"></a><span class="lineno"> 600</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00601"></a><span class="lineno"> 601</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00602"></a><span class="lineno"> 602</span>&#160;<span class="comment"> Creates new rectangle shaped sub-path.</span></div>
<div class="line"><a name="l00603"></a><span class="lineno"> 603</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00604"></a><span class="lineno"> 604</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#a1bc27cc57b0e2d3bc0fd12d519312251">rect</a>(<span class="keywordtype">float</span> x, <span class="keywordtype">float</span> y, <span class="keywordtype">float</span> w, <span class="keywordtype">float</span> h);</div>
<div class="line"><a name="l00605"></a><span class="lineno"> 605</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00606"></a><span class="lineno"> 606</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00607"></a><span class="lineno"> 607</span>&#160;<span class="comment"> Creates new rounded rectangle shaped sub-path.</span></div>
<div class="line"><a name="l00608"></a><span class="lineno"> 608</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00609"></a><span class="lineno"> 609</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#ac9d8502c3cbf6745ff3a41d1b97b6529">roundedRect</a>(<span class="keywordtype">float</span> x, <span class="keywordtype">float</span> y, <span class="keywordtype">float</span> w, <span class="keywordtype">float</span> h, <span class="keywordtype">float</span> r);</div>
<div class="line"><a name="l00610"></a><span class="lineno"> 610</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00611"></a><span class="lineno"> 611</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00612"></a><span class="lineno"> 612</span>&#160;<span class="comment"> Creates new ellipse shaped sub-path.</span></div>
<div class="line"><a name="l00613"></a><span class="lineno"> 613</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00614"></a><span class="lineno"> 614</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#a2081ea8d4c33481d24ae98d1a65a6f9b">ellipse</a>(<span class="keywordtype">float</span> cx, <span class="keywordtype">float</span> cy, <span class="keywordtype">float</span> rx, <span class="keywordtype">float</span> ry);</div>
<div class="line"><a name="l00615"></a><span class="lineno"> 615</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00616"></a><span class="lineno"> 616</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00617"></a><span class="lineno"> 617</span>&#160;<span class="comment"> Creates new circle shaped sub-path.</span></div>
<div class="line"><a name="l00618"></a><span class="lineno"> 618</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00619"></a><span class="lineno"> 619</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#aa3230d48ce48f050d3ad636fc2ff4235">circle</a>(<span class="keywordtype">float</span> cx, <span class="keywordtype">float</span> cy, <span class="keywordtype">float</span> r);</div>
<div class="line"><a name="l00620"></a><span class="lineno"> 620</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00621"></a><span class="lineno"> 621</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00622"></a><span class="lineno"> 622</span>&#160;<span class="comment"> Fills the current path with current fill style.</span></div>
<div class="line"><a name="l00623"></a><span class="lineno"> 623</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00624"></a><span class="lineno"> 624</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#ae6e189b2c0b5a67c8c227d89b9bdb56e">fill</a>();</div>
<div class="line"><a name="l00625"></a><span class="lineno"> 625</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00626"></a><span class="lineno"> 626</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00627"></a><span class="lineno"> 627</span>&#160;<span class="comment"> Fills the current path with current stroke style.</span></div>
<div class="line"><a name="l00628"></a><span class="lineno"> 628</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00629"></a><span class="lineno"> 629</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#aeed167687a8a269c4f9c44a7db4d3746">stroke</a>();</div>
<div class="line"><a name="l00630"></a><span class="lineno"> 630</span>&#160;</div>
<div class="line"><a name="l00631"></a><span class="lineno"> 631</span>&#160; <span class="comment">/* --------------------------------------------------------------------</span></div>
<div class="line"><a name="l00632"></a><span class="lineno"> 632</span>&#160;<span class="comment"> * Text */</span></div>
<div class="line"><a name="l00633"></a><span class="lineno"> 633</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00634"></a><span class="lineno"> 634</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00635"></a><span class="lineno"> 635</span>&#160;<span class="comment"> Creates font by loading it from the disk from specified file name.</span></div>
<div class="line"><a name="l00636"></a><span class="lineno"> 636</span>&#160;<span class="comment"> Returns handle to the font.</span></div>
<div class="line"><a name="l00637"></a><span class="lineno"> 637</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00638"></a><span class="lineno"> 638</span>&#160; FontId <a class="code" href="classNanoVG.html#a45357f0e7cb62352ef05a529db233e9f">createFont</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* name, <span class="keyword">const</span> <span class="keywordtype">char</span>* filename);</div>
<div class="line"><a name="l00639"></a><span class="lineno"> 639</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00640"></a><span class="lineno"> 640</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00641"></a><span class="lineno"> 641</span>&#160;<span class="comment"> Creates font by loading it from the specified memory chunk.</span></div>
<div class="line"><a name="l00642"></a><span class="lineno"> 642</span>&#160;<span class="comment"> Returns handle to the font.</span></div>
<div class="line"><a name="l00643"></a><span class="lineno"> 643</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00644"></a><span class="lineno"> 644</span>&#160; FontId <a class="code" href="classNanoVG.html#aa07d34eb15472088a67a9bfebe1c86e7">createFontMem</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* name, <span class="keyword">const</span> uchar* data, <span class="keywordtype">int</span> ndata, <span class="keywordtype">bool</span> freeData);</div>
<div class="line"><a name="l00645"></a><span class="lineno"> 645</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00646"></a><span class="lineno"> 646</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00647"></a><span class="lineno"> 647</span>&#160;<span class="comment"> Finds a loaded font of specified name, and returns handle to it, or -1 if the font is not found.</span></div>
<div class="line"><a name="l00648"></a><span class="lineno"> 648</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00649"></a><span class="lineno"> 649</span>&#160; FontId <a class="code" href="classNanoVG.html#afbcfaa824c76e00eb22bd3f7dd5d1ab0">findFont</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* name);</div>
<div class="line"><a name="l00650"></a><span class="lineno"> 650</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00651"></a><span class="lineno"> 651</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00652"></a><span class="lineno"> 652</span>&#160;<span class="comment"> Sets the font size of current text style.</span></div>
<div class="line"><a name="l00653"></a><span class="lineno"> 653</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00654"></a><span class="lineno"> 654</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#a23353792b4267d74f8f7a665d358c1a4">fontSize</a>(<span class="keywordtype">float</span> size);</div>
<div class="line"><a name="l00655"></a><span class="lineno"> 655</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00656"></a><span class="lineno"> 656</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00657"></a><span class="lineno"> 657</span>&#160;<span class="comment"> Sets the blur of current text style.</span></div>
<div class="line"><a name="l00658"></a><span class="lineno"> 658</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00659"></a><span class="lineno"> 659</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#aa0a42259164f0893ea63929cfce29a75">fontBlur</a>(<span class="keywordtype">float</span> blur);</div>
<div class="line"><a name="l00660"></a><span class="lineno"> 660</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00661"></a><span class="lineno"> 661</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00662"></a><span class="lineno"> 662</span>&#160;<span class="comment"> Sets the letter spacing of current text style.</span></div>
<div class="line"><a name="l00663"></a><span class="lineno"> 663</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00664"></a><span class="lineno"> 664</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#ad768aae0871c1685ca5dc590859d5c1b">textLetterSpacing</a>(<span class="keywordtype">float</span> spacing);</div>
<div class="line"><a name="l00665"></a><span class="lineno"> 665</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00666"></a><span class="lineno"> 666</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00667"></a><span class="lineno"> 667</span>&#160;<span class="comment"> Sets the proportional line height of current text style. The line height is specified as multiple of font size.</span></div>
<div class="line"><a name="l00668"></a><span class="lineno"> 668</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00669"></a><span class="lineno"> 669</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#aab69aa4f2ae1b15adcceb9d065ea8aa6">textLineHeight</a>(<span class="keywordtype">float</span> lineHeight);</div>
<div class="line"><a name="l00670"></a><span class="lineno"> 670</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00671"></a><span class="lineno"> 671</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00672"></a><span class="lineno"> 672</span>&#160;<span class="comment"> Sets the text align of current text style.</span></div>
<div class="line"><a name="l00673"></a><span class="lineno"> 673</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00674"></a><span class="lineno"> 674</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#a9c942ced1722beff8e326a6cf0c9a1d1">textAlign</a>(Align align);</div>
<div class="line"><a name="l00675"></a><span class="lineno"> 675</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00676"></a><span class="lineno"> 676</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00677"></a><span class="lineno"> 677</span>&#160;<span class="comment"> Sets the text align of current text style.</span></div>
<div class="line"><a name="l00678"></a><span class="lineno"> 678</span>&#160;<span class="comment"> Overloaded function for convenience.</span></div>
<div class="line"><a name="l00679"></a><span class="lineno"> 679</span>&#160;<span class="comment"> @see Align</span></div>
<div class="line"><a name="l00680"></a><span class="lineno"> 680</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00681"></a><span class="lineno"> 681</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#a9c942ced1722beff8e326a6cf0c9a1d1">textAlign</a>(<span class="keywordtype">int</span> align);</div>
<div class="line"><a name="l00682"></a><span class="lineno"> 682</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00683"></a><span class="lineno"> 683</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00684"></a><span class="lineno"> 684</span>&#160;<span class="comment"> Sets the font face based on specified id of current text style.</span></div>
<div class="line"><a name="l00685"></a><span class="lineno"> 685</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00686"></a><span class="lineno"> 686</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#a2d32dbd0fb0dd0ae36fdc6ef2be65f6c">fontFaceId</a>(FontId font);</div>
<div class="line"><a name="l00687"></a><span class="lineno"> 687</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00688"></a><span class="lineno"> 688</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00689"></a><span class="lineno"> 689</span>&#160;<span class="comment"> Sets the font face based on specified name of current text style.</span></div>
<div class="line"><a name="l00690"></a><span class="lineno"> 690</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00691"></a><span class="lineno"> 691</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#a22fa48b86dac0cc4ab1cd922de39c52b">fontFace</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* font);</div>
<div class="line"><a name="l00692"></a><span class="lineno"> 692</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00693"></a><span class="lineno"> 693</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00694"></a><span class="lineno"> 694</span>&#160;<span class="comment"> Draws text string at specified location. If end is specified only the sub-string up to the end is drawn.</span></div>
<div class="line"><a name="l00695"></a><span class="lineno"> 695</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00696"></a><span class="lineno"> 696</span>&#160; <span class="keywordtype">float</span> <a class="code" href="classNanoVG.html#af9526a1c4b2d5e1db0190c32ba9a1eaa">text</a>(<span class="keywordtype">float</span> x, <span class="keywordtype">float</span> y, <span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keywordtype">string</span>, <span class="keyword">const</span> <span class="keywordtype">char</span>* end);</div>
<div class="line"><a name="l00697"></a><span class="lineno"> 697</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00698"></a><span class="lineno"> 698</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00699"></a><span class="lineno"> 699</span>&#160;<span class="comment"> Draws multi-line text string at specified location wrapped at the specified width. If end is specified only the sub-string up to the end is drawn.</span></div>
<div class="line"><a name="l00700"></a><span class="lineno"> 700</span>&#160;<span class="comment"> White space is stripped at the beginning of the rows, the text is split at word boundaries or when new-line characters are encountered.</span></div>
<div class="line"><a name="l00701"></a><span class="lineno"> 701</span>&#160;<span class="comment"> Words longer than the max width are slit at nearest character (i.e. no hyphenation).</span></div>
<div class="line"><a name="l00702"></a><span class="lineno"> 702</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00703"></a><span class="lineno"> 703</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#aaa73324a5969916f910fb9a41e7e5358">textBox</a>(<span class="keywordtype">float</span> x, <span class="keywordtype">float</span> y, <span class="keywordtype">float</span> breakRowWidth, <span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keywordtype">string</span>, <span class="keyword">const</span> <span class="keywordtype">char</span>* end);</div>
<div class="line"><a name="l00704"></a><span class="lineno"> 704</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00705"></a><span class="lineno"> 705</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00706"></a><span class="lineno"> 706</span>&#160;<span class="comment"> Measures the specified text string. The bounds value are [xmin,ymin, xmax,ymax].</span></div>
<div class="line"><a name="l00707"></a><span class="lineno"> 707</span>&#160;<span class="comment"> Returns the horizontal advance of the measured text (i.e. where the next character should drawn).</span></div>
<div class="line"><a name="l00708"></a><span class="lineno"> 708</span>&#160;<span class="comment"> Measured values are returned in local coordinate space.</span></div>
<div class="line"><a name="l00709"></a><span class="lineno"> 709</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00710"></a><span class="lineno"> 710</span>&#160; <span class="keywordtype">float</span> <a class="code" href="classNanoVG.html#a281c71d51c5f9d6fb5d6e8369ca650f4">textBounds</a>(<span class="keywordtype">float</span> x, <span class="keywordtype">float</span> y, <span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keywordtype">string</span>, <span class="keyword">const</span> <span class="keywordtype">char</span>* end, <a class="code" href="singletonRectangle.html">Rectangle&lt;float&gt;</a>&amp; bounds);</div>
<div class="line"><a name="l00711"></a><span class="lineno"> 711</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00712"></a><span class="lineno"> 712</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00713"></a><span class="lineno"> 713</span>&#160;<span class="comment"> Measures the specified multi-text string. Parameter bounds should be a pointer to float[4],</span></div>
<div class="line"><a name="l00714"></a><span class="lineno"> 714</span>&#160;<span class="comment"> if the bounding box of the text should be returned. The bounds value are [xmin,ymin, xmax,ymax]</span></div>
<div class="line"><a name="l00715"></a><span class="lineno"> 715</span>&#160;<span class="comment"> Measured values are returned in local coordinate space.</span></div>
<div class="line"><a name="l00716"></a><span class="lineno"> 716</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00717"></a><span class="lineno"> 717</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#a2dd842d5eaf729c43769da3a35db158d">textBoxBounds</a>(<span class="keywordtype">float</span> x, <span class="keywordtype">float</span> y, <span class="keywordtype">float</span> breakRowWidth, <span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keywordtype">string</span>, <span class="keyword">const</span> <span class="keywordtype">char</span>* end, <span class="keywordtype">float</span>* bounds);</div>
<div class="line"><a name="l00718"></a><span class="lineno"> 718</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00719"></a><span class="lineno"> 719</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00720"></a><span class="lineno"> 720</span>&#160;<span class="comment"> Calculates the glyph x positions of the specified text. If end is specified only the sub-string will be used.</span></div>
<div class="line"><a name="l00721"></a><span class="lineno"> 721</span>&#160;<span class="comment"> Measured values are returned in local coordinate space.</span></div>
<div class="line"><a name="l00722"></a><span class="lineno"> 722</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00723"></a><span class="lineno"> 723</span>&#160; <span class="keywordtype">int</span> <a class="code" href="classNanoVG.html#a365eb3cc06e97f29cbcfa967e76f8798">textGlyphPositions</a>(<span class="keywordtype">float</span> x, <span class="keywordtype">float</span> y, <span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keywordtype">string</span>, <span class="keyword">const</span> <span class="keywordtype">char</span>* end, GlyphPosition* positions, <span class="keywordtype">int</span> maxPositions);</div>
<div class="line"><a name="l00724"></a><span class="lineno"> 724</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00725"></a><span class="lineno"> 725</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00726"></a><span class="lineno"> 726</span>&#160;<span class="comment"> Returns the vertical metrics based on the current text style.</span></div>
<div class="line"><a name="l00727"></a><span class="lineno"> 727</span>&#160;<span class="comment"> Measured values are returned in local coordinate space.</span></div>
<div class="line"><a name="l00728"></a><span class="lineno"> 728</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00729"></a><span class="lineno"> 729</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classNanoVG.html#a5e84bf7dec65064733aec488389568b0">textMetrics</a>(<span class="keywordtype">float</span>* ascender, <span class="keywordtype">float</span>* descender, <span class="keywordtype">float</span>* lineh);</div>
<div class="line"><a name="l00730"></a><span class="lineno"> 730</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00731"></a><span class="lineno"> 731</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00732"></a><span class="lineno"> 732</span>&#160;<span class="comment"> Breaks the specified text into lines. If end is specified only the sub-string will be used.</span></div>
<div class="line"><a name="l00733"></a><span class="lineno"> 733</span>&#160;<span class="comment"> White space is stripped at the beginning of the rows, the text is split at word boundaries or when new-line characters are encountered.</span></div>
<div class="line"><a name="l00734"></a><span class="lineno"> 734</span>&#160;<span class="comment"> Words longer than the max width are slit at nearest character (i.e. no hyphenation).</span></div>
<div class="line"><a name="l00735"></a><span class="lineno"> 735</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00736"></a><span class="lineno"> 736</span>&#160; <span class="keywordtype">int</span> <a class="code" href="classNanoVG.html#a86f66c7dff7fc3a96667f139b88d1e9e">textBreakLines</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keywordtype">string</span>, <span class="keyword">const</span> <span class="keywordtype">char</span>* end, <span class="keywordtype">float</span> breakRowWidth, TextRow* rows, <span class="keywordtype">int</span> maxRows);</div>
<div class="line"><a name="l00737"></a><span class="lineno"> 737</span>&#160;</div>
<div class="line"><a name="l00738"></a><span class="lineno"> 738</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00739"></a><span class="lineno"> 739</span>&#160; NVGcontext* <span class="keyword">const</span> fContext;</div>
<div class="line"><a name="l00740"></a><span class="lineno"> 740</span>&#160; <span class="keywordtype">bool</span> fInFrame;</div>
<div class="line"><a name="l00741"></a><span class="lineno"> 741</span>&#160;</div>
<div class="line"><a name="l00742"></a><span class="lineno"> 742</span>&#160; DISTRHO_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR(<a class="code" href="classNanoVG.html">NanoVG</a>)</div>
<div class="line"><a name="l00743"></a><span class="lineno"> 743</span>&#160;};</div>
<div class="line"><a name="l00744"></a><span class="lineno"> 744</span>&#160;</div>
<div class="line"><a name="l00745"></a><span class="lineno"> 745</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00746"></a><span class="lineno"> 746</span>&#160;<span class="comment">// NanoWidget</span></div>
<div class="line"><a name="l00747"></a><span class="lineno"> 747</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00748"></a><span class="lineno"> 748</span>&#160;<span class="comment">/**</span></div>
<div class="line"><a name="l00749"></a><span class="lineno"> 749</span>&#160;<span class="comment"> NanoVG Widget class.</span></div>
<div class="line"><a name="l00750"></a><span class="lineno"> 750</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00751"></a><span class="lineno"> 751</span>&#160;<span class="comment"> This class implements the NanoVG drawing API inside a DGL Widget.</span></div>
<div class="line"><a name="l00752"></a><span class="lineno"> 752</span>&#160;<span class="comment"> The drawing function onDisplay() is implemented internally but a</span></div>
<div class="line"><a name="l00753"></a><span class="lineno"> 753</span>&#160;<span class="comment"> new onNanoDisplay() needs to be overridden instead.</span></div>
<div class="line"><a name="l00754"></a><span class="lineno"> 754</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00755"></a><span class="lineno"><a class="line" href="classNanoWidget.html"> 755</a></span>&#160;<span class="keyword">class </span><a class="code" href="classNanoWidget.html">NanoWidget</a> : <span class="keyword">public</span> <a class="code" href="classWidget.html">Widget</a>,</div>
<div class="line"><a name="l00756"></a><span class="lineno"> 756</span>&#160; <span class="keyword">public</span> <a class="code" href="classNanoVG.html">NanoVG</a></div>
<div class="line"><a name="l00757"></a><span class="lineno"> 757</span>&#160;{</div>
<div class="line"><a name="l00758"></a><span class="lineno"> 758</span>&#160;<span class="keyword">public</span>:<span class="comment"></span></div>
<div class="line"><a name="l00759"></a><span class="lineno"> 759</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00760"></a><span class="lineno"> 760</span>&#160;<span class="comment"> Constructor.</span></div>
<div class="line"><a name="l00761"></a><span class="lineno"> 761</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00762"></a><span class="lineno"><a class="line" href="classNanoWidget.html#af1f8b45101bbe1017b88893a699b4f86"> 762</a></span>&#160; <a class="code" href="classNanoWidget.html#af1f8b45101bbe1017b88893a699b4f86">NanoWidget</a>(<a class="code" href="classWindow.html">Window</a>&amp; parent)</div>
<div class="line"><a name="l00763"></a><span class="lineno"> 763</span>&#160; : <a class="code" href="classWidget.html">Widget</a>(parent),</div>
<div class="line"><a name="l00764"></a><span class="lineno"> 764</span>&#160; <a class="code" href="classNanoVG.html">NanoVG</a>(),</div>
<div class="line"><a name="l00765"></a><span class="lineno"> 765</span>&#160; leakDetector_NanoWidget()</div>
<div class="line"><a name="l00766"></a><span class="lineno"> 766</span>&#160; {</div>
<div class="line"><a name="l00767"></a><span class="lineno"> 767</span>&#160; <a class="code" href="classWidget.html#a2ce358088e8f3b65621afd02c675bad8">setNeedsScaling</a>(<span class="keyword">true</span>);</div>
<div class="line"><a name="l00768"></a><span class="lineno"> 768</span>&#160; }</div>
<div class="line"><a name="l00769"></a><span class="lineno"> 769</span>&#160;</div>
<div class="line"><a name="l00770"></a><span class="lineno"> 770</span>&#160;<span class="keyword">protected</span>:<span class="comment"></span></div>
<div class="line"><a name="l00771"></a><span class="lineno"> 771</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00772"></a><span class="lineno"> 772</span>&#160;<span class="comment"> New virtual onDisplay function.</span></div>
<div class="line"><a name="l00773"></a><span class="lineno"> 773</span>&#160;<span class="comment"> @see onDisplay</span></div>
<div class="line"><a name="l00774"></a><span class="lineno"> 774</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00775"></a><span class="lineno"> 775</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classNanoWidget.html#a50c53f68d816358fdb6abad250917372">onNanoDisplay</a>() = 0;</div>
<div class="line"><a name="l00776"></a><span class="lineno"> 776</span>&#160;</div>
<div class="line"><a name="l00777"></a><span class="lineno"> 777</span>&#160;<span class="keyword">private</span>:<span class="comment"></span></div>
<div class="line"><a name="l00778"></a><span class="lineno"> 778</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00779"></a><span class="lineno"> 779</span>&#160;<span class="comment"> Widget display function.</span></div>
<div class="line"><a name="l00780"></a><span class="lineno"> 780</span>&#160;<span class="comment"> Implemented internally to wrap begin/endFrame() automatically.</span></div>
<div class="line"><a name="l00781"></a><span class="lineno"> 781</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00782"></a><span class="lineno"> 782</span>&#160; <span class="keywordtype">void</span> onDisplay()<span class="keyword"> override</span></div>
<div class="line"><a name="l00783"></a><span class="lineno"> 783</span>&#160;<span class="keyword"> </span>{</div>
<div class="line"><a name="l00784"></a><span class="lineno"> 784</span>&#160; <span class="comment">//glPushAttrib(GL_PIXEL_MODE_BIT|GL_STENCIL_BUFFER_BIT|GL_ENABLE_BIT);</span></div>
<div class="line"><a name="l00785"></a><span class="lineno"> 785</span>&#160; <a class="code" href="classNanoVG.html#a202e92a01a9b78d469c77ed659f12c8b">beginFrame</a>(<a class="code" href="classWidget.html#a169c317caf734c6664494a573e427b40">getWidth</a>(), <a class="code" href="classWidget.html#aa20f6dc096a8836706173f31324c4db8">getHeight</a>());</div>
<div class="line"><a name="l00786"></a><span class="lineno"> 786</span>&#160; <a class="code" href="classNanoWidget.html#a50c53f68d816358fdb6abad250917372">onNanoDisplay</a>();</div>
<div class="line"><a name="l00787"></a><span class="lineno"> 787</span>&#160; <a class="code" href="classNanoVG.html#a432d8c79b21f61eb1010a75cc13ee711">endFrame</a>();</div>
<div class="line"><a name="l00788"></a><span class="lineno"> 788</span>&#160; <span class="comment">//glPopAttrib();</span></div>
<div class="line"><a name="l00789"></a><span class="lineno"> 789</span>&#160; glDisable(GL_CULL_FACE);</div>
<div class="line"><a name="l00790"></a><span class="lineno"> 790</span>&#160; }</div>
<div class="line"><a name="l00791"></a><span class="lineno"> 791</span>&#160;</div>
<div class="line"><a name="l00792"></a><span class="lineno"> 792</span>&#160; DISTRHO_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR(<a class="code" href="classNanoWidget.html">NanoWidget</a>)</div>
<div class="line"><a name="l00793"></a><span class="lineno"> 793</span>&#160;};</div>
<div class="line"><a name="l00794"></a><span class="lineno"> 794</span>&#160;</div>
<div class="line"><a name="l00795"></a><span class="lineno"> 795</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00796"></a><span class="lineno"> 796</span>&#160;</div>
<div class="line"><a name="l00797"></a><span class="lineno"> 797</span>&#160;END_NAMESPACE_DGL</div>
<div class="line"><a name="l00798"></a><span class="lineno"> 798</span>&#160;</div>
<div class="line"><a name="l00799"></a><span class="lineno"> 799</span>&#160;<span class="preprocessor">#endif // DGL_NANO_WIDGET_HPP_INCLUDED</span></div>
<div class="ttc" id="classNanoVG_html_ae2e49763ab7f503016c0dede0dbfd3cc"><div class="ttname"><a href="classNanoVG.html#ae2e49763ab7f503016c0dede0dbfd3cc">NanoVG::transformPoint</a></div><div class="ttdeci">static void transformPoint(float &amp;dstx, float &amp;dsty, const float xform[6], float srcx, float srcy)</div></div>
<div class="ttc" id="classNanoVG_html_a8b6f8caad8acb883fadc06a606ccade7"><div class="ttname"><a href="classNanoVG.html#a8b6f8caad8acb883fadc06a606ccade7">NanoVG::getContext</a></div><div class="ttdeci">NVGcontext * getContext() const noexcept</div><div class="ttdef"><b>Definition:</b> NanoVG.hpp:267</div></div>
<div class="ttc" id="classNanoVG_html_a9c942ced1722beff8e326a6cf0c9a1d1"><div class="ttname"><a href="classNanoVG.html#a9c942ced1722beff8e326a6cf0c9a1d1">NanoVG::textAlign</a></div><div class="ttdeci">void textAlign(Align align)</div></div>
<div class="ttc" id="structNanoVG_1_1TextRow_html"><div class="ttname"><a href="structNanoVG_1_1TextRow.html">NanoVG::TextRow</a></div><div class="ttdef"><b>Definition:</b> NanoVG.hpp:237</div></div>
<div class="ttc" id="classNanoVG_html_a1cd7ee075338cbd5069e0862dff70b41"><div class="ttname"><a href="classNanoVG.html#a1cd7ee075338cbd5069e0862dff70b41">NanoVG::beginPath</a></div><div class="ttdeci">void beginPath()</div></div>
<div class="ttc" id="classNanoImage_html"><div class="ttname"><a href="classNanoImage.html">NanoImage</a></div><div class="ttdef"><b>Definition:</b> NanoVG.hpp:37</div></div>
<div class="ttc" id="classNanoVG_html_a63f509eaeb04475a8541ed8e846f352f"><div class="ttname"><a href="classNanoVG.html#a63f509eaeb04475a8541ed8e846f352f">NanoVG::lineTo</a></div><div class="ttdeci">void lineTo(float x, float y)</div></div>
<div class="ttc" id="classNanoVG_html_a365eb3cc06e97f29cbcfa967e76f8798"><div class="ttname"><a href="classNanoVG.html#a365eb3cc06e97f29cbcfa967e76f8798">NanoVG::textGlyphPositions</a></div><div class="ttdeci">int textGlyphPositions(float x, float y, const char *string, const char *end, GlyphPosition *positions, int maxPositions)</div></div>
<div class="ttc" id="classNanoVG_html_a51ad176349e0169478844f862942af20"><div class="ttname"><a href="classNanoVG.html#a51ad176349e0169478844f862942af20">NanoVG::imagePattern</a></div><div class="ttdeci">Paint imagePattern(float ox, float oy, float ex, float ey, float angle, const NanoImage *image, PatternRepeat repeat)</div></div>
<div class="ttc" id="classNanoVG_html_a94c1f78baadff1d6c6a5a4d52dd770d7"><div class="ttname"><a href="classNanoVG.html#a94c1f78baadff1d6c6a5a4d52dd770d7">NanoVG::transformScale</a></div><div class="ttdeci">static void transformScale(float dst[6], float sx, float sy)</div></div>
<div class="ttc" id="classNanoVG_html_aeed167687a8a269c4f9c44a7db4d3746"><div class="ttname"><a href="classNanoVG.html#aeed167687a8a269c4f9c44a7db4d3746">NanoVG::stroke</a></div><div class="ttdeci">void stroke()</div></div>
<div class="ttc" id="classNanoVG_html_ad51cefbcf8819d365205fa004a10b976"><div class="ttname"><a href="classNanoVG.html#ad51cefbcf8819d365205fa004a10b976">NanoVG::currentTransform</a></div><div class="ttdeci">void currentTransform(float xform[6])</div></div>
<div class="ttc" id="classNanoVG_html_aa3230d48ce48f050d3ad636fc2ff4235"><div class="ttname"><a href="classNanoVG.html#aa3230d48ce48f050d3ad636fc2ff4235">NanoVG::circle</a></div><div class="ttdeci">void circle(float cx, float cy, float r)</div></div>
<div class="ttc" id="classNanoVG_html_a3ac9aade102afb3a4f84966f0727c6c6"><div class="ttname"><a href="classNanoVG.html#a3ac9aade102afb3a4f84966f0727c6c6">NanoVG::transformMultiply</a></div><div class="ttdeci">static void transformMultiply(float dst[6], const float src[6])</div></div>
<div class="ttc" id="classNanoVG_html_a23353792b4267d74f8f7a665d358c1a4"><div class="ttname"><a href="classNanoVG.html#a23353792b4267d74f8f7a665d358c1a4">NanoVG::fontSize</a></div><div class="ttdeci">void fontSize(float size)</div></div>
<div class="ttc" id="classNanoWidget_html"><div class="ttname"><a href="classNanoWidget.html">NanoWidget</a></div><div class="ttdef"><b>Definition:</b> NanoVG.hpp:755</div></div>
<div class="ttc" id="classNanoVG_html_a8a5ade44d39d21f28dcd02d27da62d14"><div class="ttname"><a href="classNanoVG.html#a8a5ade44d39d21f28dcd02d27da62d14">NanoVG::miterLimit</a></div><div class="ttdeci">void miterLimit(float limit)</div></div>
<div class="ttc" id="classWindow_html"><div class="ttname"><a href="classWindow.html">Window</a></div><div class="ttdef"><b>Definition:</b> Window.hpp:30</div></div>
<div class="ttc" id="classNanoVG_html_a373190894070313e8d321b2af0bbab58"><div class="ttname"><a href="classNanoVG.html#a373190894070313e8d321b2af0bbab58">NanoVG::strokeWidth</a></div><div class="ttdeci">void strokeWidth(float size)</div></div>
<div class="ttc" id="classNanoWidget_html_a50c53f68d816358fdb6abad250917372"><div class="ttname"><a href="classNanoWidget.html#a50c53f68d816358fdb6abad250917372">NanoWidget::onNanoDisplay</a></div><div class="ttdeci">virtual void onNanoDisplay()=0</div></div>
<div class="ttc" id="classNanoVG_html_a2dd842d5eaf729c43769da3a35db158d"><div class="ttname"><a href="classNanoVG.html#a2dd842d5eaf729c43769da3a35db158d">NanoVG::textBoxBounds</a></div><div class="ttdeci">void textBoxBounds(float x, float y, float breakRowWidth, const char *string, const char *end, float *bounds)</div></div>
<div class="ttc" id="classNanoVG_html_aa74a49bb588beb28654565a07022a178"><div class="ttname"><a href="classNanoVG.html#aa74a49bb588beb28654565a07022a178">NanoVG::linearGradient</a></div><div class="ttdeci">Paint linearGradient(float sx, float sy, float ex, float ey, const Color &amp;icol, const Color &amp;ocol)</div></div>
<div class="ttc" id="classNanoVG_html_abc1d6466eb7fdc57a869ec7b9fdd6bdf"><div class="ttname"><a href="classNanoVG.html#abc1d6466eb7fdc57a869ec7b9fdd6bdf">NanoVG::translate</a></div><div class="ttdeci">void translate(float x, float y)</div></div>
<div class="ttc" id="classNanoVG_html_a1416fbff2a0ecada90b2d9852bfbaf42"><div class="ttname"><a href="classNanoVG.html#a1416fbff2a0ecada90b2d9852bfbaf42">NanoVG::transformPremultiply</a></div><div class="ttdeci">static void transformPremultiply(float dst[6], const float src[6])</div></div>
<div class="ttc" id="classNanoVG_html_aea6996381cba59bdcef33a981af853e8"><div class="ttname"><a href="classNanoVG.html#aea6996381cba59bdcef33a981af853e8">NanoVG::arcTo</a></div><div class="ttdeci">void arcTo(float x1, float y1, float x2, float y2, float radius)</div></div>
<div class="ttc" id="classNanoVG_html_a76273b763fa9b84c4a86d37065accee7"><div class="ttname"><a href="classNanoVG.html#a76273b763fa9b84c4a86d37065accee7">NanoVG::scale</a></div><div class="ttdeci">void scale(float x, float y)</div></div>
<div class="ttc" id="structColor_html"><div class="ttname"><a href="structColor.html">Color</a></div><div class="ttdef"><b>Definition:</b> Color.hpp:33</div></div>
<div class="ttc" id="classWidget_html_a169c317caf734c6664494a573e427b40"><div class="ttname"><a href="classWidget.html#a169c317caf734c6664494a573e427b40">Widget::getWidth</a></div><div class="ttdeci">uint getWidth() const noexcept</div></div>
<div class="ttc" id="classNanoVG_html_a178b6b9a8c755cda91ccba2b6239d279"><div class="ttname"><a href="classNanoVG.html#a178b6b9a8c755cda91ccba2b6239d279">NanoVG::transformSkewX</a></div><div class="ttdeci">static void transformSkewX(float dst[6], float a)</div></div>
<div class="ttc" id="classNanoVG_html_a202e92a01a9b78d469c77ed659f12c8b"><div class="ttname"><a href="classNanoVG.html#a202e92a01a9b78d469c77ed659f12c8b">NanoVG::beginFrame</a></div><div class="ttdeci">void beginFrame(const uint width, const uint height, const float scaleFactor=1.0f, const Alpha alpha=PREMULTIPLIED_ALPHA)</div></div>
<div class="ttc" id="classNanoVG_html_a1bc27cc57b0e2d3bc0fd12d519312251"><div class="ttname"><a href="classNanoVG.html#a1bc27cc57b0e2d3bc0fd12d519312251">NanoVG::rect</a></div><div class="ttdeci">void rect(float x, float y, float w, float h)</div></div>
<div class="ttc" id="classNanoVG_html_a19d27b1b3a22afe9a6d27f4f9f8bf167"><div class="ttname"><a href="classNanoVG.html#a19d27b1b3a22afe9a6d27f4f9f8bf167">NanoVG::radialGradient</a></div><div class="ttdeci">Paint radialGradient(float cx, float cy, float inr, float outr, const Color &amp;icol, const Color &amp;ocol)</div></div>
<div class="ttc" id="classNanoVG_html_aa0a42259164f0893ea63929cfce29a75"><div class="ttname"><a href="classNanoVG.html#aa0a42259164f0893ea63929cfce29a75">NanoVG::fontBlur</a></div><div class="ttdeci">void fontBlur(float blur)</div></div>
<div class="ttc" id="classNanoVG_html_a8d00b35e0ab5c428af120cc78ff32804"><div class="ttname"><a href="classNanoVG.html#a8d00b35e0ab5c428af120cc78ff32804">NanoVG::strokePaint</a></div><div class="ttdeci">void strokePaint(const Paint &amp;paint)</div></div>
<div class="ttc" id="classNanoVG_html_ad5ddb240794b35105eeadd1534f0911b"><div class="ttname"><a href="classNanoVG.html#ad5ddb240794b35105eeadd1534f0911b">NanoVG::reset</a></div><div class="ttdeci">void reset()</div></div>
<div class="ttc" id="classNanoWidget_html_af1f8b45101bbe1017b88893a699b4f86"><div class="ttname"><a href="classNanoWidget.html#af1f8b45101bbe1017b88893a699b4f86">NanoWidget::NanoWidget</a></div><div class="ttdeci">NanoWidget(Window &amp;parent)</div><div class="ttdef"><b>Definition:</b> NanoVG.hpp:762</div></div>
<div class="ttc" id="classNanoVG_html_a05fd441d579c42c76d786bd4a7b437af"><div class="ttname"><a href="classNanoVG.html#a05fd441d579c42c76d786bd4a7b437af">NanoVG::save</a></div><div class="ttdeci">void save()</div></div>
<div class="ttc" id="classNanoVG_html_a2d32dbd0fb0dd0ae36fdc6ef2be65f6c"><div class="ttname"><a href="classNanoVG.html#a2d32dbd0fb0dd0ae36fdc6ef2be65f6c">NanoVG::fontFaceId</a></div><div class="ttdeci">void fontFaceId(FontId font)</div></div>
<div class="ttc" id="classNanoVG_html_af1ac0918567c17c93e0586c4284e04b9"><div class="ttname"><a href="classNanoVG.html#af1ac0918567c17c93e0586c4284e04b9">NanoVG::moveTo</a></div><div class="ttdeci">void moveTo(float x, float y)</div></div>
<div class="ttc" id="classNanoVG_html_ad06096ade68bf78bcc256005cd6f2c45"><div class="ttname"><a href="classNanoVG.html#ad06096ade68bf78bcc256005cd6f2c45">NanoVG::transform</a></div><div class="ttdeci">void transform(float a, float b, float c, float d, float e, float f)</div></div>
<div class="ttc" id="classNanoVG_html_a2081ea8d4c33481d24ae98d1a65a6f9b"><div class="ttname"><a href="classNanoVG.html#a2081ea8d4c33481d24ae98d1a65a6f9b">NanoVG::ellipse</a></div><div class="ttdeci">void ellipse(float cx, float cy, float rx, float ry)</div></div>
<div class="ttc" id="classNanoVG_html_a44831e8c0c5e457eda688c9141e10f68"><div class="ttname"><a href="classNanoVG.html#a44831e8c0c5e457eda688c9141e10f68">NanoVG::bezierTo</a></div><div class="ttdeci">void bezierTo(float c1x, float c1y, float c2x, float c2y, float x, float y)</div></div>
<div class="ttc" id="classNanoVG_html_a22fa48b86dac0cc4ab1cd922de39c52b"><div class="ttname"><a href="classNanoVG.html#a22fa48b86dac0cc4ab1cd922de39c52b">NanoVG::fontFace</a></div><div class="ttdeci">void fontFace(const char *font)</div></div>
<div class="ttc" id="classSize_html"><div class="ttname"><a href="classSize.html">Size&lt; uint &gt;</a></div></div>
<div class="ttc" id="classNanoVG_html_a78590d08cd1c6a69e0487034ece7ab53"><div class="ttname"><a href="classNanoVG.html#a78590d08cd1c6a69e0487034ece7ab53">NanoVG::createImageMem</a></div><div class="ttdeci">NanoImage * createImageMem(uchar *data, int ndata)</div></div>
<div class="ttc" id="classNanoVG_html_aa07d34eb15472088a67a9bfebe1c86e7"><div class="ttname"><a href="classNanoVG.html#aa07d34eb15472088a67a9bfebe1c86e7">NanoVG::createFontMem</a></div><div class="ttdeci">FontId createFontMem(const char *name, const uchar *data, int ndata, bool freeData)</div></div>
<div class="ttc" id="classNanoImage_html_a8915fb5eae1a0180edd3f5babf6a0091"><div class="ttname"><a href="classNanoImage.html#a8915fb5eae1a0180edd3f5babf6a0091">NanoImage::~NanoImage</a></div><div class="ttdeci">~NanoImage()</div></div>
<div class="ttc" id="classNanoVG_html_aa1da11cb97d4f6718ffe8b4622684c3b"><div class="ttname"><a href="classNanoVG.html#aa1da11cb97d4f6718ffe8b4622684c3b">NanoVG::restore</a></div><div class="ttdeci">void restore()</div></div>
<div class="ttc" id="classNanoVG_html_a508c4fde6212c1b0598d9f8b32cba0f6"><div class="ttname"><a href="classNanoVG.html#a508c4fde6212c1b0598d9f8b32cba0f6">NanoVG::skewY</a></div><div class="ttdeci">void skewY(float angle)</div></div>
<div class="ttc" id="classNanoImage_html_a7d7ef1338879e65b06230ddc45e5dcdc"><div class="ttname"><a href="classNanoImage.html#a7d7ef1338879e65b06230ddc45e5dcdc">NanoImage::updateImage</a></div><div class="ttdeci">void updateImage(const uchar *const data)</div></div>
<div class="ttc" id="classNanoVG_html_a432d8c79b21f61eb1010a75cc13ee711"><div class="ttname"><a href="classNanoVG.html#a432d8c79b21f61eb1010a75cc13ee711">NanoVG::endFrame</a></div><div class="ttdeci">void endFrame()</div></div>
<div class="ttc" id="classNanoVG_html_afbcfaa824c76e00eb22bd3f7dd5d1ab0"><div class="ttname"><a href="classNanoVG.html#afbcfaa824c76e00eb22bd3f7dd5d1ab0">NanoVG::findFont</a></div><div class="ttdeci">FontId findFont(const char *name)</div></div>
<div class="ttc" id="classNanoVG_html_a13da8f469cd43117c19d8459c178b905"><div class="ttname"><a href="classNanoVG.html#a13da8f469cd43117c19d8459c178b905">NanoVG::rotate</a></div><div class="ttdeci">void rotate(float angle)</div></div>
<div class="ttc" id="classNanoVG_html_a3e05169f4e66e811537adaea17e4bb3f"><div class="ttname"><a href="classNanoVG.html#a3e05169f4e66e811537adaea17e4bb3f">NanoVG::~NanoVG</a></div><div class="ttdeci">virtual ~NanoVG()</div></div>
<div class="ttc" id="classNanoVG_html_af7e33d8123baca23df22910791892874"><div class="ttname"><a href="classNanoVG.html#af7e33d8123baca23df22910791892874">NanoVG::createImage</a></div><div class="ttdeci">NanoImage * createImage(const char *filename)</div></div>
<div class="ttc" id="structNanoVG_1_1Paint_html"><div class="ttname"><a href="structNanoVG_1_1Paint.html">NanoVG::Paint</a></div><div class="ttdef"><b>Definition:</b> NanoVG.hpp:212</div></div>
<div class="ttc" id="classNanoVG_html_aaf7f45fc45cf920d261a8b2cfebf9026"><div class="ttname"><a href="classNanoVG.html#aaf7f45fc45cf920d261a8b2cfebf9026">NanoVG::pathWinding</a></div><div class="ttdeci">void pathWinding(Winding dir)</div></div>
<div class="ttc" id="classNanoVG_html"><div class="ttname"><a href="classNanoVG.html">NanoVG</a></div><div class="ttdef"><b>Definition:</b> NanoVG.hpp:168</div></div>
<div class="ttc" id="classNanoVG_html_aab69aa4f2ae1b15adcceb9d065ea8aa6"><div class="ttname"><a href="classNanoVG.html#aab69aa4f2ae1b15adcceb9d065ea8aa6">NanoVG::textLineHeight</a></div><div class="ttdeci">void textLineHeight(float lineHeight)</div></div>
<div class="ttc" id="classNanoVG_html_a74ae13eec498c0afb9fa20199eecbd48"><div class="ttname"><a href="classNanoVG.html#a74ae13eec498c0afb9fa20199eecbd48">NanoVG::closePath</a></div><div class="ttdeci">void closePath()</div></div>
<div class="ttc" id="classNanoVG_html_a81c8b60a87be8a8d4a5efce8eeaf1915"><div class="ttname"><a href="classNanoVG.html#a81c8b60a87be8a8d4a5efce8eeaf1915">NanoVG::transformIdentity</a></div><div class="ttdeci">static void transformIdentity(float dst[6])</div></div>
<div class="ttc" id="classNanoVG_html_a4f45e3cf465060491e73427e5868573f"><div class="ttname"><a href="classNanoVG.html#a4f45e3cf465060491e73427e5868573f">NanoVG::skewX</a></div><div class="ttdeci">void skewX(float angle)</div></div>
<div class="ttc" id="classNanoImage_html_a979cc37d8a10dc0642fcea2d64d3b58c"><div class="ttname"><a href="classNanoImage.html#a979cc37d8a10dc0642fcea2d64d3b58c">NanoImage::getSize</a></div><div class="ttdeci">Size&lt; uint &gt; getSize() const noexcept</div></div>
<div class="ttc" id="classNanoVG_html_a281c71d51c5f9d6fb5d6e8369ca650f4"><div class="ttname"><a href="classNanoVG.html#a281c71d51c5f9d6fb5d6e8369ca650f4">NanoVG::textBounds</a></div><div class="ttdeci">float textBounds(float x, float y, const char *string, const char *end, Rectangle&lt; float &gt; &amp;bounds)</div></div>
<div class="ttc" id="classNanoVG_html_a175f4c41e0d89ae5d8bdb65e5580c637"><div class="ttname"><a href="classNanoVG.html#a175f4c41e0d89ae5d8bdb65e5580c637">NanoVG::radToDeg</a></div><div class="ttdeci">static float radToDeg(float rad)</div></div>
<div class="ttc" id="structNanoVG_1_1GlyphPosition_html"><div class="ttname"><a href="structNanoVG_1_1GlyphPosition.html">NanoVG::GlyphPosition</a></div><div class="ttdef"><b>Definition:</b> NanoVG.hpp:231</div></div>
<div class="ttc" id="classNanoVG_html_a45357f0e7cb62352ef05a529db233e9f"><div class="ttname"><a href="classNanoVG.html#a45357f0e7cb62352ef05a529db233e9f">NanoVG::createFont</a></div><div class="ttdeci">FontId createFont(const char *name, const char *filename)</div></div>
<div class="ttc" id="classNanoVG_html_af23e7f6a6056e5efe72944fa68767704"><div class="ttname"><a href="classNanoVG.html#af23e7f6a6056e5efe72944fa68767704">NanoVG::transformSkewY</a></div><div class="ttdeci">static void transformSkewY(float dst[6], float a)</div></div>
<div class="ttc" id="classNanoVG_html_ac5692f82bcac4858f44d9fd0df287cad"><div class="ttname"><a href="classNanoVG.html#ac5692f82bcac4858f44d9fd0df287cad">NanoVG::transformInverse</a></div><div class="ttdeci">static int transformInverse(float dst[6], const float src[6])</div></div>
<div class="ttc" id="classNanoVG_html_ac9d8502c3cbf6745ff3a41d1b97b6529"><div class="ttname"><a href="classNanoVG.html#ac9d8502c3cbf6745ff3a41d1b97b6529">NanoVG::roundedRect</a></div><div class="ttdeci">void roundedRect(float x, float y, float w, float h, float r)</div></div>
<div class="ttc" id="classNanoVG_html_ae3913bdf0efc2f5504422f558dca2c45"><div class="ttname"><a href="classNanoVG.html#ae3913bdf0efc2f5504422f558dca2c45">NanoVG::degToRad</a></div><div class="ttdeci">static float degToRad(float deg)</div></div>
<div class="ttc" id="classNanoVG_html_aaa73324a5969916f910fb9a41e7e5358"><div class="ttname"><a href="classNanoVG.html#aaa73324a5969916f910fb9a41e7e5358">NanoVG::textBox</a></div><div class="ttdeci">void textBox(float x, float y, float breakRowWidth, const char *string, const char *end)</div></div>
<div class="ttc" id="classNanoVG_html_a022e3cdfa06f5bc9103b37dfa64adb2c"><div class="ttname"><a href="classNanoVG.html#a022e3cdfa06f5bc9103b37dfa64adb2c">NanoVG::transformTranslate</a></div><div class="ttdeci">static void transformTranslate(float dst[6], float tx, float ty)</div></div>
<div class="ttc" id="classNanoVG_html_a5da07d6030f2918260e1fc20cfb4c9e6"><div class="ttname"><a href="classNanoVG.html#a5da07d6030f2918260e1fc20cfb4c9e6">NanoVG::arc</a></div><div class="ttdeci">void arc(float cx, float cy, float r, float a0, float a1, Winding dir)</div></div>
<div class="ttc" id="classWidget_html"><div class="ttname"><a href="classWidget.html">Widget</a></div><div class="ttdef"><b>Definition:</b> Widget.hpp:51</div></div>
<div class="ttc" id="classNanoVG_html_a95dfc697ae6fe9c8d525430c09f839d1"><div class="ttname"><a href="classNanoVG.html#a95dfc697ae6fe9c8d525430c09f839d1">NanoVG::lineCap</a></div><div class="ttdeci">void lineCap(LineCap cap=BUTT)</div></div>
<div class="ttc" id="singletonRectangle_html"><div class="ttname"><a href="singletonRectangle.html">Rectangle</a></div><div class="ttdef"><b>Definition:</b> Geometry.hpp:30</div></div>
<div class="ttc" id="classNanoVG_html_aac35e4a0ce84c0f4bf8d881d1b8a5b34"><div class="ttname"><a href="classNanoVG.html#aac35e4a0ce84c0f4bf8d881d1b8a5b34">NanoVG::resetTransform</a></div><div class="ttdeci">void resetTransform()</div></div>
<div class="ttc" id="classNanoVG_html_af9526a1c4b2d5e1db0190c32ba9a1eaa"><div class="ttname"><a href="classNanoVG.html#af9526a1c4b2d5e1db0190c32ba9a1eaa">NanoVG::text</a></div><div class="ttdeci">float text(float x, float y, const char *string, const char *end)</div></div>
<div class="ttc" id="classNanoVG_html_a73767c9ade6a757bc6e1f4a2d45bdaeb"><div class="ttname"><a href="classNanoVG.html#a73767c9ade6a757bc6e1f4a2d45bdaeb">NanoVG::lineJoin</a></div><div class="ttdeci">void lineJoin(LineCap join=MITER)</div></div>
<div class="ttc" id="classNanoImage_html_ae2098db57c51c41247a4013eb1e0216c"><div class="ttname"><a href="classNanoImage.html#ae2098db57c51c41247a4013eb1e0216c">NanoImage::NanoImage</a></div><div class="ttdeci">NanoImage(NVGcontext *const context, const int imageId) noexcept</div></div>
<div class="ttc" id="classNanoVG_html_a9a802d6e276195d13bc33d0f4b39cff9"><div class="ttname"><a href="classNanoVG.html#a9a802d6e276195d13bc33d0f4b39cff9">NanoVG::fillColor</a></div><div class="ttdeci">void fillColor(const Color &amp;color)</div></div>
<div class="ttc" id="classNanoVG_html_a7ac24b9a1ab2b901ab18d4d8dbb92c1c"><div class="ttname"><a href="classNanoVG.html#a7ac24b9a1ab2b901ab18d4d8dbb92c1c">NanoVG::scissor</a></div><div class="ttdeci">void scissor(float x, float y, float w, float h)</div></div>
<div class="ttc" id="classNanoVG_html_acefc70128644fb8ee5abe6dc04d4f710"><div class="ttname"><a href="classNanoVG.html#acefc70128644fb8ee5abe6dc04d4f710">NanoVG::strokeColor</a></div><div class="ttdeci">void strokeColor(const Color &amp;color)</div></div>
<div class="ttc" id="classNanoVG_html_a5e84bf7dec65064733aec488389568b0"><div class="ttname"><a href="classNanoVG.html#a5e84bf7dec65064733aec488389568b0">NanoVG::textMetrics</a></div><div class="ttdeci">void textMetrics(float *ascender, float *descender, float *lineh)</div></div>
<div class="ttc" id="classWidget_html_aa20f6dc096a8836706173f31324c4db8"><div class="ttname"><a href="classWidget.html#aa20f6dc096a8836706173f31324c4db8">Widget::getHeight</a></div><div class="ttdeci">uint getHeight() const noexcept</div></div>
<div class="ttc" id="classWidget_html_a2ce358088e8f3b65621afd02c675bad8"><div class="ttname"><a href="classWidget.html#a2ce358088e8f3b65621afd02c675bad8">Widget::setNeedsScaling</a></div><div class="ttdeci">void setNeedsScaling(bool yesNo) noexcept</div></div>
<div class="ttc" id="classNanoVG_html_a1d6c677037e336e11baa5f32a4a11922"><div class="ttname"><a href="classNanoVG.html#a1d6c677037e336e11baa5f32a4a11922">NanoVG::NanoVG</a></div><div class="ttdeci">NanoVG()</div></div>
<div class="ttc" id="classNanoVG_html_aca56cc6d1c2455fc9f750cce4dc132d0"><div class="ttname"><a href="classNanoVG.html#aca56cc6d1c2455fc9f750cce4dc132d0">NanoVG::fillPaint</a></div><div class="ttdeci">void fillPaint(const Paint &amp;paint)</div></div>
<div class="ttc" id="classNanoVG_html_a43e16d0f94dc0a49dae5128d69e75e3c"><div class="ttname"><a href="classNanoVG.html#a43e16d0f94dc0a49dae5128d69e75e3c">NanoVG::transformRotate</a></div><div class="ttdeci">static void transformRotate(float dst[6], float a)</div></div>
<div class="ttc" id="classNanoVG_html_a1496424cb5a9e40844ebb4d8dad83799"><div class="ttname"><a href="classNanoVG.html#a1496424cb5a9e40844ebb4d8dad83799">NanoVG::boxGradient</a></div><div class="ttdeci">Paint boxGradient(float x, float y, float w, float h, float r, float f, const Color &amp;icol, const Color &amp;ocol)</div></div>
<div class="ttc" id="classNanoVG_html_a2c37ef18f5eaf0052a57e2dd89723f01"><div class="ttname"><a href="classNanoVG.html#a2c37ef18f5eaf0052a57e2dd89723f01">NanoVG::createImageRGBA</a></div><div class="ttdeci">NanoImage * createImageRGBA(uint w, uint h, const uchar *data)</div></div>
<div class="ttc" id="classNanoVG_html_ad768aae0871c1685ca5dc590859d5c1b"><div class="ttname"><a href="classNanoVG.html#ad768aae0871c1685ca5dc590859d5c1b">NanoVG::textLetterSpacing</a></div><div class="ttdeci">void textLetterSpacing(float spacing)</div></div>
<div class="ttc" id="classNanoVG_html_ae6e189b2c0b5a67c8c227d89b9bdb56e"><div class="ttname"><a href="classNanoVG.html#ae6e189b2c0b5a67c8c227d89b9bdb56e">NanoVG::fill</a></div><div class="ttdeci">void fill()</div></div>
<div class="ttc" id="classNanoVG_html_a86f66c7dff7fc3a96667f139b88d1e9e"><div class="ttname"><a href="classNanoVG.html#a86f66c7dff7fc3a96667f139b88d1e9e">NanoVG::textBreakLines</a></div><div class="ttdeci">int textBreakLines(const char *string, const char *end, float breakRowWidth, TextRow *rows, int maxRows)</div></div>
<div class="ttc" id="classNanoVG_html_aff2eaea01970f0ec2005d1051f25ad35"><div class="ttname"><a href="classNanoVG.html#aff2eaea01970f0ec2005d1051f25ad35">NanoVG::resetScissor</a></div><div class="ttdeci">void resetScissor()</div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 187
- 0
StandaloneWindow_8hpp_source.html View File

@@ -0,0 +1,187 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: dgl/StandaloneWindow.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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</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>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_99893ac99dd47c2a73745483a12a725f.html">dgl</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">StandaloneWindow.hpp</div> </div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> * DISTRHO Plugin Framework (DPF)</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright (C) 2012-2014 Filipe Coelho &lt;falktx@falktx.com&gt;</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * Permission to use, copy, modify, and/or distribute this software for any purpose with</span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * or without fee is hereby granted, provided that the above copyright notice and this</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * permission notice appear in all copies.</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * THE SOFTWARE IS PROVIDED &quot;AS IS&quot; AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> */</span></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"> 17</span>&#160;<span class="preprocessor">#ifndef DGL_STANDALONE_WINDOW_HPP_INCLUDED</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="preprocessor">#define DGL_STANDALONE_WINDOW_HPP_INCLUDED</span></div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;</div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="preprocessor">#include &quot;App.hpp&quot;</span></div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="preprocessor">#include &quot;Widget.hpp&quot;</span></div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="preprocessor">#include &quot;Window.hpp&quot;</span></div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;</div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;START_NAMESPACE_DGL</div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;</div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;</div>
<div class="line"><a name="l00028"></a><span class="lineno"><a class="line" href="classStandaloneWindow.html"> 28</a></span>&#160;<span class="keyword">class </span><a class="code" href="classStandaloneWindow.html">StandaloneWindow</a> : <span class="keyword">public</span> <a class="code" href="classApp.html">App</a>,</div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; <span class="keyword">public</span> <a class="code" href="classWindow.html">Window</a></div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;{</div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; <a class="code" href="classStandaloneWindow.html">StandaloneWindow</a>()</div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; : <a class="code" href="classApp.html#acb8cbf3e285b91d0170ffe87df5989c5">App</a>(),</div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; <a class="code" href="classWindow.html">Window</a>((<a class="code" href="classApp.html">App</a>&amp;)*<span class="keyword">this</span>),</div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; fWidget(<span class="keyword">nullptr</span>) {}</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; <span class="keywordtype">void</span> exec()</div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; {</div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; Window::show();</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; <a class="code" href="classApp.html#a94fa325175749054947480e1ae66b110">App::exec</a>();</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; }</div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="keyword">protected</span>:</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <span class="keywordtype">void</span> onReshape(uint width, uint height)<span class="keyword"> override</span></div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="keyword"> </span>{</div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <span class="keywordflow">if</span> (fWidget != <span class="keyword">nullptr</span>)</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; fWidget-&gt;<a class="code" href="classWidget.html#ab4d9e0156e455db3ff23730f82544daa">setSize</a>(width, height);</div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; Window::onReshape(width, height);</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;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <a class="code" href="classWidget.html">Widget</a>* fWidget;</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="keywordtype">void</span> _addWidget(<a class="code" href="classWidget.html">Widget</a>* widget)<span class="keyword"> override</span></div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="keyword"> </span>{</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="keywordflow">if</span> (fWidget == <span class="keyword">nullptr</span>)</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; {</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; fWidget = widget;</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; fWidget-&gt;<a class="code" href="classWidget.html#aa92462db80ed1dc8334910038cd262cc">setNeedsFullViewport</a>(<span class="keyword">true</span>);</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; }</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; Window::_addWidget(widget);</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; }</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <span class="keywordtype">void</span> _removeWidget(<a class="code" href="classWidget.html">Widget</a>* widget)<span class="keyword"> override</span></div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="keyword"> </span>{</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keywordflow">if</span> (fWidget == widget)</div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; {</div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; fWidget-&gt;<a class="code" href="classWidget.html#aa92462db80ed1dc8334910038cd262cc">setNeedsFullViewport</a>(<span class="keyword">false</span>);</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; fWidget = <span class="keyword">nullptr</span>;</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; }</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; Window::_removeWidget(widget);</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; }</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"> 74</span>&#160; DISTRHO_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR(<a class="code" href="classStandaloneWindow.html">StandaloneWindow</a>)</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;};</div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;END_NAMESPACE_DGL</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="preprocessor">#endif // DGL_STANDALONE_WINDOW_HPP_INCLUDED</span></div>
<div class="ttc" id="classApp_html_acb8cbf3e285b91d0170ffe87df5989c5"><div class="ttname"><a href="classApp.html#acb8cbf3e285b91d0170ffe87df5989c5">App::App</a></div><div class="ttdeci">App()</div></div>
<div class="ttc" id="classApp_html_a94fa325175749054947480e1ae66b110"><div class="ttname"><a href="classApp.html#a94fa325175749054947480e1ae66b110">App::exec</a></div><div class="ttdeci">void exec()</div></div>
<div class="ttc" id="classWindow_html"><div class="ttname"><a href="classWindow.html">Window</a></div><div class="ttdef"><b>Definition:</b> Window.hpp:30</div></div>
<div class="ttc" id="classWidget_html_ab4d9e0156e455db3ff23730f82544daa"><div class="ttname"><a href="classWidget.html#ab4d9e0156e455db3ff23730f82544daa">Widget::setSize</a></div><div class="ttdeci">void setSize(uint width, uint height) noexcept</div></div>
<div class="ttc" id="classWidget_html_aa92462db80ed1dc8334910038cd262cc"><div class="ttname"><a href="classWidget.html#aa92462db80ed1dc8334910038cd262cc">Widget::setNeedsFullViewport</a></div><div class="ttdeci">void setNeedsFullViewport(bool yesNo) noexcept</div></div>
<div class="ttc" id="classStandaloneWindow_html"><div class="ttname"><a href="classStandaloneWindow.html">StandaloneWindow</a></div><div class="ttdef"><b>Definition:</b> StandaloneWindow.hpp:28</div></div>
<div class="ttc" id="classWidget_html"><div class="ttname"><a href="classWidget.html">Widget</a></div><div class="ttdef"><b>Definition:</b> Widget.hpp:51</div></div>
<div class="ttc" id="classApp_html"><div class="ttname"><a href="classApp.html">App</a></div><div class="ttdef"><b>Definition:</b> App.hpp:41</div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 539
- 0
Widget_8hpp_source.html View File

@@ -0,0 +1,539 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: dgl/Widget.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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</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>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_99893ac99dd47c2a73745483a12a725f.html">dgl</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">Widget.hpp</div> </div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> * DISTRHO Plugin Framework (DPF)</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright (C) 2012-2014 Filipe Coelho &lt;falktx@falktx.com&gt;</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * Permission to use, copy, modify, and/or distribute this software for any purpose with</span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * or without fee is hereby granted, provided that the above copyright notice and this</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * permission notice appear in all copies.</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * THE SOFTWARE IS PROVIDED &quot;AS IS&quot; AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> */</span></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"> 17</span>&#160;<span class="preprocessor">#ifndef DGL_WIDGET_HPP_INCLUDED</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="preprocessor">#define DGL_WIDGET_HPP_INCLUDED</span></div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;</div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="preprocessor">#include &quot;Geometry.hpp&quot;</span></div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;</div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;START_NAMESPACE_DGL</div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;</div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment">// Forward class names</span></div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;</div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="keyword">class </span><a class="code" href="classApp.html">App</a>;</div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="keyword">class </span><a class="code" href="classWindow.html">Window</a>;</div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="keyword">class </span><a class="code" href="classStandaloneWindow.html">StandaloneWindow</a>;</div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;</div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment">/**</span></div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="comment"> Base DGL Widget class.</span></div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="comment"> This is the base Widget class, from which all widgets are built.</span></div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="comment"> All widgets have a parent Window where they&#39;ll be drawn.</span></div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="comment"> This parent is never changed during the widget lifetime.</span></div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment"> Widgets receive events in relative coordinates.</span></div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment"> (0, 0) means its top-left position.</span></div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment"> Windows paint widgets in the order they are constructed.</span></div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment"> Early widgets are drawn first, at the bottom, then newer ones on top.</span></div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="comment"> Events are sent in the inverse order so that the top-most widget gets</span></div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment"> a chance to catch the event and stop its propagation.</span></div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="comment"> All widget event callbacks do nothing by default.</span></div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="classWidget.html"> 51</a></span>&#160;<span class="keyword">class </span><a class="code" href="classWidget.html">Widget</a></div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;{</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="keyword">public</span>:<span class="comment"></span></div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="comment"> Base event data.</span></div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="comment"> @a mod The currently active keyboard modifiers, @see Modifier.</span></div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="comment"> @a time The timestamp (if any).</span></div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="structWidget_1_1BaseEvent.html"> 59</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structWidget_1_1BaseEvent.html">BaseEvent</a> {</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; uint mod;</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; uint32_t time;</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="comment"> /** Constuctor */</span></div>
<div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="structWidget_1_1BaseEvent.html#a18c1114caca474cadefd9a13e2d9c693"> 64</a></span>&#160; <a class="code" href="structWidget_1_1BaseEvent.html#a18c1114caca474cadefd9a13e2d9c693">BaseEvent</a>() noexcept : mod(0x0), time(0) {}<span class="comment"></span></div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="comment"> /** Destuctor */</span></div>
<div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="structWidget_1_1BaseEvent.html#a58da172316b49f6d79b879b74ce5792a"> 66</a></span>&#160; <span class="keyword">virtual</span> <a class="code" href="structWidget_1_1BaseEvent.html#a58da172316b49f6d79b879b74ce5792a">~BaseEvent</a>() noexcept {}</div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; };</div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="comment"> Keyboard event.</span></div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="comment"> @a press True if the key was pressed, false if released.</span></div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="comment"> @a key Unicode point of the key pressed.</span></div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="comment"> @see onKeyboard</span></div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="structWidget_1_1KeyboardEvent.html"> 75</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structWidget_1_1KeyboardEvent.html">KeyboardEvent</a> : <a class="code" href="structWidget_1_1BaseEvent.html">BaseEvent</a> {</div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keywordtype">bool</span> press;</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; uint key;</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="comment"> /** Constuctor */</span></div>
<div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="structWidget_1_1KeyboardEvent.html#a5a55a296264b9999a7915f2633eacb10"> 80</a></span>&#160; <a class="code" href="structWidget_1_1KeyboardEvent.html#a5a55a296264b9999a7915f2633eacb10">KeyboardEvent</a>() noexcept</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; : <a class="code" href="structWidget_1_1BaseEvent.html">BaseEvent</a>(),</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; press(false),</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; key(0) {}</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; };</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="comment"> Special keyboard event.</span></div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="comment"> @a press True if the key was pressed, false if released.</span></div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="comment"> @a key The key pressed.</span></div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;<span class="comment"> @see onSpecial</span></div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="structWidget_1_1SpecialEvent.html"> 92</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structWidget_1_1SpecialEvent.html">SpecialEvent</a> : <a class="code" href="structWidget_1_1BaseEvent.html">BaseEvent</a> {</div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="keywordtype">bool</span> press;</div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; Key key;</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;<span class="comment"> /** Constuctor */</span></div>
<div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="structWidget_1_1SpecialEvent.html#aabddc200eb8494dccac663b83248b14b"> 97</a></span>&#160; <a class="code" href="structWidget_1_1SpecialEvent.html#aabddc200eb8494dccac663b83248b14b">SpecialEvent</a>() noexcept</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; : <a class="code" href="structWidget_1_1BaseEvent.html">BaseEvent</a>(),</div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; press(false),</div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; key(Key(0)) {}</div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; };</div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="comment"> Mouse event.</span></div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<span class="comment"> @a button The button number (1 = left, 2 = middle, 3 = right).</span></div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<span class="comment"> @a press True if the key was pressed, false if released.</span></div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="comment"> @a pos The widget-relative coordinates of the pointer.</span></div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;<span class="comment"> @see onMouse</span></div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00110"></a><span class="lineno"><a class="line" href="structWidget_1_1MouseEvent.html"> 110</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structWidget_1_1MouseEvent.html">MouseEvent</a> : <a class="code" href="structWidget_1_1BaseEvent.html">BaseEvent</a> {</div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <span class="keywordtype">int</span> button;</div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <span class="keywordtype">bool</span> press;</div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <a class="code" href="classPoint.html">Point&lt;int&gt;</a> pos;</div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;<span class="comment"> /** Constuctor */</span></div>
<div class="line"><a name="l00116"></a><span class="lineno"><a class="line" href="structWidget_1_1MouseEvent.html#aa37fee8a593c62c53e4ca5c67ad9278f"> 116</a></span>&#160; <a class="code" href="structWidget_1_1MouseEvent.html#aa37fee8a593c62c53e4ca5c67ad9278f">MouseEvent</a>() noexcept</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; : <a class="code" href="structWidget_1_1BaseEvent.html">BaseEvent</a>(),</div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; button(0),</div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; press(false),</div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; pos(0, 0) {}</div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; };</div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;<span class="comment"> Mouse motion event.</span></div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;<span class="comment"> @a pos The widget-relative coordinates of the pointer.</span></div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;<span class="comment"> @see onMotion</span></div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00128"></a><span class="lineno"><a class="line" href="structWidget_1_1MotionEvent.html"> 128</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structWidget_1_1MotionEvent.html">MotionEvent</a> : <a class="code" href="structWidget_1_1BaseEvent.html">BaseEvent</a> {</div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <a class="code" href="classPoint.html">Point&lt;int&gt;</a> pos;</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;<span class="comment"> /** Constuctor */</span></div>
<div class="line"><a name="l00132"></a><span class="lineno"><a class="line" href="structWidget_1_1MotionEvent.html#a0d2bf8f5c66002bb129968f10e0cc082"> 132</a></span>&#160; <a class="code" href="structWidget_1_1MotionEvent.html#a0d2bf8f5c66002bb129968f10e0cc082">MotionEvent</a>() noexcept</div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; : <a class="code" href="structWidget_1_1BaseEvent.html">BaseEvent</a>(),</div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; pos(0, 0) {}</div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; };</div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;<span class="comment"> Mouse scroll event.</span></div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;<span class="comment"> @a pos The widget-relative coordinates of the pointer.</span></div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;<span class="comment"> @a delta The scroll distance.</span></div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;<span class="comment"> @see onScroll</span></div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00143"></a><span class="lineno"><a class="line" href="structWidget_1_1ScrollEvent.html"> 143</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structWidget_1_1ScrollEvent.html">ScrollEvent</a> : <a class="code" href="structWidget_1_1BaseEvent.html">BaseEvent</a> {</div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <a class="code" href="classPoint.html">Point&lt;int&gt;</a> pos;</div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; <a class="code" href="classPoint.html">Point&lt;float&gt;</a> delta;</div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;<span class="comment"> /** Constuctor */</span></div>
<div class="line"><a name="l00148"></a><span class="lineno"><a class="line" href="structWidget_1_1ScrollEvent.html#abee88b10b7b031ddcca1454e064a3cc3"> 148</a></span>&#160; <a class="code" href="structWidget_1_1ScrollEvent.html#abee88b10b7b031ddcca1454e064a3cc3">ScrollEvent</a>() noexcept</div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; : <a class="code" href="structWidget_1_1BaseEvent.html">BaseEvent</a>(),</div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; pos(0, 0),</div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; delta(0.0f, 0.0f) {}</div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; };</div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;<span class="comment"> Resize event.</span></div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;<span class="comment"> @a size The new widget size.</span></div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;<span class="comment"> @a oldSize The previous size, may be null.</span></div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;<span class="comment"> @see onResize</span></div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00160"></a><span class="lineno"><a class="line" href="structWidget_1_1ResizeEvent.html"> 160</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structWidget_1_1ResizeEvent.html">ResizeEvent</a> {</div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <a class="code" href="classSize.html">Size&lt;uint&gt;</a> size;</div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <a class="code" href="classSize.html">Size&lt;uint&gt;</a> oldSize;</div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;<span class="comment"> /** Constuctor */</span></div>
<div class="line"><a name="l00165"></a><span class="lineno"><a class="line" href="structWidget_1_1ResizeEvent.html#ac92abcdb2820807cd3d020864b96b3bd"> 165</a></span>&#160; <a class="code" href="structWidget_1_1ResizeEvent.html#ac92abcdb2820807cd3d020864b96b3bd">ResizeEvent</a>() noexcept</div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; : size(0, 0),</div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; oldSize(0, 0) {}</div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; };</div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;<span class="comment"> Constructor.</span></div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; <span class="keyword">explicit</span> <a class="code" href="classWidget.html#a556f58c8ff8a80ae22cc4df7e5f8218c">Widget</a>(<a class="code" href="classWindow.html">Window</a>&amp; parent);</div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;<span class="comment"> Destructor.</span></div>
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; <span class="keyword">virtual</span> <a class="code" href="classWidget.html#a714cf798aadb4d615f6f60a355382c02">~Widget</a>();</div>
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160;<span class="comment"> Check if this widget is visible within its parent window.</span></div>
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;<span class="comment"> Invisible widgets do not receive events except resize.</span></div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classWidget.html#a234a8ee8a685dc211ad11f492f0dbc71">isVisible</a>() const noexcept;</div>
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;<span class="comment"> Set widget visible (or not) according to @a yesNo.</span></div>
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classWidget.html#a0bec84d07a6c508e069da9821993d1c2">setVisible</a>(<span class="keywordtype">bool</span> yesNo);</div>
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160;<span class="comment"> Show widget.</span></div>
<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;<span class="comment"> This is the same as calling setVisible(true).</span></div>
<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classWidget.html#a25ff178539e226b5f30ef0335d060f2b">show</a>();</div>
<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;<span class="comment"> Hide widget.</span></div>
<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160;<span class="comment"> This is the same as calling setVisible(false).</span></div>
<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classWidget.html#a4a2f8eebacdd20db505b838f1a118c6b">hide</a>();</div>
<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160;<span class="comment"> Get width.</span></div>
<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; uint <a class="code" href="classWidget.html#a169c317caf734c6664494a573e427b40">getWidth</a>() const noexcept;</div>
<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160;<span class="comment"> Get height.</span></div>
<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; uint <a class="code" href="classWidget.html#aa20f6dc096a8836706173f31324c4db8">getHeight</a>() const noexcept;</div>
<div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160;<span class="comment"> Get size.</span></div>
<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; const <a class="code" href="classSize.html">Size</a>&lt;uint&gt;&amp; <a class="code" href="classWidget.html#ae375b05cd76f63c957949e9121ff56bb">getSize</a>() const noexcept;</div>
<div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160;<span class="comment"> Set width.</span></div>
<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classWidget.html#aed80a9cbc4a13c01641f35dd3d8688ea">setWidth</a>(uint width) noexcept;</div>
<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160;<span class="comment"> Set height.</span></div>
<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classWidget.html#ac6d2e6cbb2ff96f3645493d804af07f7">setHeight</a>(uint height) noexcept;</div>
<div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160;<span class="comment"> Set size using @a width and @a height values.</span></div>
<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classWidget.html#ab4d9e0156e455db3ff23730f82544daa">setSize</a>(uint width, uint height) noexcept;</div>
<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160;<span class="comment"> Set size.</span></div>
<div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classWidget.html#ab4d9e0156e455db3ff23730f82544daa">setSize</a>(const <a class="code" href="classSize.html">Size</a>&lt;uint&gt;&amp; size) noexcept;</div>
<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;<span class="comment"> Get absolute X.</span></div>
<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; <span class="keywordtype">int</span> <a class="code" href="classWidget.html#a4e41debfe323ee307706af42818636dd">getAbsoluteX</a>() const noexcept;</div>
<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160;<span class="comment"> Get absolute Y.</span></div>
<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; <span class="keywordtype">int</span> <a class="code" href="classWidget.html#af2ee4713e052b65e839da667aec4e05a">getAbsoluteY</a>() const noexcept;</div>
<div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160;<span class="comment"> Get absolute position.</span></div>
<div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; const <a class="code" href="classPoint.html">Point</a>&lt;<span class="keywordtype">int</span>&gt;&amp; <a class="code" href="classWidget.html#ae952149aa2b1661ebc9712547ac5cc04">getAbsolutePos</a>() const noexcept;</div>
<div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160;<span class="comment"> Set absolute X.</span></div>
<div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classWidget.html#a56b6c0c92551d25bafa54be5d185e4f6">setAbsoluteX</a>(<span class="keywordtype">int</span> x) noexcept;</div>
<div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160;<span class="comment"> Set absolute Y.</span></div>
<div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classWidget.html#a65f48c414326491ddb3bbb70bf783829">setAbsoluteY</a>(<span class="keywordtype">int</span> y) noexcept;</div>
<div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160;<span class="comment"> Set absolute position using @a x and @a y values.</span></div>
<div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classWidget.html#a1f58ab9f12f0e88da6bf600c504b53c5">setAbsolutePos</a>(<span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y) noexcept;</div>
<div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160;<span class="comment"> Set absolute position.</span></div>
<div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classWidget.html#a1f58ab9f12f0e88da6bf600c504b53c5">setAbsolutePos</a>(const <a class="code" href="classPoint.html">Point</a>&lt;<span class="keywordtype">int</span>&gt;&amp; pos) noexcept;</div>
<div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160;<span class="comment"> Get this widget&#39;s window application.</span></div>
<div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160;<span class="comment"> Same as calling getParentWindow().getApp().</span></div>
<div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; <a class="code" href="classApp.html">App</a>&amp; <a class="code" href="classWidget.html#afa1fe45064cf9bb107fe1dcdb2384d33">getParentApp</a>() const noexcept;</div>
<div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160;<span class="comment"> Get parent window, as passed in the constructor.</span></div>
<div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; <a class="code" href="classWindow.html">Window</a>&amp; <a class="code" href="classWidget.html#a0e0b0b2293bb63b2d84774542cc6a421">getParentWindow</a>() const noexcept;</div>
<div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160;<span class="comment"> Check if this widget contains the point defined by @a x and @a y.</span></div>
<div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classWidget.html#a655f9dac3838b52a3deec1a4b9e6001b">contains</a>(<span class="keywordtype">int</span> x, <span class="keywordtype">int</span> y) const noexcept;</div>
<div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160;<span class="comment"> Check if this widget contains the point @a pos.</span></div>
<div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classWidget.html#a655f9dac3838b52a3deec1a4b9e6001b">contains</a>(const <a class="code" href="classPoint.html">Point</a>&lt;<span class="keywordtype">int</span>&gt;&amp; pos) const noexcept;</div>
<div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160;<span class="comment"> Tell this widget&#39;s window to repaint itself.</span></div>
<div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classWidget.html#a808fa28a78ec9e850d5e86f63b3be26d">repaint</a>() noexcept;</div>
<div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160;<span class="comment"> Get the Id associated with this widget.</span></div>
<div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160;<span class="comment"> @see setId</span></div>
<div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; uint <a class="code" href="classWidget.html#a3ee6b2824e3f3719c1c9b3d070385f49">getId</a>() const noexcept;</div>
<div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160;<span class="comment"> Set an Id to be associated with this widget.</span></div>
<div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160;<span class="comment"> @see getId</span></div>
<div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classWidget.html#abfba3652559de84ba1ae9ccbd3d35e31">setId</a>(uint <span class="keywordtype">id</span>) noexcept;</div>
<div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160;</div>
<div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160;protected:<span class="comment"></span></div>
<div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160;<span class="comment"> A function called to draw the view contents with OpenGL.</span></div>
<div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; virtual <span class="keywordtype">void</span> <a class="code" href="classWidget.html#ae1554f348fe3b2f9d4c3c5c4f9ec55bd">onDisplay</a>() = 0;</div>
<div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160;<span class="comment"> A function called when a key is pressed or released.</span></div>
<div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160;<span class="comment"> @return True to stop event propagation, false otherwise.</span></div>
<div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; virtual <span class="keywordtype">bool</span> <a class="code" href="classWidget.html#a9fa874aede538b41348f1029524aea11">onKeyboard</a>(const KeyboardEvent&amp;);</div>
<div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160;<span class="comment"> A function called when a special key is pressed or released.</span></div>
<div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160;<span class="comment"> @return True to stop event propagation, false otherwise.</span></div>
<div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; virtual <span class="keywordtype">bool</span> <a class="code" href="classWidget.html#a3b42652fcb2f95c6f86bdd43a1727507">onSpecial</a>(const SpecialEvent&amp;);</div>
<div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160;<span class="comment"> A function called when a mouse button is pressed or released.</span></div>
<div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160;<span class="comment"> @return True to stop event propagation, false otherwise.</span></div>
<div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; virtual <span class="keywordtype">bool</span> <a class="code" href="classWidget.html#a097ec1d56a06bdc9e0a4e54880def378">onMouse</a>(const MouseEvent&amp;);</div>
<div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160;<span class="comment"> A function called when the pointer moves.</span></div>
<div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160;<span class="comment"> @return True to stop event propagation, false otherwise.</span></div>
<div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; virtual <span class="keywordtype">bool</span> <a class="code" href="classWidget.html#a655569fb78a598652e9f24cefa1fe4a5">onMotion</a>(const MotionEvent&amp;);</div>
<div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160;<span class="comment"> A function called on scrolling (e.g. mouse wheel or track pad).</span></div>
<div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160;<span class="comment"> @return True to stop event propagation, false otherwise.</span></div>
<div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; virtual <span class="keywordtype">bool</span> <a class="code" href="classWidget.html#a0d78d28bd4a98c3a016a38091b2d4185">onScroll</a>(const ScrollEvent&amp;);</div>
<div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160;<span class="comment"> A function called when the widget is resized.</span></div>
<div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; virtual <span class="keywordtype">void</span> <a class="code" href="classWidget.html#acc0365ec4b9245bdffb8d0285be55dea">onResize</a>(const ResizeEvent&amp;);</div>
<div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160;<span class="comment"> Tell the parent window this widget needs the full viewport.</span></div>
<div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160;<span class="comment"> When enabled, the local widget coordinates are ignored.</span></div>
<div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160;<span class="comment"> @note: This is an internal function;</span></div>
<div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160;<span class="comment"> You do not need it under normal circumstances.</span></div>
<div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classWidget.html#aa92462db80ed1dc8334910038cd262cc">setNeedsFullViewport</a>(<span class="keywordtype">bool</span> yesNo) noexcept;</div>
<div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160;<span class="comment"> Tell the parent window this widget needs scaling.</span></div>
<div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160;<span class="comment"> When enabled, the widget viewport is scaled to match width and height.</span></div>
<div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160;<span class="comment"> @note: This is an internal function;</span></div>
<div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160;<span class="comment"> You do not need it under normal circumstances.</span></div>
<div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classWidget.html#a2ce358088e8f3b65621afd02c675bad8">setNeedsScaling</a>(<span class="keywordtype">bool</span> yesNo) noexcept;</div>
<div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160;</div>
<div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160;private:</div>
<div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; <a class="code" href="classWindow.html">Window</a>&amp; fParent;</div>
<div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; <span class="keywordtype">bool</span> fNeedsFullViewport;</div>
<div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; <span class="keywordtype">bool</span> fNeedsScaling;</div>
<div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; <span class="keywordtype">bool</span> fVisible;</div>
<div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; uint fId;</div>
<div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; <a class="code" href="classPoint.html">Point</a>&lt;<span class="keywordtype">int</span>&gt; fAbsolutePos;</div>
<div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; <a class="code" href="classSize.html">Size</a>&lt;uint&gt; fSize;</div>
<div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160;</div>
<div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; friend class <a class="code" href="classWindow.html">Window</a>;</div>
<div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; friend class <a class="code" href="classStandaloneWindow.html">StandaloneWindow</a>;</div>
<div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160;</div>
<div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; DISTRHO_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR(<a class="code" href="classWidget.html">Widget</a>)</div>
<div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160;};</div>
<div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160;</div>
<div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160;</div>
<div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160;END_NAMESPACE_DGL</div>
<div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160;</div>
<div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160;<span class="preprocessor">#endif // DGL_WIDGET_HPP_INCLUDED</span></div>
<div class="ttc" id="classWidget_html_a0e0b0b2293bb63b2d84774542cc6a421"><div class="ttname"><a href="classWidget.html#a0e0b0b2293bb63b2d84774542cc6a421">Widget::getParentWindow</a></div><div class="ttdeci">Window &amp; getParentWindow() const noexcept</div></div>
<div class="ttc" id="classWidget_html_ae952149aa2b1661ebc9712547ac5cc04"><div class="ttname"><a href="classWidget.html#ae952149aa2b1661ebc9712547ac5cc04">Widget::getAbsolutePos</a></div><div class="ttdeci">const Point&lt; int &gt; &amp; getAbsolutePos() const noexcept</div></div>
<div class="ttc" id="classWidget_html_a3b42652fcb2f95c6f86bdd43a1727507"><div class="ttname"><a href="classWidget.html#a3b42652fcb2f95c6f86bdd43a1727507">Widget::onSpecial</a></div><div class="ttdeci">virtual bool onSpecial(const SpecialEvent &amp;)</div></div>
<div class="ttc" id="classWidget_html_a0d78d28bd4a98c3a016a38091b2d4185"><div class="ttname"><a href="classWidget.html#a0d78d28bd4a98c3a016a38091b2d4185">Widget::onScroll</a></div><div class="ttdeci">virtual bool onScroll(const ScrollEvent &amp;)</div></div>
<div class="ttc" id="classWidget_html_a097ec1d56a06bdc9e0a4e54880def378"><div class="ttname"><a href="classWidget.html#a097ec1d56a06bdc9e0a4e54880def378">Widget::onMouse</a></div><div class="ttdeci">virtual bool onMouse(const MouseEvent &amp;)</div></div>
<div class="ttc" id="structWidget_1_1MouseEvent_html_aa37fee8a593c62c53e4ca5c67ad9278f"><div class="ttname"><a href="structWidget_1_1MouseEvent.html#aa37fee8a593c62c53e4ca5c67ad9278f">Widget::MouseEvent::MouseEvent</a></div><div class="ttdeci">MouseEvent() noexcept</div><div class="ttdef"><b>Definition:</b> Widget.hpp:116</div></div>
<div class="ttc" id="structWidget_1_1SpecialEvent_html"><div class="ttname"><a href="structWidget_1_1SpecialEvent.html">Widget::SpecialEvent</a></div><div class="ttdef"><b>Definition:</b> Widget.hpp:92</div></div>
<div class="ttc" id="structWidget_1_1ScrollEvent_html_abee88b10b7b031ddcca1454e064a3cc3"><div class="ttname"><a href="structWidget_1_1ScrollEvent.html#abee88b10b7b031ddcca1454e064a3cc3">Widget::ScrollEvent::ScrollEvent</a></div><div class="ttdeci">ScrollEvent() noexcept</div><div class="ttdef"><b>Definition:</b> Widget.hpp:148</div></div>
<div class="ttc" id="structWidget_1_1ResizeEvent_html_ac92abcdb2820807cd3d020864b96b3bd"><div class="ttname"><a href="structWidget_1_1ResizeEvent.html#ac92abcdb2820807cd3d020864b96b3bd">Widget::ResizeEvent::ResizeEvent</a></div><div class="ttdeci">ResizeEvent() noexcept</div><div class="ttdef"><b>Definition:</b> Widget.hpp:165</div></div>
<div class="ttc" id="classWidget_html_abfba3652559de84ba1ae9ccbd3d35e31"><div class="ttname"><a href="classWidget.html#abfba3652559de84ba1ae9ccbd3d35e31">Widget::setId</a></div><div class="ttdeci">void setId(uint id) noexcept</div></div>
<div class="ttc" id="classWindow_html"><div class="ttname"><a href="classWindow.html">Window</a></div><div class="ttdef"><b>Definition:</b> Window.hpp:30</div></div>
<div class="ttc" id="classWidget_html_ae1554f348fe3b2f9d4c3c5c4f9ec55bd"><div class="ttname"><a href="classWidget.html#ae1554f348fe3b2f9d4c3c5c4f9ec55bd">Widget::onDisplay</a></div><div class="ttdeci">virtual void onDisplay()=0</div></div>
<div class="ttc" id="classWidget_html_a169c317caf734c6664494a573e427b40"><div class="ttname"><a href="classWidget.html#a169c317caf734c6664494a573e427b40">Widget::getWidth</a></div><div class="ttdeci">uint getWidth() const noexcept</div></div>
<div class="ttc" id="structWidget_1_1MotionEvent_html_a0d2bf8f5c66002bb129968f10e0cc082"><div class="ttname"><a href="structWidget_1_1MotionEvent.html#a0d2bf8f5c66002bb129968f10e0cc082">Widget::MotionEvent::MotionEvent</a></div><div class="ttdeci">MotionEvent() noexcept</div><div class="ttdef"><b>Definition:</b> Widget.hpp:132</div></div>
<div class="ttc" id="classPoint_html"><div class="ttname"><a href="classPoint.html">Point&lt; int &gt;</a></div></div>
<div class="ttc" id="classWidget_html_a655f9dac3838b52a3deec1a4b9e6001b"><div class="ttname"><a href="classWidget.html#a655f9dac3838b52a3deec1a4b9e6001b">Widget::contains</a></div><div class="ttdeci">bool contains(int x, int y) const noexcept</div></div>
<div class="ttc" id="classWidget_html_ab4d9e0156e455db3ff23730f82544daa"><div class="ttname"><a href="classWidget.html#ab4d9e0156e455db3ff23730f82544daa">Widget::setSize</a></div><div class="ttdeci">void setSize(uint width, uint height) noexcept</div></div>
<div class="ttc" id="structWidget_1_1KeyboardEvent_html_a5a55a296264b9999a7915f2633eacb10"><div class="ttname"><a href="structWidget_1_1KeyboardEvent.html#a5a55a296264b9999a7915f2633eacb10">Widget::KeyboardEvent::KeyboardEvent</a></div><div class="ttdeci">KeyboardEvent() noexcept</div><div class="ttdef"><b>Definition:</b> Widget.hpp:80</div></div>
<div class="ttc" id="structWidget_1_1KeyboardEvent_html"><div class="ttname"><a href="structWidget_1_1KeyboardEvent.html">Widget::KeyboardEvent</a></div><div class="ttdef"><b>Definition:</b> Widget.hpp:75</div></div>
<div class="ttc" id="classWidget_html_aa92462db80ed1dc8334910038cd262cc"><div class="ttname"><a href="classWidget.html#aa92462db80ed1dc8334910038cd262cc">Widget::setNeedsFullViewport</a></div><div class="ttdeci">void setNeedsFullViewport(bool yesNo) noexcept</div></div>
<div class="ttc" id="classWidget_html_a1f58ab9f12f0e88da6bf600c504b53c5"><div class="ttname"><a href="classWidget.html#a1f58ab9f12f0e88da6bf600c504b53c5">Widget::setAbsolutePos</a></div><div class="ttdeci">void setAbsolutePos(int x, int y) noexcept</div></div>
<div class="ttc" id="classWidget_html_a714cf798aadb4d615f6f60a355382c02"><div class="ttname"><a href="classWidget.html#a714cf798aadb4d615f6f60a355382c02">Widget::~Widget</a></div><div class="ttdeci">virtual ~Widget()</div></div>
<div class="ttc" id="classWidget_html_a4e41debfe323ee307706af42818636dd"><div class="ttname"><a href="classWidget.html#a4e41debfe323ee307706af42818636dd">Widget::getAbsoluteX</a></div><div class="ttdeci">int getAbsoluteX() const noexcept</div></div>
<div class="ttc" id="classWidget_html_a56b6c0c92551d25bafa54be5d185e4f6"><div class="ttname"><a href="classWidget.html#a56b6c0c92551d25bafa54be5d185e4f6">Widget::setAbsoluteX</a></div><div class="ttdeci">void setAbsoluteX(int x) noexcept</div></div>
<div class="ttc" id="classStandaloneWindow_html"><div class="ttname"><a href="classStandaloneWindow.html">StandaloneWindow</a></div><div class="ttdef"><b>Definition:</b> StandaloneWindow.hpp:28</div></div>
<div class="ttc" id="classSize_html"><div class="ttname"><a href="classSize.html">Size&lt; uint &gt;</a></div></div>
<div class="ttc" id="classWidget_html_afa1fe45064cf9bb107fe1dcdb2384d33"><div class="ttname"><a href="classWidget.html#afa1fe45064cf9bb107fe1dcdb2384d33">Widget::getParentApp</a></div><div class="ttdeci">App &amp; getParentApp() const noexcept</div></div>
<div class="ttc" id="classWidget_html_acc0365ec4b9245bdffb8d0285be55dea"><div class="ttname"><a href="classWidget.html#acc0365ec4b9245bdffb8d0285be55dea">Widget::onResize</a></div><div class="ttdeci">virtual void onResize(const ResizeEvent &amp;)</div></div>
<div class="ttc" id="structWidget_1_1MotionEvent_html"><div class="ttname"><a href="structWidget_1_1MotionEvent.html">Widget::MotionEvent</a></div><div class="ttdef"><b>Definition:</b> Widget.hpp:128</div></div>
<div class="ttc" id="classWidget_html_a65f48c414326491ddb3bbb70bf783829"><div class="ttname"><a href="classWidget.html#a65f48c414326491ddb3bbb70bf783829">Widget::setAbsoluteY</a></div><div class="ttdeci">void setAbsoluteY(int y) noexcept</div></div>
<div class="ttc" id="classWidget_html_ac6d2e6cbb2ff96f3645493d804af07f7"><div class="ttname"><a href="classWidget.html#ac6d2e6cbb2ff96f3645493d804af07f7">Widget::setHeight</a></div><div class="ttdeci">void setHeight(uint height) noexcept</div></div>
<div class="ttc" id="classWidget_html_ae375b05cd76f63c957949e9121ff56bb"><div class="ttname"><a href="classWidget.html#ae375b05cd76f63c957949e9121ff56bb">Widget::getSize</a></div><div class="ttdeci">const Size&lt; uint &gt; &amp; getSize() const noexcept</div></div>
<div class="ttc" id="classWidget_html_a234a8ee8a685dc211ad11f492f0dbc71"><div class="ttname"><a href="classWidget.html#a234a8ee8a685dc211ad11f492f0dbc71">Widget::isVisible</a></div><div class="ttdeci">bool isVisible() const noexcept</div></div>
<div class="ttc" id="classWidget_html_a4a2f8eebacdd20db505b838f1a118c6b"><div class="ttname"><a href="classWidget.html#a4a2f8eebacdd20db505b838f1a118c6b">Widget::hide</a></div><div class="ttdeci">void hide()</div></div>
<div class="ttc" id="structWidget_1_1ResizeEvent_html"><div class="ttname"><a href="structWidget_1_1ResizeEvent.html">Widget::ResizeEvent</a></div><div class="ttdef"><b>Definition:</b> Widget.hpp:160</div></div>
<div class="ttc" id="structWidget_1_1BaseEvent_html"><div class="ttname"><a href="structWidget_1_1BaseEvent.html">Widget::BaseEvent</a></div><div class="ttdef"><b>Definition:</b> Widget.hpp:59</div></div>
<div class="ttc" id="structWidget_1_1BaseEvent_html_a18c1114caca474cadefd9a13e2d9c693"><div class="ttname"><a href="structWidget_1_1BaseEvent.html#a18c1114caca474cadefd9a13e2d9c693">Widget::BaseEvent::BaseEvent</a></div><div class="ttdeci">BaseEvent() noexcept</div><div class="ttdef"><b>Definition:</b> Widget.hpp:64</div></div>
<div class="ttc" id="classWidget_html_a655569fb78a598652e9f24cefa1fe4a5"><div class="ttname"><a href="classWidget.html#a655569fb78a598652e9f24cefa1fe4a5">Widget::onMotion</a></div><div class="ttdeci">virtual bool onMotion(const MotionEvent &amp;)</div></div>
<div class="ttc" id="classWidget_html"><div class="ttname"><a href="classWidget.html">Widget</a></div><div class="ttdef"><b>Definition:</b> Widget.hpp:51</div></div>
<div class="ttc" id="classWidget_html_a9fa874aede538b41348f1029524aea11"><div class="ttname"><a href="classWidget.html#a9fa874aede538b41348f1029524aea11">Widget::onKeyboard</a></div><div class="ttdeci">virtual bool onKeyboard(const KeyboardEvent &amp;)</div></div>
<div class="ttc" id="structWidget_1_1MouseEvent_html"><div class="ttname"><a href="structWidget_1_1MouseEvent.html">Widget::MouseEvent</a></div><div class="ttdef"><b>Definition:</b> Widget.hpp:110</div></div>
<div class="ttc" id="structWidget_1_1BaseEvent_html_a58da172316b49f6d79b879b74ce5792a"><div class="ttname"><a href="structWidget_1_1BaseEvent.html#a58da172316b49f6d79b879b74ce5792a">Widget::BaseEvent::~BaseEvent</a></div><div class="ttdeci">virtual ~BaseEvent() noexcept</div><div class="ttdef"><b>Definition:</b> Widget.hpp:66</div></div>
<div class="ttc" id="classWidget_html_a3ee6b2824e3f3719c1c9b3d070385f49"><div class="ttname"><a href="classWidget.html#a3ee6b2824e3f3719c1c9b3d070385f49">Widget::getId</a></div><div class="ttdeci">uint getId() const noexcept</div></div>
<div class="ttc" id="classWidget_html_aa20f6dc096a8836706173f31324c4db8"><div class="ttname"><a href="classWidget.html#aa20f6dc096a8836706173f31324c4db8">Widget::getHeight</a></div><div class="ttdeci">uint getHeight() const noexcept</div></div>
<div class="ttc" id="classWidget_html_a2ce358088e8f3b65621afd02c675bad8"><div class="ttname"><a href="classWidget.html#a2ce358088e8f3b65621afd02c675bad8">Widget::setNeedsScaling</a></div><div class="ttdeci">void setNeedsScaling(bool yesNo) noexcept</div></div>
<div class="ttc" id="structWidget_1_1ScrollEvent_html"><div class="ttname"><a href="structWidget_1_1ScrollEvent.html">Widget::ScrollEvent</a></div><div class="ttdef"><b>Definition:</b> Widget.hpp:143</div></div>
<div class="ttc" id="classWidget_html_a556f58c8ff8a80ae22cc4df7e5f8218c"><div class="ttname"><a href="classWidget.html#a556f58c8ff8a80ae22cc4df7e5f8218c">Widget::Widget</a></div><div class="ttdeci">Widget(Window &amp;parent)</div></div>
<div class="ttc" id="classWidget_html_aed80a9cbc4a13c01641f35dd3d8688ea"><div class="ttname"><a href="classWidget.html#aed80a9cbc4a13c01641f35dd3d8688ea">Widget::setWidth</a></div><div class="ttdeci">void setWidth(uint width) noexcept</div></div>
<div class="ttc" id="structWidget_1_1SpecialEvent_html_aabddc200eb8494dccac663b83248b14b"><div class="ttname"><a href="structWidget_1_1SpecialEvent.html#aabddc200eb8494dccac663b83248b14b">Widget::SpecialEvent::SpecialEvent</a></div><div class="ttdeci">SpecialEvent() noexcept</div><div class="ttdef"><b>Definition:</b> Widget.hpp:97</div></div>
<div class="ttc" id="classWidget_html_a808fa28a78ec9e850d5e86f63b3be26d"><div class="ttname"><a href="classWidget.html#a808fa28a78ec9e850d5e86f63b3be26d">Widget::repaint</a></div><div class="ttdeci">void repaint() noexcept</div></div>
<div class="ttc" id="classWidget_html_a25ff178539e226b5f30ef0335d060f2b"><div class="ttname"><a href="classWidget.html#a25ff178539e226b5f30ef0335d060f2b">Widget::show</a></div><div class="ttdeci">void show()</div></div>
<div class="ttc" id="classWidget_html_a0bec84d07a6c508e069da9821993d1c2"><div class="ttname"><a href="classWidget.html#a0bec84d07a6c508e069da9821993d1c2">Widget::setVisible</a></div><div class="ttdeci">void setVisible(bool yesNo)</div></div>
<div class="ttc" id="classApp_html"><div class="ttname"><a href="classApp.html">App</a></div><div class="ttdef"><b>Definition:</b> App.hpp:41</div></div>
<div class="ttc" id="classWidget_html_af2ee4713e052b65e839da667aec4e05a"><div class="ttname"><a href="classWidget.html#af2ee4713e052b65e839da667aec4e05a">Widget::getAbsoluteY</a></div><div class="ttdeci">int getAbsoluteY() const noexcept</div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 242
- 0
Window_8hpp_source.html View File

@@ -0,0 +1,242 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: dgl/Window.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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</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>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_99893ac99dd47c2a73745483a12a725f.html">dgl</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">Window.hpp</div> </div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> * DISTRHO Plugin Framework (DPF)</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright (C) 2012-2014 Filipe Coelho &lt;falktx@falktx.com&gt;</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * Permission to use, copy, modify, and/or distribute this software for any purpose with</span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * or without fee is hereby granted, provided that the above copyright notice and this</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * permission notice appear in all copies.</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * THE SOFTWARE IS PROVIDED &quot;AS IS&quot; AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> */</span></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"> 17</span>&#160;<span class="preprocessor">#ifndef DGL_WINDOW_HPP_INCLUDED</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="preprocessor">#define DGL_WINDOW_HPP_INCLUDED</span></div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;</div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="preprocessor">#include &quot;Geometry.hpp&quot;</span></div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;</div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;START_NAMESPACE_DGL</div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;</div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;</div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="keyword">class </span><a class="code" href="classApp.html">App</a>;</div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="keyword">class </span><a class="code" href="classWidget.html">Widget</a>;</div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="keyword">class </span><a class="code" href="classStandaloneWindow.html">StandaloneWindow</a>;</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="classWindow.html"> 30</a></span>&#160;<span class="keyword">class </span><a class="code" href="classWindow.html">Window</a></div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;{</div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="keyword">public</span>:<span class="comment"></span></div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="comment"> File browser options.</span></div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00036"></a><span class="lineno"><a class="line" href="structWindow_1_1FileBrowserOptions.html"> 36</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structWindow_1_1FileBrowserOptions.html">FileBrowserOptions</a> {</div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span>* startDir;</div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span>* title;</div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; uint width;</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; uint height;</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment"> /**</span></div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment"> File browser buttons.</span></div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment"> 0 means hidden.</span></div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="comment"> 1 means visible and unchecked.</span></div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment"> 2 means visible and checked.</span></div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="structWindow_1_1FileBrowserOptions_1_1Buttons.html"> 49</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structWindow_1_1FileBrowserOptions_1_1Buttons.html">Buttons</a> {</div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; uint listAllFiles;</div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; uint showHidden;</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; uint showPlaces;</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="comment"> /** Constuctor for default values */</span></div>
<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="structWindow_1_1FileBrowserOptions_1_1Buttons.html#a0483d4ab39bdec4f6e69699fb3c272dd"> 55</a></span>&#160; <a class="code" href="structWindow_1_1FileBrowserOptions_1_1Buttons.html#a0483d4ab39bdec4f6e69699fb3c272dd">Buttons</a>()</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; : listAllFiles(2),</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; showHidden(1),</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; showPlaces(1) {}</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; } buttons;</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="comment"> /** Constuctor for default values */</span></div>
<div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="structWindow_1_1FileBrowserOptions.html#ad34fe0200a1bd00028f7753aeba9b2fc"> 62</a></span>&#160; <a class="code" href="structWindow_1_1FileBrowserOptions.html#ad34fe0200a1bd00028f7753aeba9b2fc">FileBrowserOptions</a>()</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; : startDir(nullptr),</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; title(nullptr),</div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; width(0),</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; height(0),</div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; buttons() {}</div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; };</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="keyword">explicit</span> <a class="code" href="classWindow.html">Window</a>(<a class="code" href="classApp.html">App</a>&amp; app);</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keyword">explicit</span> <a class="code" href="classWindow.html">Window</a>(<a class="code" href="classApp.html">App</a>&amp; app, <a class="code" href="classWindow.html">Window</a>&amp; parent);</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keyword">explicit</span> <a class="code" href="classWindow.html">Window</a>(<a class="code" href="classApp.html">App</a>&amp; app, intptr_t parentId);</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keyword">virtual</span> ~<a class="code" href="classWindow.html">Window</a>();</div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="keywordtype">void</span> show();</div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keywordtype">void</span> hide();</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keywordtype">void</span> close();</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="keywordtype">void</span> exec(<span class="keywordtype">bool</span> lockWait = <span class="keyword">false</span>);</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="keywordtype">void</span> focus();</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="keywordtype">void</span> repaint() noexcept;</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="keywordtype">bool</span> openFileBrowser(const FileBrowserOptions&amp; options);</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keywordtype">bool</span> isVisible() const noexcept;</div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <span class="keywordtype">void</span> setVisible(<span class="keywordtype">bool</span> yesNo);</div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;</div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="keywordtype">bool</span> isResizable() const noexcept;</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="keywordtype">void</span> setResizable(<span class="keywordtype">bool</span> yesNo);</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;</div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; uint getWidth() const noexcept;</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; uint getHeight() const noexcept;</div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <a class="code" href="classSize.html">Size</a>&lt;uint&gt; getSize() const noexcept;</div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="keywordtype">void</span> setSize(uint width, uint height);</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <span class="keywordtype">void</span> setSize(<a class="code" href="classSize.html">Size</a>&lt;uint&gt; size);</div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; const <span class="keywordtype">char</span>* getTitle() const noexcept;</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="keywordtype">void</span> setTitle(const <span class="keywordtype">char</span>* title);</div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;</div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="keywordtype">void</span> setTransientWinId(uintptr_t winId);</div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;</div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <a class="code" href="classApp.html">App</a>&amp; getApp() const noexcept;</div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; intptr_t getWindowId() const noexcept;</div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;</div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="keywordtype">void</span> addIdleCallback(<a class="code" href="classIdleCallback.html">IdleCallback</a>* const callback);</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="keywordtype">void</span> removeIdleCallback(<a class="code" href="classIdleCallback.html">IdleCallback</a>* const callback);</div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;</div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;protected:</div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; virtual <span class="keywordtype">void</span> onDisplayBefore();</div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; virtual <span class="keywordtype">void</span> onDisplayAfter();</div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; virtual <span class="keywordtype">void</span> onReshape(uint width, uint height);</div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; virtual <span class="keywordtype">void</span> onClose();</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"> 114</span>&#160; virtual <span class="keywordtype">void</span> fileBrowserSelected(const <span class="keywordtype">char</span>* filename);</div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;</div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;private:</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; struct PrivateData;</div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; PrivateData* const pData;</div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; friend class <a class="code" href="classApp.html">App</a>;</div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; friend class <a class="code" href="classWidget.html">Widget</a>;</div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; friend class <a class="code" href="classStandaloneWindow.html">StandaloneWindow</a>;</div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;</div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; virtual <span class="keywordtype">void</span> _addWidget(Widget* const widget);</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; virtual <span class="keywordtype">void</span> _removeWidget(Widget* const widget);</div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <span class="keywordtype">void</span> _idle();</div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;</div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; DISTRHO_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR(<a class="code" href="classWindow.html">Window</a>)</div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;};</div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;</div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;END_NAMESPACE_DGL</div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;</div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;<span class="preprocessor">#endif // DGL_WINDOW_HPP_INCLUDED</span></div>
<div class="ttc" id="structWindow_1_1FileBrowserOptions_html_ad34fe0200a1bd00028f7753aeba9b2fc"><div class="ttname"><a href="structWindow_1_1FileBrowserOptions.html#ad34fe0200a1bd00028f7753aeba9b2fc">Window::FileBrowserOptions::FileBrowserOptions</a></div><div class="ttdeci">FileBrowserOptions()</div><div class="ttdef"><b>Definition:</b> Window.hpp:62</div></div>
<div class="ttc" id="classWindow_html"><div class="ttname"><a href="classWindow.html">Window</a></div><div class="ttdef"><b>Definition:</b> Window.hpp:30</div></div>
<div class="ttc" id="structWindow_1_1FileBrowserOptions_1_1Buttons_html_a0483d4ab39bdec4f6e69699fb3c272dd"><div class="ttname"><a href="structWindow_1_1FileBrowserOptions_1_1Buttons.html#a0483d4ab39bdec4f6e69699fb3c272dd">Window::FileBrowserOptions::Buttons::Buttons</a></div><div class="ttdeci">Buttons()</div><div class="ttdef"><b>Definition:</b> Window.hpp:55</div></div>
<div class="ttc" id="classStandaloneWindow_html"><div class="ttname"><a href="classStandaloneWindow.html">StandaloneWindow</a></div><div class="ttdef"><b>Definition:</b> StandaloneWindow.hpp:28</div></div>
<div class="ttc" id="classSize_html"><div class="ttname"><a href="classSize.html">Size</a></div><div class="ttdef"><b>Definition:</b> Geometry.hpp:132</div></div>
<div class="ttc" id="structWindow_1_1FileBrowserOptions_html"><div class="ttname"><a href="structWindow_1_1FileBrowserOptions.html">Window::FileBrowserOptions</a></div><div class="ttdef"><b>Definition:</b> Window.hpp:36</div></div>
<div class="ttc" id="classIdleCallback_html"><div class="ttname"><a href="classIdleCallback.html">IdleCallback</a></div><div class="ttdef"><b>Definition:</b> Base.hpp:176</div></div>
<div class="ttc" id="structWindow_1_1FileBrowserOptions_1_1Buttons_html"><div class="ttname"><a href="structWindow_1_1FileBrowserOptions_1_1Buttons.html">Window::FileBrowserOptions::Buttons</a></div><div class="ttdef"><b>Definition:</b> Window.hpp:49</div></div>
<div class="ttc" id="classWidget_html"><div class="ttname"><a href="classWidget.html">Widget</a></div><div class="ttdef"><b>Definition:</b> Widget.hpp:51</div></div>
<div class="ttc" id="classApp_html"><div class="ttname"><a href="classApp.html">App</a></div><div class="ttdef"><b>Definition:</b> App.hpp:41</div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 56
- 10
annotated.html View File

@@ -87,21 +87,67 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
</div><!--header-->
<div class="contents">
<div class="textblock">Here are the classes, structs, unions and interfaces with brief descriptions:</div><div class="directory">
<div class="levels">[detail level <span onclick="javascript:toggleLevel(1);">1</span><span onclick="javascript:toggleLevel(2);">2</span>]</div><table class="directory">
<tr id="row_0_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structAudioPort.html" target="_self">AudioPort</a></td><td class="desc"></td></tr>
<tr id="row_1_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structMidiEvent.html" target="_self">MidiEvent</a></td><td class="desc"></td></tr>
<tr id="row_2_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structParameter.html" target="_self">Parameter</a></td><td class="desc"></td></tr>
<tr id="row_3_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structParameterRanges.html" target="_self">ParameterRanges</a></td><td class="desc"></td></tr>
<tr id="row_4_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classPlugin.html" target="_self">Plugin</a></td><td class="desc"></td></tr>
<tr id="row_5_"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_5_" class="arrow" onclick="toggleFolder('5_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structTimePosition.html" target="_self">TimePosition</a></td><td class="desc"></td></tr>
<tr id="row_5_0_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structTimePosition_1_1BarBeatTick.html" target="_self">BarBeatTick</a></td><td class="desc"></td></tr>
<tr id="row_6_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classUI.html" target="_self">UI</a></td><td class="desc"></td></tr>
<div class="levels">[detail level <span onclick="javascript:toggleLevel(1);">1</span><span onclick="javascript:toggleLevel(2);">2</span><span onclick="javascript:toggleLevel(3);">3</span>]</div><table class="directory">
<tr id="row_0_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classApp.html" target="_self">App</a></td><td class="desc"></td></tr>
<tr id="row_1_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structAudioPort.html" target="_self">AudioPort</a></td><td class="desc"></td></tr>
<tr id="row_2_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="singletonCircle.html" target="_self">Circle</a></td><td class="desc"></td></tr>
<tr id="row_3_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structColor.html" target="_self">Color</a></td><td class="desc"></td></tr>
<tr id="row_4_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structContainerDeletePolicy.html" target="_self">ContainerDeletePolicy</a></td><td class="desc"></td></tr>
<tr id="row_5_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classd__string.html" target="_self">d_string</a></td><td class="desc"></td></tr>
<tr id="row_6_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classIdleCallback.html" target="_self">IdleCallback</a></td><td class="desc"></td></tr>
<tr id="row_7_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classImage.html" target="_self">Image</a></td><td class="desc"></td></tr>
<tr id="row_8_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classImageAboutWindow.html" target="_self">ImageAboutWindow</a></td><td class="desc"></td></tr>
<tr id="row_9_"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_9_" class="arrow" onclick="toggleFolder('9_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classImageButton.html" target="_self">ImageButton</a></td><td class="desc"></td></tr>
<tr id="row_9_0_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classImageButton_1_1Callback.html" target="_self">Callback</a></td><td class="desc"></td></tr>
<tr id="row_10_"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_10_" class="arrow" onclick="toggleFolder('10_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classImageKnob.html" target="_self">ImageKnob</a></td><td class="desc"></td></tr>
<tr id="row_10_0_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classImageKnob_1_1Callback.html" target="_self">Callback</a></td><td class="desc"></td></tr>
<tr id="row_11_"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_11_" class="arrow" onclick="toggleFolder('11_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classImageSlider.html" target="_self">ImageSlider</a></td><td class="desc"></td></tr>
<tr id="row_11_0_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classImageSlider_1_1Callback.html" target="_self">Callback</a></td><td class="desc"></td></tr>
<tr id="row_12_"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_12_" class="arrow" onclick="toggleFolder('12_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classImageSwitch.html" target="_self">ImageSwitch</a></td><td class="desc"></td></tr>
<tr id="row_12_0_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classImageSwitch_1_1Callback.html" target="_self">Callback</a></td><td class="desc"></td></tr>
<tr id="row_13_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classLeakedObjectDetector.html" target="_self">LeakedObjectDetector</a></td><td class="desc"></td></tr>
<tr id="row_14_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="singletonLine.html" target="_self">Line</a></td><td class="desc"></td></tr>
<tr id="row_15_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structMidiEvent.html" target="_self">MidiEvent</a></td><td class="desc"></td></tr>
<tr id="row_16_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classMutex.html" target="_self">Mutex</a></td><td class="desc"></td></tr>
<tr id="row_17_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classNanoImage.html" target="_self">NanoImage</a></td><td class="desc"></td></tr>
<tr id="row_18_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_18_" class="arrow" onclick="toggleFolder('18_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classNanoVG.html" target="_self">NanoVG</a></td><td class="desc"></td></tr>
<tr id="row_18_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structNanoVG_1_1GlyphPosition.html" target="_self">GlyphPosition</a></td><td class="desc"></td></tr>
<tr id="row_18_1_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structNanoVG_1_1Paint.html" target="_self">Paint</a></td><td class="desc"></td></tr>
<tr id="row_18_2_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structNanoVG_1_1TextRow.html" target="_self">TextRow</a></td><td class="desc"></td></tr>
<tr id="row_19_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classNanoWidget.html" target="_self">NanoWidget</a></td><td class="desc"></td></tr>
<tr id="row_20_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structParameter.html" target="_self">Parameter</a></td><td class="desc"></td></tr>
<tr id="row_21_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structParameterRanges.html" target="_self">ParameterRanges</a></td><td class="desc"></td></tr>
<tr id="row_22_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classPlugin.html" target="_self">Plugin</a></td><td class="desc"></td></tr>
<tr id="row_23_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classPoint.html" target="_self">Point</a></td><td class="desc"></td></tr>
<tr id="row_24_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="singletonRectangle.html" target="_self">Rectangle</a></td><td class="desc"></td></tr>
<tr id="row_25_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classRecursiveMutex.html" target="_self">RecursiveMutex</a></td><td class="desc"></td></tr>
<tr id="row_26_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classScopedLocker.html" target="_self">ScopedLocker</a></td><td class="desc"></td></tr>
<tr id="row_27_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classScopedPointer.html" target="_self">ScopedPointer</a></td><td class="desc"></td></tr>
<tr id="row_28_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classScopedUnlocker.html" target="_self">ScopedUnlocker</a></td><td class="desc"></td></tr>
<tr id="row_29_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classSize.html" target="_self">Size</a></td><td class="desc"></td></tr>
<tr id="row_30_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classStandaloneWindow.html" target="_self">StandaloneWindow</a></td><td class="desc"></td></tr>
<tr id="row_31_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classThread.html" target="_self">Thread</a></td><td class="desc"></td></tr>
<tr id="row_32_"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_32_" class="arrow" onclick="toggleFolder('32_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structTimePosition.html" target="_self">TimePosition</a></td><td class="desc"></td></tr>
<tr id="row_32_0_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structTimePosition_1_1BarBeatTick.html" target="_self">BarBeatTick</a></td><td class="desc"></td></tr>
<tr id="row_33_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="singletonTriangle.html" target="_self">Triangle</a></td><td class="desc"></td></tr>
<tr id="row_34_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classUI.html" target="_self">UI</a></td><td class="desc"></td></tr>
<tr id="row_35_"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_35_" class="arrow" onclick="toggleFolder('35_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classWidget.html" target="_self">Widget</a></td><td class="desc"></td></tr>
<tr id="row_35_0_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structWidget_1_1BaseEvent.html" target="_self">BaseEvent</a></td><td class="desc"></td></tr>
<tr id="row_35_1_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structWidget_1_1KeyboardEvent.html" target="_self">KeyboardEvent</a></td><td class="desc"></td></tr>
<tr id="row_35_2_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structWidget_1_1MotionEvent.html" target="_self">MotionEvent</a></td><td class="desc"></td></tr>
<tr id="row_35_3_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structWidget_1_1MouseEvent.html" target="_self">MouseEvent</a></td><td class="desc"></td></tr>
<tr id="row_35_4_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structWidget_1_1ResizeEvent.html" target="_self">ResizeEvent</a></td><td class="desc"></td></tr>
<tr id="row_35_5_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structWidget_1_1ScrollEvent.html" target="_self">ScrollEvent</a></td><td class="desc"></td></tr>
<tr id="row_35_6_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structWidget_1_1SpecialEvent.html" target="_self">SpecialEvent</a></td><td class="desc"></td></tr>
<tr id="row_36_"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_36_" class="arrow" onclick="toggleFolder('36_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classWindow.html" target="_self">Window</a></td><td class="desc"></td></tr>
<tr id="row_36_0_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span id="arr_36_0_" class="arrow" onclick="toggleFolder('36_0_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structWindow_1_1FileBrowserOptions.html" target="_self">FileBrowserOptions</a></td><td class="desc"></td></tr>
<tr id="row_36_0_0_"><td class="entry"><span style="width:48px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structWindow_1_1FileBrowserOptions_1_1Buttons.html" target="_self">Buttons</a></td><td class="desc"></td></tr>
</table>
</div><!-- directory -->
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Fri Apr 24 2015 00:23:57 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Sun Apr 26 2015 14:49:36 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>


+ 107
- 0
classApp-members.html View File

@@ -0,0 +1,107 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: Member List</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">App Member List</div> </div>
</div><!--header-->
<div class="contents">

<p>This is the complete list of members for <a class="el" href="classApp.html">App</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classApp.html#acb8cbf3e285b91d0170ffe87df5989c5">App</a>()</td><td class="entry"><a class="el" href="classApp.html">App</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classApp.html#a94fa325175749054947480e1ae66b110">exec</a>()</td><td class="entry"><a class="el" href="classApp.html">App</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classApp.html#a4309d67edf51bdf612a82220285ada49">idle</a>()</td><td class="entry"><a class="el" href="classApp.html">App</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classApp.html#af7471b06a9bfccc16293b020268d0401">isQuiting</a>() const noexcept</td><td class="entry"><a class="el" href="classApp.html">App</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classApp.html#ab474007a8e53ffa41f9a13e0640b387f">quit</a>()</td><td class="entry"><a class="el" href="classApp.html">App</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>Window</b> (defined in <a class="el" href="classApp.html">App</a>)</td><td class="entry"><a class="el" href="classApp.html">App</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classApp.html#a34f1f253b1cef5f4ecbac66eaf6964ec">~App</a>()</td><td class="entry"><a class="el" href="classApp.html">App</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 247
- 0
classApp.html View File

@@ -0,0 +1,247 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: App Class Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#friends">Friends</a> &#124;
<a href="classApp-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">App Class Reference</div> </div>
</div><!--header-->
<div class="contents">

<p><code>#include &lt;<a class="el" href="App_8hpp_source.html">App.hpp</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for App:</div>
<div class="dyncontent">
<div class="center">
<img src="classApp.png" usemap="#App_map" alt=""/>
<map id="App_map" name="App_map">
<area href="classStandaloneWindow.html" alt="StandaloneWindow" shape="rect" coords="0,56,119,80"/>
</map>
</div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:acb8cbf3e285b91d0170ffe87df5989c5"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classApp.html#acb8cbf3e285b91d0170ffe87df5989c5">App</a> ()</td></tr>
<tr class="separator:acb8cbf3e285b91d0170ffe87df5989c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a34f1f253b1cef5f4ecbac66eaf6964ec"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classApp.html#a34f1f253b1cef5f4ecbac66eaf6964ec">~App</a> ()</td></tr>
<tr class="separator:a34f1f253b1cef5f4ecbac66eaf6964ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4309d67edf51bdf612a82220285ada49"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classApp.html#a4309d67edf51bdf612a82220285ada49">idle</a> ()</td></tr>
<tr class="separator:a4309d67edf51bdf612a82220285ada49"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a94fa325175749054947480e1ae66b110"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classApp.html#a94fa325175749054947480e1ae66b110">exec</a> ()</td></tr>
<tr class="separator:a94fa325175749054947480e1ae66b110"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab474007a8e53ffa41f9a13e0640b387f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classApp.html#ab474007a8e53ffa41f9a13e0640b387f">quit</a> ()</td></tr>
<tr class="separator:ab474007a8e53ffa41f9a13e0640b387f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af7471b06a9bfccc16293b020268d0401"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classApp.html#af7471b06a9bfccc16293b020268d0401">isQuiting</a> () const noexcept</td></tr>
<tr class="separator:af7471b06a9bfccc16293b020268d0401"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
Friends</h2></td></tr>
<tr class="memitem:a553f958a25683445088050a69d3de8e9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a553f958a25683445088050a69d3de8e9"></a>
class&#160;</td><td class="memItemRight" valign="bottom"><b>Window</b></td></tr>
<tr class="separator:a553f958a25683445088050a69d3de8e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Base DGL Application class.</p>
<p>One application instance is required for creating a window. There's no single/global application instance in DGL, and multiple windows can share the same app instance.</p>
<p>In standalone mode an application will automatically quit its event-loop when all its windows are closed. </p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="acb8cbf3e285b91d0170ffe87df5989c5"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">App::App </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Constructor. </p>

</div>
</div>
<a class="anchor" id="a34f1f253b1cef5f4ecbac66eaf6964ec"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">App::~App </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Destructor. </p>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a4309d67edf51bdf612a82220285ada49"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void App::idle </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Idle function. This runs the application event-loop once. </p>

</div>
</div>
<a class="anchor" id="a94fa325175749054947480e1ae66b110"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void App::exec </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Run the application event-loop until all Windows are closed. <a class="el" href="classApp.html#a4309d67edf51bdf612a82220285ada49">idle()</a> is called at regular intervals. </p><dl class="section note"><dt>Note</dt><dd>: This function is meant for standalones only, <em>never</em> call this from plugins. </dd></dl>

</div>
</div>
<a class="anchor" id="ab474007a8e53ffa41f9a13e0640b387f"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void App::quit </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Quit the application. This stops the event-loop and closes all Windows. </p>

</div>
</div>
<a class="anchor" id="af7471b06a9bfccc16293b020268d0401"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool App::isQuiting </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Check if the application is about to quit. Returning true means there's no event-loop running at the moment (or it's just about to stop). </p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>dgl/<a class="el" href="App_8hpp_source.html">App.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

BIN
classApp.png View File

Before After
Width: 119  |  Height: 80  |  Size: 470B

+ 120
- 0
classCircle-members.html View File

@@ -0,0 +1,120 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: Member List</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">Circle&lt; T &gt; Member List</div> </div>
</div><!--header-->
<div class="contents">

<p>This is the complete list of members for <a class="el" href="singletonCircle.html">Circle&lt; T &gt;</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="singletonCircle.html#a69bf0ddae80047ef3e9b230930eb1ba6">Circle</a>() noexcept</td><td class="entry"><a class="el" href="singletonCircle.html">Circle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="singletonCircle.html#a391892aed07c5239153a038fea80423b">Circle</a>(const T &amp;x, const T &amp;y, const float size, const uint numSegments=300)</td><td class="entry"><a class="el" href="singletonCircle.html">Circle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="singletonCircle.html#ab0e9f6bedf3dfa9fd958c573eca46368">Circle</a>(const Point&lt; T &gt; &amp;pos, const float size, const uint numSegments=300)</td><td class="entry"><a class="el" href="singletonCircle.html">Circle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="singletonCircle.html#aeee15927ea13e9114aa53a8c26c5e1df">Circle</a>(const Circle&lt; T &gt; &amp;cir) noexcept</td><td class="entry"><a class="el" href="singletonCircle.html">Circle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="singletonCircle.html#ae1006bb2486c75b45e43675783521915">draw</a>()</td><td class="entry"><a class="el" href="singletonCircle.html">Circle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="singletonCircle.html#a59ad688a9f13a2e639502a8adc979111">drawOutline</a>()</td><td class="entry"><a class="el" href="singletonCircle.html">Circle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="singletonCircle.html#a3a1586ea9115cc97473a2338127223b6">getNumSegments</a>() const noexcept</td><td class="entry"><a class="el" href="singletonCircle.html">Circle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="singletonCircle.html#abdabe0a9d85db389485c69d6a7b6071e">getPos</a>() const noexcept</td><td class="entry"><a class="el" href="singletonCircle.html">Circle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="singletonCircle.html#a95cbbd0567463a29e0e1b43febcc1daa">getSize</a>() const noexcept</td><td class="entry"><a class="el" href="singletonCircle.html">Circle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="singletonCircle.html#a2f8530b43b24d28380e232367fea0823">getX</a>() const noexcept</td><td class="entry"><a class="el" href="singletonCircle.html">Circle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="singletonCircle.html#af1bdfeb5875cf8e6a8f09ad295d3bb09">getY</a>() const noexcept</td><td class="entry"><a class="el" href="singletonCircle.html">Circle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>operator!=</b>(const Circle&lt; T &gt; &amp;cir) const noexcept (defined in <a class="el" href="singletonCircle.html">Circle&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="singletonCircle.html">Circle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>operator=</b>(const Circle&lt; T &gt; &amp;cir) noexcept (defined in <a class="el" href="singletonCircle.html">Circle&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="singletonCircle.html">Circle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>operator==</b>(const Circle&lt; T &gt; &amp;cir) const noexcept (defined in <a class="el" href="singletonCircle.html">Circle&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="singletonCircle.html">Circle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="singletonCircle.html#a34fa92504c0bcc008958779fa4d66c32">setNumSegments</a>(const uint num)</td><td class="entry"><a class="el" href="singletonCircle.html">Circle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="singletonCircle.html#a2046a9238a3870276e1dac7fb684eacb">setPos</a>(const T &amp;x, const T &amp;y) noexcept</td><td class="entry"><a class="el" href="singletonCircle.html">Circle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="singletonCircle.html#addce92ba3813dc8ae1222127a9dd932d">setPos</a>(const Point&lt; T &gt; &amp;pos) noexcept</td><td class="entry"><a class="el" href="singletonCircle.html">Circle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="singletonCircle.html#a02fc5ef5aae2d5d1c1bd016cab8afc5d">setSize</a>(const float size) noexcept</td><td class="entry"><a class="el" href="singletonCircle.html">Circle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="singletonCircle.html#acc96a188288cdf83fd822bb41f8f2be1">setX</a>(const T &amp;x) noexcept</td><td class="entry"><a class="el" href="singletonCircle.html">Circle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="singletonCircle.html#a034ddfd162d89a7dacea7981a5406a1a">setY</a>(const T &amp;y) noexcept</td><td class="entry"><a class="el" href="singletonCircle.html">Circle&lt; T &gt;</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 102
- 0
classIdleCallback-members.html View File

@@ -0,0 +1,102 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: Member List</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">IdleCallback Member List</div> </div>
</div><!--header-->
<div class="contents">

<p>This is the complete list of members for <a class="el" href="classIdleCallback.html">IdleCallback</a>, including all inherited members.</p>
<table class="directory">
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>idleCallback</b>()=0 (defined in <a class="el" href="classIdleCallback.html">IdleCallback</a>)</td><td class="entry"><a class="el" href="classIdleCallback.html">IdleCallback</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>~IdleCallback</b>() (defined in <a class="el" href="classIdleCallback.html">IdleCallback</a>)</td><td class="entry"><a class="el" href="classIdleCallback.html">IdleCallback</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 114
- 0
classIdleCallback.html View File

@@ -0,0 +1,114 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: IdleCallback Class Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classIdleCallback-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">IdleCallback Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div>
</div><!--header-->
<div class="contents">

<p><code>#include &lt;<a class="el" href="Base_8hpp_source.html">Base.hpp</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:af7293da0a3b08be9454cb2028107c7a6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af7293da0a3b08be9454cb2028107c7a6"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>idleCallback</b> ()=0</td></tr>
<tr class="separator:af7293da0a3b08be9454cb2028107c7a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Idle callback. </p>
</div><hr/>The documentation for this class was generated from the following file:<ul>
<li>dgl/<a class="el" href="Base_8hpp_source.html">Base.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 120
- 0
classImage-members.html View File

@@ -0,0 +1,120 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: Member List</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">Image Member List</div> </div>
</div><!--header-->
<div class="contents">

<p>This is the complete list of members for <a class="el" href="classImage.html">Image</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classImage.html#ae1e16dcef3072e4e49ec2887a9c1245a">draw</a>()</td><td class="entry"><a class="el" href="classImage.html">Image</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classImage.html#ab63094dc07e6d62624827bca904b5cdd">drawAt</a>(const int x, const int y)</td><td class="entry"><a class="el" href="classImage.html">Image</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classImage.html#aed2dc99624de978eade8124d2c099cfa">drawAt</a>(const Point&lt; int &gt; &amp;pos)</td><td class="entry"><a class="el" href="classImage.html">Image</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classImage.html#ac02e8bb7bfcc4adefc1f00557cc40e86">getFormat</a>() const noexcept</td><td class="entry"><a class="el" href="classImage.html">Image</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classImage.html#a464a18561e9d49b9af42f007113d55f6">getHeight</a>() const noexcept</td><td class="entry"><a class="el" href="classImage.html">Image</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classImage.html#a638e0d75e9dff587f028639aaae8981b">getRawData</a>() const noexcept</td><td class="entry"><a class="el" href="classImage.html">Image</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classImage.html#a86b31865bfa07b98b61f503699f5c5d1">getSize</a>() const noexcept</td><td class="entry"><a class="el" href="classImage.html">Image</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classImage.html#aafdd618cccc80f83a438b0c335de6205">getType</a>() const noexcept</td><td class="entry"><a class="el" href="classImage.html">Image</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classImage.html#a695d30afad2b73bc0e4208a94d052aea">getWidth</a>() const noexcept</td><td class="entry"><a class="el" href="classImage.html">Image</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classImage.html#a58edd1c45b4faeb5f789b0d036d02313">Image</a>()</td><td class="entry"><a class="el" href="classImage.html">Image</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classImage.html#ad351054c0c6ebc0df99a7f8df12c8920">Image</a>(const char *const rawData, const uint width, const uint height, const GLenum format=GL_BGRA, const GLenum type=GL_UNSIGNED_BYTE)</td><td class="entry"><a class="el" href="classImage.html">Image</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classImage.html#a4587a30e65bacb349bc2d351d2fe49eb">Image</a>(const char *const rawData, const Size&lt; uint &gt; &amp;size, const GLenum format=GL_BGRA, const GLenum type=GL_UNSIGNED_BYTE)</td><td class="entry"><a class="el" href="classImage.html">Image</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classImage.html#a34410a36b132ab597a8878d45facc89a">Image</a>(const Image &amp;image)</td><td class="entry"><a class="el" href="classImage.html">Image</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classImage.html#a761214d2fa016e3e793b5a2d6b8b85ec">isValid</a>() const noexcept</td><td class="entry"><a class="el" href="classImage.html">Image</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classImage.html#a097350feb2b30fd9289c346039298394">loadFromMemory</a>(const char *const rawData, const uint width, const uint height, const GLenum format=GL_BGRA, const GLenum type=GL_UNSIGNED_BYTE) noexcept</td><td class="entry"><a class="el" href="classImage.html">Image</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classImage.html#a2851a65c5885085be1d96878762fd860">loadFromMemory</a>(const char *const rawData, const Size&lt; uint &gt; &amp;size, const GLenum format=GL_BGRA, const GLenum type=GL_UNSIGNED_BYTE) noexcept</td><td class="entry"><a class="el" href="classImage.html">Image</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>operator!=</b>(const Image &amp;image) const noexcept (defined in <a class="el" href="classImage.html">Image</a>)</td><td class="entry"><a class="el" href="classImage.html">Image</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>operator=</b>(const Image &amp;image) noexcept (defined in <a class="el" href="classImage.html">Image</a>)</td><td class="entry"><a class="el" href="classImage.html">Image</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>operator==</b>(const Image &amp;image) const noexcept (defined in <a class="el" href="classImage.html">Image</a>)</td><td class="entry"><a class="el" href="classImage.html">Image</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classImage.html#a0294f63700543e11c0f0da85601c7ae5">~Image</a>()</td><td class="entry"><a class="el" href="classImage.html">Image</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 620
- 0
classImage.html View File

@@ -0,0 +1,620 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: Image Class Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classImage-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">Image Class Reference</div> </div>
</div><!--header-->
<div class="contents">

<p><code>#include &lt;<a class="el" href="Image_8hpp_source.html">Image.hpp</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a58edd1c45b4faeb5f789b0d036d02313"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classImage.html#a58edd1c45b4faeb5f789b0d036d02313">Image</a> ()</td></tr>
<tr class="separator:a58edd1c45b4faeb5f789b0d036d02313"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad351054c0c6ebc0df99a7f8df12c8920"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classImage.html#ad351054c0c6ebc0df99a7f8df12c8920">Image</a> (const char *const rawData, const uint width, const uint height, const GLenum format=GL_BGRA, const GLenum type=GL_UNSIGNED_BYTE)</td></tr>
<tr class="separator:ad351054c0c6ebc0df99a7f8df12c8920"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4587a30e65bacb349bc2d351d2fe49eb"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classImage.html#a4587a30e65bacb349bc2d351d2fe49eb">Image</a> (const char *const rawData, const <a class="el" href="classSize.html">Size</a>&lt; uint &gt; &amp;size, const GLenum format=GL_BGRA, const GLenum type=GL_UNSIGNED_BYTE)</td></tr>
<tr class="separator:a4587a30e65bacb349bc2d351d2fe49eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a34410a36b132ab597a8878d45facc89a"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classImage.html#a34410a36b132ab597a8878d45facc89a">Image</a> (const <a class="el" href="classImage.html">Image</a> &amp;image)</td></tr>
<tr class="separator:a34410a36b132ab597a8878d45facc89a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0294f63700543e11c0f0da85601c7ae5"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classImage.html#a0294f63700543e11c0f0da85601c7ae5">~Image</a> ()</td></tr>
<tr class="separator:a0294f63700543e11c0f0da85601c7ae5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a097350feb2b30fd9289c346039298394"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classImage.html#a097350feb2b30fd9289c346039298394">loadFromMemory</a> (const char *const rawData, const uint width, const uint height, const GLenum format=GL_BGRA, const GLenum type=GL_UNSIGNED_BYTE) noexcept</td></tr>
<tr class="separator:a097350feb2b30fd9289c346039298394"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2851a65c5885085be1d96878762fd860"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classImage.html#a2851a65c5885085be1d96878762fd860">loadFromMemory</a> (const char *const rawData, const <a class="el" href="classSize.html">Size</a>&lt; uint &gt; &amp;size, const GLenum format=GL_BGRA, const GLenum type=GL_UNSIGNED_BYTE) noexcept</td></tr>
<tr class="separator:a2851a65c5885085be1d96878762fd860"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a761214d2fa016e3e793b5a2d6b8b85ec"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classImage.html#a761214d2fa016e3e793b5a2d6b8b85ec">isValid</a> () const noexcept</td></tr>
<tr class="separator:a761214d2fa016e3e793b5a2d6b8b85ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a695d30afad2b73bc0e4208a94d052aea"><td class="memItemLeft" align="right" valign="top">uint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classImage.html#a695d30afad2b73bc0e4208a94d052aea">getWidth</a> () const noexcept</td></tr>
<tr class="separator:a695d30afad2b73bc0e4208a94d052aea"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a464a18561e9d49b9af42f007113d55f6"><td class="memItemLeft" align="right" valign="top">uint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classImage.html#a464a18561e9d49b9af42f007113d55f6">getHeight</a> () const noexcept</td></tr>
<tr class="separator:a464a18561e9d49b9af42f007113d55f6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a86b31865bfa07b98b61f503699f5c5d1"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classSize.html">Size</a>&lt; uint &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classImage.html#a86b31865bfa07b98b61f503699f5c5d1">getSize</a> () const noexcept</td></tr>
<tr class="separator:a86b31865bfa07b98b61f503699f5c5d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a638e0d75e9dff587f028639aaae8981b"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classImage.html#a638e0d75e9dff587f028639aaae8981b">getRawData</a> () const noexcept</td></tr>
<tr class="separator:a638e0d75e9dff587f028639aaae8981b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac02e8bb7bfcc4adefc1f00557cc40e86"><td class="memItemLeft" align="right" valign="top">GLenum&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classImage.html#ac02e8bb7bfcc4adefc1f00557cc40e86">getFormat</a> () const noexcept</td></tr>
<tr class="separator:ac02e8bb7bfcc4adefc1f00557cc40e86"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aafdd618cccc80f83a438b0c335de6205"><td class="memItemLeft" align="right" valign="top">GLenum&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classImage.html#aafdd618cccc80f83a438b0c335de6205">getType</a> () const noexcept</td></tr>
<tr class="separator:aafdd618cccc80f83a438b0c335de6205"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae1e16dcef3072e4e49ec2887a9c1245a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classImage.html#ae1e16dcef3072e4e49ec2887a9c1245a">draw</a> ()</td></tr>
<tr class="separator:ae1e16dcef3072e4e49ec2887a9c1245a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab63094dc07e6d62624827bca904b5cdd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classImage.html#ab63094dc07e6d62624827bca904b5cdd">drawAt</a> (const int x, const int y)</td></tr>
<tr class="separator:ab63094dc07e6d62624827bca904b5cdd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aed2dc99624de978eade8124d2c099cfa"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classImage.html#aed2dc99624de978eade8124d2c099cfa">drawAt</a> (const <a class="el" href="classPoint.html">Point</a>&lt; int &gt; &amp;pos)</td></tr>
<tr class="separator:aed2dc99624de978eade8124d2c099cfa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab23271a6bf92330d04c84146bfa81641"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab23271a6bf92330d04c84146bfa81641"></a>
<a class="el" href="classImage.html">Image</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (const <a class="el" href="classImage.html">Image</a> &amp;image) noexcept</td></tr>
<tr class="separator:ab23271a6bf92330d04c84146bfa81641"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a775663b153fb5d21bca622739d881631"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a775663b153fb5d21bca622739d881631"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>operator==</b> (const <a class="el" href="classImage.html">Image</a> &amp;image) const noexcept</td></tr>
<tr class="separator:a775663b153fb5d21bca622739d881631"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abb67912deb6a20ea1c5a5b4d5a71c0ee"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abb67912deb6a20ea1c5a5b4d5a71c0ee"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>operator!=</b> (const <a class="el" href="classImage.html">Image</a> &amp;image) const noexcept</td></tr>
<tr class="separator:abb67912deb6a20ea1c5a5b4d5a71c0ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Base DGL <a class="el" href="classImage.html">Image</a> class.</p>
<p>This is an <a class="el" href="classImage.html">Image</a> class that handles raw image data in pixels. You can init the image data on the contructor or later on by calling <a class="el" href="classImage.html#a097350feb2b30fd9289c346039298394">loadFromMemory()</a>.</p>
<p>To generate raw data useful for this class see the utils/png2rgba.py script. Be careful when using a PNG without alpha channel, for those the format is 'GL_BGR' instead of the default 'GL_BGRA'.</p>
<p>Images are drawn on screen via 2D textures. </p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a58edd1c45b4faeb5f789b0d036d02313"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">Image::Image </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Constructor for a null <a class="el" href="classImage.html">Image</a>. </p>

</div>
</div>
<a class="anchor" id="ad351054c0c6ebc0df99a7f8df12c8920"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">Image::Image </td>
<td>(</td>
<td class="paramtype">const char *const&#160;</td>
<td class="paramname"><em>rawData</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const uint&#160;</td>
<td class="paramname"><em>width</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const uint&#160;</td>
<td class="paramname"><em>height</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const GLenum&#160;</td>
<td class="paramname"><em>format</em> = <code>GL_BGRA</code>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const GLenum&#160;</td>
<td class="paramname"><em>type</em> = <code>GL_UNSIGNED_BYTE</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Constructor using raw image data. </p><dl class="section note"><dt>Note</dt><dd>: <em>rawData</em> must remain valid for the lifetime of this <a class="el" href="classImage.html">Image</a>. </dd></dl>

</div>
</div>
<a class="anchor" id="a4587a30e65bacb349bc2d351d2fe49eb"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">Image::Image </td>
<td>(</td>
<td class="paramtype">const char *const&#160;</td>
<td class="paramname"><em>rawData</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classSize.html">Size</a>&lt; uint &gt; &amp;&#160;</td>
<td class="paramname"><em>size</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const GLenum&#160;</td>
<td class="paramname"><em>format</em> = <code>GL_BGRA</code>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const GLenum&#160;</td>
<td class="paramname"><em>type</em> = <code>GL_UNSIGNED_BYTE</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Constructor using raw image data. </p><dl class="section note"><dt>Note</dt><dd>: <em>rawData</em> must remain valid for the lifetime of this <a class="el" href="classImage.html">Image</a>. </dd></dl>

</div>
</div>
<a class="anchor" id="a34410a36b132ab597a8878d45facc89a"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">Image::Image </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classImage.html">Image</a> &amp;&#160;</td>
<td class="paramname"><em>image</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Constructor using another image data. </p>

</div>
</div>
<a class="anchor" id="a0294f63700543e11c0f0da85601c7ae5"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">Image::~Image </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Destructor. </p>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a097350feb2b30fd9289c346039298394"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void Image::loadFromMemory </td>
<td>(</td>
<td class="paramtype">const char *const&#160;</td>
<td class="paramname"><em>rawData</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const uint&#160;</td>
<td class="paramname"><em>width</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const uint&#160;</td>
<td class="paramname"><em>height</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const GLenum&#160;</td>
<td class="paramname"><em>format</em> = <code>GL_BGRA</code>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const GLenum&#160;</td>
<td class="paramname"><em>type</em> = <code>GL_UNSIGNED_BYTE</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Load image data from memory. </p><dl class="section note"><dt>Note</dt><dd>: <em>rawData</em> must remain valid for the lifetime of this <a class="el" href="classImage.html">Image</a>. </dd></dl>

</div>
</div>
<a class="anchor" id="a2851a65c5885085be1d96878762fd860"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void Image::loadFromMemory </td>
<td>(</td>
<td class="paramtype">const char *const&#160;</td>
<td class="paramname"><em>rawData</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classSize.html">Size</a>&lt; uint &gt; &amp;&#160;</td>
<td class="paramname"><em>size</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const GLenum&#160;</td>
<td class="paramname"><em>format</em> = <code>GL_BGRA</code>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const GLenum&#160;</td>
<td class="paramname"><em>type</em> = <code>GL_UNSIGNED_BYTE</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Load image data from memory. </p><dl class="section note"><dt>Note</dt><dd>: <em>rawData</em> must remain valid for the lifetime of this <a class="el" href="classImage.html">Image</a>. </dd></dl>

</div>
</div>
<a class="anchor" id="a761214d2fa016e3e793b5a2d6b8b85ec"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool Image::isValid </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Check if this image is valid. </p>

</div>
</div>
<a class="anchor" id="a695d30afad2b73bc0e4208a94d052aea"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">uint Image::getWidth </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get width. </p>

</div>
</div>
<a class="anchor" id="a464a18561e9d49b9af42f007113d55f6"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">uint Image::getHeight </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get height. </p>

</div>
</div>
<a class="anchor" id="a86b31865bfa07b98b61f503699f5c5d1"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="classSize.html">Size</a>&lt;uint&gt;&amp; Image::getSize </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get size. </p>

</div>
</div>
<a class="anchor" id="a638e0d75e9dff587f028639aaae8981b"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const char* Image::getRawData </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the raw image data. </p>

</div>
</div>
<a class="anchor" id="ac02e8bb7bfcc4adefc1f00557cc40e86"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">GLenum Image::getFormat </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the image format. </p>

</div>
</div>
<a class="anchor" id="aafdd618cccc80f83a438b0c335de6205"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">GLenum Image::getType </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the image type. </p>

</div>
</div>
<a class="anchor" id="ae1e16dcef3072e4e49ec2887a9c1245a"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void Image::draw </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Draw this image at (0, 0) point. </p>

</div>
</div>
<a class="anchor" id="ab63094dc07e6d62624827bca904b5cdd"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void Image::drawAt </td>
<td>(</td>
<td class="paramtype">const int&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const int&#160;</td>
<td class="paramname"><em>y</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Draw this image at (x, y) point. </p>

</div>
</div>
<a class="anchor" id="aed2dc99624de978eade8124d2c099cfa"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void Image::drawAt </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classPoint.html">Point</a>&lt; int &gt; &amp;&#160;</td>
<td class="paramname"><em>pos</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Draw this image at position <em>pos</em>. </p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>dgl/<a class="el" href="Image_8hpp_source.html">Image.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 171
- 0
classImageAboutWindow-members.html View File

@@ -0,0 +1,171 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: Member List</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">ImageAboutWindow Member List</div> </div>
</div><!--header-->
<div class="contents">

<p>This is the complete list of members for <a class="el" href="classImageAboutWindow.html">ImageAboutWindow</a>, including all inherited members.</p>
<table class="directory">
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>addIdleCallback</b>(IdleCallback *const callback) (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>close</b>() (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a655f9dac3838b52a3deec1a4b9e6001b">contains</a>(int x, int y) const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a9dc3a8c1c7fe1dd0ffa28577f1eaa5fd">contains</a>(const Point&lt; int &gt; &amp;pos) const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>exec</b>(bool lockWait=false) (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>fileBrowserSelected</b>(const char *filename) (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>focus</b>() (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#ae952149aa2b1661ebc9712547ac5cc04">getAbsolutePos</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a4e41debfe323ee307706af42818636dd">getAbsoluteX</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#af2ee4713e052b65e839da667aec4e05a">getAbsoluteY</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>getApp</b>() const noexcept (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>getHeight</b>() const noexcept (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#aa20f6dc096a8836706173f31324c4db8">Widget::getHeight</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a3ee6b2824e3f3719c1c9b3d070385f49">getId</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#afa1fe45064cf9bb107fe1dcdb2384d33">getParentApp</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a0e0b0b2293bb63b2d84774542cc6a421">getParentWindow</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>getSize</b>() const noexcept (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#ae375b05cd76f63c957949e9121ff56bb">Widget::getSize</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>getTitle</b>() const noexcept (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>getWidth</b>() const noexcept (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a169c317caf734c6664494a573e427b40">Widget::getWidth</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>getWindowId</b>() const noexcept (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>hide</b>() (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a4a2f8eebacdd20db505b838f1a118c6b">Widget::hide</a>()</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>ImageAboutWindow</b>(Window &amp;parent, const Image &amp;image=Image()) (defined in <a class="el" href="classImageAboutWindow.html">ImageAboutWindow</a>)</td><td class="entry"><a class="el" href="classImageAboutWindow.html">ImageAboutWindow</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>ImageAboutWindow</b>(Widget *widget, const Image &amp;image=Image()) (defined in <a class="el" href="classImageAboutWindow.html">ImageAboutWindow</a>)</td><td class="entry"><a class="el" href="classImageAboutWindow.html">ImageAboutWindow</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>isResizable</b>() const noexcept (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>isVisible</b>() const noexcept (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a234a8ee8a685dc211ad11f492f0dbc71">Widget::isVisible</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>onClose</b>() (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classImageAboutWindow.html#a4ebc99f9674e37ebdeeaa1ef9a71a0fc">onDisplay</a>() override</td><td class="entry"><a class="el" href="classImageAboutWindow.html">ImageAboutWindow</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>onDisplayAfter</b>() (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>onDisplayBefore</b>() (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classImageAboutWindow.html#a952891b12bf379fafc184abc77daef24">onKeyboard</a>(const KeyboardEvent &amp;) override</td><td class="entry"><a class="el" href="classImageAboutWindow.html">ImageAboutWindow</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a655569fb78a598652e9f24cefa1fe4a5">onMotion</a>(const MotionEvent &amp;)</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classImageAboutWindow.html#a5af153208057de4baf7264c9a7bd30cd">onMouse</a>(const MouseEvent &amp;) override</td><td class="entry"><a class="el" href="classImageAboutWindow.html">ImageAboutWindow</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>onReshape</b>(uint width, uint height) override (defined in <a class="el" href="classImageAboutWindow.html">ImageAboutWindow</a>)</td><td class="entry"><a class="el" href="classImageAboutWindow.html">ImageAboutWindow</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#acc0365ec4b9245bdffb8d0285be55dea">onResize</a>(const ResizeEvent &amp;)</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a0d78d28bd4a98c3a016a38091b2d4185">onScroll</a>(const ScrollEvent &amp;)</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a3b42652fcb2f95c6f86bdd43a1727507">onSpecial</a>(const SpecialEvent &amp;)</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>openFileBrowser</b>(const FileBrowserOptions &amp;options) (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>removeIdleCallback</b>(IdleCallback *const callback) (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>repaint</b>() noexcept (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a808fa28a78ec9e850d5e86f63b3be26d">Widget::repaint</a>() noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a1f58ab9f12f0e88da6bf600c504b53c5">setAbsolutePos</a>(int x, int y) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a65b3a31bbf5cfbecdf5cf84ae27ae089">setAbsolutePos</a>(const Point&lt; int &gt; &amp;pos) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a56b6c0c92551d25bafa54be5d185e4f6">setAbsoluteX</a>(int x) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a65f48c414326491ddb3bbb70bf783829">setAbsoluteY</a>(int y) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#ac6d2e6cbb2ff96f3645493d804af07f7">setHeight</a>(uint height) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#abfba3652559de84ba1ae9ccbd3d35e31">setId</a>(uint id) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>setImage</b>(const Image &amp;image) (defined in <a class="el" href="classImageAboutWindow.html">ImageAboutWindow</a>)</td><td class="entry"><a class="el" href="classImageAboutWindow.html">ImageAboutWindow</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#aa92462db80ed1dc8334910038cd262cc">setNeedsFullViewport</a>(bool yesNo) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a2ce358088e8f3b65621afd02c675bad8">setNeedsScaling</a>(bool yesNo) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>setResizable</b>(bool yesNo) (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>setSize</b>(uint width, uint height) (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>setSize</b>(Size&lt; uint &gt; size) (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#ab4d9e0156e455db3ff23730f82544daa">Widget::setSize</a>(uint width, uint height) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#afce784b204902c0f11e9ed02bc692362">Widget::setSize</a>(const Size&lt; uint &gt; &amp;size) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>setTitle</b>(const char *title) (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>setTransientWinId</b>(uintptr_t winId) (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>setVisible</b>(bool yesNo) (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a0bec84d07a6c508e069da9821993d1c2">Widget::setVisible</a>(bool yesNo)</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#aed80a9cbc4a13c01641f35dd3d8688ea">setWidth</a>(uint width) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>show</b>() (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a25ff178539e226b5f30ef0335d060f2b">Widget::show</a>()</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a556f58c8ff8a80ae22cc4df7e5f8218c">Widget</a>(Window &amp;parent)</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Window</b>(App &amp;app) (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>Window</b>(App &amp;app, Window &amp;parent) (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Window</b>(App &amp;app, intptr_t parentId) (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a714cf798aadb4d615f6f60a355382c02">~Widget</a>()</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~Window</b>() (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 380
- 0
classImageAboutWindow.html View File

@@ -0,0 +1,380 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: ImageAboutWindow Class Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="classImageAboutWindow-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">ImageAboutWindow Class Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="dynheader">
Inheritance diagram for ImageAboutWindow:</div>
<div class="dyncontent">
<div class="center">
<img src="classImageAboutWindow.png" usemap="#ImageAboutWindow_map" alt=""/>
<map id="ImageAboutWindow_map" name="ImageAboutWindow_map">
<area href="classWindow.html" alt="Window" shape="rect" coords="0,0,122,24"/>
<area href="classWidget.html" alt="Widget" shape="rect" coords="132,0,254,24"/>
</map>
</div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a752b3eb950d910dd884badcbf7813d25"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a752b3eb950d910dd884badcbf7813d25"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>ImageAboutWindow</b> (<a class="el" href="classWindow.html">Window</a> &amp;parent, const <a class="el" href="classImage.html">Image</a> &amp;image=<a class="el" href="classImage.html">Image</a>())</td></tr>
<tr class="separator:a752b3eb950d910dd884badcbf7813d25"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a54814ee021d88c53097453209fba6add"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a54814ee021d88c53097453209fba6add"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>ImageAboutWindow</b> (<a class="el" href="classWidget.html">Widget</a> *widget, const <a class="el" href="classImage.html">Image</a> &amp;image=<a class="el" href="classImage.html">Image</a>())</td></tr>
<tr class="separator:a54814ee021d88c53097453209fba6add"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a210b6cd0e700a8b60dd7c1b2e020d6fe"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a210b6cd0e700a8b60dd7c1b2e020d6fe"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>setImage</b> (const <a class="el" href="classImage.html">Image</a> &amp;image)</td></tr>
<tr class="separator:a210b6cd0e700a8b60dd7c1b2e020d6fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classWindow"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classWindow')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classWindow.html">Window</a></td></tr>
<tr class="memitem:ad3b0d5f4e188c6aaa01d4d669c5dbdf8 inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad3b0d5f4e188c6aaa01d4d669c5dbdf8"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>Window</b> (<a class="el" href="classApp.html">App</a> &amp;app)</td></tr>
<tr class="separator:ad3b0d5f4e188c6aaa01d4d669c5dbdf8 inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad74a58ec3c3e1f2cc6337d0352a73c94 inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad74a58ec3c3e1f2cc6337d0352a73c94"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>Window</b> (<a class="el" href="classApp.html">App</a> &amp;app, <a class="el" href="classWindow.html">Window</a> &amp;parent)</td></tr>
<tr class="separator:ad74a58ec3c3e1f2cc6337d0352a73c94 inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae4aa8ab25259a7bd34658cad19928e81 inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae4aa8ab25259a7bd34658cad19928e81"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>Window</b> (<a class="el" href="classApp.html">App</a> &amp;app, intptr_t parentId)</td></tr>
<tr class="separator:ae4aa8ab25259a7bd34658cad19928e81 inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8f986e19a11c4c97ed8e6ad3d0e648b7 inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8f986e19a11c4c97ed8e6ad3d0e648b7"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>show</b> ()</td></tr>
<tr class="separator:a8f986e19a11c4c97ed8e6ad3d0e648b7 inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4626829d3cb9d01285f739d2bbc69b74 inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4626829d3cb9d01285f739d2bbc69b74"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>hide</b> ()</td></tr>
<tr class="separator:a4626829d3cb9d01285f739d2bbc69b74 inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a35055c04498121d39741bfcd5082705b inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a35055c04498121d39741bfcd5082705b"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>close</b> ()</td></tr>
<tr class="separator:a35055c04498121d39741bfcd5082705b inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4a9fd2970404d2e67856bc23e11c9e50 inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4a9fd2970404d2e67856bc23e11c9e50"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>exec</b> (bool lockWait=false)</td></tr>
<tr class="separator:a4a9fd2970404d2e67856bc23e11c9e50 inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a03985e4ca2c9b4fcf572b5029e8c0115 inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a03985e4ca2c9b4fcf572b5029e8c0115"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>focus</b> ()</td></tr>
<tr class="separator:a03985e4ca2c9b4fcf572b5029e8c0115 inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a729ab39a1ac99d81b289e08a42582ade inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a729ab39a1ac99d81b289e08a42582ade"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>repaint</b> () noexcept</td></tr>
<tr class="separator:a729ab39a1ac99d81b289e08a42582ade inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa0d7a058ff1194def1a07edb21c30f4c inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa0d7a058ff1194def1a07edb21c30f4c"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>openFileBrowser</b> (const <a class="el" href="structWindow_1_1FileBrowserOptions.html">FileBrowserOptions</a> &amp;options)</td></tr>
<tr class="separator:aa0d7a058ff1194def1a07edb21c30f4c inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6be53a737e7dfcc74167962437e93b8f inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6be53a737e7dfcc74167962437e93b8f"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>isVisible</b> () const noexcept</td></tr>
<tr class="separator:a6be53a737e7dfcc74167962437e93b8f inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9729d92a50712cd3d37041f8c7f54fad inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9729d92a50712cd3d37041f8c7f54fad"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>setVisible</b> (bool yesNo)</td></tr>
<tr class="separator:a9729d92a50712cd3d37041f8c7f54fad inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1b888a7e6a5562968a253b915ccb7825 inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1b888a7e6a5562968a253b915ccb7825"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>isResizable</b> () const noexcept</td></tr>
<tr class="separator:a1b888a7e6a5562968a253b915ccb7825 inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad94f784be678b6d63939bf184b5413b3 inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad94f784be678b6d63939bf184b5413b3"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>setResizable</b> (bool yesNo)</td></tr>
<tr class="separator:ad94f784be678b6d63939bf184b5413b3 inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab19430997dd1b3d7bf9bd3640d73b007 inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab19430997dd1b3d7bf9bd3640d73b007"></a>
uint&#160;</td><td class="memItemRight" valign="bottom"><b>getWidth</b> () const noexcept</td></tr>
<tr class="separator:ab19430997dd1b3d7bf9bd3640d73b007 inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5d53bcba43455f8f77cfcbac61ec6c8e inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5d53bcba43455f8f77cfcbac61ec6c8e"></a>
uint&#160;</td><td class="memItemRight" valign="bottom"><b>getHeight</b> () const noexcept</td></tr>
<tr class="separator:a5d53bcba43455f8f77cfcbac61ec6c8e inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acd158570648b07967a4af011d6223eea inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acd158570648b07967a4af011d6223eea"></a>
<a class="el" href="classSize.html">Size</a>&lt; uint &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>getSize</b> () const noexcept</td></tr>
<tr class="separator:acd158570648b07967a4af011d6223eea inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a89bd0c91920029ddcb21b8975e8b47d9 inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a89bd0c91920029ddcb21b8975e8b47d9"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>setSize</b> (uint width, uint height)</td></tr>
<tr class="separator:a89bd0c91920029ddcb21b8975e8b47d9 inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a101c75c067671deddcd28d67dbdaefae inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a101c75c067671deddcd28d67dbdaefae"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>setSize</b> (<a class="el" href="classSize.html">Size</a>&lt; uint &gt; size)</td></tr>
<tr class="separator:a101c75c067671deddcd28d67dbdaefae inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af437e6afd9104708f30ab769d9afce7a inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af437e6afd9104708f30ab769d9afce7a"></a>
const char *&#160;</td><td class="memItemRight" valign="bottom"><b>getTitle</b> () const noexcept</td></tr>
<tr class="separator:af437e6afd9104708f30ab769d9afce7a inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab2f1b80c5dfcafd2cbdf6b85b756fdbd inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab2f1b80c5dfcafd2cbdf6b85b756fdbd"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>setTitle</b> (const char *title)</td></tr>
<tr class="separator:ab2f1b80c5dfcafd2cbdf6b85b756fdbd inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa00fb01e200451c925b7750bf2710010 inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa00fb01e200451c925b7750bf2710010"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>setTransientWinId</b> (uintptr_t winId)</td></tr>
<tr class="separator:aa00fb01e200451c925b7750bf2710010 inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ace49f35179b7f97468acdeb849762181 inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ace49f35179b7f97468acdeb849762181"></a>
<a class="el" href="classApp.html">App</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>getApp</b> () const noexcept</td></tr>
<tr class="separator:ace49f35179b7f97468acdeb849762181 inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abc7f04bab45e89fb23dfc156f996dbe7 inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abc7f04bab45e89fb23dfc156f996dbe7"></a>
intptr_t&#160;</td><td class="memItemRight" valign="bottom"><b>getWindowId</b> () const noexcept</td></tr>
<tr class="separator:abc7f04bab45e89fb23dfc156f996dbe7 inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5d002fd26f8389b9177ae30829439edd inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5d002fd26f8389b9177ae30829439edd"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>addIdleCallback</b> (<a class="el" href="classIdleCallback.html">IdleCallback</a> *const callback)</td></tr>
<tr class="separator:a5d002fd26f8389b9177ae30829439edd inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aab7051655ccdb53c1de7febb5fff93ca inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aab7051655ccdb53c1de7febb5fff93ca"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>removeIdleCallback</b> (<a class="el" href="classIdleCallback.html">IdleCallback</a> *const callback)</td></tr>
<tr class="separator:aab7051655ccdb53c1de7febb5fff93ca inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classWidget"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classWidget')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classWidget.html">Widget</a></td></tr>
<tr class="memitem:a556f58c8ff8a80ae22cc4df7e5f8218c inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a556f58c8ff8a80ae22cc4df7e5f8218c">Widget</a> (<a class="el" href="classWindow.html">Window</a> &amp;parent)</td></tr>
<tr class="separator:a556f58c8ff8a80ae22cc4df7e5f8218c inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a714cf798aadb4d615f6f60a355382c02 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a714cf798aadb4d615f6f60a355382c02">~Widget</a> ()</td></tr>
<tr class="separator:a714cf798aadb4d615f6f60a355382c02 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a234a8ee8a685dc211ad11f492f0dbc71 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a234a8ee8a685dc211ad11f492f0dbc71">isVisible</a> () const noexcept</td></tr>
<tr class="separator:a234a8ee8a685dc211ad11f492f0dbc71 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0bec84d07a6c508e069da9821993d1c2 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a0bec84d07a6c508e069da9821993d1c2">setVisible</a> (bool yesNo)</td></tr>
<tr class="separator:a0bec84d07a6c508e069da9821993d1c2 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a25ff178539e226b5f30ef0335d060f2b inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a25ff178539e226b5f30ef0335d060f2b">show</a> ()</td></tr>
<tr class="separator:a25ff178539e226b5f30ef0335d060f2b inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4a2f8eebacdd20db505b838f1a118c6b inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a4a2f8eebacdd20db505b838f1a118c6b">hide</a> ()</td></tr>
<tr class="separator:a4a2f8eebacdd20db505b838f1a118c6b inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a169c317caf734c6664494a573e427b40 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">uint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a169c317caf734c6664494a573e427b40">getWidth</a> () const noexcept</td></tr>
<tr class="separator:a169c317caf734c6664494a573e427b40 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa20f6dc096a8836706173f31324c4db8 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">uint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#aa20f6dc096a8836706173f31324c4db8">getHeight</a> () const noexcept</td></tr>
<tr class="separator:aa20f6dc096a8836706173f31324c4db8 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae375b05cd76f63c957949e9121ff56bb inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classSize.html">Size</a>&lt; uint &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#ae375b05cd76f63c957949e9121ff56bb">getSize</a> () const noexcept</td></tr>
<tr class="separator:ae375b05cd76f63c957949e9121ff56bb inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aed80a9cbc4a13c01641f35dd3d8688ea inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#aed80a9cbc4a13c01641f35dd3d8688ea">setWidth</a> (uint width) noexcept</td></tr>
<tr class="separator:aed80a9cbc4a13c01641f35dd3d8688ea inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac6d2e6cbb2ff96f3645493d804af07f7 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#ac6d2e6cbb2ff96f3645493d804af07f7">setHeight</a> (uint height) noexcept</td></tr>
<tr class="separator:ac6d2e6cbb2ff96f3645493d804af07f7 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab4d9e0156e455db3ff23730f82544daa inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#ab4d9e0156e455db3ff23730f82544daa">setSize</a> (uint width, uint height) noexcept</td></tr>
<tr class="separator:ab4d9e0156e455db3ff23730f82544daa inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afce784b204902c0f11e9ed02bc692362 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#afce784b204902c0f11e9ed02bc692362">setSize</a> (const <a class="el" href="classSize.html">Size</a>&lt; uint &gt; &amp;size) noexcept</td></tr>
<tr class="separator:afce784b204902c0f11e9ed02bc692362 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4e41debfe323ee307706af42818636dd inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a4e41debfe323ee307706af42818636dd">getAbsoluteX</a> () const noexcept</td></tr>
<tr class="separator:a4e41debfe323ee307706af42818636dd inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af2ee4713e052b65e839da667aec4e05a inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#af2ee4713e052b65e839da667aec4e05a">getAbsoluteY</a> () const noexcept</td></tr>
<tr class="separator:af2ee4713e052b65e839da667aec4e05a inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae952149aa2b1661ebc9712547ac5cc04 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classPoint.html">Point</a>&lt; int &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#ae952149aa2b1661ebc9712547ac5cc04">getAbsolutePos</a> () const noexcept</td></tr>
<tr class="separator:ae952149aa2b1661ebc9712547ac5cc04 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a56b6c0c92551d25bafa54be5d185e4f6 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a56b6c0c92551d25bafa54be5d185e4f6">setAbsoluteX</a> (int x) noexcept</td></tr>
<tr class="separator:a56b6c0c92551d25bafa54be5d185e4f6 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a65f48c414326491ddb3bbb70bf783829 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a65f48c414326491ddb3bbb70bf783829">setAbsoluteY</a> (int y) noexcept</td></tr>
<tr class="separator:a65f48c414326491ddb3bbb70bf783829 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1f58ab9f12f0e88da6bf600c504b53c5 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a1f58ab9f12f0e88da6bf600c504b53c5">setAbsolutePos</a> (int x, int y) noexcept</td></tr>
<tr class="separator:a1f58ab9f12f0e88da6bf600c504b53c5 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a65b3a31bbf5cfbecdf5cf84ae27ae089 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a65b3a31bbf5cfbecdf5cf84ae27ae089">setAbsolutePos</a> (const <a class="el" href="classPoint.html">Point</a>&lt; int &gt; &amp;pos) noexcept</td></tr>
<tr class="separator:a65b3a31bbf5cfbecdf5cf84ae27ae089 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afa1fe45064cf9bb107fe1dcdb2384d33 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classApp.html">App</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#afa1fe45064cf9bb107fe1dcdb2384d33">getParentApp</a> () const noexcept</td></tr>
<tr class="separator:afa1fe45064cf9bb107fe1dcdb2384d33 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0e0b0b2293bb63b2d84774542cc6a421 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classWindow.html">Window</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a0e0b0b2293bb63b2d84774542cc6a421">getParentWindow</a> () const noexcept</td></tr>
<tr class="separator:a0e0b0b2293bb63b2d84774542cc6a421 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a655f9dac3838b52a3deec1a4b9e6001b inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a655f9dac3838b52a3deec1a4b9e6001b">contains</a> (int x, int y) const noexcept</td></tr>
<tr class="separator:a655f9dac3838b52a3deec1a4b9e6001b inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9dc3a8c1c7fe1dd0ffa28577f1eaa5fd inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a9dc3a8c1c7fe1dd0ffa28577f1eaa5fd">contains</a> (const <a class="el" href="classPoint.html">Point</a>&lt; int &gt; &amp;pos) const noexcept</td></tr>
<tr class="separator:a9dc3a8c1c7fe1dd0ffa28577f1eaa5fd inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a808fa28a78ec9e850d5e86f63b3be26d inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a808fa28a78ec9e850d5e86f63b3be26d">repaint</a> () noexcept</td></tr>
<tr class="separator:a808fa28a78ec9e850d5e86f63b3be26d inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3ee6b2824e3f3719c1c9b3d070385f49 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">uint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a3ee6b2824e3f3719c1c9b3d070385f49">getId</a> () const noexcept</td></tr>
<tr class="separator:a3ee6b2824e3f3719c1c9b3d070385f49 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abfba3652559de84ba1ae9ccbd3d35e31 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#abfba3652559de84ba1ae9ccbd3d35e31">setId</a> (uint id) noexcept</td></tr>
<tr class="separator:abfba3652559de84ba1ae9ccbd3d35e31 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:a4ebc99f9674e37ebdeeaa1ef9a71a0fc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classImageAboutWindow.html#a4ebc99f9674e37ebdeeaa1ef9a71a0fc">onDisplay</a> () override</td></tr>
<tr class="separator:a4ebc99f9674e37ebdeeaa1ef9a71a0fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a952891b12bf379fafc184abc77daef24"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classImageAboutWindow.html#a952891b12bf379fafc184abc77daef24">onKeyboard</a> (const <a class="el" href="structWidget_1_1KeyboardEvent.html">KeyboardEvent</a> &amp;) override</td></tr>
<tr class="separator:a952891b12bf379fafc184abc77daef24"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5af153208057de4baf7264c9a7bd30cd"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classImageAboutWindow.html#a5af153208057de4baf7264c9a7bd30cd">onMouse</a> (const <a class="el" href="structWidget_1_1MouseEvent.html">MouseEvent</a> &amp;) override</td></tr>
<tr class="separator:a5af153208057de4baf7264c9a7bd30cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3532736c8f5e0f685365b373b3493693"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3532736c8f5e0f685365b373b3493693"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>onReshape</b> (uint width, uint height) override</td></tr>
<tr class="separator:a3532736c8f5e0f685365b373b3493693"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_classWindow"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classWindow')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classWindow.html">Window</a></td></tr>
<tr class="memitem:aaffc338094513893982daa88a6854b2c inherit pro_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aaffc338094513893982daa88a6854b2c"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>onDisplayBefore</b> ()</td></tr>
<tr class="separator:aaffc338094513893982daa88a6854b2c inherit pro_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1f9237bae01014d8703d27ccb60ea623 inherit pro_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1f9237bae01014d8703d27ccb60ea623"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>onDisplayAfter</b> ()</td></tr>
<tr class="separator:a1f9237bae01014d8703d27ccb60ea623 inherit pro_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa0edbace2768fe846d9fe0cdc2959dd0 inherit pro_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa0edbace2768fe846d9fe0cdc2959dd0"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>onClose</b> ()</td></tr>
<tr class="separator:aa0edbace2768fe846d9fe0cdc2959dd0 inherit pro_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6ec017881675f860ae746dad6c021b63 inherit pro_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6ec017881675f860ae746dad6c021b63"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>fileBrowserSelected</b> (const char *filename)</td></tr>
<tr class="separator:a6ec017881675f860ae746dad6c021b63 inherit pro_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_classWidget"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classWidget')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classWidget.html">Widget</a></td></tr>
<tr class="memitem:a3b42652fcb2f95c6f86bdd43a1727507 inherit pro_methods_classWidget"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a3b42652fcb2f95c6f86bdd43a1727507">onSpecial</a> (const <a class="el" href="structWidget_1_1SpecialEvent.html">SpecialEvent</a> &amp;)</td></tr>
<tr class="separator:a3b42652fcb2f95c6f86bdd43a1727507 inherit pro_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a655569fb78a598652e9f24cefa1fe4a5 inherit pro_methods_classWidget"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a655569fb78a598652e9f24cefa1fe4a5">onMotion</a> (const <a class="el" href="structWidget_1_1MotionEvent.html">MotionEvent</a> &amp;)</td></tr>
<tr class="separator:a655569fb78a598652e9f24cefa1fe4a5 inherit pro_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0d78d28bd4a98c3a016a38091b2d4185 inherit pro_methods_classWidget"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a0d78d28bd4a98c3a016a38091b2d4185">onScroll</a> (const <a class="el" href="structWidget_1_1ScrollEvent.html">ScrollEvent</a> &amp;)</td></tr>
<tr class="separator:a0d78d28bd4a98c3a016a38091b2d4185 inherit pro_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acc0365ec4b9245bdffb8d0285be55dea inherit pro_methods_classWidget"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#acc0365ec4b9245bdffb8d0285be55dea">onResize</a> (const <a class="el" href="structWidget_1_1ResizeEvent.html">ResizeEvent</a> &amp;)</td></tr>
<tr class="separator:acc0365ec4b9245bdffb8d0285be55dea inherit pro_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa92462db80ed1dc8334910038cd262cc inherit pro_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#aa92462db80ed1dc8334910038cd262cc">setNeedsFullViewport</a> (bool yesNo) noexcept</td></tr>
<tr class="separator:aa92462db80ed1dc8334910038cd262cc inherit pro_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2ce358088e8f3b65621afd02c675bad8 inherit pro_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a2ce358088e8f3b65621afd02c675bad8">setNeedsScaling</a> (bool yesNo) noexcept</td></tr>
<tr class="separator:a2ce358088e8f3b65621afd02c675bad8 inherit pro_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a4ebc99f9674e37ebdeeaa1ef9a71a0fc"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ImageAboutWindow::onDisplay </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>A function called to draw the view contents with OpenGL. </p>

<p>Implements <a class="el" href="classWidget.html#ae1554f348fe3b2f9d4c3c5c4f9ec55bd">Widget</a>.</p>

</div>
</div>
<a class="anchor" id="a952891b12bf379fafc184abc77daef24"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool ImageAboutWindow::onKeyboard </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structWidget_1_1KeyboardEvent.html">KeyboardEvent</a> &amp;&#160;</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>A function called when a key is pressed or released. </p><dl class="section return"><dt>Returns</dt><dd>True to stop event propagation, false otherwise. </dd></dl>

<p>Reimplemented from <a class="el" href="classWidget.html#a9fa874aede538b41348f1029524aea11">Widget</a>.</p>

</div>
</div>
<a class="anchor" id="a5af153208057de4baf7264c9a7bd30cd"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool ImageAboutWindow::onMouse </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structWidget_1_1MouseEvent.html">MouseEvent</a> &amp;&#160;</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>A function called when a mouse button is pressed or released. </p><dl class="section return"><dt>Returns</dt><dd>True to stop event propagation, false otherwise. </dd></dl>

<p>Reimplemented from <a class="el" href="classWidget.html#a097ec1d56a06bdc9e0a4e54880def378">Widget</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>dgl/<a class="el" href="ImageAboutWindow_8hpp_source.html">ImageAboutWindow.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

BIN
classImageAboutWindow.png View File

Before After
Width: 254  |  Height: 80  |  Size: 686B

+ 143
- 0
classImageButton-members.html View File

@@ -0,0 +1,143 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: Member List</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">ImageButton Member List</div> </div>
</div><!--header-->
<div class="contents">

<p>This is the complete list of members for <a class="el" href="classImageButton.html">ImageButton</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a655f9dac3838b52a3deec1a4b9e6001b">contains</a>(int x, int y) const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a9dc3a8c1c7fe1dd0ffa28577f1eaa5fd">contains</a>(const Point&lt; int &gt; &amp;pos) const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#ae952149aa2b1661ebc9712547ac5cc04">getAbsolutePos</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a4e41debfe323ee307706af42818636dd">getAbsoluteX</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#af2ee4713e052b65e839da667aec4e05a">getAbsoluteY</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#aa20f6dc096a8836706173f31324c4db8">getHeight</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a3ee6b2824e3f3719c1c9b3d070385f49">getId</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#afa1fe45064cf9bb107fe1dcdb2384d33">getParentApp</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a0e0b0b2293bb63b2d84774542cc6a421">getParentWindow</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#ae375b05cd76f63c957949e9121ff56bb">getSize</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a169c317caf734c6664494a573e427b40">getWidth</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a4a2f8eebacdd20db505b838f1a118c6b">hide</a>()</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>ImageButton</b>(Window &amp;parent, const Image &amp;image) noexcept (defined in <a class="el" href="classImageButton.html">ImageButton</a>)</td><td class="entry"><a class="el" href="classImageButton.html">ImageButton</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>ImageButton</b>(Window &amp;parent, const Image &amp;imageNormal, const Image &amp;imageHover, const Image &amp;imageDown) noexcept (defined in <a class="el" href="classImageButton.html">ImageButton</a>)</td><td class="entry"><a class="el" href="classImageButton.html">ImageButton</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>ImageButton</b>(Widget *widget, const Image &amp;image) noexcept (defined in <a class="el" href="classImageButton.html">ImageButton</a>)</td><td class="entry"><a class="el" href="classImageButton.html">ImageButton</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>ImageButton</b>(Widget *widget, const Image &amp;imageNormal, const Image &amp;imageHover, const Image &amp;imageDown) noexcept (defined in <a class="el" href="classImageButton.html">ImageButton</a>)</td><td class="entry"><a class="el" href="classImageButton.html">ImageButton</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>ImageButton</b>(const ImageButton &amp;imageButton) noexcept (defined in <a class="el" href="classImageButton.html">ImageButton</a>)</td><td class="entry"><a class="el" href="classImageButton.html">ImageButton</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a234a8ee8a685dc211ad11f492f0dbc71">isVisible</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classImageButton.html#abb0d1081f8c794657ccbbcffb2d75efc">onDisplay</a>() override</td><td class="entry"><a class="el" href="classImageButton.html">ImageButton</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a9fa874aede538b41348f1029524aea11">onKeyboard</a>(const KeyboardEvent &amp;)</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classImageButton.html#a53676b7a0cc31f78a371ef363344f7ba">onMotion</a>(const MotionEvent &amp;) override</td><td class="entry"><a class="el" href="classImageButton.html">ImageButton</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classImageButton.html#acea33c4a730d0dce4f87a67cc290d747">onMouse</a>(const MouseEvent &amp;) override</td><td class="entry"><a class="el" href="classImageButton.html">ImageButton</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#acc0365ec4b9245bdffb8d0285be55dea">onResize</a>(const ResizeEvent &amp;)</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a0d78d28bd4a98c3a016a38091b2d4185">onScroll</a>(const ScrollEvent &amp;)</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a3b42652fcb2f95c6f86bdd43a1727507">onSpecial</a>(const SpecialEvent &amp;)</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>operator=</b>(const ImageButton &amp;imageButton) noexcept (defined in <a class="el" href="classImageButton.html">ImageButton</a>)</td><td class="entry"><a class="el" href="classImageButton.html">ImageButton</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a808fa28a78ec9e850d5e86f63b3be26d">repaint</a>() noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a1f58ab9f12f0e88da6bf600c504b53c5">setAbsolutePos</a>(int x, int y) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a65b3a31bbf5cfbecdf5cf84ae27ae089">setAbsolutePos</a>(const Point&lt; int &gt; &amp;pos) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a56b6c0c92551d25bafa54be5d185e4f6">setAbsoluteX</a>(int x) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a65f48c414326491ddb3bbb70bf783829">setAbsoluteY</a>(int y) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>setCallback</b>(Callback *callback) noexcept (defined in <a class="el" href="classImageButton.html">ImageButton</a>)</td><td class="entry"><a class="el" href="classImageButton.html">ImageButton</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#ac6d2e6cbb2ff96f3645493d804af07f7">setHeight</a>(uint height) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#abfba3652559de84ba1ae9ccbd3d35e31">setId</a>(uint id) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#aa92462db80ed1dc8334910038cd262cc">setNeedsFullViewport</a>(bool yesNo) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a2ce358088e8f3b65621afd02c675bad8">setNeedsScaling</a>(bool yesNo) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#ab4d9e0156e455db3ff23730f82544daa">setSize</a>(uint width, uint height) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#afce784b204902c0f11e9ed02bc692362">setSize</a>(const Size&lt; uint &gt; &amp;size) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a0bec84d07a6c508e069da9821993d1c2">setVisible</a>(bool yesNo)</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#aed80a9cbc4a13c01641f35dd3d8688ea">setWidth</a>(uint width) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a25ff178539e226b5f30ef0335d060f2b">show</a>()</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a556f58c8ff8a80ae22cc4df7e5f8218c">Widget</a>(Window &amp;parent)</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a714cf798aadb4d615f6f60a355382c02">~Widget</a>()</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 302
- 0
classImageButton.html View File

@@ -0,0 +1,302 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: ImageButton Class Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="classImageButton-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">ImageButton Class Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="dynheader">
Inheritance diagram for ImageButton:</div>
<div class="dyncontent">
<div class="center">
<img src="classImageButton.png" usemap="#ImageButton_map" alt=""/>
<map id="ImageButton_map" name="ImageButton_map">
<area href="classWidget.html" alt="Widget" shape="rect" coords="0,0,80,24"/>
</map>
</div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classImageButton_1_1Callback.html">Callback</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a150dce5fa612e6e5f3408ba01f02d371"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a150dce5fa612e6e5f3408ba01f02d371"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>ImageButton</b> (<a class="el" href="classWindow.html">Window</a> &amp;parent, const <a class="el" href="classImage.html">Image</a> &amp;image) noexcept</td></tr>
<tr class="separator:a150dce5fa612e6e5f3408ba01f02d371"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7d4873c4634c7b32d7872e2a1e876288"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7d4873c4634c7b32d7872e2a1e876288"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>ImageButton</b> (<a class="el" href="classWindow.html">Window</a> &amp;parent, const <a class="el" href="classImage.html">Image</a> &amp;imageNormal, const <a class="el" href="classImage.html">Image</a> &amp;imageHover, const <a class="el" href="classImage.html">Image</a> &amp;imageDown) noexcept</td></tr>
<tr class="separator:a7d4873c4634c7b32d7872e2a1e876288"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abce9501d3e8e587c5ce2513ab82c23a6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abce9501d3e8e587c5ce2513ab82c23a6"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>ImageButton</b> (<a class="el" href="classWidget.html">Widget</a> *widget, const <a class="el" href="classImage.html">Image</a> &amp;image) noexcept</td></tr>
<tr class="separator:abce9501d3e8e587c5ce2513ab82c23a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a897a6250e1e919498fc00d4e74e5d283"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a897a6250e1e919498fc00d4e74e5d283"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>ImageButton</b> (<a class="el" href="classWidget.html">Widget</a> *widget, const <a class="el" href="classImage.html">Image</a> &amp;imageNormal, const <a class="el" href="classImage.html">Image</a> &amp;imageHover, const <a class="el" href="classImage.html">Image</a> &amp;imageDown) noexcept</td></tr>
<tr class="separator:a897a6250e1e919498fc00d4e74e5d283"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa5c91de386155cd2b672e85bac07d2f3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa5c91de386155cd2b672e85bac07d2f3"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>ImageButton</b> (const <a class="el" href="classImageButton.html">ImageButton</a> &amp;imageButton) noexcept</td></tr>
<tr class="separator:aa5c91de386155cd2b672e85bac07d2f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af9faa14453ac897bd8e7204cc0585157"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af9faa14453ac897bd8e7204cc0585157"></a>
<a class="el" href="classImageButton.html">ImageButton</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (const <a class="el" href="classImageButton.html">ImageButton</a> &amp;imageButton) noexcept</td></tr>
<tr class="separator:af9faa14453ac897bd8e7204cc0585157"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa5dca002043e3529d3d7b7d691d02568"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa5dca002043e3529d3d7b7d691d02568"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>setCallback</b> (<a class="el" href="classImageButton_1_1Callback.html">Callback</a> *callback) noexcept</td></tr>
<tr class="separator:aa5dca002043e3529d3d7b7d691d02568"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classWidget"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classWidget')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classWidget.html">Widget</a></td></tr>
<tr class="memitem:a556f58c8ff8a80ae22cc4df7e5f8218c inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a556f58c8ff8a80ae22cc4df7e5f8218c">Widget</a> (<a class="el" href="classWindow.html">Window</a> &amp;parent)</td></tr>
<tr class="separator:a556f58c8ff8a80ae22cc4df7e5f8218c inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a714cf798aadb4d615f6f60a355382c02 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a714cf798aadb4d615f6f60a355382c02">~Widget</a> ()</td></tr>
<tr class="separator:a714cf798aadb4d615f6f60a355382c02 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a234a8ee8a685dc211ad11f492f0dbc71 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a234a8ee8a685dc211ad11f492f0dbc71">isVisible</a> () const noexcept</td></tr>
<tr class="separator:a234a8ee8a685dc211ad11f492f0dbc71 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0bec84d07a6c508e069da9821993d1c2 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a0bec84d07a6c508e069da9821993d1c2">setVisible</a> (bool yesNo)</td></tr>
<tr class="separator:a0bec84d07a6c508e069da9821993d1c2 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a25ff178539e226b5f30ef0335d060f2b inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a25ff178539e226b5f30ef0335d060f2b">show</a> ()</td></tr>
<tr class="separator:a25ff178539e226b5f30ef0335d060f2b inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4a2f8eebacdd20db505b838f1a118c6b inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a4a2f8eebacdd20db505b838f1a118c6b">hide</a> ()</td></tr>
<tr class="separator:a4a2f8eebacdd20db505b838f1a118c6b inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a169c317caf734c6664494a573e427b40 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">uint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a169c317caf734c6664494a573e427b40">getWidth</a> () const noexcept</td></tr>
<tr class="separator:a169c317caf734c6664494a573e427b40 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa20f6dc096a8836706173f31324c4db8 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">uint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#aa20f6dc096a8836706173f31324c4db8">getHeight</a> () const noexcept</td></tr>
<tr class="separator:aa20f6dc096a8836706173f31324c4db8 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae375b05cd76f63c957949e9121ff56bb inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classSize.html">Size</a>&lt; uint &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#ae375b05cd76f63c957949e9121ff56bb">getSize</a> () const noexcept</td></tr>
<tr class="separator:ae375b05cd76f63c957949e9121ff56bb inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aed80a9cbc4a13c01641f35dd3d8688ea inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#aed80a9cbc4a13c01641f35dd3d8688ea">setWidth</a> (uint width) noexcept</td></tr>
<tr class="separator:aed80a9cbc4a13c01641f35dd3d8688ea inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac6d2e6cbb2ff96f3645493d804af07f7 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#ac6d2e6cbb2ff96f3645493d804af07f7">setHeight</a> (uint height) noexcept</td></tr>
<tr class="separator:ac6d2e6cbb2ff96f3645493d804af07f7 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab4d9e0156e455db3ff23730f82544daa inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#ab4d9e0156e455db3ff23730f82544daa">setSize</a> (uint width, uint height) noexcept</td></tr>
<tr class="separator:ab4d9e0156e455db3ff23730f82544daa inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afce784b204902c0f11e9ed02bc692362 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#afce784b204902c0f11e9ed02bc692362">setSize</a> (const <a class="el" href="classSize.html">Size</a>&lt; uint &gt; &amp;size) noexcept</td></tr>
<tr class="separator:afce784b204902c0f11e9ed02bc692362 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4e41debfe323ee307706af42818636dd inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a4e41debfe323ee307706af42818636dd">getAbsoluteX</a> () const noexcept</td></tr>
<tr class="separator:a4e41debfe323ee307706af42818636dd inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af2ee4713e052b65e839da667aec4e05a inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#af2ee4713e052b65e839da667aec4e05a">getAbsoluteY</a> () const noexcept</td></tr>
<tr class="separator:af2ee4713e052b65e839da667aec4e05a inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae952149aa2b1661ebc9712547ac5cc04 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classPoint.html">Point</a>&lt; int &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#ae952149aa2b1661ebc9712547ac5cc04">getAbsolutePos</a> () const noexcept</td></tr>
<tr class="separator:ae952149aa2b1661ebc9712547ac5cc04 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a56b6c0c92551d25bafa54be5d185e4f6 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a56b6c0c92551d25bafa54be5d185e4f6">setAbsoluteX</a> (int x) noexcept</td></tr>
<tr class="separator:a56b6c0c92551d25bafa54be5d185e4f6 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a65f48c414326491ddb3bbb70bf783829 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a65f48c414326491ddb3bbb70bf783829">setAbsoluteY</a> (int y) noexcept</td></tr>
<tr class="separator:a65f48c414326491ddb3bbb70bf783829 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1f58ab9f12f0e88da6bf600c504b53c5 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a1f58ab9f12f0e88da6bf600c504b53c5">setAbsolutePos</a> (int x, int y) noexcept</td></tr>
<tr class="separator:a1f58ab9f12f0e88da6bf600c504b53c5 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a65b3a31bbf5cfbecdf5cf84ae27ae089 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a65b3a31bbf5cfbecdf5cf84ae27ae089">setAbsolutePos</a> (const <a class="el" href="classPoint.html">Point</a>&lt; int &gt; &amp;pos) noexcept</td></tr>
<tr class="separator:a65b3a31bbf5cfbecdf5cf84ae27ae089 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afa1fe45064cf9bb107fe1dcdb2384d33 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classApp.html">App</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#afa1fe45064cf9bb107fe1dcdb2384d33">getParentApp</a> () const noexcept</td></tr>
<tr class="separator:afa1fe45064cf9bb107fe1dcdb2384d33 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0e0b0b2293bb63b2d84774542cc6a421 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classWindow.html">Window</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a0e0b0b2293bb63b2d84774542cc6a421">getParentWindow</a> () const noexcept</td></tr>
<tr class="separator:a0e0b0b2293bb63b2d84774542cc6a421 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a655f9dac3838b52a3deec1a4b9e6001b inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a655f9dac3838b52a3deec1a4b9e6001b">contains</a> (int x, int y) const noexcept</td></tr>
<tr class="separator:a655f9dac3838b52a3deec1a4b9e6001b inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9dc3a8c1c7fe1dd0ffa28577f1eaa5fd inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a9dc3a8c1c7fe1dd0ffa28577f1eaa5fd">contains</a> (const <a class="el" href="classPoint.html">Point</a>&lt; int &gt; &amp;pos) const noexcept</td></tr>
<tr class="separator:a9dc3a8c1c7fe1dd0ffa28577f1eaa5fd inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a808fa28a78ec9e850d5e86f63b3be26d inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a808fa28a78ec9e850d5e86f63b3be26d">repaint</a> () noexcept</td></tr>
<tr class="separator:a808fa28a78ec9e850d5e86f63b3be26d inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3ee6b2824e3f3719c1c9b3d070385f49 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">uint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a3ee6b2824e3f3719c1c9b3d070385f49">getId</a> () const noexcept</td></tr>
<tr class="separator:a3ee6b2824e3f3719c1c9b3d070385f49 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abfba3652559de84ba1ae9ccbd3d35e31 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#abfba3652559de84ba1ae9ccbd3d35e31">setId</a> (uint id) noexcept</td></tr>
<tr class="separator:abfba3652559de84ba1ae9ccbd3d35e31 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:abb0d1081f8c794657ccbbcffb2d75efc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classImageButton.html#abb0d1081f8c794657ccbbcffb2d75efc">onDisplay</a> () override</td></tr>
<tr class="separator:abb0d1081f8c794657ccbbcffb2d75efc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acea33c4a730d0dce4f87a67cc290d747"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classImageButton.html#acea33c4a730d0dce4f87a67cc290d747">onMouse</a> (const <a class="el" href="structWidget_1_1MouseEvent.html">MouseEvent</a> &amp;) override</td></tr>
<tr class="separator:acea33c4a730d0dce4f87a67cc290d747"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a53676b7a0cc31f78a371ef363344f7ba"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classImageButton.html#a53676b7a0cc31f78a371ef363344f7ba">onMotion</a> (const <a class="el" href="structWidget_1_1MotionEvent.html">MotionEvent</a> &amp;) override</td></tr>
<tr class="separator:a53676b7a0cc31f78a371ef363344f7ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_classWidget"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classWidget')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classWidget.html">Widget</a></td></tr>
<tr class="memitem:a9fa874aede538b41348f1029524aea11 inherit pro_methods_classWidget"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a9fa874aede538b41348f1029524aea11">onKeyboard</a> (const <a class="el" href="structWidget_1_1KeyboardEvent.html">KeyboardEvent</a> &amp;)</td></tr>
<tr class="separator:a9fa874aede538b41348f1029524aea11 inherit pro_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3b42652fcb2f95c6f86bdd43a1727507 inherit pro_methods_classWidget"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a3b42652fcb2f95c6f86bdd43a1727507">onSpecial</a> (const <a class="el" href="structWidget_1_1SpecialEvent.html">SpecialEvent</a> &amp;)</td></tr>
<tr class="separator:a3b42652fcb2f95c6f86bdd43a1727507 inherit pro_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0d78d28bd4a98c3a016a38091b2d4185 inherit pro_methods_classWidget"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a0d78d28bd4a98c3a016a38091b2d4185">onScroll</a> (const <a class="el" href="structWidget_1_1ScrollEvent.html">ScrollEvent</a> &amp;)</td></tr>
<tr class="separator:a0d78d28bd4a98c3a016a38091b2d4185 inherit pro_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acc0365ec4b9245bdffb8d0285be55dea inherit pro_methods_classWidget"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#acc0365ec4b9245bdffb8d0285be55dea">onResize</a> (const <a class="el" href="structWidget_1_1ResizeEvent.html">ResizeEvent</a> &amp;)</td></tr>
<tr class="separator:acc0365ec4b9245bdffb8d0285be55dea inherit pro_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa92462db80ed1dc8334910038cd262cc inherit pro_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#aa92462db80ed1dc8334910038cd262cc">setNeedsFullViewport</a> (bool yesNo) noexcept</td></tr>
<tr class="separator:aa92462db80ed1dc8334910038cd262cc inherit pro_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2ce358088e8f3b65621afd02c675bad8 inherit pro_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a2ce358088e8f3b65621afd02c675bad8">setNeedsScaling</a> (bool yesNo) noexcept</td></tr>
<tr class="separator:a2ce358088e8f3b65621afd02c675bad8 inherit pro_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="abb0d1081f8c794657ccbbcffb2d75efc"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ImageButton::onDisplay </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>A function called to draw the view contents with OpenGL. </p>

<p>Implements <a class="el" href="classWidget.html#ae1554f348fe3b2f9d4c3c5c4f9ec55bd">Widget</a>.</p>

</div>
</div>
<a class="anchor" id="acea33c4a730d0dce4f87a67cc290d747"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool ImageButton::onMouse </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structWidget_1_1MouseEvent.html">MouseEvent</a> &amp;&#160;</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>A function called when a mouse button is pressed or released. </p><dl class="section return"><dt>Returns</dt><dd>True to stop event propagation, false otherwise. </dd></dl>

<p>Reimplemented from <a class="el" href="classWidget.html#a097ec1d56a06bdc9e0a4e54880def378">Widget</a>.</p>

</div>
</div>
<a class="anchor" id="a53676b7a0cc31f78a371ef363344f7ba"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool ImageButton::onMotion </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structWidget_1_1MotionEvent.html">MotionEvent</a> &amp;&#160;</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>A function called when the pointer moves. </p><dl class="section return"><dt>Returns</dt><dd>True to stop event propagation, false otherwise. </dd></dl>

<p>Reimplemented from <a class="el" href="classWidget.html#a655569fb78a598652e9f24cefa1fe4a5">Widget</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>dgl/<a class="el" href="ImageButton_8hpp_source.html">ImageButton.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

BIN
classImageButton.png View File

Before After
Width: 80  |  Height: 80  |  Size: 440B

+ 106
- 0
classImageButton_1_1Callback-members.html View File

@@ -0,0 +1,106 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: Member List</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="classImageButton.html">ImageButton</a></li><li class="navelem"><a class="el" href="classImageButton_1_1Callback.html">Callback</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">ImageButton::Callback Member List</div> </div>
</div><!--header-->
<div class="contents">

<p>This is the complete list of members for <a class="el" href="classImageButton_1_1Callback.html">ImageButton::Callback</a>, including all inherited members.</p>
<table class="directory">
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>imageButtonClicked</b>(ImageButton *imageButton, int button)=0 (defined in <a class="el" href="classImageButton_1_1Callback.html">ImageButton::Callback</a>)</td><td class="entry"><a class="el" href="classImageButton_1_1Callback.html">ImageButton::Callback</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>~Callback</b>() (defined in <a class="el" href="classImageButton_1_1Callback.html">ImageButton::Callback</a>)</td><td class="entry"><a class="el" href="classImageButton_1_1Callback.html">ImageButton::Callback</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 114
- 0
classImageButton_1_1Callback.html View File

@@ -0,0 +1,114 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: ImageButton::Callback Class Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="classImageButton.html">ImageButton</a></li><li class="navelem"><a class="el" href="classImageButton_1_1Callback.html">Callback</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classImageButton_1_1Callback-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">ImageButton::Callback Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a0526a4332229ac3a22566fec3d8680e2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0526a4332229ac3a22566fec3d8680e2"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>imageButtonClicked</b> (<a class="el" href="classImageButton.html">ImageButton</a> *imageButton, int button)=0</td></tr>
<tr class="separator:a0526a4332229ac3a22566fec3d8680e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>dgl/<a class="el" href="ImageButton_8hpp_source.html">ImageButton.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 154
- 0
classImageKnob-members.html View File

@@ -0,0 +1,154 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: Member List</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">ImageKnob Member List</div> </div>
</div><!--header-->
<div class="contents">

<p>This is the complete list of members for <a class="el" href="classImageKnob.html">ImageKnob</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a655f9dac3838b52a3deec1a4b9e6001b">contains</a>(int x, int y) const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a9dc3a8c1c7fe1dd0ffa28577f1eaa5fd">contains</a>(const Point&lt; int &gt; &amp;pos) const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#ae952149aa2b1661ebc9712547ac5cc04">getAbsolutePos</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a4e41debfe323ee307706af42818636dd">getAbsoluteX</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#af2ee4713e052b65e839da667aec4e05a">getAbsoluteY</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#aa20f6dc096a8836706173f31324c4db8">getHeight</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a3ee6b2824e3f3719c1c9b3d070385f49">getId</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#afa1fe45064cf9bb107fe1dcdb2384d33">getParentApp</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a0e0b0b2293bb63b2d84774542cc6a421">getParentWindow</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#ae375b05cd76f63c957949e9121ff56bb">getSize</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>getValue</b>() const noexcept (defined in <a class="el" href="classImageKnob.html">ImageKnob</a>)</td><td class="entry"><a class="el" href="classImageKnob.html">ImageKnob</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a169c317caf734c6664494a573e427b40">getWidth</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a4a2f8eebacdd20db505b838f1a118c6b">hide</a>()</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>Horizontal</b> enum value (defined in <a class="el" href="classImageKnob.html">ImageKnob</a>)</td><td class="entry"><a class="el" href="classImageKnob.html">ImageKnob</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>ImageKnob</b>(Window &amp;parent, const Image &amp;image, Orientation orientation=Vertical) noexcept (defined in <a class="el" href="classImageKnob.html">ImageKnob</a>)</td><td class="entry"><a class="el" href="classImageKnob.html">ImageKnob</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>ImageKnob</b>(Widget *widget, const Image &amp;image, Orientation orientation=Vertical) noexcept (defined in <a class="el" href="classImageKnob.html">ImageKnob</a>)</td><td class="entry"><a class="el" href="classImageKnob.html">ImageKnob</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>ImageKnob</b>(const ImageKnob &amp;imageKnob) (defined in <a class="el" href="classImageKnob.html">ImageKnob</a>)</td><td class="entry"><a class="el" href="classImageKnob.html">ImageKnob</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a234a8ee8a685dc211ad11f492f0dbc71">isVisible</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classImageKnob.html#a7123a12c906463700df8c6f24cd0a62f">onDisplay</a>() override</td><td class="entry"><a class="el" href="classImageKnob.html">ImageKnob</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a9fa874aede538b41348f1029524aea11">onKeyboard</a>(const KeyboardEvent &amp;)</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classImageKnob.html#a299a1721471747dc173633f21bd75b1f">onMotion</a>(const MotionEvent &amp;) override</td><td class="entry"><a class="el" href="classImageKnob.html">ImageKnob</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classImageKnob.html#a473247914d3751d629dd8690f74af07b">onMouse</a>(const MouseEvent &amp;) override</td><td class="entry"><a class="el" href="classImageKnob.html">ImageKnob</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#acc0365ec4b9245bdffb8d0285be55dea">onResize</a>(const ResizeEvent &amp;)</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classImageKnob.html#a2cdc26028611554458a74b32740ac33b">onScroll</a>(const ScrollEvent &amp;) override</td><td class="entry"><a class="el" href="classImageKnob.html">ImageKnob</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a3b42652fcb2f95c6f86bdd43a1727507">onSpecial</a>(const SpecialEvent &amp;)</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>operator=</b>(const ImageKnob &amp;imageKnob) (defined in <a class="el" href="classImageKnob.html">ImageKnob</a>)</td><td class="entry"><a class="el" href="classImageKnob.html">ImageKnob</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Orientation</b> enum name (defined in <a class="el" href="classImageKnob.html">ImageKnob</a>)</td><td class="entry"><a class="el" href="classImageKnob.html">ImageKnob</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a808fa28a78ec9e850d5e86f63b3be26d">repaint</a>() noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a1f58ab9f12f0e88da6bf600c504b53c5">setAbsolutePos</a>(int x, int y) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a65b3a31bbf5cfbecdf5cf84ae27ae089">setAbsolutePos</a>(const Point&lt; int &gt; &amp;pos) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a56b6c0c92551d25bafa54be5d185e4f6">setAbsoluteX</a>(int x) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a65f48c414326491ddb3bbb70bf783829">setAbsoluteY</a>(int y) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>setCallback</b>(Callback *callback) noexcept (defined in <a class="el" href="classImageKnob.html">ImageKnob</a>)</td><td class="entry"><a class="el" href="classImageKnob.html">ImageKnob</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>setDefault</b>(float def) noexcept (defined in <a class="el" href="classImageKnob.html">ImageKnob</a>)</td><td class="entry"><a class="el" href="classImageKnob.html">ImageKnob</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#ac6d2e6cbb2ff96f3645493d804af07f7">setHeight</a>(uint height) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#abfba3652559de84ba1ae9ccbd3d35e31">setId</a>(uint id) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>setImageLayerCount</b>(uint count) noexcept (defined in <a class="el" href="classImageKnob.html">ImageKnob</a>)</td><td class="entry"><a class="el" href="classImageKnob.html">ImageKnob</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#aa92462db80ed1dc8334910038cd262cc">setNeedsFullViewport</a>(bool yesNo) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a2ce358088e8f3b65621afd02c675bad8">setNeedsScaling</a>(bool yesNo) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>setOrientation</b>(Orientation orientation) noexcept (defined in <a class="el" href="classImageKnob.html">ImageKnob</a>)</td><td class="entry"><a class="el" href="classImageKnob.html">ImageKnob</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>setRange</b>(float min, float max) noexcept (defined in <a class="el" href="classImageKnob.html">ImageKnob</a>)</td><td class="entry"><a class="el" href="classImageKnob.html">ImageKnob</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>setRotationAngle</b>(int angle) (defined in <a class="el" href="classImageKnob.html">ImageKnob</a>)</td><td class="entry"><a class="el" href="classImageKnob.html">ImageKnob</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#ab4d9e0156e455db3ff23730f82544daa">setSize</a>(uint width, uint height) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#afce784b204902c0f11e9ed02bc692362">setSize</a>(const Size&lt; uint &gt; &amp;size) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>setStep</b>(float step) noexcept (defined in <a class="el" href="classImageKnob.html">ImageKnob</a>)</td><td class="entry"><a class="el" href="classImageKnob.html">ImageKnob</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>setUsingLogScale</b>(bool yesNo) noexcept (defined in <a class="el" href="classImageKnob.html">ImageKnob</a>)</td><td class="entry"><a class="el" href="classImageKnob.html">ImageKnob</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>setValue</b>(float value, bool sendCallback=false) noexcept (defined in <a class="el" href="classImageKnob.html">ImageKnob</a>)</td><td class="entry"><a class="el" href="classImageKnob.html">ImageKnob</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a0bec84d07a6c508e069da9821993d1c2">setVisible</a>(bool yesNo)</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#aed80a9cbc4a13c01641f35dd3d8688ea">setWidth</a>(uint width) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a25ff178539e226b5f30ef0335d060f2b">show</a>()</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Vertical</b> enum value (defined in <a class="el" href="classImageKnob.html">ImageKnob</a>)</td><td class="entry"><a class="el" href="classImageKnob.html">ImageKnob</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a556f58c8ff8a80ae22cc4df7e5f8218c">Widget</a>(Window &amp;parent)</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~ImageKnob</b>() override (defined in <a class="el" href="classImageKnob.html">ImageKnob</a>)</td><td class="entry"><a class="el" href="classImageKnob.html">ImageKnob</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a714cf798aadb4d615f6f60a355382c02">~Widget</a>()</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 358
- 0
classImageKnob.html View File

@@ -0,0 +1,358 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: ImageKnob Class Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="classImageKnob-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">ImageKnob Class Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="dynheader">
Inheritance diagram for ImageKnob:</div>
<div class="dyncontent">
<div class="center">
<img src="classImageKnob.png" usemap="#ImageKnob_map" alt=""/>
<map id="ImageKnob_map" name="ImageKnob_map">
<area href="classWidget.html" alt="Widget" shape="rect" coords="0,0,74,24"/>
</map>
</div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classImageKnob_1_1Callback.html">Callback</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:abd9576381ef178a9e1bed2fd00ef6dc3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abd9576381ef178a9e1bed2fd00ef6dc3"></a>enum &#160;</td><td class="memItemRight" valign="bottom"><b>Orientation</b> { <b>Horizontal</b>,
<b>Vertical</b>
}</td></tr>
<tr class="separator:abd9576381ef178a9e1bed2fd00ef6dc3"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a0a06456e0a28938da86f7e189ee985f8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0a06456e0a28938da86f7e189ee985f8"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>ImageKnob</b> (<a class="el" href="classWindow.html">Window</a> &amp;parent, const <a class="el" href="classImage.html">Image</a> &amp;image, Orientation orientation=Vertical) noexcept</td></tr>
<tr class="separator:a0a06456e0a28938da86f7e189ee985f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7229c67030dbc57cab751185bbe8c0d2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7229c67030dbc57cab751185bbe8c0d2"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>ImageKnob</b> (<a class="el" href="classWidget.html">Widget</a> *widget, const <a class="el" href="classImage.html">Image</a> &amp;image, Orientation orientation=Vertical) noexcept</td></tr>
<tr class="separator:a7229c67030dbc57cab751185bbe8c0d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a298857f00f8b327d32f8252d181d1cec"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a298857f00f8b327d32f8252d181d1cec"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>ImageKnob</b> (const <a class="el" href="classImageKnob.html">ImageKnob</a> &amp;imageKnob)</td></tr>
<tr class="separator:a298857f00f8b327d32f8252d181d1cec"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab04ff62e2ba608c7864824478005a36e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab04ff62e2ba608c7864824478005a36e"></a>
<a class="el" href="classImageKnob.html">ImageKnob</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (const <a class="el" href="classImageKnob.html">ImageKnob</a> &amp;imageKnob)</td></tr>
<tr class="separator:ab04ff62e2ba608c7864824478005a36e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab5be88bba4178d555646f15c2cb3af48"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab5be88bba4178d555646f15c2cb3af48"></a>
float&#160;</td><td class="memItemRight" valign="bottom"><b>getValue</b> () const noexcept</td></tr>
<tr class="separator:ab5be88bba4178d555646f15c2cb3af48"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af3fc00c7325f6672dc420f9b2a572a8b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af3fc00c7325f6672dc420f9b2a572a8b"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>setDefault</b> (float def) noexcept</td></tr>
<tr class="separator:af3fc00c7325f6672dc420f9b2a572a8b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1f59acbb7c4d086c560da9cc6071425f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1f59acbb7c4d086c560da9cc6071425f"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>setRange</b> (float min, float max) noexcept</td></tr>
<tr class="separator:a1f59acbb7c4d086c560da9cc6071425f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2d403482067512b096f188f660a91a34"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2d403482067512b096f188f660a91a34"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>setStep</b> (float step) noexcept</td></tr>
<tr class="separator:a2d403482067512b096f188f660a91a34"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ada71417da15620bd62ae161df528487f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ada71417da15620bd62ae161df528487f"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>setValue</b> (float value, bool sendCallback=false) noexcept</td></tr>
<tr class="separator:ada71417da15620bd62ae161df528487f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1b8aed8508fd789833efee820f432d39"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1b8aed8508fd789833efee820f432d39"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>setUsingLogScale</b> (bool yesNo) noexcept</td></tr>
<tr class="separator:a1b8aed8508fd789833efee820f432d39"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a30b6b20905d051ce820ec61ff6391f7d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a30b6b20905d051ce820ec61ff6391f7d"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>setCallback</b> (<a class="el" href="classImageKnob_1_1Callback.html">Callback</a> *callback) noexcept</td></tr>
<tr class="separator:a30b6b20905d051ce820ec61ff6391f7d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a76b2b82be87c82737ebd1f18554dd4cf"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a76b2b82be87c82737ebd1f18554dd4cf"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>setOrientation</b> (Orientation orientation) noexcept</td></tr>
<tr class="separator:a76b2b82be87c82737ebd1f18554dd4cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afbb5e651e73dfabb6ffe317836efebab"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afbb5e651e73dfabb6ffe317836efebab"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>setRotationAngle</b> (int angle)</td></tr>
<tr class="separator:afbb5e651e73dfabb6ffe317836efebab"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6fe3e930db8a78786aeddcf876a3c535"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6fe3e930db8a78786aeddcf876a3c535"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>setImageLayerCount</b> (uint count) noexcept</td></tr>
<tr class="separator:a6fe3e930db8a78786aeddcf876a3c535"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classWidget"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classWidget')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classWidget.html">Widget</a></td></tr>
<tr class="memitem:a556f58c8ff8a80ae22cc4df7e5f8218c inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a556f58c8ff8a80ae22cc4df7e5f8218c">Widget</a> (<a class="el" href="classWindow.html">Window</a> &amp;parent)</td></tr>
<tr class="separator:a556f58c8ff8a80ae22cc4df7e5f8218c inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a714cf798aadb4d615f6f60a355382c02 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a714cf798aadb4d615f6f60a355382c02">~Widget</a> ()</td></tr>
<tr class="separator:a714cf798aadb4d615f6f60a355382c02 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a234a8ee8a685dc211ad11f492f0dbc71 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a234a8ee8a685dc211ad11f492f0dbc71">isVisible</a> () const noexcept</td></tr>
<tr class="separator:a234a8ee8a685dc211ad11f492f0dbc71 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0bec84d07a6c508e069da9821993d1c2 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a0bec84d07a6c508e069da9821993d1c2">setVisible</a> (bool yesNo)</td></tr>
<tr class="separator:a0bec84d07a6c508e069da9821993d1c2 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a25ff178539e226b5f30ef0335d060f2b inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a25ff178539e226b5f30ef0335d060f2b">show</a> ()</td></tr>
<tr class="separator:a25ff178539e226b5f30ef0335d060f2b inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4a2f8eebacdd20db505b838f1a118c6b inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a4a2f8eebacdd20db505b838f1a118c6b">hide</a> ()</td></tr>
<tr class="separator:a4a2f8eebacdd20db505b838f1a118c6b inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a169c317caf734c6664494a573e427b40 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">uint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a169c317caf734c6664494a573e427b40">getWidth</a> () const noexcept</td></tr>
<tr class="separator:a169c317caf734c6664494a573e427b40 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa20f6dc096a8836706173f31324c4db8 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">uint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#aa20f6dc096a8836706173f31324c4db8">getHeight</a> () const noexcept</td></tr>
<tr class="separator:aa20f6dc096a8836706173f31324c4db8 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae375b05cd76f63c957949e9121ff56bb inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classSize.html">Size</a>&lt; uint &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#ae375b05cd76f63c957949e9121ff56bb">getSize</a> () const noexcept</td></tr>
<tr class="separator:ae375b05cd76f63c957949e9121ff56bb inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aed80a9cbc4a13c01641f35dd3d8688ea inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#aed80a9cbc4a13c01641f35dd3d8688ea">setWidth</a> (uint width) noexcept</td></tr>
<tr class="separator:aed80a9cbc4a13c01641f35dd3d8688ea inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac6d2e6cbb2ff96f3645493d804af07f7 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#ac6d2e6cbb2ff96f3645493d804af07f7">setHeight</a> (uint height) noexcept</td></tr>
<tr class="separator:ac6d2e6cbb2ff96f3645493d804af07f7 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab4d9e0156e455db3ff23730f82544daa inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#ab4d9e0156e455db3ff23730f82544daa">setSize</a> (uint width, uint height) noexcept</td></tr>
<tr class="separator:ab4d9e0156e455db3ff23730f82544daa inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afce784b204902c0f11e9ed02bc692362 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#afce784b204902c0f11e9ed02bc692362">setSize</a> (const <a class="el" href="classSize.html">Size</a>&lt; uint &gt; &amp;size) noexcept</td></tr>
<tr class="separator:afce784b204902c0f11e9ed02bc692362 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4e41debfe323ee307706af42818636dd inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a4e41debfe323ee307706af42818636dd">getAbsoluteX</a> () const noexcept</td></tr>
<tr class="separator:a4e41debfe323ee307706af42818636dd inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af2ee4713e052b65e839da667aec4e05a inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#af2ee4713e052b65e839da667aec4e05a">getAbsoluteY</a> () const noexcept</td></tr>
<tr class="separator:af2ee4713e052b65e839da667aec4e05a inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae952149aa2b1661ebc9712547ac5cc04 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classPoint.html">Point</a>&lt; int &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#ae952149aa2b1661ebc9712547ac5cc04">getAbsolutePos</a> () const noexcept</td></tr>
<tr class="separator:ae952149aa2b1661ebc9712547ac5cc04 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a56b6c0c92551d25bafa54be5d185e4f6 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a56b6c0c92551d25bafa54be5d185e4f6">setAbsoluteX</a> (int x) noexcept</td></tr>
<tr class="separator:a56b6c0c92551d25bafa54be5d185e4f6 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a65f48c414326491ddb3bbb70bf783829 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a65f48c414326491ddb3bbb70bf783829">setAbsoluteY</a> (int y) noexcept</td></tr>
<tr class="separator:a65f48c414326491ddb3bbb70bf783829 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1f58ab9f12f0e88da6bf600c504b53c5 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a1f58ab9f12f0e88da6bf600c504b53c5">setAbsolutePos</a> (int x, int y) noexcept</td></tr>
<tr class="separator:a1f58ab9f12f0e88da6bf600c504b53c5 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a65b3a31bbf5cfbecdf5cf84ae27ae089 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a65b3a31bbf5cfbecdf5cf84ae27ae089">setAbsolutePos</a> (const <a class="el" href="classPoint.html">Point</a>&lt; int &gt; &amp;pos) noexcept</td></tr>
<tr class="separator:a65b3a31bbf5cfbecdf5cf84ae27ae089 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afa1fe45064cf9bb107fe1dcdb2384d33 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classApp.html">App</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#afa1fe45064cf9bb107fe1dcdb2384d33">getParentApp</a> () const noexcept</td></tr>
<tr class="separator:afa1fe45064cf9bb107fe1dcdb2384d33 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0e0b0b2293bb63b2d84774542cc6a421 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classWindow.html">Window</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a0e0b0b2293bb63b2d84774542cc6a421">getParentWindow</a> () const noexcept</td></tr>
<tr class="separator:a0e0b0b2293bb63b2d84774542cc6a421 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a655f9dac3838b52a3deec1a4b9e6001b inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a655f9dac3838b52a3deec1a4b9e6001b">contains</a> (int x, int y) const noexcept</td></tr>
<tr class="separator:a655f9dac3838b52a3deec1a4b9e6001b inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9dc3a8c1c7fe1dd0ffa28577f1eaa5fd inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a9dc3a8c1c7fe1dd0ffa28577f1eaa5fd">contains</a> (const <a class="el" href="classPoint.html">Point</a>&lt; int &gt; &amp;pos) const noexcept</td></tr>
<tr class="separator:a9dc3a8c1c7fe1dd0ffa28577f1eaa5fd inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a808fa28a78ec9e850d5e86f63b3be26d inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a808fa28a78ec9e850d5e86f63b3be26d">repaint</a> () noexcept</td></tr>
<tr class="separator:a808fa28a78ec9e850d5e86f63b3be26d inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3ee6b2824e3f3719c1c9b3d070385f49 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">uint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a3ee6b2824e3f3719c1c9b3d070385f49">getId</a> () const noexcept</td></tr>
<tr class="separator:a3ee6b2824e3f3719c1c9b3d070385f49 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abfba3652559de84ba1ae9ccbd3d35e31 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#abfba3652559de84ba1ae9ccbd3d35e31">setId</a> (uint id) noexcept</td></tr>
<tr class="separator:abfba3652559de84ba1ae9ccbd3d35e31 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:a7123a12c906463700df8c6f24cd0a62f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classImageKnob.html#a7123a12c906463700df8c6f24cd0a62f">onDisplay</a> () override</td></tr>
<tr class="separator:a7123a12c906463700df8c6f24cd0a62f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a473247914d3751d629dd8690f74af07b"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classImageKnob.html#a473247914d3751d629dd8690f74af07b">onMouse</a> (const <a class="el" href="structWidget_1_1MouseEvent.html">MouseEvent</a> &amp;) override</td></tr>
<tr class="separator:a473247914d3751d629dd8690f74af07b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a299a1721471747dc173633f21bd75b1f"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classImageKnob.html#a299a1721471747dc173633f21bd75b1f">onMotion</a> (const <a class="el" href="structWidget_1_1MotionEvent.html">MotionEvent</a> &amp;) override</td></tr>
<tr class="separator:a299a1721471747dc173633f21bd75b1f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2cdc26028611554458a74b32740ac33b"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classImageKnob.html#a2cdc26028611554458a74b32740ac33b">onScroll</a> (const <a class="el" href="structWidget_1_1ScrollEvent.html">ScrollEvent</a> &amp;) override</td></tr>
<tr class="separator:a2cdc26028611554458a74b32740ac33b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_classWidget"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classWidget')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classWidget.html">Widget</a></td></tr>
<tr class="memitem:a9fa874aede538b41348f1029524aea11 inherit pro_methods_classWidget"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a9fa874aede538b41348f1029524aea11">onKeyboard</a> (const <a class="el" href="structWidget_1_1KeyboardEvent.html">KeyboardEvent</a> &amp;)</td></tr>
<tr class="separator:a9fa874aede538b41348f1029524aea11 inherit pro_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3b42652fcb2f95c6f86bdd43a1727507 inherit pro_methods_classWidget"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a3b42652fcb2f95c6f86bdd43a1727507">onSpecial</a> (const <a class="el" href="structWidget_1_1SpecialEvent.html">SpecialEvent</a> &amp;)</td></tr>
<tr class="separator:a3b42652fcb2f95c6f86bdd43a1727507 inherit pro_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acc0365ec4b9245bdffb8d0285be55dea inherit pro_methods_classWidget"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#acc0365ec4b9245bdffb8d0285be55dea">onResize</a> (const <a class="el" href="structWidget_1_1ResizeEvent.html">ResizeEvent</a> &amp;)</td></tr>
<tr class="separator:acc0365ec4b9245bdffb8d0285be55dea inherit pro_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa92462db80ed1dc8334910038cd262cc inherit pro_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#aa92462db80ed1dc8334910038cd262cc">setNeedsFullViewport</a> (bool yesNo) noexcept</td></tr>
<tr class="separator:aa92462db80ed1dc8334910038cd262cc inherit pro_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2ce358088e8f3b65621afd02c675bad8 inherit pro_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a2ce358088e8f3b65621afd02c675bad8">setNeedsScaling</a> (bool yesNo) noexcept</td></tr>
<tr class="separator:a2ce358088e8f3b65621afd02c675bad8 inherit pro_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a7123a12c906463700df8c6f24cd0a62f"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ImageKnob::onDisplay </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>A function called to draw the view contents with OpenGL. </p>

<p>Implements <a class="el" href="classWidget.html#ae1554f348fe3b2f9d4c3c5c4f9ec55bd">Widget</a>.</p>

</div>
</div>
<a class="anchor" id="a473247914d3751d629dd8690f74af07b"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool ImageKnob::onMouse </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structWidget_1_1MouseEvent.html">MouseEvent</a> &amp;&#160;</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>A function called when a mouse button is pressed or released. </p><dl class="section return"><dt>Returns</dt><dd>True to stop event propagation, false otherwise. </dd></dl>

<p>Reimplemented from <a class="el" href="classWidget.html#a097ec1d56a06bdc9e0a4e54880def378">Widget</a>.</p>

</div>
</div>
<a class="anchor" id="a299a1721471747dc173633f21bd75b1f"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool ImageKnob::onMotion </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structWidget_1_1MotionEvent.html">MotionEvent</a> &amp;&#160;</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>A function called when the pointer moves. </p><dl class="section return"><dt>Returns</dt><dd>True to stop event propagation, false otherwise. </dd></dl>

<p>Reimplemented from <a class="el" href="classWidget.html#a655569fb78a598652e9f24cefa1fe4a5">Widget</a>.</p>

</div>
</div>
<a class="anchor" id="a2cdc26028611554458a74b32740ac33b"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool ImageKnob::onScroll </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structWidget_1_1ScrollEvent.html">ScrollEvent</a> &amp;&#160;</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>A function called on scrolling (e.g. mouse wheel or track pad). </p><dl class="section return"><dt>Returns</dt><dd>True to stop event propagation, false otherwise. </dd></dl>

<p>Reimplemented from <a class="el" href="classWidget.html#a0d78d28bd4a98c3a016a38091b2d4185">Widget</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>dgl/<a class="el" href="ImageKnob_8hpp_source.html">ImageKnob.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

BIN
classImageKnob.png View File

Before After
Width: 74  |  Height: 80  |  Size: 433B

+ 108
- 0
classImageKnob_1_1Callback-members.html View File

@@ -0,0 +1,108 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: Member List</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="classImageKnob.html">ImageKnob</a></li><li class="navelem"><a class="el" href="classImageKnob_1_1Callback.html">Callback</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">ImageKnob::Callback Member List</div> </div>
</div><!--header-->
<div class="contents">

<p>This is the complete list of members for <a class="el" href="classImageKnob_1_1Callback.html">ImageKnob::Callback</a>, including all inherited members.</p>
<table class="directory">
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>imageKnobDragFinished</b>(ImageKnob *imageKnob)=0 (defined in <a class="el" href="classImageKnob_1_1Callback.html">ImageKnob::Callback</a>)</td><td class="entry"><a class="el" href="classImageKnob_1_1Callback.html">ImageKnob::Callback</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>imageKnobDragStarted</b>(ImageKnob *imageKnob)=0 (defined in <a class="el" href="classImageKnob_1_1Callback.html">ImageKnob::Callback</a>)</td><td class="entry"><a class="el" href="classImageKnob_1_1Callback.html">ImageKnob::Callback</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>imageKnobValueChanged</b>(ImageKnob *imageKnob, float value)=0 (defined in <a class="el" href="classImageKnob_1_1Callback.html">ImageKnob::Callback</a>)</td><td class="entry"><a class="el" href="classImageKnob_1_1Callback.html">ImageKnob::Callback</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>~Callback</b>() (defined in <a class="el" href="classImageKnob_1_1Callback.html">ImageKnob::Callback</a>)</td><td class="entry"><a class="el" href="classImageKnob_1_1Callback.html">ImageKnob::Callback</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 120
- 0
classImageKnob_1_1Callback.html View File

@@ -0,0 +1,120 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: ImageKnob::Callback Class Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="classImageKnob.html">ImageKnob</a></li><li class="navelem"><a class="el" href="classImageKnob_1_1Callback.html">Callback</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classImageKnob_1_1Callback-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">ImageKnob::Callback Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:acf9ce99f7977987772afd8e41c126aac"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acf9ce99f7977987772afd8e41c126aac"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>imageKnobDragStarted</b> (<a class="el" href="classImageKnob.html">ImageKnob</a> *imageKnob)=0</td></tr>
<tr class="separator:acf9ce99f7977987772afd8e41c126aac"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a83c06675808ad7d0aa094a9cdbddbb8e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a83c06675808ad7d0aa094a9cdbddbb8e"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>imageKnobDragFinished</b> (<a class="el" href="classImageKnob.html">ImageKnob</a> *imageKnob)=0</td></tr>
<tr class="separator:a83c06675808ad7d0aa094a9cdbddbb8e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1a91a5250c696895f592d4768748cd6c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1a91a5250c696895f592d4768748cd6c"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>imageKnobValueChanged</b> (<a class="el" href="classImageKnob.html">ImageKnob</a> *imageKnob, float value)=0</td></tr>
<tr class="separator:a1a91a5250c696895f592d4768748cd6c"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>dgl/<a class="el" href="ImageKnob_8hpp_source.html">ImageKnob.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 150
- 0
classImageSlider-members.html View File

@@ -0,0 +1,150 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: Member List</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">ImageSlider Member List</div> </div>
</div><!--header-->
<div class="contents">

<p>This is the complete list of members for <a class="el" href="classImageSlider.html">ImageSlider</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a655f9dac3838b52a3deec1a4b9e6001b">contains</a>(int x, int y) const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a9dc3a8c1c7fe1dd0ffa28577f1eaa5fd">contains</a>(const Point&lt; int &gt; &amp;pos) const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#ae952149aa2b1661ebc9712547ac5cc04">getAbsolutePos</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a4e41debfe323ee307706af42818636dd">getAbsoluteX</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#af2ee4713e052b65e839da667aec4e05a">getAbsoluteY</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#aa20f6dc096a8836706173f31324c4db8">getHeight</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a3ee6b2824e3f3719c1c9b3d070385f49">getId</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#afa1fe45064cf9bb107fe1dcdb2384d33">getParentApp</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a0e0b0b2293bb63b2d84774542cc6a421">getParentWindow</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#ae375b05cd76f63c957949e9121ff56bb">getSize</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>getValue</b>() const noexcept (defined in <a class="el" href="classImageSlider.html">ImageSlider</a>)</td><td class="entry"><a class="el" href="classImageSlider.html">ImageSlider</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a169c317caf734c6664494a573e427b40">getWidth</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a4a2f8eebacdd20db505b838f1a118c6b">hide</a>()</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>ImageSlider</b>(Window &amp;parent, const Image &amp;image) noexcept (defined in <a class="el" href="classImageSlider.html">ImageSlider</a>)</td><td class="entry"><a class="el" href="classImageSlider.html">ImageSlider</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>ImageSlider</b>(Widget *widget, const Image &amp;image) noexcept (defined in <a class="el" href="classImageSlider.html">ImageSlider</a>)</td><td class="entry"><a class="el" href="classImageSlider.html">ImageSlider</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>ImageSlider</b>(const ImageSlider &amp;imageSlider) noexcept (defined in <a class="el" href="classImageSlider.html">ImageSlider</a>)</td><td class="entry"><a class="el" href="classImageSlider.html">ImageSlider</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a234a8ee8a685dc211ad11f492f0dbc71">isVisible</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classImageSlider.html#a6c734dabcf0af01513fb5dec5b716831">onDisplay</a>() override</td><td class="entry"><a class="el" href="classImageSlider.html">ImageSlider</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a9fa874aede538b41348f1029524aea11">onKeyboard</a>(const KeyboardEvent &amp;)</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classImageSlider.html#a2950b1058ae7c6d20397135615b4583c">onMotion</a>(const MotionEvent &amp;) override</td><td class="entry"><a class="el" href="classImageSlider.html">ImageSlider</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classImageSlider.html#a6ffe0c5b79ef8e397876154b904f0981">onMouse</a>(const MouseEvent &amp;) override</td><td class="entry"><a class="el" href="classImageSlider.html">ImageSlider</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#acc0365ec4b9245bdffb8d0285be55dea">onResize</a>(const ResizeEvent &amp;)</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a0d78d28bd4a98c3a016a38091b2d4185">onScroll</a>(const ScrollEvent &amp;)</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a3b42652fcb2f95c6f86bdd43a1727507">onSpecial</a>(const SpecialEvent &amp;)</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>operator=</b>(const ImageSlider &amp;imageSlider) noexcept (defined in <a class="el" href="classImageSlider.html">ImageSlider</a>)</td><td class="entry"><a class="el" href="classImageSlider.html">ImageSlider</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a808fa28a78ec9e850d5e86f63b3be26d">repaint</a>() noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a1f58ab9f12f0e88da6bf600c504b53c5">Widget::setAbsolutePos</a>(int x, int y) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a65b3a31bbf5cfbecdf5cf84ae27ae089">Widget::setAbsolutePos</a>(const Point&lt; int &gt; &amp;pos) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a56b6c0c92551d25bafa54be5d185e4f6">Widget::setAbsoluteX</a>(int x) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a65f48c414326491ddb3bbb70bf783829">Widget::setAbsoluteY</a>(int y) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>setCallback</b>(Callback *callback) noexcept (defined in <a class="el" href="classImageSlider.html">ImageSlider</a>)</td><td class="entry"><a class="el" href="classImageSlider.html">ImageSlider</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>setEndPos</b>(const Point&lt; int &gt; &amp;endPos) noexcept (defined in <a class="el" href="classImageSlider.html">ImageSlider</a>)</td><td class="entry"><a class="el" href="classImageSlider.html">ImageSlider</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>setEndPos</b>(int x, int y) noexcept (defined in <a class="el" href="classImageSlider.html">ImageSlider</a>)</td><td class="entry"><a class="el" href="classImageSlider.html">ImageSlider</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#ac6d2e6cbb2ff96f3645493d804af07f7">setHeight</a>(uint height) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#abfba3652559de84ba1ae9ccbd3d35e31">setId</a>(uint id) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>setInverted</b>(bool inverted) noexcept (defined in <a class="el" href="classImageSlider.html">ImageSlider</a>)</td><td class="entry"><a class="el" href="classImageSlider.html">ImageSlider</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#aa92462db80ed1dc8334910038cd262cc">Widget::setNeedsFullViewport</a>(bool yesNo) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a2ce358088e8f3b65621afd02c675bad8">setNeedsScaling</a>(bool yesNo) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>setRange</b>(float min, float max) noexcept (defined in <a class="el" href="classImageSlider.html">ImageSlider</a>)</td><td class="entry"><a class="el" href="classImageSlider.html">ImageSlider</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#ab4d9e0156e455db3ff23730f82544daa">setSize</a>(uint width, uint height) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#afce784b204902c0f11e9ed02bc692362">setSize</a>(const Size&lt; uint &gt; &amp;size) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>setStartPos</b>(const Point&lt; int &gt; &amp;startPos) noexcept (defined in <a class="el" href="classImageSlider.html">ImageSlider</a>)</td><td class="entry"><a class="el" href="classImageSlider.html">ImageSlider</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>setStartPos</b>(int x, int y) noexcept (defined in <a class="el" href="classImageSlider.html">ImageSlider</a>)</td><td class="entry"><a class="el" href="classImageSlider.html">ImageSlider</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>setStep</b>(float step) noexcept (defined in <a class="el" href="classImageSlider.html">ImageSlider</a>)</td><td class="entry"><a class="el" href="classImageSlider.html">ImageSlider</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>setValue</b>(float value, bool sendCallback=false) noexcept (defined in <a class="el" href="classImageSlider.html">ImageSlider</a>)</td><td class="entry"><a class="el" href="classImageSlider.html">ImageSlider</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a0bec84d07a6c508e069da9821993d1c2">setVisible</a>(bool yesNo)</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#aed80a9cbc4a13c01641f35dd3d8688ea">setWidth</a>(uint width) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a25ff178539e226b5f30ef0335d060f2b">show</a>()</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a556f58c8ff8a80ae22cc4df7e5f8218c">Widget</a>(Window &amp;parent)</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a714cf798aadb4d615f6f60a355382c02">~Widget</a>()</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 323
- 0
classImageSlider.html View File

@@ -0,0 +1,323 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: ImageSlider Class Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="classImageSlider-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">ImageSlider Class Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="dynheader">
Inheritance diagram for ImageSlider:</div>
<div class="dyncontent">
<div class="center">
<img src="classImageSlider.png" usemap="#ImageSlider_map" alt=""/>
<map id="ImageSlider_map" name="ImageSlider_map">
<area href="classWidget.html" alt="Widget" shape="rect" coords="0,0,78,24"/>
</map>
</div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classImageSlider_1_1Callback.html">Callback</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:aaa35d6f2aee896e5866dd540f8ef607e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aaa35d6f2aee896e5866dd540f8ef607e"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>ImageSlider</b> (<a class="el" href="classWindow.html">Window</a> &amp;parent, const <a class="el" href="classImage.html">Image</a> &amp;image) noexcept</td></tr>
<tr class="separator:aaa35d6f2aee896e5866dd540f8ef607e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3b01d6090df65f24716b1620d21297f3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3b01d6090df65f24716b1620d21297f3"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>ImageSlider</b> (<a class="el" href="classWidget.html">Widget</a> *widget, const <a class="el" href="classImage.html">Image</a> &amp;image) noexcept</td></tr>
<tr class="separator:a3b01d6090df65f24716b1620d21297f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9e5516c34ccb5cda66e4595fa950842d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9e5516c34ccb5cda66e4595fa950842d"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>ImageSlider</b> (const <a class="el" href="classImageSlider.html">ImageSlider</a> &amp;imageSlider) noexcept</td></tr>
<tr class="separator:a9e5516c34ccb5cda66e4595fa950842d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acfd906e5a85064cf8cfdf368fc15bfc2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acfd906e5a85064cf8cfdf368fc15bfc2"></a>
<a class="el" href="classImageSlider.html">ImageSlider</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (const <a class="el" href="classImageSlider.html">ImageSlider</a> &amp;imageSlider) noexcept</td></tr>
<tr class="separator:acfd906e5a85064cf8cfdf368fc15bfc2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeffa859326bfd569f65bd8a045ffbff5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aeffa859326bfd569f65bd8a045ffbff5"></a>
float&#160;</td><td class="memItemRight" valign="bottom"><b>getValue</b> () const noexcept</td></tr>
<tr class="separator:aeffa859326bfd569f65bd8a045ffbff5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5688a04059e94d3a8843dff124cf456c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5688a04059e94d3a8843dff124cf456c"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>setStartPos</b> (const <a class="el" href="classPoint.html">Point</a>&lt; int &gt; &amp;startPos) noexcept</td></tr>
<tr class="separator:a5688a04059e94d3a8843dff124cf456c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aead077dafe872fcc7522e1d71fb6bd57"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aead077dafe872fcc7522e1d71fb6bd57"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>setStartPos</b> (int x, int y) noexcept</td></tr>
<tr class="separator:aead077dafe872fcc7522e1d71fb6bd57"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a338acce4ab386d51aca7d5aa609dfd7f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a338acce4ab386d51aca7d5aa609dfd7f"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>setEndPos</b> (const <a class="el" href="classPoint.html">Point</a>&lt; int &gt; &amp;endPos) noexcept</td></tr>
<tr class="separator:a338acce4ab386d51aca7d5aa609dfd7f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a997d9a3f3b9e4c2b6ef6ba739b67e245"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a997d9a3f3b9e4c2b6ef6ba739b67e245"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>setEndPos</b> (int x, int y) noexcept</td></tr>
<tr class="separator:a997d9a3f3b9e4c2b6ef6ba739b67e245"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a692095b689b808e889364557fe811412"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a692095b689b808e889364557fe811412"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>setInverted</b> (bool inverted) noexcept</td></tr>
<tr class="separator:a692095b689b808e889364557fe811412"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a121f01c2fdc9544b92e55352ff1233ae"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a121f01c2fdc9544b92e55352ff1233ae"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>setRange</b> (float min, float max) noexcept</td></tr>
<tr class="separator:a121f01c2fdc9544b92e55352ff1233ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1905792b11539050d314d4712ba9fc3f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1905792b11539050d314d4712ba9fc3f"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>setStep</b> (float step) noexcept</td></tr>
<tr class="separator:a1905792b11539050d314d4712ba9fc3f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae3fdca22e15cc0cf049a65c5e6c99ef6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae3fdca22e15cc0cf049a65c5e6c99ef6"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>setValue</b> (float value, bool sendCallback=false) noexcept</td></tr>
<tr class="separator:ae3fdca22e15cc0cf049a65c5e6c99ef6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a100677ab6df47653cb44bed75a0feb14"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a100677ab6df47653cb44bed75a0feb14"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>setCallback</b> (<a class="el" href="classImageSlider_1_1Callback.html">Callback</a> *callback) noexcept</td></tr>
<tr class="separator:a100677ab6df47653cb44bed75a0feb14"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classWidget"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classWidget')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classWidget.html">Widget</a></td></tr>
<tr class="memitem:a556f58c8ff8a80ae22cc4df7e5f8218c inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a556f58c8ff8a80ae22cc4df7e5f8218c">Widget</a> (<a class="el" href="classWindow.html">Window</a> &amp;parent)</td></tr>
<tr class="separator:a556f58c8ff8a80ae22cc4df7e5f8218c inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a714cf798aadb4d615f6f60a355382c02 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a714cf798aadb4d615f6f60a355382c02">~Widget</a> ()</td></tr>
<tr class="separator:a714cf798aadb4d615f6f60a355382c02 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a234a8ee8a685dc211ad11f492f0dbc71 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a234a8ee8a685dc211ad11f492f0dbc71">isVisible</a> () const noexcept</td></tr>
<tr class="separator:a234a8ee8a685dc211ad11f492f0dbc71 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0bec84d07a6c508e069da9821993d1c2 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a0bec84d07a6c508e069da9821993d1c2">setVisible</a> (bool yesNo)</td></tr>
<tr class="separator:a0bec84d07a6c508e069da9821993d1c2 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a25ff178539e226b5f30ef0335d060f2b inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a25ff178539e226b5f30ef0335d060f2b">show</a> ()</td></tr>
<tr class="separator:a25ff178539e226b5f30ef0335d060f2b inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4a2f8eebacdd20db505b838f1a118c6b inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a4a2f8eebacdd20db505b838f1a118c6b">hide</a> ()</td></tr>
<tr class="separator:a4a2f8eebacdd20db505b838f1a118c6b inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a169c317caf734c6664494a573e427b40 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">uint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a169c317caf734c6664494a573e427b40">getWidth</a> () const noexcept</td></tr>
<tr class="separator:a169c317caf734c6664494a573e427b40 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa20f6dc096a8836706173f31324c4db8 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">uint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#aa20f6dc096a8836706173f31324c4db8">getHeight</a> () const noexcept</td></tr>
<tr class="separator:aa20f6dc096a8836706173f31324c4db8 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae375b05cd76f63c957949e9121ff56bb inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classSize.html">Size</a>&lt; uint &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#ae375b05cd76f63c957949e9121ff56bb">getSize</a> () const noexcept</td></tr>
<tr class="separator:ae375b05cd76f63c957949e9121ff56bb inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aed80a9cbc4a13c01641f35dd3d8688ea inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#aed80a9cbc4a13c01641f35dd3d8688ea">setWidth</a> (uint width) noexcept</td></tr>
<tr class="separator:aed80a9cbc4a13c01641f35dd3d8688ea inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac6d2e6cbb2ff96f3645493d804af07f7 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#ac6d2e6cbb2ff96f3645493d804af07f7">setHeight</a> (uint height) noexcept</td></tr>
<tr class="separator:ac6d2e6cbb2ff96f3645493d804af07f7 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab4d9e0156e455db3ff23730f82544daa inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#ab4d9e0156e455db3ff23730f82544daa">setSize</a> (uint width, uint height) noexcept</td></tr>
<tr class="separator:ab4d9e0156e455db3ff23730f82544daa inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afce784b204902c0f11e9ed02bc692362 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#afce784b204902c0f11e9ed02bc692362">setSize</a> (const <a class="el" href="classSize.html">Size</a>&lt; uint &gt; &amp;size) noexcept</td></tr>
<tr class="separator:afce784b204902c0f11e9ed02bc692362 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4e41debfe323ee307706af42818636dd inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a4e41debfe323ee307706af42818636dd">getAbsoluteX</a> () const noexcept</td></tr>
<tr class="separator:a4e41debfe323ee307706af42818636dd inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af2ee4713e052b65e839da667aec4e05a inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#af2ee4713e052b65e839da667aec4e05a">getAbsoluteY</a> () const noexcept</td></tr>
<tr class="separator:af2ee4713e052b65e839da667aec4e05a inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae952149aa2b1661ebc9712547ac5cc04 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classPoint.html">Point</a>&lt; int &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#ae952149aa2b1661ebc9712547ac5cc04">getAbsolutePos</a> () const noexcept</td></tr>
<tr class="separator:ae952149aa2b1661ebc9712547ac5cc04 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a56b6c0c92551d25bafa54be5d185e4f6 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a56b6c0c92551d25bafa54be5d185e4f6">setAbsoluteX</a> (int x) noexcept</td></tr>
<tr class="separator:a56b6c0c92551d25bafa54be5d185e4f6 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a65f48c414326491ddb3bbb70bf783829 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a65f48c414326491ddb3bbb70bf783829">setAbsoluteY</a> (int y) noexcept</td></tr>
<tr class="separator:a65f48c414326491ddb3bbb70bf783829 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1f58ab9f12f0e88da6bf600c504b53c5 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a1f58ab9f12f0e88da6bf600c504b53c5">setAbsolutePos</a> (int x, int y) noexcept</td></tr>
<tr class="separator:a1f58ab9f12f0e88da6bf600c504b53c5 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a65b3a31bbf5cfbecdf5cf84ae27ae089 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a65b3a31bbf5cfbecdf5cf84ae27ae089">setAbsolutePos</a> (const <a class="el" href="classPoint.html">Point</a>&lt; int &gt; &amp;pos) noexcept</td></tr>
<tr class="separator:a65b3a31bbf5cfbecdf5cf84ae27ae089 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afa1fe45064cf9bb107fe1dcdb2384d33 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classApp.html">App</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#afa1fe45064cf9bb107fe1dcdb2384d33">getParentApp</a> () const noexcept</td></tr>
<tr class="separator:afa1fe45064cf9bb107fe1dcdb2384d33 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0e0b0b2293bb63b2d84774542cc6a421 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classWindow.html">Window</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a0e0b0b2293bb63b2d84774542cc6a421">getParentWindow</a> () const noexcept</td></tr>
<tr class="separator:a0e0b0b2293bb63b2d84774542cc6a421 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a655f9dac3838b52a3deec1a4b9e6001b inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a655f9dac3838b52a3deec1a4b9e6001b">contains</a> (int x, int y) const noexcept</td></tr>
<tr class="separator:a655f9dac3838b52a3deec1a4b9e6001b inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9dc3a8c1c7fe1dd0ffa28577f1eaa5fd inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a9dc3a8c1c7fe1dd0ffa28577f1eaa5fd">contains</a> (const <a class="el" href="classPoint.html">Point</a>&lt; int &gt; &amp;pos) const noexcept</td></tr>
<tr class="separator:a9dc3a8c1c7fe1dd0ffa28577f1eaa5fd inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a808fa28a78ec9e850d5e86f63b3be26d inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a808fa28a78ec9e850d5e86f63b3be26d">repaint</a> () noexcept</td></tr>
<tr class="separator:a808fa28a78ec9e850d5e86f63b3be26d inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3ee6b2824e3f3719c1c9b3d070385f49 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">uint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a3ee6b2824e3f3719c1c9b3d070385f49">getId</a> () const noexcept</td></tr>
<tr class="separator:a3ee6b2824e3f3719c1c9b3d070385f49 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abfba3652559de84ba1ae9ccbd3d35e31 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#abfba3652559de84ba1ae9ccbd3d35e31">setId</a> (uint id) noexcept</td></tr>
<tr class="separator:abfba3652559de84ba1ae9ccbd3d35e31 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:a6c734dabcf0af01513fb5dec5b716831"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classImageSlider.html#a6c734dabcf0af01513fb5dec5b716831">onDisplay</a> () override</td></tr>
<tr class="separator:a6c734dabcf0af01513fb5dec5b716831"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6ffe0c5b79ef8e397876154b904f0981"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classImageSlider.html#a6ffe0c5b79ef8e397876154b904f0981">onMouse</a> (const <a class="el" href="structWidget_1_1MouseEvent.html">MouseEvent</a> &amp;) override</td></tr>
<tr class="separator:a6ffe0c5b79ef8e397876154b904f0981"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2950b1058ae7c6d20397135615b4583c"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classImageSlider.html#a2950b1058ae7c6d20397135615b4583c">onMotion</a> (const <a class="el" href="structWidget_1_1MotionEvent.html">MotionEvent</a> &amp;) override</td></tr>
<tr class="separator:a2950b1058ae7c6d20397135615b4583c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_classWidget"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classWidget')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classWidget.html">Widget</a></td></tr>
<tr class="memitem:a9fa874aede538b41348f1029524aea11 inherit pro_methods_classWidget"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a9fa874aede538b41348f1029524aea11">onKeyboard</a> (const <a class="el" href="structWidget_1_1KeyboardEvent.html">KeyboardEvent</a> &amp;)</td></tr>
<tr class="separator:a9fa874aede538b41348f1029524aea11 inherit pro_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3b42652fcb2f95c6f86bdd43a1727507 inherit pro_methods_classWidget"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a3b42652fcb2f95c6f86bdd43a1727507">onSpecial</a> (const <a class="el" href="structWidget_1_1SpecialEvent.html">SpecialEvent</a> &amp;)</td></tr>
<tr class="separator:a3b42652fcb2f95c6f86bdd43a1727507 inherit pro_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0d78d28bd4a98c3a016a38091b2d4185 inherit pro_methods_classWidget"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a0d78d28bd4a98c3a016a38091b2d4185">onScroll</a> (const <a class="el" href="structWidget_1_1ScrollEvent.html">ScrollEvent</a> &amp;)</td></tr>
<tr class="separator:a0d78d28bd4a98c3a016a38091b2d4185 inherit pro_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acc0365ec4b9245bdffb8d0285be55dea inherit pro_methods_classWidget"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#acc0365ec4b9245bdffb8d0285be55dea">onResize</a> (const <a class="el" href="structWidget_1_1ResizeEvent.html">ResizeEvent</a> &amp;)</td></tr>
<tr class="separator:acc0365ec4b9245bdffb8d0285be55dea inherit pro_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa92462db80ed1dc8334910038cd262cc inherit pro_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#aa92462db80ed1dc8334910038cd262cc">setNeedsFullViewport</a> (bool yesNo) noexcept</td></tr>
<tr class="separator:aa92462db80ed1dc8334910038cd262cc inherit pro_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2ce358088e8f3b65621afd02c675bad8 inherit pro_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a2ce358088e8f3b65621afd02c675bad8">setNeedsScaling</a> (bool yesNo) noexcept</td></tr>
<tr class="separator:a2ce358088e8f3b65621afd02c675bad8 inherit pro_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a6c734dabcf0af01513fb5dec5b716831"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ImageSlider::onDisplay </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>A function called to draw the view contents with OpenGL. </p>

<p>Implements <a class="el" href="classWidget.html#ae1554f348fe3b2f9d4c3c5c4f9ec55bd">Widget</a>.</p>

</div>
</div>
<a class="anchor" id="a6ffe0c5b79ef8e397876154b904f0981"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool ImageSlider::onMouse </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structWidget_1_1MouseEvent.html">MouseEvent</a> &amp;&#160;</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>A function called when a mouse button is pressed or released. </p><dl class="section return"><dt>Returns</dt><dd>True to stop event propagation, false otherwise. </dd></dl>

<p>Reimplemented from <a class="el" href="classWidget.html#a097ec1d56a06bdc9e0a4e54880def378">Widget</a>.</p>

</div>
</div>
<a class="anchor" id="a2950b1058ae7c6d20397135615b4583c"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool ImageSlider::onMotion </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structWidget_1_1MotionEvent.html">MotionEvent</a> &amp;&#160;</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>A function called when the pointer moves. </p><dl class="section return"><dt>Returns</dt><dd>True to stop event propagation, false otherwise. </dd></dl>

<p>Reimplemented from <a class="el" href="classWidget.html#a655569fb78a598652e9f24cefa1fe4a5">Widget</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>dgl/<a class="el" href="ImageSlider_8hpp_source.html">ImageSlider.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

BIN
classImageSlider.png View File

Before After
Width: 78  |  Height: 80  |  Size: 444B

+ 108
- 0
classImageSlider_1_1Callback-members.html View File

@@ -0,0 +1,108 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: Member List</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="classImageSlider.html">ImageSlider</a></li><li class="navelem"><a class="el" href="classImageSlider_1_1Callback.html">Callback</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">ImageSlider::Callback Member List</div> </div>
</div><!--header-->
<div class="contents">

<p>This is the complete list of members for <a class="el" href="classImageSlider_1_1Callback.html">ImageSlider::Callback</a>, including all inherited members.</p>
<table class="directory">
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>imageSliderDragFinished</b>(ImageSlider *imageSlider)=0 (defined in <a class="el" href="classImageSlider_1_1Callback.html">ImageSlider::Callback</a>)</td><td class="entry"><a class="el" href="classImageSlider_1_1Callback.html">ImageSlider::Callback</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>imageSliderDragStarted</b>(ImageSlider *imageSlider)=0 (defined in <a class="el" href="classImageSlider_1_1Callback.html">ImageSlider::Callback</a>)</td><td class="entry"><a class="el" href="classImageSlider_1_1Callback.html">ImageSlider::Callback</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>imageSliderValueChanged</b>(ImageSlider *imageSlider, float value)=0 (defined in <a class="el" href="classImageSlider_1_1Callback.html">ImageSlider::Callback</a>)</td><td class="entry"><a class="el" href="classImageSlider_1_1Callback.html">ImageSlider::Callback</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>~Callback</b>() (defined in <a class="el" href="classImageSlider_1_1Callback.html">ImageSlider::Callback</a>)</td><td class="entry"><a class="el" href="classImageSlider_1_1Callback.html">ImageSlider::Callback</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 120
- 0
classImageSlider_1_1Callback.html View File

@@ -0,0 +1,120 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: ImageSlider::Callback Class Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="classImageSlider.html">ImageSlider</a></li><li class="navelem"><a class="el" href="classImageSlider_1_1Callback.html">Callback</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classImageSlider_1_1Callback-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">ImageSlider::Callback Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a899b2280f2ac4d972c8cc29a45db62ef"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a899b2280f2ac4d972c8cc29a45db62ef"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>imageSliderDragStarted</b> (<a class="el" href="classImageSlider.html">ImageSlider</a> *imageSlider)=0</td></tr>
<tr class="separator:a899b2280f2ac4d972c8cc29a45db62ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7592986caff3331b52112ff228d541ee"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7592986caff3331b52112ff228d541ee"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>imageSliderDragFinished</b> (<a class="el" href="classImageSlider.html">ImageSlider</a> *imageSlider)=0</td></tr>
<tr class="separator:a7592986caff3331b52112ff228d541ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac629d2269e0a26d2b052631801b3afef"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac629d2269e0a26d2b052631801b3afef"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>imageSliderValueChanged</b> (<a class="el" href="classImageSlider.html">ImageSlider</a> *imageSlider, float value)=0</td></tr>
<tr class="separator:ac629d2269e0a26d2b052631801b3afef"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>dgl/<a class="el" href="ImageSlider_8hpp_source.html">ImageSlider.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 143
- 0
classImageSwitch-members.html View File

@@ -0,0 +1,143 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: Member List</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">ImageSwitch Member List</div> </div>
</div><!--header-->
<div class="contents">

<p>This is the complete list of members for <a class="el" href="classImageSwitch.html">ImageSwitch</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a655f9dac3838b52a3deec1a4b9e6001b">contains</a>(int x, int y) const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a9dc3a8c1c7fe1dd0ffa28577f1eaa5fd">contains</a>(const Point&lt; int &gt; &amp;pos) const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#ae952149aa2b1661ebc9712547ac5cc04">getAbsolutePos</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a4e41debfe323ee307706af42818636dd">getAbsoluteX</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#af2ee4713e052b65e839da667aec4e05a">getAbsoluteY</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#aa20f6dc096a8836706173f31324c4db8">getHeight</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a3ee6b2824e3f3719c1c9b3d070385f49">getId</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#afa1fe45064cf9bb107fe1dcdb2384d33">getParentApp</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a0e0b0b2293bb63b2d84774542cc6a421">getParentWindow</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#ae375b05cd76f63c957949e9121ff56bb">getSize</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a169c317caf734c6664494a573e427b40">getWidth</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a4a2f8eebacdd20db505b838f1a118c6b">hide</a>()</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>ImageSwitch</b>(Window &amp;parent, const Image &amp;imageNormal, const Image &amp;imageDown) noexcept (defined in <a class="el" href="classImageSwitch.html">ImageSwitch</a>)</td><td class="entry"><a class="el" href="classImageSwitch.html">ImageSwitch</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>ImageSwitch</b>(Widget *widget, const Image &amp;imageNormal, const Image &amp;imageDown) noexcept (defined in <a class="el" href="classImageSwitch.html">ImageSwitch</a>)</td><td class="entry"><a class="el" href="classImageSwitch.html">ImageSwitch</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>ImageSwitch</b>(const ImageSwitch &amp;imageSwitch) noexcept (defined in <a class="el" href="classImageSwitch.html">ImageSwitch</a>)</td><td class="entry"><a class="el" href="classImageSwitch.html">ImageSwitch</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>isDown</b>() const noexcept (defined in <a class="el" href="classImageSwitch.html">ImageSwitch</a>)</td><td class="entry"><a class="el" href="classImageSwitch.html">ImageSwitch</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a234a8ee8a685dc211ad11f492f0dbc71">isVisible</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classImageSwitch.html#a45cdf75bf08adf50742150f3d2029f76">onDisplay</a>() override</td><td class="entry"><a class="el" href="classImageSwitch.html">ImageSwitch</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a9fa874aede538b41348f1029524aea11">onKeyboard</a>(const KeyboardEvent &amp;)</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a655569fb78a598652e9f24cefa1fe4a5">onMotion</a>(const MotionEvent &amp;)</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classImageSwitch.html#aa2371a540211636f96ac3a3a161ee563">onMouse</a>(const MouseEvent &amp;) override</td><td class="entry"><a class="el" href="classImageSwitch.html">ImageSwitch</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#acc0365ec4b9245bdffb8d0285be55dea">onResize</a>(const ResizeEvent &amp;)</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a0d78d28bd4a98c3a016a38091b2d4185">onScroll</a>(const ScrollEvent &amp;)</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a3b42652fcb2f95c6f86bdd43a1727507">onSpecial</a>(const SpecialEvent &amp;)</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>operator=</b>(const ImageSwitch &amp;imageSwitch) noexcept (defined in <a class="el" href="classImageSwitch.html">ImageSwitch</a>)</td><td class="entry"><a class="el" href="classImageSwitch.html">ImageSwitch</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a808fa28a78ec9e850d5e86f63b3be26d">repaint</a>() noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a1f58ab9f12f0e88da6bf600c504b53c5">setAbsolutePos</a>(int x, int y) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a65b3a31bbf5cfbecdf5cf84ae27ae089">setAbsolutePos</a>(const Point&lt; int &gt; &amp;pos) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a56b6c0c92551d25bafa54be5d185e4f6">setAbsoluteX</a>(int x) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a65f48c414326491ddb3bbb70bf783829">setAbsoluteY</a>(int y) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>setCallback</b>(Callback *callback) noexcept (defined in <a class="el" href="classImageSwitch.html">ImageSwitch</a>)</td><td class="entry"><a class="el" href="classImageSwitch.html">ImageSwitch</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>setDown</b>(bool down) noexcept (defined in <a class="el" href="classImageSwitch.html">ImageSwitch</a>)</td><td class="entry"><a class="el" href="classImageSwitch.html">ImageSwitch</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#ac6d2e6cbb2ff96f3645493d804af07f7">setHeight</a>(uint height) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#abfba3652559de84ba1ae9ccbd3d35e31">setId</a>(uint id) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#aa92462db80ed1dc8334910038cd262cc">setNeedsFullViewport</a>(bool yesNo) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a2ce358088e8f3b65621afd02c675bad8">setNeedsScaling</a>(bool yesNo) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#ab4d9e0156e455db3ff23730f82544daa">setSize</a>(uint width, uint height) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#afce784b204902c0f11e9ed02bc692362">setSize</a>(const Size&lt; uint &gt; &amp;size) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a0bec84d07a6c508e069da9821993d1c2">setVisible</a>(bool yesNo)</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#aed80a9cbc4a13c01641f35dd3d8688ea">setWidth</a>(uint width) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a25ff178539e226b5f30ef0335d060f2b">show</a>()</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a556f58c8ff8a80ae22cc4df7e5f8218c">Widget</a>(Window &amp;parent)</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a714cf798aadb4d615f6f60a355382c02">~Widget</a>()</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 275
- 0
classImageSwitch.html View File

@@ -0,0 +1,275 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: ImageSwitch Class Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="classImageSwitch-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">ImageSwitch Class Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="dynheader">
Inheritance diagram for ImageSwitch:</div>
<div class="dyncontent">
<div class="center">
<img src="classImageSwitch.png" usemap="#ImageSwitch_map" alt=""/>
<map id="ImageSwitch_map" name="ImageSwitch_map">
<area href="classWidget.html" alt="Widget" shape="rect" coords="0,0,82,24"/>
</map>
</div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classImageSwitch_1_1Callback.html">Callback</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a7182b79771f77ed31089768d6516d71b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7182b79771f77ed31089768d6516d71b"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>ImageSwitch</b> (<a class="el" href="classWindow.html">Window</a> &amp;parent, const <a class="el" href="classImage.html">Image</a> &amp;imageNormal, const <a class="el" href="classImage.html">Image</a> &amp;imageDown) noexcept</td></tr>
<tr class="separator:a7182b79771f77ed31089768d6516d71b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae88abd40ed78969bc8a88b207544f9cd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae88abd40ed78969bc8a88b207544f9cd"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>ImageSwitch</b> (<a class="el" href="classWidget.html">Widget</a> *widget, const <a class="el" href="classImage.html">Image</a> &amp;imageNormal, const <a class="el" href="classImage.html">Image</a> &amp;imageDown) noexcept</td></tr>
<tr class="separator:ae88abd40ed78969bc8a88b207544f9cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a96db01f895a4dd43b7b657a077c825ed"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a96db01f895a4dd43b7b657a077c825ed"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>ImageSwitch</b> (const <a class="el" href="classImageSwitch.html">ImageSwitch</a> &amp;imageSwitch) noexcept</td></tr>
<tr class="separator:a96db01f895a4dd43b7b657a077c825ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afa3db74645e73994047cb66e3dc2afe6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afa3db74645e73994047cb66e3dc2afe6"></a>
<a class="el" href="classImageSwitch.html">ImageSwitch</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (const <a class="el" href="classImageSwitch.html">ImageSwitch</a> &amp;imageSwitch) noexcept</td></tr>
<tr class="separator:afa3db74645e73994047cb66e3dc2afe6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8c5bec8619b57549d0ccbedfd9db48b4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8c5bec8619b57549d0ccbedfd9db48b4"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>isDown</b> () const noexcept</td></tr>
<tr class="separator:a8c5bec8619b57549d0ccbedfd9db48b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3fdccb23bcc62c5134416a84bcd7dd48"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3fdccb23bcc62c5134416a84bcd7dd48"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>setDown</b> (bool down) noexcept</td></tr>
<tr class="separator:a3fdccb23bcc62c5134416a84bcd7dd48"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad7839093abb03087de808241eb8e9364"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad7839093abb03087de808241eb8e9364"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>setCallback</b> (<a class="el" href="classImageSwitch_1_1Callback.html">Callback</a> *callback) noexcept</td></tr>
<tr class="separator:ad7839093abb03087de808241eb8e9364"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classWidget"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classWidget')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classWidget.html">Widget</a></td></tr>
<tr class="memitem:a556f58c8ff8a80ae22cc4df7e5f8218c inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a556f58c8ff8a80ae22cc4df7e5f8218c">Widget</a> (<a class="el" href="classWindow.html">Window</a> &amp;parent)</td></tr>
<tr class="separator:a556f58c8ff8a80ae22cc4df7e5f8218c inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a714cf798aadb4d615f6f60a355382c02 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a714cf798aadb4d615f6f60a355382c02">~Widget</a> ()</td></tr>
<tr class="separator:a714cf798aadb4d615f6f60a355382c02 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a234a8ee8a685dc211ad11f492f0dbc71 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a234a8ee8a685dc211ad11f492f0dbc71">isVisible</a> () const noexcept</td></tr>
<tr class="separator:a234a8ee8a685dc211ad11f492f0dbc71 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0bec84d07a6c508e069da9821993d1c2 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a0bec84d07a6c508e069da9821993d1c2">setVisible</a> (bool yesNo)</td></tr>
<tr class="separator:a0bec84d07a6c508e069da9821993d1c2 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a25ff178539e226b5f30ef0335d060f2b inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a25ff178539e226b5f30ef0335d060f2b">show</a> ()</td></tr>
<tr class="separator:a25ff178539e226b5f30ef0335d060f2b inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4a2f8eebacdd20db505b838f1a118c6b inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a4a2f8eebacdd20db505b838f1a118c6b">hide</a> ()</td></tr>
<tr class="separator:a4a2f8eebacdd20db505b838f1a118c6b inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a169c317caf734c6664494a573e427b40 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">uint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a169c317caf734c6664494a573e427b40">getWidth</a> () const noexcept</td></tr>
<tr class="separator:a169c317caf734c6664494a573e427b40 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa20f6dc096a8836706173f31324c4db8 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">uint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#aa20f6dc096a8836706173f31324c4db8">getHeight</a> () const noexcept</td></tr>
<tr class="separator:aa20f6dc096a8836706173f31324c4db8 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae375b05cd76f63c957949e9121ff56bb inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classSize.html">Size</a>&lt; uint &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#ae375b05cd76f63c957949e9121ff56bb">getSize</a> () const noexcept</td></tr>
<tr class="separator:ae375b05cd76f63c957949e9121ff56bb inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aed80a9cbc4a13c01641f35dd3d8688ea inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#aed80a9cbc4a13c01641f35dd3d8688ea">setWidth</a> (uint width) noexcept</td></tr>
<tr class="separator:aed80a9cbc4a13c01641f35dd3d8688ea inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac6d2e6cbb2ff96f3645493d804af07f7 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#ac6d2e6cbb2ff96f3645493d804af07f7">setHeight</a> (uint height) noexcept</td></tr>
<tr class="separator:ac6d2e6cbb2ff96f3645493d804af07f7 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab4d9e0156e455db3ff23730f82544daa inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#ab4d9e0156e455db3ff23730f82544daa">setSize</a> (uint width, uint height) noexcept</td></tr>
<tr class="separator:ab4d9e0156e455db3ff23730f82544daa inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afce784b204902c0f11e9ed02bc692362 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#afce784b204902c0f11e9ed02bc692362">setSize</a> (const <a class="el" href="classSize.html">Size</a>&lt; uint &gt; &amp;size) noexcept</td></tr>
<tr class="separator:afce784b204902c0f11e9ed02bc692362 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4e41debfe323ee307706af42818636dd inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a4e41debfe323ee307706af42818636dd">getAbsoluteX</a> () const noexcept</td></tr>
<tr class="separator:a4e41debfe323ee307706af42818636dd inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af2ee4713e052b65e839da667aec4e05a inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#af2ee4713e052b65e839da667aec4e05a">getAbsoluteY</a> () const noexcept</td></tr>
<tr class="separator:af2ee4713e052b65e839da667aec4e05a inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae952149aa2b1661ebc9712547ac5cc04 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classPoint.html">Point</a>&lt; int &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#ae952149aa2b1661ebc9712547ac5cc04">getAbsolutePos</a> () const noexcept</td></tr>
<tr class="separator:ae952149aa2b1661ebc9712547ac5cc04 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a56b6c0c92551d25bafa54be5d185e4f6 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a56b6c0c92551d25bafa54be5d185e4f6">setAbsoluteX</a> (int x) noexcept</td></tr>
<tr class="separator:a56b6c0c92551d25bafa54be5d185e4f6 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a65f48c414326491ddb3bbb70bf783829 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a65f48c414326491ddb3bbb70bf783829">setAbsoluteY</a> (int y) noexcept</td></tr>
<tr class="separator:a65f48c414326491ddb3bbb70bf783829 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1f58ab9f12f0e88da6bf600c504b53c5 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a1f58ab9f12f0e88da6bf600c504b53c5">setAbsolutePos</a> (int x, int y) noexcept</td></tr>
<tr class="separator:a1f58ab9f12f0e88da6bf600c504b53c5 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a65b3a31bbf5cfbecdf5cf84ae27ae089 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a65b3a31bbf5cfbecdf5cf84ae27ae089">setAbsolutePos</a> (const <a class="el" href="classPoint.html">Point</a>&lt; int &gt; &amp;pos) noexcept</td></tr>
<tr class="separator:a65b3a31bbf5cfbecdf5cf84ae27ae089 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afa1fe45064cf9bb107fe1dcdb2384d33 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classApp.html">App</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#afa1fe45064cf9bb107fe1dcdb2384d33">getParentApp</a> () const noexcept</td></tr>
<tr class="separator:afa1fe45064cf9bb107fe1dcdb2384d33 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0e0b0b2293bb63b2d84774542cc6a421 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classWindow.html">Window</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a0e0b0b2293bb63b2d84774542cc6a421">getParentWindow</a> () const noexcept</td></tr>
<tr class="separator:a0e0b0b2293bb63b2d84774542cc6a421 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a655f9dac3838b52a3deec1a4b9e6001b inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a655f9dac3838b52a3deec1a4b9e6001b">contains</a> (int x, int y) const noexcept</td></tr>
<tr class="separator:a655f9dac3838b52a3deec1a4b9e6001b inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9dc3a8c1c7fe1dd0ffa28577f1eaa5fd inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a9dc3a8c1c7fe1dd0ffa28577f1eaa5fd">contains</a> (const <a class="el" href="classPoint.html">Point</a>&lt; int &gt; &amp;pos) const noexcept</td></tr>
<tr class="separator:a9dc3a8c1c7fe1dd0ffa28577f1eaa5fd inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a808fa28a78ec9e850d5e86f63b3be26d inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a808fa28a78ec9e850d5e86f63b3be26d">repaint</a> () noexcept</td></tr>
<tr class="separator:a808fa28a78ec9e850d5e86f63b3be26d inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3ee6b2824e3f3719c1c9b3d070385f49 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">uint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a3ee6b2824e3f3719c1c9b3d070385f49">getId</a> () const noexcept</td></tr>
<tr class="separator:a3ee6b2824e3f3719c1c9b3d070385f49 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abfba3652559de84ba1ae9ccbd3d35e31 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#abfba3652559de84ba1ae9ccbd3d35e31">setId</a> (uint id) noexcept</td></tr>
<tr class="separator:abfba3652559de84ba1ae9ccbd3d35e31 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:a45cdf75bf08adf50742150f3d2029f76"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classImageSwitch.html#a45cdf75bf08adf50742150f3d2029f76">onDisplay</a> () override</td></tr>
<tr class="separator:a45cdf75bf08adf50742150f3d2029f76"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa2371a540211636f96ac3a3a161ee563"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classImageSwitch.html#aa2371a540211636f96ac3a3a161ee563">onMouse</a> (const <a class="el" href="structWidget_1_1MouseEvent.html">MouseEvent</a> &amp;) override</td></tr>
<tr class="separator:aa2371a540211636f96ac3a3a161ee563"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_classWidget"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classWidget')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classWidget.html">Widget</a></td></tr>
<tr class="memitem:a9fa874aede538b41348f1029524aea11 inherit pro_methods_classWidget"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a9fa874aede538b41348f1029524aea11">onKeyboard</a> (const <a class="el" href="structWidget_1_1KeyboardEvent.html">KeyboardEvent</a> &amp;)</td></tr>
<tr class="separator:a9fa874aede538b41348f1029524aea11 inherit pro_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3b42652fcb2f95c6f86bdd43a1727507 inherit pro_methods_classWidget"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a3b42652fcb2f95c6f86bdd43a1727507">onSpecial</a> (const <a class="el" href="structWidget_1_1SpecialEvent.html">SpecialEvent</a> &amp;)</td></tr>
<tr class="separator:a3b42652fcb2f95c6f86bdd43a1727507 inherit pro_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a655569fb78a598652e9f24cefa1fe4a5 inherit pro_methods_classWidget"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a655569fb78a598652e9f24cefa1fe4a5">onMotion</a> (const <a class="el" href="structWidget_1_1MotionEvent.html">MotionEvent</a> &amp;)</td></tr>
<tr class="separator:a655569fb78a598652e9f24cefa1fe4a5 inherit pro_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0d78d28bd4a98c3a016a38091b2d4185 inherit pro_methods_classWidget"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a0d78d28bd4a98c3a016a38091b2d4185">onScroll</a> (const <a class="el" href="structWidget_1_1ScrollEvent.html">ScrollEvent</a> &amp;)</td></tr>
<tr class="separator:a0d78d28bd4a98c3a016a38091b2d4185 inherit pro_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acc0365ec4b9245bdffb8d0285be55dea inherit pro_methods_classWidget"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#acc0365ec4b9245bdffb8d0285be55dea">onResize</a> (const <a class="el" href="structWidget_1_1ResizeEvent.html">ResizeEvent</a> &amp;)</td></tr>
<tr class="separator:acc0365ec4b9245bdffb8d0285be55dea inherit pro_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa92462db80ed1dc8334910038cd262cc inherit pro_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#aa92462db80ed1dc8334910038cd262cc">setNeedsFullViewport</a> (bool yesNo) noexcept</td></tr>
<tr class="separator:aa92462db80ed1dc8334910038cd262cc inherit pro_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2ce358088e8f3b65621afd02c675bad8 inherit pro_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a2ce358088e8f3b65621afd02c675bad8">setNeedsScaling</a> (bool yesNo) noexcept</td></tr>
<tr class="separator:a2ce358088e8f3b65621afd02c675bad8 inherit pro_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a45cdf75bf08adf50742150f3d2029f76"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void ImageSwitch::onDisplay </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>A function called to draw the view contents with OpenGL. </p>

<p>Implements <a class="el" href="classWidget.html#ae1554f348fe3b2f9d4c3c5c4f9ec55bd">Widget</a>.</p>

</div>
</div>
<a class="anchor" id="aa2371a540211636f96ac3a3a161ee563"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool ImageSwitch::onMouse </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structWidget_1_1MouseEvent.html">MouseEvent</a> &amp;&#160;</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>A function called when a mouse button is pressed or released. </p><dl class="section return"><dt>Returns</dt><dd>True to stop event propagation, false otherwise. </dd></dl>

<p>Reimplemented from <a class="el" href="classWidget.html#a097ec1d56a06bdc9e0a4e54880def378">Widget</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>dgl/<a class="el" href="ImageSwitch_8hpp_source.html">ImageSwitch.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

BIN
classImageSwitch.png View File

Before After
Width: 82  |  Height: 80  |  Size: 456B

+ 106
- 0
classImageSwitch_1_1Callback-members.html View File

@@ -0,0 +1,106 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: Member List</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="classImageSwitch.html">ImageSwitch</a></li><li class="navelem"><a class="el" href="classImageSwitch_1_1Callback.html">Callback</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">ImageSwitch::Callback Member List</div> </div>
</div><!--header-->
<div class="contents">

<p>This is the complete list of members for <a class="el" href="classImageSwitch_1_1Callback.html">ImageSwitch::Callback</a>, including all inherited members.</p>
<table class="directory">
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>imageSwitchClicked</b>(ImageSwitch *imageButton, bool down)=0 (defined in <a class="el" href="classImageSwitch_1_1Callback.html">ImageSwitch::Callback</a>)</td><td class="entry"><a class="el" href="classImageSwitch_1_1Callback.html">ImageSwitch::Callback</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>~Callback</b>() (defined in <a class="el" href="classImageSwitch_1_1Callback.html">ImageSwitch::Callback</a>)</td><td class="entry"><a class="el" href="classImageSwitch_1_1Callback.html">ImageSwitch::Callback</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 114
- 0
classImageSwitch_1_1Callback.html View File

@@ -0,0 +1,114 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: ImageSwitch::Callback Class Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="classImageSwitch.html">ImageSwitch</a></li><li class="navelem"><a class="el" href="classImageSwitch_1_1Callback.html">Callback</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classImageSwitch_1_1Callback-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">ImageSwitch::Callback Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a008211ebb10afa89487ab4c8ac1009bb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a008211ebb10afa89487ab4c8ac1009bb"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>imageSwitchClicked</b> (<a class="el" href="classImageSwitch.html">ImageSwitch</a> *imageButton, bool down)=0</td></tr>
<tr class="separator:a008211ebb10afa89487ab4c8ac1009bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>dgl/<a class="el" href="ImageSwitch_8hpp_source.html">ImageSwitch.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 103
- 0
classLeakedObjectDetector-members.html View File

@@ -0,0 +1,103 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: Member List</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">LeakedObjectDetector&lt; OwnerClass &gt; Member List</div> </div>
</div><!--header-->
<div class="contents">

<p>This is the complete list of members for <a class="el" href="classLeakedObjectDetector.html">LeakedObjectDetector&lt; OwnerClass &gt;</a>, including all inherited members.</p>
<table class="directory">
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>LeakedObjectDetector</b>() noexcept (defined in <a class="el" href="classLeakedObjectDetector.html">LeakedObjectDetector&lt; OwnerClass &gt;</a>)</td><td class="entry"><a class="el" href="classLeakedObjectDetector.html">LeakedObjectDetector&lt; OwnerClass &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>LeakedObjectDetector</b>(const LeakedObjectDetector &amp;) noexcept (defined in <a class="el" href="classLeakedObjectDetector.html">LeakedObjectDetector&lt; OwnerClass &gt;</a>)</td><td class="entry"><a class="el" href="classLeakedObjectDetector.html">LeakedObjectDetector&lt; OwnerClass &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classLeakedObjectDetector.html#af4fd575fa5361ce5b01f65a635b1d6b3">~LeakedObjectDetector</a>() noexcept</td><td class="entry"><a class="el" href="classLeakedObjectDetector.html">LeakedObjectDetector&lt; OwnerClass &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 151
- 0
classLeakedObjectDetector.html View File

@@ -0,0 +1,151 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: LeakedObjectDetector&lt; OwnerClass &gt; Class Template Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classLeakedObjectDetector-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">LeakedObjectDetector&lt; OwnerClass &gt; Class Template Reference</div> </div>
</div><!--header-->
<div class="contents">

<p><code>#include &lt;<a class="el" href="d__leakdetector_8hpp_source.html">d_leakdetector.hpp</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:ab474ac40a76a5d47b39d8a68b983767f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab474ac40a76a5d47b39d8a68b983767f"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>LeakedObjectDetector</b> (const <a class="el" href="classLeakedObjectDetector.html">LeakedObjectDetector</a> &amp;) noexcept</td></tr>
<tr class="separator:ab474ac40a76a5d47b39d8a68b983767f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af4fd575fa5361ce5b01f65a635b1d6b3"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classLeakedObjectDetector.html#af4fd575fa5361ce5b01f65a635b1d6b3">~LeakedObjectDetector</a> () noexcept</td></tr>
<tr class="separator:af4fd575fa5361ce5b01f65a635b1d6b3"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><h3>template&lt;class OwnerClass&gt;<br />
class LeakedObjectDetector&lt; OwnerClass &gt;</h3>

<p>Embedding an instance of this class inside another class can be used as a low-overhead way of detecting leaked instances.</p>
<p>This class keeps an internal static count of the number of instances that are active, so that when the app is shutdown and the static destructors are called, it can check whether there are any left-over instances that may have been leaked.</p>
<p>To use it, use the DISTRHO_LEAK_DETECTOR macro as a simple way to put one in your class declaration. </p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="af4fd575fa5361ce5b01f65a635b1d6b3"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class OwnerClass &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classLeakedObjectDetector.html">LeakedObjectDetector</a>&lt; OwnerClass &gt;::~<a class="el" href="classLeakedObjectDetector.html">LeakedObjectDetector</a> </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>If you hit this, then you've managed to delete more instances of this class than you've created.. That indicates that you're deleting some dangling pointers.</p>
<p>Note that although this assertion will have been triggered during a destructor, it might not be this particular deletion that's at fault - the incorrect one may have happened at an earlier point in the program, and simply not been detected until now.</p>
<p>Most errors like this are caused by using old-fashioned, non-RAII techniques for your object management. Tut, tut. Always, always use ScopedPointers, OwnedArrays, ReferenceCountedObjects, etc, and avoid the 'delete' operator at all costs!</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>distrho/extra/<a class="el" href="d__leakdetector_8hpp_source.html">d_leakdetector.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 128
- 0
classLine-members.html View File

@@ -0,0 +1,128 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: Member List</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">Line&lt; T &gt; Member List</div> </div>
</div><!--header-->
<div class="contents">

<p>This is the complete list of members for <a class="el" href="singletonLine.html">Line&lt; T &gt;</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="singletonLine.html#af3eebf8905576276741caab216516949">draw</a>()</td><td class="entry"><a class="el" href="singletonLine.html">Line&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="singletonLine.html#aa3f70d792719c026b35b3f32dc19ac65">getEndPos</a>() const noexcept</td><td class="entry"><a class="el" href="singletonLine.html">Line&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="singletonLine.html#a15462cbbe5154d8b27fd6c53ddafc17f">getEndX</a>() const noexcept</td><td class="entry"><a class="el" href="singletonLine.html">Line&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="singletonLine.html#a5c5de1ccedae8ea85fd711eab10359dd">getEndY</a>() const noexcept</td><td class="entry"><a class="el" href="singletonLine.html">Line&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="singletonLine.html#a2c5ecf6513f1b1fd846a80915aff5744">getStartPos</a>() const noexcept</td><td class="entry"><a class="el" href="singletonLine.html">Line&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="singletonLine.html#a7f3af6a8c08af69188714a83353e09fb">getStartX</a>() const noexcept</td><td class="entry"><a class="el" href="singletonLine.html">Line&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="singletonLine.html#a5a5ef0a94283339f2c20406a3d9fbb04">getStartY</a>() const noexcept</td><td class="entry"><a class="el" href="singletonLine.html">Line&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="singletonLine.html#ad156bd44539aa28e052207a25d705695">isNotNull</a>() const noexcept</td><td class="entry"><a class="el" href="singletonLine.html">Line&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="singletonLine.html#ab300b2e8deeda3d08cc7e70299c3955d">isNull</a>() const noexcept</td><td class="entry"><a class="el" href="singletonLine.html">Line&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="singletonLine.html#a7895211d4fa97f63b3495ca5c9bfaed1">Line</a>() noexcept</td><td class="entry"><a class="el" href="singletonLine.html">Line&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="singletonLine.html#abb3a2ed1ad09a372c39fab9820defb03">Line</a>(const T &amp;startX, const T &amp;startY, const T &amp;endX, const T &amp;endY) noexcept</td><td class="entry"><a class="el" href="singletonLine.html">Line&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="singletonLine.html#afb5087aefdb5a66befc2af548fc34056">Line</a>(const T &amp;startX, const T &amp;startY, const Point&lt; T &gt; &amp;endPos) noexcept</td><td class="entry"><a class="el" href="singletonLine.html">Line&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="singletonLine.html#a4e4d056335720256b83ae491a55bcb1e">Line</a>(const Point&lt; T &gt; &amp;startPos, const T &amp;endX, const T &amp;endY) noexcept</td><td class="entry"><a class="el" href="singletonLine.html">Line&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="singletonLine.html#a9a3e4daec16c09c9f7ae1ce6b3a56847">Line</a>(const Point&lt; T &gt; &amp;startPos, const Point&lt; T &gt; &amp;endPos) noexcept</td><td class="entry"><a class="el" href="singletonLine.html">Line&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="singletonLine.html#a96f1ec549a1cdab2ae4480a9b2f839ec">Line</a>(const Line&lt; T &gt; &amp;line) noexcept</td><td class="entry"><a class="el" href="singletonLine.html">Line&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="singletonLine.html#a47c83b136a3d4df6ac688ac41126b967">moveBy</a>(const T &amp;x, const T &amp;y) noexcept</td><td class="entry"><a class="el" href="singletonLine.html">Line&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="singletonLine.html#af287984efeaf15d632a715f884194dab">moveBy</a>(const Point&lt; T &gt; &amp;pos) noexcept</td><td class="entry"><a class="el" href="singletonLine.html">Line&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>operator!=</b>(const Line&lt; T &gt; &amp;line) const noexcept (defined in <a class="el" href="singletonLine.html">Line&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="singletonLine.html">Line&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>operator=</b>(const Line&lt; T &gt; &amp;line) noexcept (defined in <a class="el" href="singletonLine.html">Line&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="singletonLine.html">Line&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>operator==</b>(const Line&lt; T &gt; &amp;line) const noexcept (defined in <a class="el" href="singletonLine.html">Line&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="singletonLine.html">Line&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="singletonLine.html#af05002adedbeaeea698d26bf4afadff0">setEndPos</a>(const T &amp;x, const T &amp;y) noexcept</td><td class="entry"><a class="el" href="singletonLine.html">Line&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="singletonLine.html#a13324b63d42efff020622aa2979d1009">setEndPos</a>(const Point&lt; T &gt; &amp;pos) noexcept</td><td class="entry"><a class="el" href="singletonLine.html">Line&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="singletonLine.html#a17061d9ae2e85a5f929148e5106504bf">setEndX</a>(const T &amp;x) noexcept</td><td class="entry"><a class="el" href="singletonLine.html">Line&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="singletonLine.html#a0dcd399a55aef168e91c645958670ee6">setEndY</a>(const T &amp;y) noexcept</td><td class="entry"><a class="el" href="singletonLine.html">Line&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="singletonLine.html#a958d534b1b0c2d581b110dd26c0d4cea">setStartPos</a>(const T &amp;x, const T &amp;y) noexcept</td><td class="entry"><a class="el" href="singletonLine.html">Line&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="singletonLine.html#aa078f8d0f2cf36e3162bc1977dc56d4b">setStartPos</a>(const Point&lt; T &gt; &amp;pos) noexcept</td><td class="entry"><a class="el" href="singletonLine.html">Line&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="singletonLine.html#ad2b10d3144ba0711f9ecb444bb08ad4c">setStartX</a>(const T &amp;x) noexcept</td><td class="entry"><a class="el" href="singletonLine.html">Line&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="singletonLine.html#ae35ba55c6ff3bae24c7f05133b9e003b">setStartY</a>(const T &amp;y) noexcept</td><td class="entry"><a class="el" href="singletonLine.html">Line&lt; T &gt;</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 105
- 0
classMutex-members.html View File

@@ -0,0 +1,105 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: Member List</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">Mutex Member List</div> </div>
</div><!--header-->
<div class="contents">

<p>This is the complete list of members for <a class="el" href="classMutex.html">Mutex</a>, including all inherited members.</p>
<table class="directory">
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>lock</b>() const noexcept (defined in <a class="el" href="classMutex.html">Mutex</a>)</td><td class="entry"><a class="el" href="classMutex.html">Mutex</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>Mutex</b>() noexcept (defined in <a class="el" href="classMutex.html">Mutex</a>)</td><td class="entry"><a class="el" href="classMutex.html">Mutex</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>tryLock</b>() const noexcept (defined in <a class="el" href="classMutex.html">Mutex</a>)</td><td class="entry"><a class="el" href="classMutex.html">Mutex</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>unlock</b>() const noexcept (defined in <a class="el" href="classMutex.html">Mutex</a>)</td><td class="entry"><a class="el" href="classMutex.html">Mutex</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~Mutex</b>() noexcept (defined in <a class="el" href="classMutex.html">Mutex</a>)</td><td class="entry"><a class="el" href="classMutex.html">Mutex</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 116
- 0
classMutex.html View File

@@ -0,0 +1,116 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: Mutex Class Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classMutex-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">Mutex Class Reference</div> </div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:ac9c24ec8ad0d7635897034c88239c040"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac9c24ec8ad0d7635897034c88239c040"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>lock</b> () const noexcept</td></tr>
<tr class="separator:ac9c24ec8ad0d7635897034c88239c040"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8fa677e5c0bf43f5c45da77b9cf39e32"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8fa677e5c0bf43f5c45da77b9cf39e32"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>tryLock</b> () const noexcept</td></tr>
<tr class="separator:a8fa677e5c0bf43f5c45da77b9cf39e32"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6df5328bbfce5b5efecf3f93bcafe546"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6df5328bbfce5b5efecf3f93bcafe546"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>unlock</b> () const noexcept</td></tr>
<tr class="separator:a6df5328bbfce5b5efecf3f93bcafe546"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>distrho/extra/<a class="el" href="d__mutex_8hpp_source.html">d_mutex.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 105
- 0
classNanoImage-members.html View File

@@ -0,0 +1,105 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: Member List</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">NanoImage Member List</div> </div>
</div><!--header-->
<div class="contents">

<p>This is the complete list of members for <a class="el" href="classNanoImage.html">NanoImage</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classNanoImage.html#a979cc37d8a10dc0642fcea2d64d3b58c">getSize</a>() const noexcept</td><td class="entry"><a class="el" href="classNanoImage.html">NanoImage</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoImage.html#ae2098db57c51c41247a4013eb1e0216c">NanoImage</a>(NVGcontext *const context, const int imageId) noexcept</td><td class="entry"><a class="el" href="classNanoImage.html">NanoImage</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>NanoVG</b> (defined in <a class="el" href="classNanoImage.html">NanoImage</a>)</td><td class="entry"><a class="el" href="classNanoImage.html">NanoImage</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
<tr><td class="entry"><a class="el" href="classNanoImage.html#a7d7ef1338879e65b06230ddc45e5dcdc">updateImage</a>(const uchar *const data)</td><td class="entry"><a class="el" href="classNanoImage.html">NanoImage</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoImage.html#a8915fb5eae1a0180edd3f5babf6a0091">~NanoImage</a>()</td><td class="entry"><a class="el" href="classNanoImage.html">NanoImage</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 225
- 0
classNanoImage.html View File

@@ -0,0 +1,225 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: NanoImage Class Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="#friends">Friends</a> &#124;
<a href="classNanoImage-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">NanoImage Class Reference</div> </div>
</div><!--header-->
<div class="contents">

<p><code>#include &lt;<a class="el" href="NanoVG_8hpp_source.html">NanoVG.hpp</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a8915fb5eae1a0180edd3f5babf6a0091"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoImage.html#a8915fb5eae1a0180edd3f5babf6a0091">~NanoImage</a> ()</td></tr>
<tr class="separator:a8915fb5eae1a0180edd3f5babf6a0091"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a979cc37d8a10dc0642fcea2d64d3b58c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classSize.html">Size</a>&lt; uint &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoImage.html#a979cc37d8a10dc0642fcea2d64d3b58c">getSize</a> () const noexcept</td></tr>
<tr class="separator:a979cc37d8a10dc0642fcea2d64d3b58c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7d7ef1338879e65b06230ddc45e5dcdc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoImage.html#a7d7ef1338879e65b06230ddc45e5dcdc">updateImage</a> (const uchar *const data)</td></tr>
<tr class="separator:a7d7ef1338879e65b06230ddc45e5dcdc"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:ae2098db57c51c41247a4013eb1e0216c"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoImage.html#ae2098db57c51c41247a4013eb1e0216c">NanoImage</a> (NVGcontext *const context, const int imageId) noexcept</td></tr>
<tr class="separator:ae2098db57c51c41247a4013eb1e0216c"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
Friends</h2></td></tr>
<tr class="memitem:ac61a86a9dea09cc0800db0470bd94d26"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac61a86a9dea09cc0800db0470bd94d26"></a>
class&#160;</td><td class="memItemRight" valign="bottom"><b>NanoVG</b></td></tr>
<tr class="separator:ac61a86a9dea09cc0800db0470bd94d26"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p><a class="el" href="classNanoVG.html">NanoVG</a> <a class="el" href="classImage.html">Image</a> class.</p>
<p>This implements <a class="el" href="classNanoVG.html">NanoVG</a> images as a C++ class where deletion is handled automatically. Images need to be created within a <a class="el" href="classNanoVG.html">NanoVG</a> or <a class="el" href="classNanoWidget.html">NanoWidget</a> class. </p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a8915fb5eae1a0180edd3f5babf6a0091"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">NanoImage::~NanoImage </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Destructor. </p>

</div>
</div>
<a class="anchor" id="ae2098db57c51c41247a4013eb1e0216c"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">NanoImage::NanoImage </td>
<td>(</td>
<td class="paramtype">NVGcontext *const&#160;</td>
<td class="paramname"><em>context</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const int&#160;</td>
<td class="paramname"><em>imageId</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Constructors are protected. NanoImages must be created within a <a class="el" href="classNanoVG.html">NanoVG</a> or <a class="el" href="classNanoWidget.html">NanoWidget</a> class. </p>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a979cc37d8a10dc0642fcea2d64d3b58c"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classSize.html">Size</a>&lt;uint&gt; NanoImage::getSize </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get size. </p>

</div>
</div>
<a class="anchor" id="a7d7ef1338879e65b06230ddc45e5dcdc"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void NanoImage::updateImage </td>
<td>(</td>
<td class="paramtype">const uchar *const&#160;</td>
<td class="paramname"><em>data</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Update image data. </p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>dgl/<a class="el" href="NanoVG_8hpp_source.html">NanoVG.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 211
- 0
classNanoVG-members.html View File

@@ -0,0 +1,211 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: Member List</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">NanoVG Member List</div> </div>
</div><!--header-->
<div class="contents">

<p>This is the complete list of members for <a class="el" href="classNanoVG.html">NanoVG</a>, including all inherited members.</p>
<table class="directory">
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Align</b> enum name (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>ALIGN_BASELINE</b> enum value (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>ALIGN_BOTTOM</b> enum value (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>ALIGN_CENTER</b> enum value (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>ALIGN_LEFT</b> enum value (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>ALIGN_MIDDLE</b> enum value (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>ALIGN_RIGHT</b> enum value (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>ALIGN_TOP</b> enum value (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Alpha</b> enum name (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a5da07d6030f2918260e1fc20cfb4c9e6">arc</a>(float cx, float cy, float r, float a0, float a1, Winding dir)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#aea6996381cba59bdcef33a981af853e8">arcTo</a>(float x1, float y1, float x2, float y2, float radius)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a202e92a01a9b78d469c77ed659f12c8b">beginFrame</a>(const uint width, const uint height, const float scaleFactor=1.0f, const Alpha alpha=PREMULTIPLIED_ALPHA)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a7758435376f2f223e38c6187cbf79096">beginFrame</a>(Widget *const widget)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a1cd7ee075338cbd5069e0862dff70b41">beginPath</a>()</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>BEVEL</b> enum value (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a44831e8c0c5e457eda688c9141e10f68">bezierTo</a>(float c1x, float c1y, float c2x, float c2y, float x, float y)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a1496424cb5a9e40844ebb4d8dad83799">boxGradient</a>(float x, float y, float w, float h, float r, float f, const Color &amp;icol, const Color &amp;ocol)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>BUTT</b> enum value (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>CCW</b> enum value (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#aa3230d48ce48f050d3ad636fc2ff4235">circle</a>(float cx, float cy, float r)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a74ae13eec498c0afb9fa20199eecbd48">closePath</a>()</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a45357f0e7cb62352ef05a529db233e9f">createFont</a>(const char *name, const char *filename)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#aa07d34eb15472088a67a9bfebe1c86e7">createFontMem</a>(const char *name, const uchar *data, int ndata, bool freeData)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#af7e33d8123baca23df22910791892874">createImage</a>(const char *filename)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a78590d08cd1c6a69e0487034ece7ab53">createImageMem</a>(uchar *data, int ndata)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a2c37ef18f5eaf0052a57e2dd89723f01">createImageRGBA</a>(uint w, uint h, const uchar *data)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#ad51cefbcf8819d365205fa004a10b976">currentTransform</a>(float xform[6])</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>CW</b> enum value (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#ae3913bdf0efc2f5504422f558dca2c45">degToRad</a>(float deg)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a2081ea8d4c33481d24ae98d1a65a6f9b">ellipse</a>(float cx, float cy, float rx, float ry)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a432d8c79b21f61eb1010a75cc13ee711">endFrame</a>()</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#ae6e189b2c0b5a67c8c227d89b9bdb56e">fill</a>()</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a9a802d6e276195d13bc33d0f4b39cff9">fillColor</a>(const Color &amp;color)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a9b88f568b952402bbcfec289095734a7">fillColor</a>(const int red, const int green, const int blue, const int alpha=255)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a364794e2641625310aab9b7755b1e3d5">fillColor</a>(const float red, const float green, const float blue, const float alpha=1.0f)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#aca56cc6d1c2455fc9f750cce4dc132d0">fillPaint</a>(const Paint &amp;paint)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#afbcfaa824c76e00eb22bd3f7dd5d1ab0">findFont</a>(const char *name)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#aa0a42259164f0893ea63929cfce29a75">fontBlur</a>(float blur)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a22fa48b86dac0cc4ab1cd922de39c52b">fontFace</a>(const char *font)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a2d32dbd0fb0dd0ae36fdc6ef2be65f6c">fontFaceId</a>(FontId font)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>FontId</b> typedef (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a23353792b4267d74f8f7a665d358c1a4">fontSize</a>(float size)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a8b6f8caad8acb883fadc06a606ccade7">getContext</a>() const noexcept</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>HOLE</b> enum value (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a51ad176349e0169478844f862942af20">imagePattern</a>(float ox, float oy, float ex, float ey, float angle, const NanoImage *image, PatternRepeat repeat)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#aa74a49bb588beb28654565a07022a178">linearGradient</a>(float sx, float sy, float ex, float ey, const Color &amp;icol, const Color &amp;ocol)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a95dfc697ae6fe9c8d525430c09f839d1">lineCap</a>(LineCap cap=BUTT)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>LineCap</b> enum name (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a73767c9ade6a757bc6e1f4a2d45bdaeb">lineJoin</a>(LineCap join=MITER)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a63f509eaeb04475a8541ed8e846f352f">lineTo</a>(float x, float y)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>MITER</b> enum value (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a8a5ade44d39d21f28dcd02d27da62d14">miterLimit</a>(float limit)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#af1ac0918567c17c93e0586c4284e04b9">moveTo</a>(float x, float y)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a1d6c677037e336e11baa5f32a4a11922">NanoVG</a>()</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#aaf714e36cc1619264899b373cdb8accd">NanoVG</a>(const int textAtlasWidth, const int textAtlasHeight)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#aaf7f45fc45cf920d261a8b2cfebf9026">pathWinding</a>(Winding dir)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>PatternRepeat</b> enum name (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>PREMULTIPLIED_ALPHA</b> enum value (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a19d27b1b3a22afe9a6d27f4f9f8bf167">radialGradient</a>(float cx, float cy, float inr, float outr, const Color &amp;icol, const Color &amp;ocol)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a175f4c41e0d89ae5d8bdb65e5580c637">radToDeg</a>(float rad)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a1bc27cc57b0e2d3bc0fd12d519312251">rect</a>(float x, float y, float w, float h)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>REPEAT_NONE</b> enum value (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>REPEAT_X</b> enum value (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>REPEAT_Y</b> enum value (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#ad5ddb240794b35105eeadd1534f0911b">reset</a>()</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#aff2eaea01970f0ec2005d1051f25ad35">resetScissor</a>()</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#aac35e4a0ce84c0f4bf8d881d1b8a5b34">resetTransform</a>()</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#aa1da11cb97d4f6718ffe8b4622684c3b">restore</a>()</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a13da8f469cd43117c19d8459c178b905">rotate</a>(float angle)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>ROUND</b> enum value (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#ac9d8502c3cbf6745ff3a41d1b97b6529">roundedRect</a>(float x, float y, float w, float h, float r)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a05fd441d579c42c76d786bd4a7b437af">save</a>()</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a76273b763fa9b84c4a86d37065accee7">scale</a>(float x, float y)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a7ac24b9a1ab2b901ab18d4d8dbb92c1c">scissor</a>(float x, float y, float w, float h)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a4f45e3cf465060491e73427e5868573f">skewX</a>(float angle)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a508c4fde6212c1b0598d9f8b32cba0f6">skewY</a>(float angle)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>SOLID</b> enum value (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>Solidity</b> enum name (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>SQUARE</b> enum value (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>STRAIGHT_ALPHA</b> enum value (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#aeed167687a8a269c4f9c44a7db4d3746">stroke</a>()</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#acefc70128644fb8ee5abe6dc04d4f710">strokeColor</a>(const Color &amp;color)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a6242c3e68789ed57b46fb75ba396506d">strokeColor</a>(const int red, const int green, const int blue, const int alpha=255)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a22bac7e1806c9203a637337478a90165">strokeColor</a>(const float red, const float green, const float blue, const float alpha=1.0f)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a8d00b35e0ab5c428af120cc78ff32804">strokePaint</a>(const Paint &amp;paint)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a373190894070313e8d321b2af0bbab58">strokeWidth</a>(float size)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#af9526a1c4b2d5e1db0190c32ba9a1eaa">text</a>(float x, float y, const char *string, const char *end)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a9c942ced1722beff8e326a6cf0c9a1d1">textAlign</a>(Align align)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a9a1a5e00351ff92ebb9795a2127f0529">textAlign</a>(int align)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a281c71d51c5f9d6fb5d6e8369ca650f4">textBounds</a>(float x, float y, const char *string, const char *end, Rectangle&lt; float &gt; &amp;bounds)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#aaa73324a5969916f910fb9a41e7e5358">textBox</a>(float x, float y, float breakRowWidth, const char *string, const char *end)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a2dd842d5eaf729c43769da3a35db158d">textBoxBounds</a>(float x, float y, float breakRowWidth, const char *string, const char *end, float *bounds)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a86f66c7dff7fc3a96667f139b88d1e9e">textBreakLines</a>(const char *string, const char *end, float breakRowWidth, TextRow *rows, int maxRows)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a365eb3cc06e97f29cbcfa967e76f8798">textGlyphPositions</a>(float x, float y, const char *string, const char *end, GlyphPosition *positions, int maxPositions)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#ad768aae0871c1685ca5dc590859d5c1b">textLetterSpacing</a>(float spacing)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#aab69aa4f2ae1b15adcceb9d065ea8aa6">textLineHeight</a>(float lineHeight)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a5e84bf7dec65064733aec488389568b0">textMetrics</a>(float *ascender, float *descender, float *lineh)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#ad06096ade68bf78bcc256005cd6f2c45">transform</a>(float a, float b, float c, float d, float e, float f)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a81c8b60a87be8a8d4a5efce8eeaf1915">transformIdentity</a>(float dst[6])</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#ac5692f82bcac4858f44d9fd0df287cad">transformInverse</a>(float dst[6], const float src[6])</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a3ac9aade102afb3a4f84966f0727c6c6">transformMultiply</a>(float dst[6], const float src[6])</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#ae2e49763ab7f503016c0dede0dbfd3cc">transformPoint</a>(float &amp;dstx, float &amp;dsty, const float xform[6], float srcx, float srcy)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a1416fbff2a0ecada90b2d9852bfbaf42">transformPremultiply</a>(float dst[6], const float src[6])</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a43e16d0f94dc0a49dae5128d69e75e3c">transformRotate</a>(float dst[6], float a)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a94c1f78baadff1d6c6a5a4d52dd770d7">transformScale</a>(float dst[6], float sx, float sy)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a178b6b9a8c755cda91ccba2b6239d279">transformSkewX</a>(float dst[6], float a)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#af23e7f6a6056e5efe72944fa68767704">transformSkewY</a>(float dst[6], float a)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a022e3cdfa06f5bc9103b37dfa64adb2c">transformTranslate</a>(float dst[6], float tx, float ty)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#abc1d6466eb7fdc57a869ec7b9fdd6bdf">translate</a>(float x, float y)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>Winding</b> enum name (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a3e05169f4e66e811537adaea17e4bb3f">~NanoVG</a>()</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 2827
- 0
classNanoVG.html
File diff suppressed because it is too large
View File


BIN
classNanoVG.png View File

Before After
Width: 80  |  Height: 80  |  Size: 450B

+ 248
- 0
classNanoWidget-members.html View File

@@ -0,0 +1,248 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: Member List</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">NanoWidget Member List</div> </div>
</div><!--header-->
<div class="contents">

<p>This is the complete list of members for <a class="el" href="classNanoWidget.html">NanoWidget</a>, including all inherited members.</p>
<table class="directory">
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Align</b> enum name (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>ALIGN_BASELINE</b> enum value (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>ALIGN_BOTTOM</b> enum value (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>ALIGN_CENTER</b> enum value (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>ALIGN_LEFT</b> enum value (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>ALIGN_MIDDLE</b> enum value (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>ALIGN_RIGHT</b> enum value (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>ALIGN_TOP</b> enum value (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Alpha</b> enum name (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a5da07d6030f2918260e1fc20cfb4c9e6">arc</a>(float cx, float cy, float r, float a0, float a1, Winding dir)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#aea6996381cba59bdcef33a981af853e8">arcTo</a>(float x1, float y1, float x2, float y2, float radius)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a202e92a01a9b78d469c77ed659f12c8b">beginFrame</a>(const uint width, const uint height, const float scaleFactor=1.0f, const Alpha alpha=PREMULTIPLIED_ALPHA)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a7758435376f2f223e38c6187cbf79096">beginFrame</a>(Widget *const widget)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a1cd7ee075338cbd5069e0862dff70b41">beginPath</a>()</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>BEVEL</b> enum value (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a44831e8c0c5e457eda688c9141e10f68">bezierTo</a>(float c1x, float c1y, float c2x, float c2y, float x, float y)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a1496424cb5a9e40844ebb4d8dad83799">boxGradient</a>(float x, float y, float w, float h, float r, float f, const Color &amp;icol, const Color &amp;ocol)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>BUTT</b> enum value (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>CCW</b> enum value (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#aa3230d48ce48f050d3ad636fc2ff4235">circle</a>(float cx, float cy, float r)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a74ae13eec498c0afb9fa20199eecbd48">closePath</a>()</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a655f9dac3838b52a3deec1a4b9e6001b">contains</a>(int x, int y) const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a9dc3a8c1c7fe1dd0ffa28577f1eaa5fd">contains</a>(const Point&lt; int &gt; &amp;pos) const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a45357f0e7cb62352ef05a529db233e9f">createFont</a>(const char *name, const char *filename)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#aa07d34eb15472088a67a9bfebe1c86e7">createFontMem</a>(const char *name, const uchar *data, int ndata, bool freeData)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#af7e33d8123baca23df22910791892874">createImage</a>(const char *filename)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a78590d08cd1c6a69e0487034ece7ab53">createImageMem</a>(uchar *data, int ndata)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a2c37ef18f5eaf0052a57e2dd89723f01">createImageRGBA</a>(uint w, uint h, const uchar *data)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#ad51cefbcf8819d365205fa004a10b976">currentTransform</a>(float xform[6])</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>CW</b> enum value (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#ae3913bdf0efc2f5504422f558dca2c45">degToRad</a>(float deg)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a2081ea8d4c33481d24ae98d1a65a6f9b">ellipse</a>(float cx, float cy, float rx, float ry)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a432d8c79b21f61eb1010a75cc13ee711">endFrame</a>()</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#ae6e189b2c0b5a67c8c227d89b9bdb56e">fill</a>()</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a9a802d6e276195d13bc33d0f4b39cff9">fillColor</a>(const Color &amp;color)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a9b88f568b952402bbcfec289095734a7">fillColor</a>(const int red, const int green, const int blue, const int alpha=255)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a364794e2641625310aab9b7755b1e3d5">fillColor</a>(const float red, const float green, const float blue, const float alpha=1.0f)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#aca56cc6d1c2455fc9f750cce4dc132d0">fillPaint</a>(const Paint &amp;paint)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#afbcfaa824c76e00eb22bd3f7dd5d1ab0">findFont</a>(const char *name)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#aa0a42259164f0893ea63929cfce29a75">fontBlur</a>(float blur)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a22fa48b86dac0cc4ab1cd922de39c52b">fontFace</a>(const char *font)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a2d32dbd0fb0dd0ae36fdc6ef2be65f6c">fontFaceId</a>(FontId font)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>FontId</b> typedef (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a23353792b4267d74f8f7a665d358c1a4">fontSize</a>(float size)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#ae952149aa2b1661ebc9712547ac5cc04">getAbsolutePos</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a4e41debfe323ee307706af42818636dd">getAbsoluteX</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#af2ee4713e052b65e839da667aec4e05a">getAbsoluteY</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a8b6f8caad8acb883fadc06a606ccade7">getContext</a>() const noexcept</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#aa20f6dc096a8836706173f31324c4db8">getHeight</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a3ee6b2824e3f3719c1c9b3d070385f49">getId</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#afa1fe45064cf9bb107fe1dcdb2384d33">getParentApp</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a0e0b0b2293bb63b2d84774542cc6a421">getParentWindow</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#ae375b05cd76f63c957949e9121ff56bb">getSize</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a169c317caf734c6664494a573e427b40">getWidth</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a4a2f8eebacdd20db505b838f1a118c6b">hide</a>()</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>HOLE</b> enum value (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a51ad176349e0169478844f862942af20">imagePattern</a>(float ox, float oy, float ex, float ey, float angle, const NanoImage *image, PatternRepeat repeat)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a234a8ee8a685dc211ad11f492f0dbc71">isVisible</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#aa74a49bb588beb28654565a07022a178">linearGradient</a>(float sx, float sy, float ex, float ey, const Color &amp;icol, const Color &amp;ocol)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a95dfc697ae6fe9c8d525430c09f839d1">lineCap</a>(LineCap cap=BUTT)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>LineCap</b> enum name (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a73767c9ade6a757bc6e1f4a2d45bdaeb">lineJoin</a>(LineCap join=MITER)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a63f509eaeb04475a8541ed8e846f352f">lineTo</a>(float x, float y)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>MITER</b> enum value (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a8a5ade44d39d21f28dcd02d27da62d14">miterLimit</a>(float limit)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#af1ac0918567c17c93e0586c4284e04b9">moveTo</a>(float x, float y)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a1d6c677037e336e11baa5f32a4a11922">NanoVG</a>()</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#aaf714e36cc1619264899b373cdb8accd">NanoVG</a>(const int textAtlasWidth, const int textAtlasHeight)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoWidget.html#af1f8b45101bbe1017b88893a699b4f86">NanoWidget</a>(Window &amp;parent)</td><td class="entry"><a class="el" href="classNanoWidget.html">NanoWidget</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a9fa874aede538b41348f1029524aea11">onKeyboard</a>(const KeyboardEvent &amp;)</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a655569fb78a598652e9f24cefa1fe4a5">onMotion</a>(const MotionEvent &amp;)</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a097ec1d56a06bdc9e0a4e54880def378">onMouse</a>(const MouseEvent &amp;)</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoWidget.html#a50c53f68d816358fdb6abad250917372">onNanoDisplay</a>()=0</td><td class="entry"><a class="el" href="classNanoWidget.html">NanoWidget</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#acc0365ec4b9245bdffb8d0285be55dea">onResize</a>(const ResizeEvent &amp;)</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a0d78d28bd4a98c3a016a38091b2d4185">onScroll</a>(const ScrollEvent &amp;)</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a3b42652fcb2f95c6f86bdd43a1727507">onSpecial</a>(const SpecialEvent &amp;)</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#aaf7f45fc45cf920d261a8b2cfebf9026">pathWinding</a>(Winding dir)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>PatternRepeat</b> enum name (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>PREMULTIPLIED_ALPHA</b> enum value (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a19d27b1b3a22afe9a6d27f4f9f8bf167">radialGradient</a>(float cx, float cy, float inr, float outr, const Color &amp;icol, const Color &amp;ocol)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a175f4c41e0d89ae5d8bdb65e5580c637">radToDeg</a>(float rad)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a1bc27cc57b0e2d3bc0fd12d519312251">rect</a>(float x, float y, float w, float h)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a808fa28a78ec9e850d5e86f63b3be26d">repaint</a>() noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>REPEAT_NONE</b> enum value (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>REPEAT_X</b> enum value (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>REPEAT_Y</b> enum value (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#ad5ddb240794b35105eeadd1534f0911b">reset</a>()</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#aff2eaea01970f0ec2005d1051f25ad35">resetScissor</a>()</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#aac35e4a0ce84c0f4bf8d881d1b8a5b34">resetTransform</a>()</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#aa1da11cb97d4f6718ffe8b4622684c3b">restore</a>()</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a13da8f469cd43117c19d8459c178b905">rotate</a>(float angle)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>ROUND</b> enum value (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#ac9d8502c3cbf6745ff3a41d1b97b6529">roundedRect</a>(float x, float y, float w, float h, float r)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a05fd441d579c42c76d786bd4a7b437af">save</a>()</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a76273b763fa9b84c4a86d37065accee7">scale</a>(float x, float y)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a7ac24b9a1ab2b901ab18d4d8dbb92c1c">scissor</a>(float x, float y, float w, float h)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a1f58ab9f12f0e88da6bf600c504b53c5">setAbsolutePos</a>(int x, int y) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a65b3a31bbf5cfbecdf5cf84ae27ae089">setAbsolutePos</a>(const Point&lt; int &gt; &amp;pos) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a56b6c0c92551d25bafa54be5d185e4f6">setAbsoluteX</a>(int x) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a65f48c414326491ddb3bbb70bf783829">setAbsoluteY</a>(int y) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#ac6d2e6cbb2ff96f3645493d804af07f7">setHeight</a>(uint height) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#abfba3652559de84ba1ae9ccbd3d35e31">setId</a>(uint id) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#aa92462db80ed1dc8334910038cd262cc">setNeedsFullViewport</a>(bool yesNo) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a2ce358088e8f3b65621afd02c675bad8">setNeedsScaling</a>(bool yesNo) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#ab4d9e0156e455db3ff23730f82544daa">setSize</a>(uint width, uint height) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#afce784b204902c0f11e9ed02bc692362">setSize</a>(const Size&lt; uint &gt; &amp;size) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a0bec84d07a6c508e069da9821993d1c2">setVisible</a>(bool yesNo)</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#aed80a9cbc4a13c01641f35dd3d8688ea">setWidth</a>(uint width) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a25ff178539e226b5f30ef0335d060f2b">show</a>()</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a4f45e3cf465060491e73427e5868573f">skewX</a>(float angle)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a508c4fde6212c1b0598d9f8b32cba0f6">skewY</a>(float angle)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>SOLID</b> enum value (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Solidity</b> enum name (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>SQUARE</b> enum value (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>STRAIGHT_ALPHA</b> enum value (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#aeed167687a8a269c4f9c44a7db4d3746">stroke</a>()</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#acefc70128644fb8ee5abe6dc04d4f710">strokeColor</a>(const Color &amp;color)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a6242c3e68789ed57b46fb75ba396506d">strokeColor</a>(const int red, const int green, const int blue, const int alpha=255)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a22bac7e1806c9203a637337478a90165">strokeColor</a>(const float red, const float green, const float blue, const float alpha=1.0f)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a8d00b35e0ab5c428af120cc78ff32804">strokePaint</a>(const Paint &amp;paint)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a373190894070313e8d321b2af0bbab58">strokeWidth</a>(float size)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#af9526a1c4b2d5e1db0190c32ba9a1eaa">text</a>(float x, float y, const char *string, const char *end)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a9c942ced1722beff8e326a6cf0c9a1d1">textAlign</a>(Align align)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a9a1a5e00351ff92ebb9795a2127f0529">textAlign</a>(int align)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a281c71d51c5f9d6fb5d6e8369ca650f4">textBounds</a>(float x, float y, const char *string, const char *end, Rectangle&lt; float &gt; &amp;bounds)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#aaa73324a5969916f910fb9a41e7e5358">textBox</a>(float x, float y, float breakRowWidth, const char *string, const char *end)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a2dd842d5eaf729c43769da3a35db158d">textBoxBounds</a>(float x, float y, float breakRowWidth, const char *string, const char *end, float *bounds)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a86f66c7dff7fc3a96667f139b88d1e9e">textBreakLines</a>(const char *string, const char *end, float breakRowWidth, TextRow *rows, int maxRows)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a365eb3cc06e97f29cbcfa967e76f8798">textGlyphPositions</a>(float x, float y, const char *string, const char *end, GlyphPosition *positions, int maxPositions)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#ad768aae0871c1685ca5dc590859d5c1b">textLetterSpacing</a>(float spacing)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#aab69aa4f2ae1b15adcceb9d065ea8aa6">textLineHeight</a>(float lineHeight)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a5e84bf7dec65064733aec488389568b0">textMetrics</a>(float *ascender, float *descender, float *lineh)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#ad06096ade68bf78bcc256005cd6f2c45">transform</a>(float a, float b, float c, float d, float e, float f)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a81c8b60a87be8a8d4a5efce8eeaf1915">transformIdentity</a>(float dst[6])</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#ac5692f82bcac4858f44d9fd0df287cad">transformInverse</a>(float dst[6], const float src[6])</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a3ac9aade102afb3a4f84966f0727c6c6">transformMultiply</a>(float dst[6], const float src[6])</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#ae2e49763ab7f503016c0dede0dbfd3cc">transformPoint</a>(float &amp;dstx, float &amp;dsty, const float xform[6], float srcx, float srcy)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a1416fbff2a0ecada90b2d9852bfbaf42">transformPremultiply</a>(float dst[6], const float src[6])</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a43e16d0f94dc0a49dae5128d69e75e3c">transformRotate</a>(float dst[6], float a)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#a94c1f78baadff1d6c6a5a4d52dd770d7">transformScale</a>(float dst[6], float sx, float sy)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a178b6b9a8c755cda91ccba2b6239d279">transformSkewX</a>(float dst[6], float a)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#af23e7f6a6056e5efe72944fa68767704">transformSkewY</a>(float dst[6], float a)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a022e3cdfa06f5bc9103b37dfa64adb2c">transformTranslate</a>(float dst[6], float tx, float ty)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
<tr><td class="entry"><a class="el" href="classNanoVG.html#abc1d6466eb7fdc57a869ec7b9fdd6bdf">translate</a>(float x, float y)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a556f58c8ff8a80ae22cc4df7e5f8218c">Widget</a>(Window &amp;parent)</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>Winding</b> enum name (defined in <a class="el" href="classNanoVG.html">NanoVG</a>)</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classNanoVG.html#a3e05169f4e66e811537adaea17e4bb3f">~NanoVG</a>()</td><td class="entry"><a class="el" href="classNanoVG.html">NanoVG</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a714cf798aadb4d615f6f60a355382c02">~Widget</a>()</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 467
- 0
classNanoWidget.html View File

@@ -0,0 +1,467 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: NanoWidget Class Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="classNanoWidget-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">NanoWidget Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div>
</div><!--header-->
<div class="contents">

<p><code>#include &lt;<a class="el" href="NanoVG_8hpp_source.html">NanoVG.hpp</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for NanoWidget:</div>
<div class="dyncontent">
<div class="center">
<img src="classNanoWidget.png" usemap="#NanoWidget_map" alt=""/>
<map id="NanoWidget_map" name="NanoWidget_map">
<area href="classWidget.html" alt="Widget" shape="rect" coords="0,0,80,24"/>
<area href="classNanoVG.html" alt="NanoVG" shape="rect" coords="90,0,170,24"/>
</map>
</div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:af1f8b45101bbe1017b88893a699b4f86"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoWidget.html#af1f8b45101bbe1017b88893a699b4f86">NanoWidget</a> (<a class="el" href="classWindow.html">Window</a> &amp;parent)</td></tr>
<tr class="separator:af1f8b45101bbe1017b88893a699b4f86"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classWidget"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classWidget')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classWidget.html">Widget</a></td></tr>
<tr class="memitem:a556f58c8ff8a80ae22cc4df7e5f8218c inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a556f58c8ff8a80ae22cc4df7e5f8218c">Widget</a> (<a class="el" href="classWindow.html">Window</a> &amp;parent)</td></tr>
<tr class="separator:a556f58c8ff8a80ae22cc4df7e5f8218c inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a714cf798aadb4d615f6f60a355382c02 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a714cf798aadb4d615f6f60a355382c02">~Widget</a> ()</td></tr>
<tr class="separator:a714cf798aadb4d615f6f60a355382c02 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a234a8ee8a685dc211ad11f492f0dbc71 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a234a8ee8a685dc211ad11f492f0dbc71">isVisible</a> () const noexcept</td></tr>
<tr class="separator:a234a8ee8a685dc211ad11f492f0dbc71 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0bec84d07a6c508e069da9821993d1c2 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a0bec84d07a6c508e069da9821993d1c2">setVisible</a> (bool yesNo)</td></tr>
<tr class="separator:a0bec84d07a6c508e069da9821993d1c2 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a25ff178539e226b5f30ef0335d060f2b inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a25ff178539e226b5f30ef0335d060f2b">show</a> ()</td></tr>
<tr class="separator:a25ff178539e226b5f30ef0335d060f2b inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4a2f8eebacdd20db505b838f1a118c6b inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a4a2f8eebacdd20db505b838f1a118c6b">hide</a> ()</td></tr>
<tr class="separator:a4a2f8eebacdd20db505b838f1a118c6b inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a169c317caf734c6664494a573e427b40 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">uint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a169c317caf734c6664494a573e427b40">getWidth</a> () const noexcept</td></tr>
<tr class="separator:a169c317caf734c6664494a573e427b40 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa20f6dc096a8836706173f31324c4db8 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">uint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#aa20f6dc096a8836706173f31324c4db8">getHeight</a> () const noexcept</td></tr>
<tr class="separator:aa20f6dc096a8836706173f31324c4db8 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae375b05cd76f63c957949e9121ff56bb inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classSize.html">Size</a>&lt; uint &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#ae375b05cd76f63c957949e9121ff56bb">getSize</a> () const noexcept</td></tr>
<tr class="separator:ae375b05cd76f63c957949e9121ff56bb inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aed80a9cbc4a13c01641f35dd3d8688ea inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#aed80a9cbc4a13c01641f35dd3d8688ea">setWidth</a> (uint width) noexcept</td></tr>
<tr class="separator:aed80a9cbc4a13c01641f35dd3d8688ea inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac6d2e6cbb2ff96f3645493d804af07f7 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#ac6d2e6cbb2ff96f3645493d804af07f7">setHeight</a> (uint height) noexcept</td></tr>
<tr class="separator:ac6d2e6cbb2ff96f3645493d804af07f7 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab4d9e0156e455db3ff23730f82544daa inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#ab4d9e0156e455db3ff23730f82544daa">setSize</a> (uint width, uint height) noexcept</td></tr>
<tr class="separator:ab4d9e0156e455db3ff23730f82544daa inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afce784b204902c0f11e9ed02bc692362 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#afce784b204902c0f11e9ed02bc692362">setSize</a> (const <a class="el" href="classSize.html">Size</a>&lt; uint &gt; &amp;size) noexcept</td></tr>
<tr class="separator:afce784b204902c0f11e9ed02bc692362 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4e41debfe323ee307706af42818636dd inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a4e41debfe323ee307706af42818636dd">getAbsoluteX</a> () const noexcept</td></tr>
<tr class="separator:a4e41debfe323ee307706af42818636dd inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af2ee4713e052b65e839da667aec4e05a inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#af2ee4713e052b65e839da667aec4e05a">getAbsoluteY</a> () const noexcept</td></tr>
<tr class="separator:af2ee4713e052b65e839da667aec4e05a inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae952149aa2b1661ebc9712547ac5cc04 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classPoint.html">Point</a>&lt; int &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#ae952149aa2b1661ebc9712547ac5cc04">getAbsolutePos</a> () const noexcept</td></tr>
<tr class="separator:ae952149aa2b1661ebc9712547ac5cc04 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a56b6c0c92551d25bafa54be5d185e4f6 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a56b6c0c92551d25bafa54be5d185e4f6">setAbsoluteX</a> (int x) noexcept</td></tr>
<tr class="separator:a56b6c0c92551d25bafa54be5d185e4f6 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a65f48c414326491ddb3bbb70bf783829 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a65f48c414326491ddb3bbb70bf783829">setAbsoluteY</a> (int y) noexcept</td></tr>
<tr class="separator:a65f48c414326491ddb3bbb70bf783829 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1f58ab9f12f0e88da6bf600c504b53c5 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a1f58ab9f12f0e88da6bf600c504b53c5">setAbsolutePos</a> (int x, int y) noexcept</td></tr>
<tr class="separator:a1f58ab9f12f0e88da6bf600c504b53c5 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a65b3a31bbf5cfbecdf5cf84ae27ae089 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a65b3a31bbf5cfbecdf5cf84ae27ae089">setAbsolutePos</a> (const <a class="el" href="classPoint.html">Point</a>&lt; int &gt; &amp;pos) noexcept</td></tr>
<tr class="separator:a65b3a31bbf5cfbecdf5cf84ae27ae089 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afa1fe45064cf9bb107fe1dcdb2384d33 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classApp.html">App</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#afa1fe45064cf9bb107fe1dcdb2384d33">getParentApp</a> () const noexcept</td></tr>
<tr class="separator:afa1fe45064cf9bb107fe1dcdb2384d33 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0e0b0b2293bb63b2d84774542cc6a421 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classWindow.html">Window</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a0e0b0b2293bb63b2d84774542cc6a421">getParentWindow</a> () const noexcept</td></tr>
<tr class="separator:a0e0b0b2293bb63b2d84774542cc6a421 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a655f9dac3838b52a3deec1a4b9e6001b inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a655f9dac3838b52a3deec1a4b9e6001b">contains</a> (int x, int y) const noexcept</td></tr>
<tr class="separator:a655f9dac3838b52a3deec1a4b9e6001b inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9dc3a8c1c7fe1dd0ffa28577f1eaa5fd inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a9dc3a8c1c7fe1dd0ffa28577f1eaa5fd">contains</a> (const <a class="el" href="classPoint.html">Point</a>&lt; int &gt; &amp;pos) const noexcept</td></tr>
<tr class="separator:a9dc3a8c1c7fe1dd0ffa28577f1eaa5fd inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a808fa28a78ec9e850d5e86f63b3be26d inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a808fa28a78ec9e850d5e86f63b3be26d">repaint</a> () noexcept</td></tr>
<tr class="separator:a808fa28a78ec9e850d5e86f63b3be26d inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3ee6b2824e3f3719c1c9b3d070385f49 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">uint&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a3ee6b2824e3f3719c1c9b3d070385f49">getId</a> () const noexcept</td></tr>
<tr class="separator:a3ee6b2824e3f3719c1c9b3d070385f49 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abfba3652559de84ba1ae9ccbd3d35e31 inherit pub_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#abfba3652559de84ba1ae9ccbd3d35e31">setId</a> (uint id) noexcept</td></tr>
<tr class="separator:abfba3652559de84ba1ae9ccbd3d35e31 inherit pub_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classNanoVG"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classNanoVG')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classNanoVG.html">NanoVG</a></td></tr>
<tr class="memitem:a1d6c677037e336e11baa5f32a4a11922 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a1d6c677037e336e11baa5f32a4a11922">NanoVG</a> ()</td></tr>
<tr class="separator:a1d6c677037e336e11baa5f32a4a11922 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaf714e36cc1619264899b373cdb8accd inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#aaf714e36cc1619264899b373cdb8accd">NanoVG</a> (const int textAtlasWidth, const int textAtlasHeight)</td></tr>
<tr class="separator:aaf714e36cc1619264899b373cdb8accd inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3e05169f4e66e811537adaea17e4bb3f inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a3e05169f4e66e811537adaea17e4bb3f">~NanoVG</a> ()</td></tr>
<tr class="separator:a3e05169f4e66e811537adaea17e4bb3f inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8b6f8caad8acb883fadc06a606ccade7 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">NVGcontext *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a8b6f8caad8acb883fadc06a606ccade7">getContext</a> () const noexcept</td></tr>
<tr class="separator:a8b6f8caad8acb883fadc06a606ccade7 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a202e92a01a9b78d469c77ed659f12c8b inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a202e92a01a9b78d469c77ed659f12c8b">beginFrame</a> (const uint width, const uint height, const float scaleFactor=1.0f, const Alpha alpha=PREMULTIPLIED_ALPHA)</td></tr>
<tr class="separator:a202e92a01a9b78d469c77ed659f12c8b inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7758435376f2f223e38c6187cbf79096 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a7758435376f2f223e38c6187cbf79096">beginFrame</a> (<a class="el" href="classWidget.html">Widget</a> *const widget)</td></tr>
<tr class="separator:a7758435376f2f223e38c6187cbf79096 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a432d8c79b21f61eb1010a75cc13ee711 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a432d8c79b21f61eb1010a75cc13ee711">endFrame</a> ()</td></tr>
<tr class="separator:a432d8c79b21f61eb1010a75cc13ee711 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a05fd441d579c42c76d786bd4a7b437af inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a05fd441d579c42c76d786bd4a7b437af">save</a> ()</td></tr>
<tr class="separator:a05fd441d579c42c76d786bd4a7b437af inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa1da11cb97d4f6718ffe8b4622684c3b inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#aa1da11cb97d4f6718ffe8b4622684c3b">restore</a> ()</td></tr>
<tr class="separator:aa1da11cb97d4f6718ffe8b4622684c3b inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad5ddb240794b35105eeadd1534f0911b inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#ad5ddb240794b35105eeadd1534f0911b">reset</a> ()</td></tr>
<tr class="separator:ad5ddb240794b35105eeadd1534f0911b inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acefc70128644fb8ee5abe6dc04d4f710 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#acefc70128644fb8ee5abe6dc04d4f710">strokeColor</a> (const <a class="el" href="structColor.html">Color</a> &amp;color)</td></tr>
<tr class="separator:acefc70128644fb8ee5abe6dc04d4f710 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6242c3e68789ed57b46fb75ba396506d inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a6242c3e68789ed57b46fb75ba396506d">strokeColor</a> (const int red, const int green, const int blue, const int alpha=255)</td></tr>
<tr class="separator:a6242c3e68789ed57b46fb75ba396506d inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a22bac7e1806c9203a637337478a90165 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a22bac7e1806c9203a637337478a90165">strokeColor</a> (const float red, const float green, const float blue, const float alpha=1.0f)</td></tr>
<tr class="separator:a22bac7e1806c9203a637337478a90165 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8d00b35e0ab5c428af120cc78ff32804 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a8d00b35e0ab5c428af120cc78ff32804">strokePaint</a> (const <a class="el" href="structNanoVG_1_1Paint.html">Paint</a> &amp;paint)</td></tr>
<tr class="separator:a8d00b35e0ab5c428af120cc78ff32804 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9a802d6e276195d13bc33d0f4b39cff9 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a9a802d6e276195d13bc33d0f4b39cff9">fillColor</a> (const <a class="el" href="structColor.html">Color</a> &amp;color)</td></tr>
<tr class="separator:a9a802d6e276195d13bc33d0f4b39cff9 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9b88f568b952402bbcfec289095734a7 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a9b88f568b952402bbcfec289095734a7">fillColor</a> (const int red, const int green, const int blue, const int alpha=255)</td></tr>
<tr class="separator:a9b88f568b952402bbcfec289095734a7 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a364794e2641625310aab9b7755b1e3d5 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a364794e2641625310aab9b7755b1e3d5">fillColor</a> (const float red, const float green, const float blue, const float alpha=1.0f)</td></tr>
<tr class="separator:a364794e2641625310aab9b7755b1e3d5 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aca56cc6d1c2455fc9f750cce4dc132d0 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#aca56cc6d1c2455fc9f750cce4dc132d0">fillPaint</a> (const <a class="el" href="structNanoVG_1_1Paint.html">Paint</a> &amp;paint)</td></tr>
<tr class="separator:aca56cc6d1c2455fc9f750cce4dc132d0 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8a5ade44d39d21f28dcd02d27da62d14 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a8a5ade44d39d21f28dcd02d27da62d14">miterLimit</a> (float limit)</td></tr>
<tr class="separator:a8a5ade44d39d21f28dcd02d27da62d14 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a373190894070313e8d321b2af0bbab58 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a373190894070313e8d321b2af0bbab58">strokeWidth</a> (float size)</td></tr>
<tr class="separator:a373190894070313e8d321b2af0bbab58 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a95dfc697ae6fe9c8d525430c09f839d1 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a95dfc697ae6fe9c8d525430c09f839d1">lineCap</a> (LineCap cap=BUTT)</td></tr>
<tr class="separator:a95dfc697ae6fe9c8d525430c09f839d1 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a73767c9ade6a757bc6e1f4a2d45bdaeb inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a73767c9ade6a757bc6e1f4a2d45bdaeb">lineJoin</a> (LineCap join=MITER)</td></tr>
<tr class="separator:a73767c9ade6a757bc6e1f4a2d45bdaeb inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aac35e4a0ce84c0f4bf8d881d1b8a5b34 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#aac35e4a0ce84c0f4bf8d881d1b8a5b34">resetTransform</a> ()</td></tr>
<tr class="separator:aac35e4a0ce84c0f4bf8d881d1b8a5b34 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad06096ade68bf78bcc256005cd6f2c45 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#ad06096ade68bf78bcc256005cd6f2c45">transform</a> (float a, float b, float c, float d, float e, float f)</td></tr>
<tr class="separator:ad06096ade68bf78bcc256005cd6f2c45 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abc1d6466eb7fdc57a869ec7b9fdd6bdf inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#abc1d6466eb7fdc57a869ec7b9fdd6bdf">translate</a> (float x, float y)</td></tr>
<tr class="separator:abc1d6466eb7fdc57a869ec7b9fdd6bdf inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a13da8f469cd43117c19d8459c178b905 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a13da8f469cd43117c19d8459c178b905">rotate</a> (float angle)</td></tr>
<tr class="separator:a13da8f469cd43117c19d8459c178b905 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4f45e3cf465060491e73427e5868573f inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a4f45e3cf465060491e73427e5868573f">skewX</a> (float angle)</td></tr>
<tr class="separator:a4f45e3cf465060491e73427e5868573f inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a508c4fde6212c1b0598d9f8b32cba0f6 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a508c4fde6212c1b0598d9f8b32cba0f6">skewY</a> (float angle)</td></tr>
<tr class="separator:a508c4fde6212c1b0598d9f8b32cba0f6 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a76273b763fa9b84c4a86d37065accee7 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a76273b763fa9b84c4a86d37065accee7">scale</a> (float x, float y)</td></tr>
<tr class="separator:a76273b763fa9b84c4a86d37065accee7 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad51cefbcf8819d365205fa004a10b976 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#ad51cefbcf8819d365205fa004a10b976">currentTransform</a> (float xform[6])</td></tr>
<tr class="separator:ad51cefbcf8819d365205fa004a10b976 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af7e33d8123baca23df22910791892874 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classNanoImage.html">NanoImage</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#af7e33d8123baca23df22910791892874">createImage</a> (const char *filename)</td></tr>
<tr class="separator:af7e33d8123baca23df22910791892874 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a78590d08cd1c6a69e0487034ece7ab53 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classNanoImage.html">NanoImage</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a78590d08cd1c6a69e0487034ece7ab53">createImageMem</a> (uchar *data, int ndata)</td></tr>
<tr class="separator:a78590d08cd1c6a69e0487034ece7ab53 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2c37ef18f5eaf0052a57e2dd89723f01 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classNanoImage.html">NanoImage</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a2c37ef18f5eaf0052a57e2dd89723f01">createImageRGBA</a> (uint w, uint h, const uchar *data)</td></tr>
<tr class="separator:a2c37ef18f5eaf0052a57e2dd89723f01 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa74a49bb588beb28654565a07022a178 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structNanoVG_1_1Paint.html">Paint</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#aa74a49bb588beb28654565a07022a178">linearGradient</a> (float sx, float sy, float ex, float ey, const <a class="el" href="structColor.html">Color</a> &amp;icol, const <a class="el" href="structColor.html">Color</a> &amp;ocol)</td></tr>
<tr class="separator:aa74a49bb588beb28654565a07022a178 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1496424cb5a9e40844ebb4d8dad83799 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structNanoVG_1_1Paint.html">Paint</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a1496424cb5a9e40844ebb4d8dad83799">boxGradient</a> (float x, float y, float w, float h, float r, float f, const <a class="el" href="structColor.html">Color</a> &amp;icol, const <a class="el" href="structColor.html">Color</a> &amp;ocol)</td></tr>
<tr class="separator:a1496424cb5a9e40844ebb4d8dad83799 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a19d27b1b3a22afe9a6d27f4f9f8bf167 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structNanoVG_1_1Paint.html">Paint</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a19d27b1b3a22afe9a6d27f4f9f8bf167">radialGradient</a> (float cx, float cy, float inr, float outr, const <a class="el" href="structColor.html">Color</a> &amp;icol, const <a class="el" href="structColor.html">Color</a> &amp;ocol)</td></tr>
<tr class="separator:a19d27b1b3a22afe9a6d27f4f9f8bf167 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a51ad176349e0169478844f862942af20 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structNanoVG_1_1Paint.html">Paint</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a51ad176349e0169478844f862942af20">imagePattern</a> (float ox, float oy, float ex, float ey, float angle, const <a class="el" href="classNanoImage.html">NanoImage</a> *image, PatternRepeat repeat)</td></tr>
<tr class="separator:a51ad176349e0169478844f862942af20 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7ac24b9a1ab2b901ab18d4d8dbb92c1c inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a7ac24b9a1ab2b901ab18d4d8dbb92c1c">scissor</a> (float x, float y, float w, float h)</td></tr>
<tr class="separator:a7ac24b9a1ab2b901ab18d4d8dbb92c1c inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aff2eaea01970f0ec2005d1051f25ad35 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#aff2eaea01970f0ec2005d1051f25ad35">resetScissor</a> ()</td></tr>
<tr class="separator:aff2eaea01970f0ec2005d1051f25ad35 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1cd7ee075338cbd5069e0862dff70b41 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a1cd7ee075338cbd5069e0862dff70b41">beginPath</a> ()</td></tr>
<tr class="separator:a1cd7ee075338cbd5069e0862dff70b41 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af1ac0918567c17c93e0586c4284e04b9 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#af1ac0918567c17c93e0586c4284e04b9">moveTo</a> (float x, float y)</td></tr>
<tr class="separator:af1ac0918567c17c93e0586c4284e04b9 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a63f509eaeb04475a8541ed8e846f352f inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a63f509eaeb04475a8541ed8e846f352f">lineTo</a> (float x, float y)</td></tr>
<tr class="separator:a63f509eaeb04475a8541ed8e846f352f inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a44831e8c0c5e457eda688c9141e10f68 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a44831e8c0c5e457eda688c9141e10f68">bezierTo</a> (float c1x, float c1y, float c2x, float c2y, float x, float y)</td></tr>
<tr class="separator:a44831e8c0c5e457eda688c9141e10f68 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aea6996381cba59bdcef33a981af853e8 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#aea6996381cba59bdcef33a981af853e8">arcTo</a> (float x1, float y1, float x2, float y2, float radius)</td></tr>
<tr class="separator:aea6996381cba59bdcef33a981af853e8 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a74ae13eec498c0afb9fa20199eecbd48 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a74ae13eec498c0afb9fa20199eecbd48">closePath</a> ()</td></tr>
<tr class="separator:a74ae13eec498c0afb9fa20199eecbd48 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaf7f45fc45cf920d261a8b2cfebf9026 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#aaf7f45fc45cf920d261a8b2cfebf9026">pathWinding</a> (Winding dir)</td></tr>
<tr class="separator:aaf7f45fc45cf920d261a8b2cfebf9026 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5da07d6030f2918260e1fc20cfb4c9e6 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a5da07d6030f2918260e1fc20cfb4c9e6">arc</a> (float cx, float cy, float r, float a0, float a1, Winding dir)</td></tr>
<tr class="separator:a5da07d6030f2918260e1fc20cfb4c9e6 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1bc27cc57b0e2d3bc0fd12d519312251 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a1bc27cc57b0e2d3bc0fd12d519312251">rect</a> (float x, float y, float w, float h)</td></tr>
<tr class="separator:a1bc27cc57b0e2d3bc0fd12d519312251 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac9d8502c3cbf6745ff3a41d1b97b6529 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#ac9d8502c3cbf6745ff3a41d1b97b6529">roundedRect</a> (float x, float y, float w, float h, float r)</td></tr>
<tr class="separator:ac9d8502c3cbf6745ff3a41d1b97b6529 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2081ea8d4c33481d24ae98d1a65a6f9b inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a2081ea8d4c33481d24ae98d1a65a6f9b">ellipse</a> (float cx, float cy, float rx, float ry)</td></tr>
<tr class="separator:a2081ea8d4c33481d24ae98d1a65a6f9b inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa3230d48ce48f050d3ad636fc2ff4235 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#aa3230d48ce48f050d3ad636fc2ff4235">circle</a> (float cx, float cy, float r)</td></tr>
<tr class="separator:aa3230d48ce48f050d3ad636fc2ff4235 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae6e189b2c0b5a67c8c227d89b9bdb56e inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#ae6e189b2c0b5a67c8c227d89b9bdb56e">fill</a> ()</td></tr>
<tr class="separator:ae6e189b2c0b5a67c8c227d89b9bdb56e inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeed167687a8a269c4f9c44a7db4d3746 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#aeed167687a8a269c4f9c44a7db4d3746">stroke</a> ()</td></tr>
<tr class="separator:aeed167687a8a269c4f9c44a7db4d3746 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a45357f0e7cb62352ef05a529db233e9f inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">FontId&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a45357f0e7cb62352ef05a529db233e9f">createFont</a> (const char *name, const char *filename)</td></tr>
<tr class="separator:a45357f0e7cb62352ef05a529db233e9f inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa07d34eb15472088a67a9bfebe1c86e7 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">FontId&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#aa07d34eb15472088a67a9bfebe1c86e7">createFontMem</a> (const char *name, const uchar *data, int ndata, bool freeData)</td></tr>
<tr class="separator:aa07d34eb15472088a67a9bfebe1c86e7 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afbcfaa824c76e00eb22bd3f7dd5d1ab0 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">FontId&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#afbcfaa824c76e00eb22bd3f7dd5d1ab0">findFont</a> (const char *name)</td></tr>
<tr class="separator:afbcfaa824c76e00eb22bd3f7dd5d1ab0 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a23353792b4267d74f8f7a665d358c1a4 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a23353792b4267d74f8f7a665d358c1a4">fontSize</a> (float size)</td></tr>
<tr class="separator:a23353792b4267d74f8f7a665d358c1a4 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa0a42259164f0893ea63929cfce29a75 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#aa0a42259164f0893ea63929cfce29a75">fontBlur</a> (float blur)</td></tr>
<tr class="separator:aa0a42259164f0893ea63929cfce29a75 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad768aae0871c1685ca5dc590859d5c1b inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#ad768aae0871c1685ca5dc590859d5c1b">textLetterSpacing</a> (float spacing)</td></tr>
<tr class="separator:ad768aae0871c1685ca5dc590859d5c1b inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aab69aa4f2ae1b15adcceb9d065ea8aa6 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#aab69aa4f2ae1b15adcceb9d065ea8aa6">textLineHeight</a> (float lineHeight)</td></tr>
<tr class="separator:aab69aa4f2ae1b15adcceb9d065ea8aa6 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9c942ced1722beff8e326a6cf0c9a1d1 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a9c942ced1722beff8e326a6cf0c9a1d1">textAlign</a> (Align align)</td></tr>
<tr class="separator:a9c942ced1722beff8e326a6cf0c9a1d1 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9a1a5e00351ff92ebb9795a2127f0529 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a9a1a5e00351ff92ebb9795a2127f0529">textAlign</a> (int align)</td></tr>
<tr class="separator:a9a1a5e00351ff92ebb9795a2127f0529 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2d32dbd0fb0dd0ae36fdc6ef2be65f6c inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a2d32dbd0fb0dd0ae36fdc6ef2be65f6c">fontFaceId</a> (FontId font)</td></tr>
<tr class="separator:a2d32dbd0fb0dd0ae36fdc6ef2be65f6c inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a22fa48b86dac0cc4ab1cd922de39c52b inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a22fa48b86dac0cc4ab1cd922de39c52b">fontFace</a> (const char *font)</td></tr>
<tr class="separator:a22fa48b86dac0cc4ab1cd922de39c52b inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af9526a1c4b2d5e1db0190c32ba9a1eaa inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#af9526a1c4b2d5e1db0190c32ba9a1eaa">text</a> (float x, float y, const char *string, const char *end)</td></tr>
<tr class="separator:af9526a1c4b2d5e1db0190c32ba9a1eaa inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaa73324a5969916f910fb9a41e7e5358 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#aaa73324a5969916f910fb9a41e7e5358">textBox</a> (float x, float y, float breakRowWidth, const char *string, const char *end)</td></tr>
<tr class="separator:aaa73324a5969916f910fb9a41e7e5358 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a281c71d51c5f9d6fb5d6e8369ca650f4 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a281c71d51c5f9d6fb5d6e8369ca650f4">textBounds</a> (float x, float y, const char *string, const char *end, <a class="el" href="singletonRectangle.html">Rectangle</a>&lt; float &gt; &amp;bounds)</td></tr>
<tr class="separator:a281c71d51c5f9d6fb5d6e8369ca650f4 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2dd842d5eaf729c43769da3a35db158d inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a2dd842d5eaf729c43769da3a35db158d">textBoxBounds</a> (float x, float y, float breakRowWidth, const char *string, const char *end, float *bounds)</td></tr>
<tr class="separator:a2dd842d5eaf729c43769da3a35db158d inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a365eb3cc06e97f29cbcfa967e76f8798 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a365eb3cc06e97f29cbcfa967e76f8798">textGlyphPositions</a> (float x, float y, const char *string, const char *end, <a class="el" href="structNanoVG_1_1GlyphPosition.html">GlyphPosition</a> *positions, int maxPositions)</td></tr>
<tr class="separator:a365eb3cc06e97f29cbcfa967e76f8798 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5e84bf7dec65064733aec488389568b0 inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a5e84bf7dec65064733aec488389568b0">textMetrics</a> (float *ascender, float *descender, float *lineh)</td></tr>
<tr class="separator:a5e84bf7dec65064733aec488389568b0 inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a86f66c7dff7fc3a96667f139b88d1e9e inherit pub_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a86f66c7dff7fc3a96667f139b88d1e9e">textBreakLines</a> (const char *string, const char *end, float breakRowWidth, <a class="el" href="structNanoVG_1_1TextRow.html">TextRow</a> *rows, int maxRows)</td></tr>
<tr class="separator:a86f66c7dff7fc3a96667f139b88d1e9e inherit pub_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:a50c53f68d816358fdb6abad250917372"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoWidget.html#a50c53f68d816358fdb6abad250917372">onNanoDisplay</a> ()=0</td></tr>
<tr class="separator:a50c53f68d816358fdb6abad250917372"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_classWidget"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classWidget')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classWidget.html">Widget</a></td></tr>
<tr class="memitem:a9fa874aede538b41348f1029524aea11 inherit pro_methods_classWidget"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a9fa874aede538b41348f1029524aea11">onKeyboard</a> (const <a class="el" href="structWidget_1_1KeyboardEvent.html">KeyboardEvent</a> &amp;)</td></tr>
<tr class="separator:a9fa874aede538b41348f1029524aea11 inherit pro_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3b42652fcb2f95c6f86bdd43a1727507 inherit pro_methods_classWidget"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a3b42652fcb2f95c6f86bdd43a1727507">onSpecial</a> (const <a class="el" href="structWidget_1_1SpecialEvent.html">SpecialEvent</a> &amp;)</td></tr>
<tr class="separator:a3b42652fcb2f95c6f86bdd43a1727507 inherit pro_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a097ec1d56a06bdc9e0a4e54880def378 inherit pro_methods_classWidget"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a097ec1d56a06bdc9e0a4e54880def378">onMouse</a> (const <a class="el" href="structWidget_1_1MouseEvent.html">MouseEvent</a> &amp;)</td></tr>
<tr class="separator:a097ec1d56a06bdc9e0a4e54880def378 inherit pro_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a655569fb78a598652e9f24cefa1fe4a5 inherit pro_methods_classWidget"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a655569fb78a598652e9f24cefa1fe4a5">onMotion</a> (const <a class="el" href="structWidget_1_1MotionEvent.html">MotionEvent</a> &amp;)</td></tr>
<tr class="separator:a655569fb78a598652e9f24cefa1fe4a5 inherit pro_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0d78d28bd4a98c3a016a38091b2d4185 inherit pro_methods_classWidget"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a0d78d28bd4a98c3a016a38091b2d4185">onScroll</a> (const <a class="el" href="structWidget_1_1ScrollEvent.html">ScrollEvent</a> &amp;)</td></tr>
<tr class="separator:a0d78d28bd4a98c3a016a38091b2d4185 inherit pro_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acc0365ec4b9245bdffb8d0285be55dea inherit pro_methods_classWidget"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#acc0365ec4b9245bdffb8d0285be55dea">onResize</a> (const <a class="el" href="structWidget_1_1ResizeEvent.html">ResizeEvent</a> &amp;)</td></tr>
<tr class="separator:acc0365ec4b9245bdffb8d0285be55dea inherit pro_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa92462db80ed1dc8334910038cd262cc inherit pro_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#aa92462db80ed1dc8334910038cd262cc">setNeedsFullViewport</a> (bool yesNo) noexcept</td></tr>
<tr class="separator:aa92462db80ed1dc8334910038cd262cc inherit pro_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2ce358088e8f3b65621afd02c675bad8 inherit pro_methods_classWidget"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classWidget.html#a2ce358088e8f3b65621afd02c675bad8">setNeedsScaling</a> (bool yesNo) noexcept</td></tr>
<tr class="separator:a2ce358088e8f3b65621afd02c675bad8 inherit pro_methods_classWidget"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pub_types_classNanoVG"><td colspan="2" onclick="javascript:toggleInherit('pub_types_classNanoVG')"><img src="closed.png" alt="-"/>&#160;Public Types inherited from <a class="el" href="classNanoVG.html">NanoVG</a></td></tr>
<tr class="memitem:aef0fef7702b2af6ea0eeceeb6d03d5e1 inherit pub_types_classNanoVG"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aef0fef7702b2af6ea0eeceeb6d03d5e1"></a>enum &#160;</td><td class="memItemRight" valign="bottom"><b>Align</b> { <br />
&#160;&#160;<b>ALIGN_LEFT</b> = 1 &lt;&lt; 0,
<b>ALIGN_CENTER</b> = 1 &lt;&lt; 1,
<b>ALIGN_RIGHT</b> = 1 &lt;&lt; 2,
<b>ALIGN_TOP</b> = 1 &lt;&lt; 3,
<br />
&#160;&#160;<b>ALIGN_MIDDLE</b> = 1 &lt;&lt; 4,
<b>ALIGN_BOTTOM</b> = 1 &lt;&lt; 5,
<b>ALIGN_BASELINE</b> = 1 &lt;&lt; 6
<br />
}</td></tr>
<tr class="separator:aef0fef7702b2af6ea0eeceeb6d03d5e1 inherit pub_types_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad372107ec60ac33f548caf5020e259d8 inherit pub_types_classNanoVG"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad372107ec60ac33f548caf5020e259d8"></a>enum &#160;</td><td class="memItemRight" valign="bottom"><b>Alpha</b> { <b>STRAIGHT_ALPHA</b>,
<b>PREMULTIPLIED_ALPHA</b>
}</td></tr>
<tr class="separator:ad372107ec60ac33f548caf5020e259d8 inherit pub_types_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2bd8c4bfd8ab252a81c4c33d49ed6efc inherit pub_types_classNanoVG"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2bd8c4bfd8ab252a81c4c33d49ed6efc"></a>enum &#160;</td><td class="memItemRight" valign="bottom"><b>LineCap</b> { <br />
&#160;&#160;<b>BUTT</b>,
<b>ROUND</b>,
<b>SQUARE</b>,
<b>BEVEL</b>,
<br />
&#160;&#160;<b>MITER</b>
<br />
}</td></tr>
<tr class="separator:a2bd8c4bfd8ab252a81c4c33d49ed6efc inherit pub_types_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aad6677b0564bfe907ba143578bbde5bf inherit pub_types_classNanoVG"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aad6677b0564bfe907ba143578bbde5bf"></a>enum &#160;</td><td class="memItemRight" valign="bottom"><b>PatternRepeat</b> { <b>REPEAT_NONE</b> = 0x0,
<b>REPEAT_X</b> = 0x1,
<b>REPEAT_Y</b> = 0x2
}</td></tr>
<tr class="separator:aad6677b0564bfe907ba143578bbde5bf inherit pub_types_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9e709cdf2bba4c4c0872684ee39f14b0 inherit pub_types_classNanoVG"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9e709cdf2bba4c4c0872684ee39f14b0"></a>enum &#160;</td><td class="memItemRight" valign="bottom"><b>Solidity</b> { <b>SOLID</b> = 1,
<b>HOLE</b> = 2
}</td></tr>
<tr class="separator:a9e709cdf2bba4c4c0872684ee39f14b0 inherit pub_types_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a34d4f52f08f69ca1efcecd6699f9d434 inherit pub_types_classNanoVG"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a34d4f52f08f69ca1efcecd6699f9d434"></a>enum &#160;</td><td class="memItemRight" valign="bottom"><b>Winding</b> { <b>CCW</b> = 1,
<b>CW</b> = 2
}</td></tr>
<tr class="separator:a34d4f52f08f69ca1efcecd6699f9d434 inherit pub_types_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab3095a2dda8a9f0293f3451687eb9d7d inherit pub_types_classNanoVG"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab3095a2dda8a9f0293f3451687eb9d7d"></a>
typedef int&#160;</td><td class="memItemRight" valign="bottom"><b>FontId</b></td></tr>
<tr class="separator:ab3095a2dda8a9f0293f3451687eb9d7d inherit pub_types_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_static_methods_classNanoVG"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_classNanoVG')"><img src="closed.png" alt="-"/>&#160;Static Public Member Functions inherited from <a class="el" href="classNanoVG.html">NanoVG</a></td></tr>
<tr class="memitem:a81c8b60a87be8a8d4a5efce8eeaf1915 inherit pub_static_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a81c8b60a87be8a8d4a5efce8eeaf1915">transformIdentity</a> (float dst[6])</td></tr>
<tr class="separator:a81c8b60a87be8a8d4a5efce8eeaf1915 inherit pub_static_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a022e3cdfa06f5bc9103b37dfa64adb2c inherit pub_static_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a022e3cdfa06f5bc9103b37dfa64adb2c">transformTranslate</a> (float dst[6], float tx, float ty)</td></tr>
<tr class="separator:a022e3cdfa06f5bc9103b37dfa64adb2c inherit pub_static_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a94c1f78baadff1d6c6a5a4d52dd770d7 inherit pub_static_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a94c1f78baadff1d6c6a5a4d52dd770d7">transformScale</a> (float dst[6], float sx, float sy)</td></tr>
<tr class="separator:a94c1f78baadff1d6c6a5a4d52dd770d7 inherit pub_static_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a43e16d0f94dc0a49dae5128d69e75e3c inherit pub_static_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a43e16d0f94dc0a49dae5128d69e75e3c">transformRotate</a> (float dst[6], float a)</td></tr>
<tr class="separator:a43e16d0f94dc0a49dae5128d69e75e3c inherit pub_static_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a178b6b9a8c755cda91ccba2b6239d279 inherit pub_static_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a178b6b9a8c755cda91ccba2b6239d279">transformSkewX</a> (float dst[6], float a)</td></tr>
<tr class="separator:a178b6b9a8c755cda91ccba2b6239d279 inherit pub_static_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af23e7f6a6056e5efe72944fa68767704 inherit pub_static_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#af23e7f6a6056e5efe72944fa68767704">transformSkewY</a> (float dst[6], float a)</td></tr>
<tr class="separator:af23e7f6a6056e5efe72944fa68767704 inherit pub_static_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3ac9aade102afb3a4f84966f0727c6c6 inherit pub_static_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a3ac9aade102afb3a4f84966f0727c6c6">transformMultiply</a> (float dst[6], const float src[6])</td></tr>
<tr class="separator:a3ac9aade102afb3a4f84966f0727c6c6 inherit pub_static_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1416fbff2a0ecada90b2d9852bfbaf42 inherit pub_static_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a1416fbff2a0ecada90b2d9852bfbaf42">transformPremultiply</a> (float dst[6], const float src[6])</td></tr>
<tr class="separator:a1416fbff2a0ecada90b2d9852bfbaf42 inherit pub_static_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac5692f82bcac4858f44d9fd0df287cad inherit pub_static_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#ac5692f82bcac4858f44d9fd0df287cad">transformInverse</a> (float dst[6], const float src[6])</td></tr>
<tr class="separator:ac5692f82bcac4858f44d9fd0df287cad inherit pub_static_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae2e49763ab7f503016c0dede0dbfd3cc inherit pub_static_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">static void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#ae2e49763ab7f503016c0dede0dbfd3cc">transformPoint</a> (float &amp;dstx, float &amp;dsty, const float xform[6], float srcx, float srcy)</td></tr>
<tr class="separator:ae2e49763ab7f503016c0dede0dbfd3cc inherit pub_static_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae3913bdf0efc2f5504422f558dca2c45 inherit pub_static_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">static float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#ae3913bdf0efc2f5504422f558dca2c45">degToRad</a> (float deg)</td></tr>
<tr class="separator:ae3913bdf0efc2f5504422f558dca2c45 inherit pub_static_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a175f4c41e0d89ae5d8bdb65e5580c637 inherit pub_static_methods_classNanoVG"><td class="memItemLeft" align="right" valign="top">static float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classNanoVG.html#a175f4c41e0d89ae5d8bdb65e5580c637">radToDeg</a> (float rad)</td></tr>
<tr class="separator:a175f4c41e0d89ae5d8bdb65e5580c637 inherit pub_static_methods_classNanoVG"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p><a class="el" href="classNanoVG.html">NanoVG</a> <a class="el" href="classWidget.html">Widget</a> class.</p>
<p>This class implements the <a class="el" href="classNanoVG.html">NanoVG</a> drawing API inside a DGL <a class="el" href="classWidget.html">Widget</a>. The drawing function onDisplay() is implemented internally but a new <a class="el" href="classNanoWidget.html#a50c53f68d816358fdb6abad250917372">onNanoDisplay()</a> needs to be overridden instead. </p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="af1f8b45101bbe1017b88893a699b4f86"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">NanoWidget::NanoWidget </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classWindow.html">Window</a> &amp;&#160;</td>
<td class="paramname"><em>parent</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Constructor. </p>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a50c53f68d816358fdb6abad250917372"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void NanoWidget::onNanoDisplay </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>New virtual onDisplay function. </p><dl class="section see"><dt>See also</dt><dd>onDisplay </dd></dl>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>dgl/<a class="el" href="NanoVG_8hpp_source.html">NanoVG.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

BIN
classNanoWidget.png View File

Before After
Width: 170  |  Height: 80  |  Size: 624B

+ 27
- 27
classPlugin-members.html View File

@@ -89,37 +89,37 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');

<p>This is the complete list of members for <a class="el" href="classPlugin.html">Plugin</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classPlugin.html#a15df4876febf5909fe040d401fc704d0">d_activate</a>()</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classPlugin.html#a2c6ac454e24b667d54eaaf63da252627">d_bufferSizeChanged</a>(uint32_t newBufferSize)</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classPlugin.html#a5c008d623e558e7266aecaff22fc787a">d_deactivate</a>()</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classPlugin.html#aa0feb17c3dcf13a106505eb6d6b2a3ac">d_getBufferSize</a>() const noexcept</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classPlugin.html#ae512b28d1b274a055de33812cf094d81">d_getLabel</a>() const =0</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classPlugin.html#ae9333c170accfd2a237448a4579d5fef">d_getLicense</a>() const =0</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classPlugin.html#a0eaf2f46f04d60526622afb5a86e026c">d_getMaker</a>() const =0</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classPlugin.html#a0f8fb7aa5ab05ba246e158b1024dd031">d_getName</a>() const </td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classPlugin.html#af088f855761b67489f19f42fbb585088">d_getParameterValue</a>(uint32_t index) const =0</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classPlugin.html#ace888940905e8875284e07c52bf7404f">d_getSampleRate</a>() const noexcept</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classPlugin.html#ade0a082a3a2936286537a04f4b972225">d_getTimePosition</a>() const noexcept</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classPlugin.html#aea77208248b36c7b8c9dc57ee68ae97a">d_getUniqueId</a>() const =0</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classPlugin.html#af9251f8d90e4df43c6387bd111487e4e">d_getVersion</a>() const =0</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classPlugin.html#a5ddc59a0dbbef9c7d7cda5f291431769">d_initAudioPort</a>(bool input, uint32_t index, AudioPort &amp;port)</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classPlugin.html#a3f93a8eb97db3dc9984c357c5ffca5ec">d_initParameter</a>(uint32_t index, Parameter &amp;parameter)=0</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classPlugin.html#a8a1792b7c5c6a3fd9cd626c7156ec3b6">d_initProgramName</a>(uint32_t index, d_string &amp;programName)=0</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classPlugin.html#a65f9f9d4a30b0a56dfa42703c0b4db76">d_initState</a>(uint32_t index, d_string &amp;stateKey, d_string &amp;defaultStateValue)=0</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classPlugin.html#af67102a7c6d19a8530ce0e3293e55667">d_run</a>(const float **inputs, float **outputs, uint32_t frames, const MidiEvent *midiEvents, uint32_t midiEventCount)=0</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classPlugin.html#a469b53e1c1417a32d766cf96d1b3c45e">d_sampleRateChanged</a>(double newSampleRate)</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classPlugin.html#a7816b45ffb52b0a6308cabb792b1a56f">d_setLatency</a>(uint32_t frames) noexcept</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classPlugin.html#a4cdd613f58a013429094700f3d83904a">d_setParameterValue</a>(uint32_t index, float value)=0</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classPlugin.html#a1d001e50781b35df23f6d9a218f5f804">d_setProgram</a>(uint32_t index)=0</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classPlugin.html#ad9c46a36cab96f52a0370043093bca68">d_setState</a>(const char *key, const char *value)=0</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classPlugin.html#afa10aea18e4036b4a7487f2779d92e0f">d_writeMidiEvent</a>(const MidiEvent &amp;midiEvent) noexcept</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classPlugin.html#a3096e491376cb9378be55915d748de57">Plugin</a>(const uint32_t parameterCount, const uint32_t programCount, const uint32_t stateCount)</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>PluginExporter</b> (defined in <a class="el" href="classPlugin.html">Plugin</a>)</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classPlugin.html#a1c215b23ee7fcc9b49edbd91d985a4e1">activated</a>()</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classPlugin.html#a9f6c8ad6b054056649d0250e527e1297">bufferSizeChanged</a>(uint32_t newBufferSize)</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classPlugin.html#a6f5d5d235ba624d082daed41a7af8fdd">deactivated</a>()</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classPlugin.html#a2643e638f62cfd4990247ec66bed60d2">getBufferSize</a>() const noexcept</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classPlugin.html#a00f7945c16149db6845fbcc2af729f4f">getLabel</a>() const =0</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classPlugin.html#a686a3c92a376a185d6fd97efd59125d1">getLicense</a>() const =0</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classPlugin.html#a955832840de786a7a22798f0ef451c5d">getMaker</a>() const =0</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classPlugin.html#a181bc1b9e4094921da788640955a3018">getName</a>() const </td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classPlugin.html#a2d1da98c90568bb4547662bc4f02c31f">getParameterValue</a>(uint32_t index) const =0</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classPlugin.html#a3e162cfe8f1c52bf09805fd327bcc3c4">getSampleRate</a>() const noexcept</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classPlugin.html#ae85d602c430b1a4361a88d714d3a42c1">getTimePosition</a>() const noexcept</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classPlugin.html#ad6ff8c80227d5ceebd40b96f3be29a66">getUniqueId</a>() const =0</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classPlugin.html#abae540dd93caf4834270358a8aad334a">getVersion</a>() const =0</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classPlugin.html#a75f30935198a0acba25f4ea92af72dc4">initAudioPort</a>(bool input, uint32_t index, AudioPort &amp;port)</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classPlugin.html#a5b0ec59527a1c2f4b01f17fc8c18ea8b">initParameter</a>(uint32_t index, Parameter &amp;parameter)=0</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classPlugin.html#a54d66af3111541b7c118f9749ef0231b">initProgramName</a>(uint32_t index, String &amp;programName)=0</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classPlugin.html#ae301a970a8b5cff3c7ecef927ea20080">initState</a>(uint32_t index, String &amp;stateKey, String &amp;defaultStateValue)=0</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classPlugin.html#a3096e491376cb9378be55915d748de57">Plugin</a>(const uint32_t parameterCount, const uint32_t programCount, const uint32_t stateCount)</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>PluginExporter</b> (defined in <a class="el" href="classPlugin.html">Plugin</a>)</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
<tr><td class="entry"><a class="el" href="classPlugin.html#a0a969c78f8455ac6ba65fa42e8c498f6">run</a>(const float **inputs, float **outputs, uint32_t frames, const MidiEvent *midiEvents, uint32_t midiEventCount)=0</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classPlugin.html#a2fcbfa1893f44e661d0d8cd53391dadc">sampleRateChanged</a>(double newSampleRate)</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classPlugin.html#a2a70c4ec55d74d9bc26862975d8df8a7">setLatency</a>(uint32_t frames) noexcept</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classPlugin.html#a6911a881fabb9eca9daf0eadbaad8599">setParameterValue</a>(uint32_t index, float value)=0</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classPlugin.html#af2bfc89eec6b984c17ed9e5b3aab8a20">setProgram</a>(uint32_t index)=0</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classPlugin.html#a3c6aeb79775ecf24ffbfc7dafd3d449b">setState</a>(const String &amp;key, const String &amp;value)=0</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classPlugin.html#a0467eef817ac130cbbe1c0fbe09660c6">writeMidiEvent</a>(const MidiEvent &amp;midiEvent) noexcept</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classPlugin.html#a89814b8f0b1c91e49140d42eb8331383">~Plugin</a>()</td><td class="entry"><a class="el" href="classPlugin.html">Plugin</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Fri Apr 24 2015 00:23:57 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>


+ 128
- 119
classPlugin.html View File

@@ -88,7 +88,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<a href="#friends">Friends</a> &#124;
<a href="classPlugin-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">Plugin Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div>
<div class="title">Plugin Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span><div class="ingroups"><a class="el" href="group__MainClasses.html">Main Classes</a></div></div> </div>
</div><!--header-->
<div class="contents">

@@ -100,57 +100,57 @@ Public Member Functions</h2></td></tr>
<tr class="separator:a3096e491376cb9378be55915d748de57"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a89814b8f0b1c91e49140d42eb8331383"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#a89814b8f0b1c91e49140d42eb8331383">~Plugin</a> ()</td></tr>
<tr class="separator:a89814b8f0b1c91e49140d42eb8331383"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa0feb17c3dcf13a106505eb6d6b2a3ac"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#aa0feb17c3dcf13a106505eb6d6b2a3ac">d_getBufferSize</a> () const noexcept</td></tr>
<tr class="separator:aa0feb17c3dcf13a106505eb6d6b2a3ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ace888940905e8875284e07c52bf7404f"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#ace888940905e8875284e07c52bf7404f">d_getSampleRate</a> () const noexcept</td></tr>
<tr class="separator:ace888940905e8875284e07c52bf7404f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ade0a082a3a2936286537a04f4b972225"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structTimePosition.html">TimePosition</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#ade0a082a3a2936286537a04f4b972225">d_getTimePosition</a> () const noexcept</td></tr>
<tr class="separator:ade0a082a3a2936286537a04f4b972225"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7816b45ffb52b0a6308cabb792b1a56f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#a7816b45ffb52b0a6308cabb792b1a56f">d_setLatency</a> (uint32_t frames) noexcept</td></tr>
<tr class="separator:a7816b45ffb52b0a6308cabb792b1a56f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afa10aea18e4036b4a7487f2779d92e0f"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#afa10aea18e4036b4a7487f2779d92e0f">d_writeMidiEvent</a> (const <a class="el" href="structMidiEvent.html">MidiEvent</a> &amp;midiEvent) noexcept</td></tr>
<tr class="separator:afa10aea18e4036b4a7487f2779d92e0f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2643e638f62cfd4990247ec66bed60d2"><td class="memItemLeft" align="right" valign="top">uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#a2643e638f62cfd4990247ec66bed60d2">getBufferSize</a> () const noexcept</td></tr>
<tr class="separator:a2643e638f62cfd4990247ec66bed60d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3e162cfe8f1c52bf09805fd327bcc3c4"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#a3e162cfe8f1c52bf09805fd327bcc3c4">getSampleRate</a> () const noexcept</td></tr>
<tr class="separator:a3e162cfe8f1c52bf09805fd327bcc3c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae85d602c430b1a4361a88d714d3a42c1"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structTimePosition.html">TimePosition</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#ae85d602c430b1a4361a88d714d3a42c1">getTimePosition</a> () const noexcept</td></tr>
<tr class="separator:ae85d602c430b1a4361a88d714d3a42c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2a70c4ec55d74d9bc26862975d8df8a7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#a2a70c4ec55d74d9bc26862975d8df8a7">setLatency</a> (uint32_t frames) noexcept</td></tr>
<tr class="separator:a2a70c4ec55d74d9bc26862975d8df8a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0467eef817ac130cbbe1c0fbe09660c6"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#a0467eef817ac130cbbe1c0fbe09660c6">writeMidiEvent</a> (const <a class="el" href="structMidiEvent.html">MidiEvent</a> &amp;midiEvent) noexcept</td></tr>
<tr class="separator:a0467eef817ac130cbbe1c0fbe09660c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:a0f8fb7aa5ab05ba246e158b1024dd031"><td class="memItemLeft" align="right" valign="top">virtual const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#a0f8fb7aa5ab05ba246e158b1024dd031">d_getName</a> () const </td></tr>
<tr class="separator:a0f8fb7aa5ab05ba246e158b1024dd031"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae512b28d1b274a055de33812cf094d81"><td class="memItemLeft" align="right" valign="top">virtual const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#ae512b28d1b274a055de33812cf094d81">d_getLabel</a> () const =0</td></tr>
<tr class="separator:ae512b28d1b274a055de33812cf094d81"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0eaf2f46f04d60526622afb5a86e026c"><td class="memItemLeft" align="right" valign="top">virtual const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#a0eaf2f46f04d60526622afb5a86e026c">d_getMaker</a> () const =0</td></tr>
<tr class="separator:a0eaf2f46f04d60526622afb5a86e026c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae9333c170accfd2a237448a4579d5fef"><td class="memItemLeft" align="right" valign="top">virtual const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#ae9333c170accfd2a237448a4579d5fef">d_getLicense</a> () const =0</td></tr>
<tr class="separator:ae9333c170accfd2a237448a4579d5fef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af9251f8d90e4df43c6387bd111487e4e"><td class="memItemLeft" align="right" valign="top">virtual uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#af9251f8d90e4df43c6387bd111487e4e">d_getVersion</a> () const =0</td></tr>
<tr class="separator:af9251f8d90e4df43c6387bd111487e4e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aea77208248b36c7b8c9dc57ee68ae97a"><td class="memItemLeft" align="right" valign="top">virtual int64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#aea77208248b36c7b8c9dc57ee68ae97a">d_getUniqueId</a> () const =0</td></tr>
<tr class="separator:aea77208248b36c7b8c9dc57ee68ae97a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5ddc59a0dbbef9c7d7cda5f291431769"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#a5ddc59a0dbbef9c7d7cda5f291431769">d_initAudioPort</a> (bool input, uint32_t index, <a class="el" href="structAudioPort.html">AudioPort</a> &amp;port)</td></tr>
<tr class="separator:a5ddc59a0dbbef9c7d7cda5f291431769"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3f93a8eb97db3dc9984c357c5ffca5ec"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#a3f93a8eb97db3dc9984c357c5ffca5ec">d_initParameter</a> (uint32_t index, <a class="el" href="structParameter.html">Parameter</a> &amp;parameter)=0</td></tr>
<tr class="separator:a3f93a8eb97db3dc9984c357c5ffca5ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8a1792b7c5c6a3fd9cd626c7156ec3b6"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#a8a1792b7c5c6a3fd9cd626c7156ec3b6">d_initProgramName</a> (uint32_t index, d_string &amp;programName)=0</td></tr>
<tr class="separator:a8a1792b7c5c6a3fd9cd626c7156ec3b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a65f9f9d4a30b0a56dfa42703c0b4db76"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#a65f9f9d4a30b0a56dfa42703c0b4db76">d_initState</a> (uint32_t index, d_string &amp;stateKey, d_string &amp;defaultStateValue)=0</td></tr>
<tr class="separator:a65f9f9d4a30b0a56dfa42703c0b4db76"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af088f855761b67489f19f42fbb585088"><td class="memItemLeft" align="right" valign="top">virtual float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#af088f855761b67489f19f42fbb585088">d_getParameterValue</a> (uint32_t index) const =0</td></tr>
<tr class="separator:af088f855761b67489f19f42fbb585088"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4cdd613f58a013429094700f3d83904a"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#a4cdd613f58a013429094700f3d83904a">d_setParameterValue</a> (uint32_t index, float value)=0</td></tr>
<tr class="separator:a4cdd613f58a013429094700f3d83904a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1d001e50781b35df23f6d9a218f5f804"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#a1d001e50781b35df23f6d9a218f5f804">d_setProgram</a> (uint32_t index)=0</td></tr>
<tr class="separator:a1d001e50781b35df23f6d9a218f5f804"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad9c46a36cab96f52a0370043093bca68"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#ad9c46a36cab96f52a0370043093bca68">d_setState</a> (const char *key, const char *value)=0</td></tr>
<tr class="separator:ad9c46a36cab96f52a0370043093bca68"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a15df4876febf5909fe040d401fc704d0"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#a15df4876febf5909fe040d401fc704d0">d_activate</a> ()</td></tr>
<tr class="separator:a15df4876febf5909fe040d401fc704d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5c008d623e558e7266aecaff22fc787a"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#a5c008d623e558e7266aecaff22fc787a">d_deactivate</a> ()</td></tr>
<tr class="separator:a5c008d623e558e7266aecaff22fc787a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af67102a7c6d19a8530ce0e3293e55667"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#af67102a7c6d19a8530ce0e3293e55667">d_run</a> (const float **inputs, float **outputs, uint32_t frames, const <a class="el" href="structMidiEvent.html">MidiEvent</a> *midiEvents, uint32_t midiEventCount)=0</td></tr>
<tr class="separator:af67102a7c6d19a8530ce0e3293e55667"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2c6ac454e24b667d54eaaf63da252627"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#a2c6ac454e24b667d54eaaf63da252627">d_bufferSizeChanged</a> (uint32_t newBufferSize)</td></tr>
<tr class="separator:a2c6ac454e24b667d54eaaf63da252627"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a469b53e1c1417a32d766cf96d1b3c45e"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#a469b53e1c1417a32d766cf96d1b3c45e">d_sampleRateChanged</a> (double newSampleRate)</td></tr>
<tr class="separator:a469b53e1c1417a32d766cf96d1b3c45e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a181bc1b9e4094921da788640955a3018"><td class="memItemLeft" align="right" valign="top">virtual const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#a181bc1b9e4094921da788640955a3018">getName</a> () const </td></tr>
<tr class="separator:a181bc1b9e4094921da788640955a3018"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a00f7945c16149db6845fbcc2af729f4f"><td class="memItemLeft" align="right" valign="top">virtual const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#a00f7945c16149db6845fbcc2af729f4f">getLabel</a> () const =0</td></tr>
<tr class="separator:a00f7945c16149db6845fbcc2af729f4f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a955832840de786a7a22798f0ef451c5d"><td class="memItemLeft" align="right" valign="top">virtual const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#a955832840de786a7a22798f0ef451c5d">getMaker</a> () const =0</td></tr>
<tr class="separator:a955832840de786a7a22798f0ef451c5d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a686a3c92a376a185d6fd97efd59125d1"><td class="memItemLeft" align="right" valign="top">virtual const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#a686a3c92a376a185d6fd97efd59125d1">getLicense</a> () const =0</td></tr>
<tr class="separator:a686a3c92a376a185d6fd97efd59125d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abae540dd93caf4834270358a8aad334a"><td class="memItemLeft" align="right" valign="top">virtual uint32_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#abae540dd93caf4834270358a8aad334a">getVersion</a> () const =0</td></tr>
<tr class="separator:abae540dd93caf4834270358a8aad334a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad6ff8c80227d5ceebd40b96f3be29a66"><td class="memItemLeft" align="right" valign="top">virtual int64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#ad6ff8c80227d5ceebd40b96f3be29a66">getUniqueId</a> () const =0</td></tr>
<tr class="separator:ad6ff8c80227d5ceebd40b96f3be29a66"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a75f30935198a0acba25f4ea92af72dc4"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#a75f30935198a0acba25f4ea92af72dc4">initAudioPort</a> (bool input, uint32_t index, <a class="el" href="structAudioPort.html">AudioPort</a> &amp;port)</td></tr>
<tr class="separator:a75f30935198a0acba25f4ea92af72dc4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5b0ec59527a1c2f4b01f17fc8c18ea8b"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#a5b0ec59527a1c2f4b01f17fc8c18ea8b">initParameter</a> (uint32_t index, <a class="el" href="structParameter.html">Parameter</a> &amp;parameter)=0</td></tr>
<tr class="separator:a5b0ec59527a1c2f4b01f17fc8c18ea8b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a54d66af3111541b7c118f9749ef0231b"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#a54d66af3111541b7c118f9749ef0231b">initProgramName</a> (uint32_t index, String &amp;programName)=0</td></tr>
<tr class="separator:a54d66af3111541b7c118f9749ef0231b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae301a970a8b5cff3c7ecef927ea20080"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#ae301a970a8b5cff3c7ecef927ea20080">initState</a> (uint32_t index, String &amp;stateKey, String &amp;defaultStateValue)=0</td></tr>
<tr class="separator:ae301a970a8b5cff3c7ecef927ea20080"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2d1da98c90568bb4547662bc4f02c31f"><td class="memItemLeft" align="right" valign="top">virtual float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#a2d1da98c90568bb4547662bc4f02c31f">getParameterValue</a> (uint32_t index) const =0</td></tr>
<tr class="separator:a2d1da98c90568bb4547662bc4f02c31f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6911a881fabb9eca9daf0eadbaad8599"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#a6911a881fabb9eca9daf0eadbaad8599">setParameterValue</a> (uint32_t index, float value)=0</td></tr>
<tr class="separator:a6911a881fabb9eca9daf0eadbaad8599"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af2bfc89eec6b984c17ed9e5b3aab8a20"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#af2bfc89eec6b984c17ed9e5b3aab8a20">setProgram</a> (uint32_t index)=0</td></tr>
<tr class="separator:af2bfc89eec6b984c17ed9e5b3aab8a20"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3c6aeb79775ecf24ffbfc7dafd3d449b"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#a3c6aeb79775ecf24ffbfc7dafd3d449b">setState</a> (const String &amp;key, const String &amp;value)=0</td></tr>
<tr class="separator:a3c6aeb79775ecf24ffbfc7dafd3d449b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1c215b23ee7fcc9b49edbd91d985a4e1"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#a1c215b23ee7fcc9b49edbd91d985a4e1">activated</a> ()</td></tr>
<tr class="separator:a1c215b23ee7fcc9b49edbd91d985a4e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6f5d5d235ba624d082daed41a7af8fdd"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#a6f5d5d235ba624d082daed41a7af8fdd">deactivated</a> ()</td></tr>
<tr class="separator:a6f5d5d235ba624d082daed41a7af8fdd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0a969c78f8455ac6ba65fa42e8c498f6"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#a0a969c78f8455ac6ba65fa42e8c498f6">run</a> (const float **inputs, float **outputs, uint32_t frames, const <a class="el" href="structMidiEvent.html">MidiEvent</a> *midiEvents, uint32_t midiEventCount)=0</td></tr>
<tr class="separator:a0a969c78f8455ac6ba65fa42e8c498f6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9f6c8ad6b054056649d0250e527e1297"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#a9f6c8ad6b054056649d0250e527e1297">bufferSizeChanged</a> (uint32_t newBufferSize)</td></tr>
<tr class="separator:a9f6c8ad6b054056649d0250e527e1297"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2fcbfa1893f44e661d0d8cd53391dadc"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPlugin.html#a2fcbfa1893f44e661d0d8cd53391dadc">sampleRateChanged</a> (double newSampleRate)</td></tr>
<tr class="separator:a2fcbfa1893f44e661d0d8cd53391dadc"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
Friends</h2></td></tr>
@@ -160,13 +160,22 @@ class&#160;</td><td class="memItemRight" valign="bottom"><b>PluginExporter</b></
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>DPF <a class="el" href="classPlugin.html">Plugin</a> class from where plugin instances are created.</p>
<p>The public methods (Host state) are called from the plugin to get or set host information. They can be called from a plugin instance at anytime unless stated otherwise. All other methods are to be implemented by the plugin and will be called by the host.</p>
<p>Shortly after a plugin instance is created, the various d_init* functions will be called by the host. Host will call <a class="el" href="classPlugin.html#a15df4876febf5909fe040d401fc704d0">d_activate()</a> before <a class="el" href="classPlugin.html#af67102a7c6d19a8530ce0e3293e55667">d_run()</a>, and <a class="el" href="classPlugin.html#a5c008d623e558e7266aecaff22fc787a">d_deactivate()</a> before the plugin instance is destroyed. The host may call deactivate right after activate and vice-versa, but never activate/deactivate consecutively. There is no limit on how many times <a class="el" href="classPlugin.html#af67102a7c6d19a8530ce0e3293e55667">d_run()</a> is called, only that activate/deactivate will be called in between.</p>
<p>The buffer size and sample rate values will remain constant between activate and deactivate. Buffer size is only a hint though, the host might call <a class="el" href="classPlugin.html#af67102a7c6d19a8530ce0e3293e55667">d_run()</a> with a higher or lower number of frames.</p>
<p>The public methods (Host state) are called from the plugin to get or set host information.<br />
They can be called from a plugin instance at anytime unless stated otherwise.<br />
All other methods are to be implemented by the plugin and will be called by the host.</p>
<p>Shortly after a plugin instance is created, the various init* functions will be called by the host.<br />
Host will call activate() before <a class="el" href="classPlugin.html#a0a969c78f8455ac6ba65fa42e8c498f6">run()</a>, and deactivate() before the plugin instance is destroyed.<br />
The host may call deactivate right after activate and vice-versa, but never activate/deactivate consecutively.<br />
There is no limit on how many times <a class="el" href="classPlugin.html#a0a969c78f8455ac6ba65fa42e8c498f6">run()</a> is called, only that activate/deactivate will be called in between.</p>
<p>The buffer size and sample rate values will remain constant between activate and deactivate.<br />
Buffer size is only a hint though, the host might call <a class="el" href="classPlugin.html#a0a969c78f8455ac6ba65fa42e8c498f6">run()</a> with a higher or lower number of frames.</p>
<p>Some of this class functions are only available according to some macros.</p>
<p>DISTRHO_PLUGIN_WANT_PROGRAMS activates program related features. When enabled you need to implement <a class="el" href="classPlugin.html#a8a1792b7c5c6a3fd9cd626c7156ec3b6">d_initProgramName()</a> and <a class="el" href="classPlugin.html#a1d001e50781b35df23f6d9a218f5f804">d_setProgram()</a>.</p>
<p>DISTRHO_PLUGIN_WANT_STATE activates internal state features. When enabled you need to implement d_initStateKey() and <a class="el" href="classPlugin.html#ad9c46a36cab96f52a0370043093bca68">d_setState()</a>.</p>
<p>The process function <a class="el" href="classPlugin.html#af67102a7c6d19a8530ce0e3293e55667">d_run()</a> changes wherever DISTRHO_PLUGIN_WANT_MIDI_INPUT is enabled or not. When enabled it provides midi input events. </p>
<p>DISTRHO_PLUGIN_WANT_PROGRAMS activates program related features.<br />
When enabled you need to implement <a class="el" href="classPlugin.html#a54d66af3111541b7c118f9749ef0231b">initProgramName()</a> and <a class="el" href="classPlugin.html#af2bfc89eec6b984c17ed9e5b3aab8a20">setProgram()</a>.</p>
<p>DISTRHO_PLUGIN_WANT_STATE activates internal state features.<br />
When enabled you need to implement initStateKey() and <a class="el" href="classPlugin.html#a3c6aeb79775ecf24ffbfc7dafd3d449b">setState()</a>.</p>
<p>The process function <a class="el" href="classPlugin.html#a0a969c78f8455ac6ba65fa42e8c498f6">run()</a> changes wherever DISTRHO_PLUGIN_WANT_MIDI_INPUT is enabled or not.<br />
When enabled it provides midi input events. </p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a3096e491376cb9378be55915d748de57"></a>
<div class="memitem">
@@ -226,7 +235,7 @@ class&#160;</td><td class="memItemRight" valign="bottom"><b>PluginExporter</b></
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="aa0feb17c3dcf13a106505eb6d6b2a3ac"></a>
<a class="anchor" id="a2643e638f62cfd4990247ec66bed60d2"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
@@ -234,7 +243,7 @@ class&#160;</td><td class="memItemRight" valign="bottom"><b>PluginExporter</b></
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">uint32_t Plugin::d_getBufferSize </td>
<td class="memname">uint32_t Plugin::getBufferSize </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
@@ -246,12 +255,12 @@ class&#160;</td><td class="memItemRight" valign="bottom"><b>PluginExporter</b></
</tr>
</table>
</div><div class="memdoc">
<p>Get the current buffer size that will probably be used during processing, in frames. This value will remain constant between activate and deactivate. </p><dl class="section note"><dt>Note</dt><dd>: This value is only a hint! Hosts might call <a class="el" href="classPlugin.html#af67102a7c6d19a8530ce0e3293e55667">d_run()</a> with a higher or lower number of frames. </dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classPlugin.html#a2c6ac454e24b667d54eaaf63da252627">d_bufferSizeChanged(uint32_t)</a> </dd></dl>
<p>Get the current buffer size that will probably be used during processing, in frames. This value will remain constant between activate and deactivate. </p><dl class="section note"><dt>Note</dt><dd>: This value is only a hint! Hosts might call <a class="el" href="classPlugin.html#a0a969c78f8455ac6ba65fa42e8c498f6">run()</a> with a higher or lower number of frames. </dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classPlugin.html#a9f6c8ad6b054056649d0250e527e1297">bufferSizeChanged(uint32_t)</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ace888940905e8875284e07c52bf7404f"></a>
<a class="anchor" id="a3e162cfe8f1c52bf09805fd327bcc3c4"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
@@ -259,7 +268,7 @@ class&#160;</td><td class="memItemRight" valign="bottom"><b>PluginExporter</b></
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">double Plugin::d_getSampleRate </td>
<td class="memname">double Plugin::getSampleRate </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
@@ -271,11 +280,11 @@ class&#160;</td><td class="memItemRight" valign="bottom"><b>PluginExporter</b></
</tr>
</table>
</div><div class="memdoc">
<p>Get the current sample rate that will be used during processing. This value will remain constant between activate and deactivate. </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="classPlugin.html#a469b53e1c1417a32d766cf96d1b3c45e">d_sampleRateChanged(double)</a> </dd></dl>
<p>Get the current sample rate that will be used during processing. This value will remain constant between activate and deactivate. </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="classPlugin.html#a2fcbfa1893f44e661d0d8cd53391dadc">sampleRateChanged(double)</a> </dd></dl>

</div>
</div>
<a class="anchor" id="ade0a082a3a2936286537a04f4b972225"></a>
<a class="anchor" id="ae85d602c430b1a4361a88d714d3a42c1"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
@@ -283,7 +292,7 @@ class&#160;</td><td class="memItemRight" valign="bottom"><b>PluginExporter</b></
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="structTimePosition.html">TimePosition</a>&amp; Plugin::d_getTimePosition </td>
<td class="memname">const <a class="el" href="structTimePosition.html">TimePosition</a>&amp; Plugin::getTimePosition </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
@@ -295,11 +304,11 @@ class&#160;</td><td class="memItemRight" valign="bottom"><b>PluginExporter</b></
</tr>
</table>
</div><div class="memdoc">
<p>Get the current host transport time position. This function should only be called during <a class="el" href="classPlugin.html#af67102a7c6d19a8530ce0e3293e55667">d_run()</a>. You can call this during other times, but the returned position is not guaranteed to be in sync. </p><dl class="section note"><dt>Note</dt><dd>: <a class="el" href="structTimePosition.html">TimePosition</a> is not supported in LADSPA and DSSI plugin formats. </dd></dl>
<p>Get the current host transport time position. This function should only be called during <a class="el" href="classPlugin.html#a0a969c78f8455ac6ba65fa42e8c498f6">run()</a>. You can call this during other times, but the returned position is not guaranteed to be in sync. </p><dl class="section note"><dt>Note</dt><dd>: <a class="el" href="structTimePosition.html">TimePosition</a> is not supported in LADSPA and DSSI plugin formats. </dd></dl>

</div>
</div>
<a class="anchor" id="a7816b45ffb52b0a6308cabb792b1a56f"></a>
<a class="anchor" id="a2a70c4ec55d74d9bc26862975d8df8a7"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
@@ -307,7 +316,7 @@ class&#160;</td><td class="memItemRight" valign="bottom"><b>PluginExporter</b></
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void Plugin::d_setLatency </td>
<td class="memname">void Plugin::setLatency </td>
<td>(</td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>frames</em></td><td>)</td>
@@ -320,11 +329,11 @@ class&#160;</td><td class="memItemRight" valign="bottom"><b>PluginExporter</b></
</tr>
</table>
</div><div class="memdoc">
<p>Change the plugin audio output latency to <em>frames</em>. This function should only be called in the constructor, <a class="el" href="classPlugin.html#a15df4876febf5909fe040d401fc704d0">d_activate()</a> and <a class="el" href="classPlugin.html#af67102a7c6d19a8530ce0e3293e55667">d_run()</a>. </p><dl class="section note"><dt>Note</dt><dd>This function is only available if DISTRHO_PLUGIN_WANT_LATENCY is enabled. </dd></dl>
<p>Change the plugin audio output latency to <em>frames</em>. This function should only be called in the constructor, activate() and <a class="el" href="classPlugin.html#a0a969c78f8455ac6ba65fa42e8c498f6">run()</a>. </p><dl class="section note"><dt>Note</dt><dd>This function is only available if DISTRHO_PLUGIN_WANT_LATENCY is enabled. </dd></dl>

</div>
</div>
<a class="anchor" id="afa10aea18e4036b4a7487f2779d92e0f"></a>
<a class="anchor" id="a0467eef817ac130cbbe1c0fbe09660c6"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
@@ -332,7 +341,7 @@ class&#160;</td><td class="memItemRight" valign="bottom"><b>PluginExporter</b></
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool Plugin::d_writeMidiEvent </td>
<td class="memname">bool Plugin::writeMidiEvent </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structMidiEvent.html">MidiEvent</a> &amp;&#160;</td>
<td class="paramname"><em>midiEvent</em></td><td>)</td>
@@ -345,11 +354,11 @@ class&#160;</td><td class="memItemRight" valign="bottom"><b>PluginExporter</b></
</tr>
</table>
</div><div class="memdoc">
<p>Write a MIDI output event. This function must only be called during <a class="el" href="classPlugin.html#af67102a7c6d19a8530ce0e3293e55667">d_run()</a>. Returns false when the host buffer is full, in which case do not call this again until the next <a class="el" href="classPlugin.html#af67102a7c6d19a8530ce0e3293e55667">d_run()</a>. </p>
<p>Write a MIDI output event. This function must only be called during <a class="el" href="classPlugin.html#a0a969c78f8455ac6ba65fa42e8c498f6">run()</a>. Returns false when the host buffer is full, in which case do not call this again until the next <a class="el" href="classPlugin.html#a0a969c78f8455ac6ba65fa42e8c498f6">run()</a>. </p>

</div>
</div>
<a class="anchor" id="a0f8fb7aa5ab05ba246e158b1024dd031"></a>
<a class="anchor" id="a181bc1b9e4094921da788640955a3018"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
@@ -357,7 +366,7 @@ class&#160;</td><td class="memItemRight" valign="bottom"><b>PluginExporter</b></
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual const char* Plugin::d_getName </td>
<td class="memname">virtual const char* Plugin::getName </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
@@ -373,7 +382,7 @@ class&#160;</td><td class="memItemRight" valign="bottom"><b>PluginExporter</b></

</div>
</div>
<a class="anchor" id="ae512b28d1b274a055de33812cf094d81"></a>
<a class="anchor" id="a00f7945c16149db6845fbcc2af729f4f"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
@@ -381,7 +390,7 @@ class&#160;</td><td class="memItemRight" valign="bottom"><b>PluginExporter</b></
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual const char* Plugin::d_getLabel </td>
<td class="memname">virtual const char* Plugin::getLabel </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
@@ -393,11 +402,11 @@ class&#160;</td><td class="memItemRight" valign="bottom"><b>PluginExporter</b></
</tr>
</table>
</div><div class="memdoc">
<p>Get the plugin label. A plugin label follows the same rules as <a class="el" href="structParameter.html#a0b5193e6131f65878dfb6fe4d9f5e970">Parameter::symbol</a>, with the exception that it can start with numbers. </p>
<p>Get the plugin label. A plugin label follows the same rules as <a class="el" href="structParameter.html#a3e546efd8dbd0d77351208b670719468">Parameter::symbol</a>, with the exception that it can start with numbers. </p>

</div>
</div>
<a class="anchor" id="a0eaf2f46f04d60526622afb5a86e026c"></a>
<a class="anchor" id="a955832840de786a7a22798f0ef451c5d"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
@@ -405,7 +414,7 @@ class&#160;</td><td class="memItemRight" valign="bottom"><b>PluginExporter</b></
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual const char* Plugin::d_getMaker </td>
<td class="memname">virtual const char* Plugin::getMaker </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
@@ -421,7 +430,7 @@ class&#160;</td><td class="memItemRight" valign="bottom"><b>PluginExporter</b></

</div>
</div>
<a class="anchor" id="ae9333c170accfd2a237448a4579d5fef"></a>
<a class="anchor" id="a686a3c92a376a185d6fd97efd59125d1"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
@@ -429,7 +438,7 @@ class&#160;</td><td class="memItemRight" valign="bottom"><b>PluginExporter</b></
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual const char* Plugin::d_getLicense </td>
<td class="memname">virtual const char* Plugin::getLicense </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
@@ -446,7 +455,7 @@ For commercial plugins this should return some copyright information. </p>

</div>
</div>
<a class="anchor" id="af9251f8d90e4df43c6387bd111487e4e"></a>
<a class="anchor" id="abae540dd93caf4834270358a8aad334a"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
@@ -454,7 +463,7 @@ For commercial plugins this should return some copyright information. </p>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual uint32_t Plugin::d_getVersion </td>
<td class="memname">virtual uint32_t Plugin::getVersion </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
@@ -470,7 +479,7 @@ For commercial plugins this should return some copyright information. </p>

</div>
</div>
<a class="anchor" id="aea77208248b36c7b8c9dc57ee68ae97a"></a>
<a class="anchor" id="ad6ff8c80227d5ceebd40b96f3be29a66"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
@@ -478,7 +487,7 @@ For commercial plugins this should return some copyright information. </p>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual int64_t Plugin::d_getUniqueId </td>
<td class="memname">virtual int64_t Plugin::getUniqueId </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
@@ -494,7 +503,7 @@ For commercial plugins this should return some copyright information. </p>

</div>
</div>
<a class="anchor" id="a5ddc59a0dbbef9c7d7cda5f291431769"></a>
<a class="anchor" id="a75f30935198a0acba25f4ea92af72dc4"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
@@ -502,7 +511,7 @@ For commercial plugins this should return some copyright information. </p>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void Plugin::d_initAudioPort </td>
<td class="memname">virtual void Plugin::initAudioPort </td>
<td>(</td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>input</em>, </td>
@@ -535,7 +544,7 @@ For commercial plugins this should return some copyright information. </p>

</div>
</div>
<a class="anchor" id="a3f93a8eb97db3dc9984c357c5ffca5ec"></a>
<a class="anchor" id="a5b0ec59527a1c2f4b01f17fc8c18ea8b"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
@@ -543,7 +552,7 @@ For commercial plugins this should return some copyright information. </p>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void Plugin::d_initParameter </td>
<td class="memname">virtual void Plugin::initParameter </td>
<td>(</td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>index</em>, </td>
@@ -570,7 +579,7 @@ For commercial plugins this should return some copyright information. </p>

</div>
</div>
<a class="anchor" id="a8a1792b7c5c6a3fd9cd626c7156ec3b6"></a>
<a class="anchor" id="a54d66af3111541b7c118f9749ef0231b"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
@@ -578,7 +587,7 @@ For commercial plugins this should return some copyright information. </p>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void Plugin::d_initProgramName </td>
<td class="memname">virtual void Plugin::initProgramName </td>
<td>(</td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>index</em>, </td>
@@ -586,7 +595,7 @@ For commercial plugins this should return some copyright information. </p>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">d_string &amp;&#160;</td>
<td class="paramtype">String &amp;&#160;</td>
<td class="paramname"><em>programName</em>&#160;</td>
</tr>
<tr>
@@ -605,7 +614,7 @@ For commercial plugins this should return some copyright information. </p>

</div>
</div>
<a class="anchor" id="a65f9f9d4a30b0a56dfa42703c0b4db76"></a>
<a class="anchor" id="ae301a970a8b5cff3c7ecef927ea20080"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
@@ -613,7 +622,7 @@ For commercial plugins this should return some copyright information. </p>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void Plugin::d_initState </td>
<td class="memname">virtual void Plugin::initState </td>
<td>(</td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>index</em>, </td>
@@ -621,13 +630,13 @@ For commercial plugins this should return some copyright information. </p>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">d_string &amp;&#160;</td>
<td class="paramtype">String &amp;&#160;</td>
<td class="paramname"><em>stateKey</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">d_string &amp;&#160;</td>
<td class="paramtype">String &amp;&#160;</td>
<td class="paramname"><em>defaultStateValue</em>&#160;</td>
</tr>
<tr>
@@ -646,7 +655,7 @@ For commercial plugins this should return some copyright information. </p>

</div>
</div>
<a class="anchor" id="af088f855761b67489f19f42fbb585088"></a>
<a class="anchor" id="a2d1da98c90568bb4547662bc4f02c31f"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
@@ -654,7 +663,7 @@ For commercial plugins this should return some copyright information. </p>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual float Plugin::d_getParameterValue </td>
<td class="memname">virtual float Plugin::getParameterValue </td>
<td>(</td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>index</em></td><td>)</td>
@@ -671,7 +680,7 @@ For commercial plugins this should return some copyright information. </p>

</div>
</div>
<a class="anchor" id="a4cdd613f58a013429094700f3d83904a"></a>
<a class="anchor" id="a6911a881fabb9eca9daf0eadbaad8599"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
@@ -679,7 +688,7 @@ For commercial plugins this should return some copyright information. </p>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void Plugin::d_setParameterValue </td>
<td class="memname">virtual void Plugin::setParameterValue </td>
<td>(</td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>index</em>, </td>
@@ -706,7 +715,7 @@ For commercial plugins this should return some copyright information. </p>

</div>
</div>
<a class="anchor" id="a1d001e50781b35df23f6d9a218f5f804"></a>
<a class="anchor" id="af2bfc89eec6b984c17ed9e5b3aab8a20"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
@@ -714,7 +723,7 @@ For commercial plugins this should return some copyright information. </p>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void Plugin::d_setProgram </td>
<td class="memname">virtual void Plugin::setProgram </td>
<td>(</td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>index</em></td><td>)</td>
@@ -731,7 +740,7 @@ For commercial plugins this should return some copyright information. </p>

</div>
</div>
<a class="anchor" id="ad9c46a36cab96f52a0370043093bca68"></a>
<a class="anchor" id="a3c6aeb79775ecf24ffbfc7dafd3d449b"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
@@ -739,15 +748,15 @@ For commercial plugins this should return some copyright information. </p>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void Plugin::d_setState </td>
<td class="memname">virtual void Plugin::setState </td>
<td>(</td>
<td class="paramtype">const char *&#160;</td>
<td class="paramtype">const String &amp;&#160;</td>
<td class="paramname"><em>key</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramtype">const String &amp;&#160;</td>
<td class="paramname"><em>value</em>&#160;</td>
</tr>
<tr>
@@ -766,7 +775,7 @@ For commercial plugins this should return some copyright information. </p>

</div>
</div>
<a class="anchor" id="a15df4876febf5909fe040d401fc704d0"></a>
<a class="anchor" id="a1c215b23ee7fcc9b49edbd91d985a4e1"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
@@ -774,7 +783,7 @@ For commercial plugins this should return some copyright information. </p>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void Plugin::d_activate </td>
<td class="memname">virtual void Plugin::activated </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
@@ -790,7 +799,7 @@ For commercial plugins this should return some copyright information. </p>

</div>
</div>
<a class="anchor" id="a5c008d623e558e7266aecaff22fc787a"></a>
<a class="anchor" id="a6f5d5d235ba624d082daed41a7af8fdd"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
@@ -798,7 +807,7 @@ For commercial plugins this should return some copyright information. </p>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void Plugin::d_deactivate </td>
<td class="memname">virtual void Plugin::deactivated </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
@@ -814,7 +823,7 @@ For commercial plugins this should return some copyright information. </p>

</div>
</div>
<a class="anchor" id="af67102a7c6d19a8530ce0e3293e55667"></a>
<a class="anchor" id="a0a969c78f8455ac6ba65fa42e8c498f6"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
@@ -822,7 +831,7 @@ For commercial plugins this should return some copyright information. </p>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void Plugin::d_run </td>
<td class="memname">virtual void Plugin::run </td>
<td>(</td>
<td class="paramtype">const float **&#160;</td>
<td class="paramname"><em>inputs</em>, </td>
@@ -867,7 +876,7 @@ For commercial plugins this should return some copyright information. </p>

</div>
</div>
<a class="anchor" id="a2c6ac454e24b667d54eaaf63da252627"></a>
<a class="anchor" id="a9f6c8ad6b054056649d0250e527e1297"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
@@ -875,7 +884,7 @@ For commercial plugins this should return some copyright information. </p>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void Plugin::d_bufferSizeChanged </td>
<td class="memname">virtual void Plugin::bufferSizeChanged </td>
<td>(</td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>newBufferSize</em></td><td>)</td>
@@ -888,12 +897,12 @@ For commercial plugins this should return some copyright information. </p>
</tr>
</table>
</div><div class="memdoc">
<p>Optional callback to inform the plugin about a buffer size change. This function will only be called when the plugin is deactivated. </p><dl class="section note"><dt>Note</dt><dd>: This value is only a hint! Hosts might call <a class="el" href="classPlugin.html#af67102a7c6d19a8530ce0e3293e55667">d_run()</a> with a higher or lower number of frames. </dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classPlugin.html#aa0feb17c3dcf13a106505eb6d6b2a3ac">d_getBufferSize()</a> </dd></dl>
<p>Optional callback to inform the plugin about a buffer size change. This function will only be called when the plugin is deactivated. </p><dl class="section note"><dt>Note</dt><dd>: This value is only a hint! Hosts might call <a class="el" href="classPlugin.html#a0a969c78f8455ac6ba65fa42e8c498f6">run()</a> with a higher or lower number of frames. </dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classPlugin.html#a2643e638f62cfd4990247ec66bed60d2">getBufferSize()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="a469b53e1c1417a32d766cf96d1b3c45e"></a>
<a class="anchor" id="a2fcbfa1893f44e661d0d8cd53391dadc"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
@@ -901,7 +910,7 @@ For commercial plugins this should return some copyright information. </p>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void Plugin::d_sampleRateChanged </td>
<td class="memname">virtual void Plugin::sampleRateChanged </td>
<td>(</td>
<td class="paramtype">double&#160;</td>
<td class="paramname"><em>newSampleRate</em></td><td>)</td>
@@ -914,7 +923,7 @@ For commercial plugins this should return some copyright information. </p>
</tr>
</table>
</div><div class="memdoc">
<p>Optional callback to inform the plugin about a sample rate change. This function will only be called when the plugin is deactivated. </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="classPlugin.html#ace888940905e8875284e07c52bf7404f">d_getSampleRate()</a> </dd></dl>
<p>Optional callback to inform the plugin about a sample rate change. This function will only be called when the plugin is deactivated. </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="classPlugin.html#a3e162cfe8f1c52bf09805fd327bcc3c4">getSampleRate()</a> </dd></dl>

</div>
</div>
@@ -924,7 +933,7 @@ For commercial plugins this should return some copyright information. </p>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Fri Apr 24 2015 00:23:57 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>


+ 124
- 0
classPoint-members.html View File

@@ -0,0 +1,124 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: Member List</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">Point&lt; T &gt; Member List</div> </div>
</div><!--header-->
<div class="contents">

<p>This is the complete list of members for <a class="el" href="classPoint.html">Point&lt; T &gt;</a>, including all inherited members.</p>
<table class="directory">
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Circle</b> (defined in <a class="el" href="classPoint.html">Point&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classPoint.html">Point&lt; T &gt;</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
<tr><td class="entry"><a class="el" href="classPoint.html#af6d528d5f73b06282aae5be3b188528e">getX</a>() const noexcept</td><td class="entry"><a class="el" href="classPoint.html">Point&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classPoint.html#ab0250670052f5169c57de84a09d7534b">getY</a>() const noexcept</td><td class="entry"><a class="el" href="classPoint.html">Point&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classPoint.html#aede5df141963951a746d7e207fa7e073">isNotZero</a>() const noexcept</td><td class="entry"><a class="el" href="classPoint.html">Point&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classPoint.html#a845d59d29722c962c7af8f602bcf9ba4">isZero</a>() const noexcept</td><td class="entry"><a class="el" href="classPoint.html">Point&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>Line</b> (defined in <a class="el" href="classPoint.html">Point&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classPoint.html">Point&lt; T &gt;</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classPoint.html#a541cdef0c235dc26d79c0b6ee7118346">moveBy</a>(const T &amp;x, const T &amp;y) noexcept</td><td class="entry"><a class="el" href="classPoint.html">Point&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classPoint.html#a678019258549ab43e7bb1ad34f212d15">moveBy</a>(const Point&lt; T &gt; &amp;pos) noexcept</td><td class="entry"><a class="el" href="classPoint.html">Point&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>operator!=</b>(const Point&lt; T &gt; &amp;pos) const noexcept (defined in <a class="el" href="classPoint.html">Point&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classPoint.html">Point&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>operator+</b>(const Point&lt; T &gt; &amp;pos) noexcept (defined in <a class="el" href="classPoint.html">Point&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classPoint.html">Point&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>operator+=</b>(const Point&lt; T &gt; &amp;pos) noexcept (defined in <a class="el" href="classPoint.html">Point&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classPoint.html">Point&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>operator-</b>(const Point&lt; T &gt; &amp;pos) noexcept (defined in <a class="el" href="classPoint.html">Point&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classPoint.html">Point&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>operator-=</b>(const Point&lt; T &gt; &amp;pos) noexcept (defined in <a class="el" href="classPoint.html">Point&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classPoint.html">Point&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>operator=</b>(const Point&lt; T &gt; &amp;pos) noexcept (defined in <a class="el" href="classPoint.html">Point&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classPoint.html">Point&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>operator==</b>(const Point&lt; T &gt; &amp;pos) const noexcept (defined in <a class="el" href="classPoint.html">Point&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classPoint.html">Point&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classPoint.html#ada3e3f5f840cf70db3c7f884843a3d01">Point</a>() noexcept</td><td class="entry"><a class="el" href="classPoint.html">Point&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classPoint.html#a273b90bf5380bacd6e58582ef9ce35f7">Point</a>(const T &amp;x, const T &amp;y) noexcept</td><td class="entry"><a class="el" href="classPoint.html">Point&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classPoint.html#a31393ac57c0140243e8723f9cd9106bb">Point</a>(const Point&lt; T &gt; &amp;pos) noexcept</td><td class="entry"><a class="el" href="classPoint.html">Point&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Rectangle</b> (defined in <a class="el" href="classPoint.html">Point&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classPoint.html">Point&lt; T &gt;</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
<tr><td class="entry"><a class="el" href="classPoint.html#aac5c7220da858d14140ff0c78684d4e2">setPos</a>(const T &amp;x, const T &amp;y) noexcept</td><td class="entry"><a class="el" href="classPoint.html">Point&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classPoint.html#a2df24dbabd272d2308cc2b53d24d548a">setPos</a>(const Point&lt; T &gt; &amp;pos) noexcept</td><td class="entry"><a class="el" href="classPoint.html">Point&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classPoint.html#a1539a6f24282a1d637b60ccfbbf46629">setX</a>(const T &amp;x) noexcept</td><td class="entry"><a class="el" href="classPoint.html">Point&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classPoint.html#a8ffe6785dc851accf06d02917fba54cf">setY</a>(const T &amp;y) noexcept</td><td class="entry"><a class="el" href="classPoint.html">Point&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>Triangle</b> (defined in <a class="el" href="classPoint.html">Point&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classPoint.html">Point&lt; T &gt;</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 560
- 0
classPoint.html View File

@@ -0,0 +1,560 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: Point&lt; T &gt; Class Template Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#friends">Friends</a> &#124;
<a href="classPoint-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">Point&lt; T &gt; Class Template Reference</div> </div>
</div><!--header-->
<div class="contents">

<p><code>#include &lt;<a class="el" href="Geometry_8hpp_source.html">Geometry.hpp</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:ada3e3f5f840cf70db3c7f884843a3d01"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPoint.html#ada3e3f5f840cf70db3c7f884843a3d01">Point</a> () noexcept</td></tr>
<tr class="separator:ada3e3f5f840cf70db3c7f884843a3d01"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a273b90bf5380bacd6e58582ef9ce35f7"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPoint.html#a273b90bf5380bacd6e58582ef9ce35f7">Point</a> (const T &amp;x, const T &amp;y) noexcept</td></tr>
<tr class="separator:a273b90bf5380bacd6e58582ef9ce35f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a31393ac57c0140243e8723f9cd9106bb"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPoint.html#a31393ac57c0140243e8723f9cd9106bb">Point</a> (const <a class="el" href="classPoint.html">Point</a>&lt; T &gt; &amp;pos) noexcept</td></tr>
<tr class="separator:a31393ac57c0140243e8723f9cd9106bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af6d528d5f73b06282aae5be3b188528e"><td class="memItemLeft" align="right" valign="top">const T &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPoint.html#af6d528d5f73b06282aae5be3b188528e">getX</a> () const noexcept</td></tr>
<tr class="separator:af6d528d5f73b06282aae5be3b188528e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab0250670052f5169c57de84a09d7534b"><td class="memItemLeft" align="right" valign="top">const T &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPoint.html#ab0250670052f5169c57de84a09d7534b">getY</a> () const noexcept</td></tr>
<tr class="separator:ab0250670052f5169c57de84a09d7534b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1539a6f24282a1d637b60ccfbbf46629"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPoint.html#a1539a6f24282a1d637b60ccfbbf46629">setX</a> (const T &amp;x) noexcept</td></tr>
<tr class="separator:a1539a6f24282a1d637b60ccfbbf46629"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8ffe6785dc851accf06d02917fba54cf"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPoint.html#a8ffe6785dc851accf06d02917fba54cf">setY</a> (const T &amp;y) noexcept</td></tr>
<tr class="separator:a8ffe6785dc851accf06d02917fba54cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aac5c7220da858d14140ff0c78684d4e2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPoint.html#aac5c7220da858d14140ff0c78684d4e2">setPos</a> (const T &amp;x, const T &amp;y) noexcept</td></tr>
<tr class="separator:aac5c7220da858d14140ff0c78684d4e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2df24dbabd272d2308cc2b53d24d548a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPoint.html#a2df24dbabd272d2308cc2b53d24d548a">setPos</a> (const <a class="el" href="classPoint.html">Point</a>&lt; T &gt; &amp;pos) noexcept</td></tr>
<tr class="separator:a2df24dbabd272d2308cc2b53d24d548a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a541cdef0c235dc26d79c0b6ee7118346"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPoint.html#a541cdef0c235dc26d79c0b6ee7118346">moveBy</a> (const T &amp;x, const T &amp;y) noexcept</td></tr>
<tr class="separator:a541cdef0c235dc26d79c0b6ee7118346"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a678019258549ab43e7bb1ad34f212d15"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPoint.html#a678019258549ab43e7bb1ad34f212d15">moveBy</a> (const <a class="el" href="classPoint.html">Point</a>&lt; T &gt; &amp;pos) noexcept</td></tr>
<tr class="separator:a678019258549ab43e7bb1ad34f212d15"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a845d59d29722c962c7af8f602bcf9ba4"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPoint.html#a845d59d29722c962c7af8f602bcf9ba4">isZero</a> () const noexcept</td></tr>
<tr class="separator:a845d59d29722c962c7af8f602bcf9ba4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aede5df141963951a746d7e207fa7e073"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPoint.html#aede5df141963951a746d7e207fa7e073">isNotZero</a> () const noexcept</td></tr>
<tr class="separator:aede5df141963951a746d7e207fa7e073"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5eea0c138890c519f4657d5d6a359b81"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5eea0c138890c519f4657d5d6a359b81"></a>
<a class="el" href="classPoint.html">Point</a>&lt; T &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>operator+</b> (const <a class="el" href="classPoint.html">Point</a>&lt; T &gt; &amp;pos) noexcept</td></tr>
<tr class="separator:a5eea0c138890c519f4657d5d6a359b81"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa97be247a1201b41b63690f75274e7ec"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa97be247a1201b41b63690f75274e7ec"></a>
<a class="el" href="classPoint.html">Point</a>&lt; T &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>operator-</b> (const <a class="el" href="classPoint.html">Point</a>&lt; T &gt; &amp;pos) noexcept</td></tr>
<tr class="separator:aa97be247a1201b41b63690f75274e7ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6e34ff83eabf7917fde9e2637733b36c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6e34ff83eabf7917fde9e2637733b36c"></a>
<a class="el" href="classPoint.html">Point</a>&lt; T &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (const <a class="el" href="classPoint.html">Point</a>&lt; T &gt; &amp;pos) noexcept</td></tr>
<tr class="separator:a6e34ff83eabf7917fde9e2637733b36c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad41317b96a2bf95ff0dcb3030402f8b0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad41317b96a2bf95ff0dcb3030402f8b0"></a>
<a class="el" href="classPoint.html">Point</a>&lt; T &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator+=</b> (const <a class="el" href="classPoint.html">Point</a>&lt; T &gt; &amp;pos) noexcept</td></tr>
<tr class="separator:ad41317b96a2bf95ff0dcb3030402f8b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a78e21beea6b841b8a5dee03a81fcb2f8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a78e21beea6b841b8a5dee03a81fcb2f8"></a>
<a class="el" href="classPoint.html">Point</a>&lt; T &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator-=</b> (const <a class="el" href="classPoint.html">Point</a>&lt; T &gt; &amp;pos) noexcept</td></tr>
<tr class="separator:a78e21beea6b841b8a5dee03a81fcb2f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a014e81622566db6b830387f89359ad63"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a014e81622566db6b830387f89359ad63"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>operator==</b> (const <a class="el" href="classPoint.html">Point</a>&lt; T &gt; &amp;pos) const noexcept</td></tr>
<tr class="separator:a014e81622566db6b830387f89359ad63"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a821dceaebcf3b2fc72944b0946352285"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a821dceaebcf3b2fc72944b0946352285"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>operator!=</b> (const <a class="el" href="classPoint.html">Point</a>&lt; T &gt; &amp;pos) const noexcept</td></tr>
<tr class="separator:a821dceaebcf3b2fc72944b0946352285"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
Friends</h2></td></tr>
<tr class="memitem:a65059b49f7abec067fe37ec5cf3398a1"><td class="memTemplParams" colspan="2"><a class="anchor" id="a65059b49f7abec067fe37ec5cf3398a1"></a>
template&lt;typename &gt; </td></tr>
<tr class="memitem:a65059b49f7abec067fe37ec5cf3398a1"><td class="memTemplItemLeft" align="right" valign="top">class&#160;</td><td class="memTemplItemRight" valign="bottom"><b>Line</b></td></tr>
<tr class="separator:a65059b49f7abec067fe37ec5cf3398a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a58e08794945f84e3d2f997defa90d760"><td class="memTemplParams" colspan="2"><a class="anchor" id="a58e08794945f84e3d2f997defa90d760"></a>
template&lt;typename &gt; </td></tr>
<tr class="memitem:a58e08794945f84e3d2f997defa90d760"><td class="memTemplItemLeft" align="right" valign="top">class&#160;</td><td class="memTemplItemRight" valign="bottom"><b>Circle</b></td></tr>
<tr class="separator:a58e08794945f84e3d2f997defa90d760"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac3d1a804421cbde0e45809f737cdb54c"><td class="memTemplParams" colspan="2"><a class="anchor" id="ac3d1a804421cbde0e45809f737cdb54c"></a>
template&lt;typename &gt; </td></tr>
<tr class="memitem:ac3d1a804421cbde0e45809f737cdb54c"><td class="memTemplItemLeft" align="right" valign="top">class&#160;</td><td class="memTemplItemRight" valign="bottom"><b>Triangle</b></td></tr>
<tr class="separator:ac3d1a804421cbde0e45809f737cdb54c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9b0852de9d45cf8a1b602ce114984ae1"><td class="memTemplParams" colspan="2"><a class="anchor" id="a9b0852de9d45cf8a1b602ce114984ae1"></a>
template&lt;typename &gt; </td></tr>
<tr class="memitem:a9b0852de9d45cf8a1b602ce114984ae1"><td class="memTemplItemLeft" align="right" valign="top">class&#160;</td><td class="memTemplItemRight" valign="bottom"><b>Rectangle</b></td></tr>
<tr class="separator:a9b0852de9d45cf8a1b602ce114984ae1"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><h3>template&lt;typename T&gt;<br />
class Point&lt; T &gt;</h3>

<p>DGL <a class="el" href="classPoint.html">Point</a> class.</p>
<p>This class describes a single point in space, defined by an X and Y value. </p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="ada3e3f5f840cf70db3c7f884843a3d01"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classPoint.html">Point</a>&lt; T &gt;::<a class="el" href="classPoint.html">Point</a> </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Constructor for (0, 0) point. </p>

</div>
</div>
<a class="anchor" id="a273b90bf5380bacd6e58582ef9ce35f7"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classPoint.html">Point</a>&lt; T &gt;::<a class="el" href="classPoint.html">Point</a> </td>
<td>(</td>
<td class="paramtype">const T &amp;&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const T &amp;&#160;</td>
<td class="paramname"><em>y</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Constructor using custom X and Y values. </p>

</div>
</div>
<a class="anchor" id="a31393ac57c0140243e8723f9cd9106bb"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classPoint.html">Point</a>&lt; T &gt;::<a class="el" href="classPoint.html">Point</a> </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classPoint.html">Point</a>&lt; T &gt; &amp;&#160;</td>
<td class="paramname"><em>pos</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Constructor using another <a class="el" href="classPoint.html">Point</a> class values. </p>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="af6d528d5f73b06282aae5be3b188528e"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const T&amp; <a class="el" href="classPoint.html">Point</a>&lt; T &gt;::getX </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get X value. </p>

</div>
</div>
<a class="anchor" id="ab0250670052f5169c57de84a09d7534b"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const T&amp; <a class="el" href="classPoint.html">Point</a>&lt; T &gt;::getY </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get Y value. </p>

</div>
</div>
<a class="anchor" id="a1539a6f24282a1d637b60ccfbbf46629"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classPoint.html">Point</a>&lt; T &gt;::setX </td>
<td>(</td>
<td class="paramtype">const T &amp;&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Set X value to <em>x</em>. </p>

</div>
</div>
<a class="anchor" id="a8ffe6785dc851accf06d02917fba54cf"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classPoint.html">Point</a>&lt; T &gt;::setY </td>
<td>(</td>
<td class="paramtype">const T &amp;&#160;</td>
<td class="paramname"><em>y</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Set Y value to <em>y</em>. </p>

</div>
</div>
<a class="anchor" id="aac5c7220da858d14140ff0c78684d4e2"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classPoint.html">Point</a>&lt; T &gt;::setPos </td>
<td>(</td>
<td class="paramtype">const T &amp;&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const T &amp;&#160;</td>
<td class="paramname"><em>y</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Set X and Y values to <em>x</em> and <em>y</em> respectively. </p>

</div>
</div>
<a class="anchor" id="a2df24dbabd272d2308cc2b53d24d548a"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classPoint.html">Point</a>&lt; T &gt;::setPos </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classPoint.html">Point</a>&lt; T &gt; &amp;&#160;</td>
<td class="paramname"><em>pos</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Set X and Y values according to <em>pos</em>. </p>

</div>
</div>
<a class="anchor" id="a541cdef0c235dc26d79c0b6ee7118346"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classPoint.html">Point</a>&lt; T &gt;::moveBy </td>
<td>(</td>
<td class="paramtype">const T &amp;&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const T &amp;&#160;</td>
<td class="paramname"><em>y</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Move this point by <em>x</em> and <em>y</em> values. </p>

</div>
</div>
<a class="anchor" id="a678019258549ab43e7bb1ad34f212d15"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classPoint.html">Point</a>&lt; T &gt;::moveBy </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classPoint.html">Point</a>&lt; T &gt; &amp;&#160;</td>
<td class="paramname"><em>pos</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Move this point by <em>pos</em>. </p>

</div>
</div>
<a class="anchor" id="a845d59d29722c962c7af8f602bcf9ba4"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool <a class="el" href="classPoint.html">Point</a>&lt; T &gt;::isZero </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Return true if point is (0, 0). </p>

</div>
</div>
<a class="anchor" id="aede5df141963951a746d7e207fa7e073"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool <a class="el" href="classPoint.html">Point</a>&lt; T &gt;::isNotZero </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Return true if point is not (0, 0). </p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>dgl/<a class="el" href="Geometry_8hpp_source.html">Geometry.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 137
- 0
classRectangle-members.html View File

@@ -0,0 +1,137 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: Member List</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">Rectangle&lt; T &gt; Member List</div> </div>
</div><!--header-->
<div class="contents">

<p>This is the complete list of members for <a class="el" href="singletonRectangle.html">Rectangle&lt; T &gt;</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="singletonRectangle.html#a08b0741e6259e88552106136cdbff489">contains</a>(const T &amp;x, const T &amp;y) const noexcept</td><td class="entry"><a class="el" href="singletonRectangle.html">Rectangle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="singletonRectangle.html#a4420a73414a0fd1b85abd468a2c890d3">contains</a>(const Point&lt; T &gt; &amp;pos) const noexcept</td><td class="entry"><a class="el" href="singletonRectangle.html">Rectangle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="singletonRectangle.html#a71d17fdf110e4ed2350d2a5fe248e540">containsX</a>(const T &amp;x) const noexcept</td><td class="entry"><a class="el" href="singletonRectangle.html">Rectangle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="singletonRectangle.html#a38b56f4f8b38597fd34f68c677de2559">containsY</a>(const T &amp;y) const noexcept</td><td class="entry"><a class="el" href="singletonRectangle.html">Rectangle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="singletonRectangle.html#a415da25901ad63d87e3bac7755535cda">draw</a>()</td><td class="entry"><a class="el" href="singletonRectangle.html">Rectangle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="singletonRectangle.html#a562e46203701309da8748dcc5277373e">drawOutline</a>()</td><td class="entry"><a class="el" href="singletonRectangle.html">Rectangle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="singletonRectangle.html#a46b5c88ccfdf1b9f5c1086bb0852c94a">getHeight</a>() const noexcept</td><td class="entry"><a class="el" href="singletonRectangle.html">Rectangle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="singletonRectangle.html#aa91fa8951b6a77c86a3df804b1ed0717">getPos</a>() const noexcept</td><td class="entry"><a class="el" href="singletonRectangle.html">Rectangle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="singletonRectangle.html#a89992b11e6d09286c2d6f4504b49d05f">getSize</a>() const noexcept</td><td class="entry"><a class="el" href="singletonRectangle.html">Rectangle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="singletonRectangle.html#a5974e66bef8300fa6e052d846d07afb1">getWidth</a>() const noexcept</td><td class="entry"><a class="el" href="singletonRectangle.html">Rectangle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="singletonRectangle.html#aa7a5dc1efa46ac87abdc57850f65c1ef">getX</a>() const noexcept</td><td class="entry"><a class="el" href="singletonRectangle.html">Rectangle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="singletonRectangle.html#a8f2fb02ceea742b6155a476be3694ec9">getY</a>() const noexcept</td><td class="entry"><a class="el" href="singletonRectangle.html">Rectangle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="singletonRectangle.html#a043d677b0fa28c50a18ed30bcb84e02b">growBy</a>(double multiplier) noexcept</td><td class="entry"><a class="el" href="singletonRectangle.html">Rectangle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="singletonRectangle.html#a040f154cde2faff853fd0bde9ca884b9">moveBy</a>(const T &amp;x, const T &amp;y) noexcept</td><td class="entry"><a class="el" href="singletonRectangle.html">Rectangle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="singletonRectangle.html#a9e81627f1201111f0e36cce15e317000">moveBy</a>(const Point&lt; T &gt; &amp;pos) noexcept</td><td class="entry"><a class="el" href="singletonRectangle.html">Rectangle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>operator!=</b>(const Rectangle&lt; T &gt; &amp;size) const noexcept (defined in <a class="el" href="singletonRectangle.html">Rectangle&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="singletonRectangle.html">Rectangle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>operator*=</b>(double m) noexcept (defined in <a class="el" href="singletonRectangle.html">Rectangle&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="singletonRectangle.html">Rectangle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>operator/=</b>(double d) noexcept (defined in <a class="el" href="singletonRectangle.html">Rectangle&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="singletonRectangle.html">Rectangle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>operator=</b>(const Rectangle&lt; T &gt; &amp;rect) noexcept (defined in <a class="el" href="singletonRectangle.html">Rectangle&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="singletonRectangle.html">Rectangle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>operator==</b>(const Rectangle&lt; T &gt; &amp;size) const noexcept (defined in <a class="el" href="singletonRectangle.html">Rectangle&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="singletonRectangle.html">Rectangle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="singletonRectangle.html#acf4a7cdc13c4176d44965db53a3561f3">Rectangle</a>() noexcept</td><td class="entry"><a class="el" href="singletonRectangle.html">Rectangle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="singletonRectangle.html#a883fb137e26b5b7e95791d91c232603f">Rectangle</a>(const T &amp;x, const T &amp;y, const T &amp;width, const T &amp;height) noexcept</td><td class="entry"><a class="el" href="singletonRectangle.html">Rectangle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="singletonRectangle.html#ae2560ef4446450f535414f70d7f46aa0">Rectangle</a>(const T &amp;x, const T &amp;y, const Size&lt; T &gt; &amp;size) noexcept</td><td class="entry"><a class="el" href="singletonRectangle.html">Rectangle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="singletonRectangle.html#a7e55381bd7fe33d52a8847f65e9883ed">Rectangle</a>(const Point&lt; T &gt; &amp;pos, const T &amp;width, const T &amp;height) noexcept</td><td class="entry"><a class="el" href="singletonRectangle.html">Rectangle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="singletonRectangle.html#a4b4d34708248ee56900916cdf1138edc">Rectangle</a>(const Point&lt; T &gt; &amp;pos, const Size&lt; T &gt; &amp;size) noexcept</td><td class="entry"><a class="el" href="singletonRectangle.html">Rectangle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="singletonRectangle.html#ac492f53d4f548c4f572c90c485606db8">Rectangle</a>(const Rectangle&lt; T &gt; &amp;rect) noexcept</td><td class="entry"><a class="el" href="singletonRectangle.html">Rectangle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="singletonRectangle.html#a5ff3aca88c9ef31a2e3f8e6cee846155">setHeight</a>(const T &amp;height) noexcept</td><td class="entry"><a class="el" href="singletonRectangle.html">Rectangle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="singletonRectangle.html#a52adba9ba93242a51de29865818fd776">setPos</a>(const T &amp;x, const T &amp;y) noexcept</td><td class="entry"><a class="el" href="singletonRectangle.html">Rectangle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="singletonRectangle.html#ae0904b281ed4811e6901d0d78c30f08e">setPos</a>(const Point&lt; T &gt; &amp;pos) noexcept</td><td class="entry"><a class="el" href="singletonRectangle.html">Rectangle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="singletonRectangle.html#a2907d68a36a3ba97cb8ef14f86d85075">setRectangle</a>(const Point&lt; T &gt; &amp;pos, const Size&lt; T &gt; &amp;size) noexcept</td><td class="entry"><a class="el" href="singletonRectangle.html">Rectangle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="singletonRectangle.html#ac74be2c368aee380680c0221c432cb7f">setRectangle</a>(const Rectangle&lt; T &gt; &amp;rect) noexcept</td><td class="entry"><a class="el" href="singletonRectangle.html">Rectangle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="singletonRectangle.html#a6af8f18557397f909cae8eb65f8367a4">setSize</a>(const T &amp;width, const T &amp;height) noexcept</td><td class="entry"><a class="el" href="singletonRectangle.html">Rectangle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="singletonRectangle.html#a23d728827f9c22167929c461aa65882e">setSize</a>(const Size&lt; T &gt; &amp;size) noexcept</td><td class="entry"><a class="el" href="singletonRectangle.html">Rectangle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="singletonRectangle.html#a75ce3e3a2e8745a1d749dd9da02e9443">setWidth</a>(const T &amp;width) noexcept</td><td class="entry"><a class="el" href="singletonRectangle.html">Rectangle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="singletonRectangle.html#af618ee618bd029fbe66291228041990e">setX</a>(const T &amp;x) noexcept</td><td class="entry"><a class="el" href="singletonRectangle.html">Rectangle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="singletonRectangle.html#abe5b6c92cece58bbc0c7cb4855e73dac">setY</a>(const T &amp;y) noexcept</td><td class="entry"><a class="el" href="singletonRectangle.html">Rectangle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="singletonRectangle.html#a22e5029d09c7eac8ebee0e079dab075f">shrinkBy</a>(double divider) noexcept</td><td class="entry"><a class="el" href="singletonRectangle.html">Rectangle&lt; T &gt;</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 105
- 0
classRecursiveMutex-members.html View File

@@ -0,0 +1,105 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: Member List</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">RecursiveMutex Member List</div> </div>
</div><!--header-->
<div class="contents">

<p>This is the complete list of members for <a class="el" href="classRecursiveMutex.html">RecursiveMutex</a>, including all inherited members.</p>
<table class="directory">
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>lock</b>() const noexcept (defined in <a class="el" href="classRecursiveMutex.html">RecursiveMutex</a>)</td><td class="entry"><a class="el" href="classRecursiveMutex.html">RecursiveMutex</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>RecursiveMutex</b>() noexcept (defined in <a class="el" href="classRecursiveMutex.html">RecursiveMutex</a>)</td><td class="entry"><a class="el" href="classRecursiveMutex.html">RecursiveMutex</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>tryLock</b>() const noexcept (defined in <a class="el" href="classRecursiveMutex.html">RecursiveMutex</a>)</td><td class="entry"><a class="el" href="classRecursiveMutex.html">RecursiveMutex</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>unlock</b>() const noexcept (defined in <a class="el" href="classRecursiveMutex.html">RecursiveMutex</a>)</td><td class="entry"><a class="el" href="classRecursiveMutex.html">RecursiveMutex</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~RecursiveMutex</b>() noexcept (defined in <a class="el" href="classRecursiveMutex.html">RecursiveMutex</a>)</td><td class="entry"><a class="el" href="classRecursiveMutex.html">RecursiveMutex</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 116
- 0
classRecursiveMutex.html View File

@@ -0,0 +1,116 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: RecursiveMutex Class Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classRecursiveMutex-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">RecursiveMutex Class Reference</div> </div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a650ef5727ca8b4d5816ab036e711e3a4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a650ef5727ca8b4d5816ab036e711e3a4"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>lock</b> () const noexcept</td></tr>
<tr class="separator:a650ef5727ca8b4d5816ab036e711e3a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a40d6b2ffb3a6f0f420a12948eba633a8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a40d6b2ffb3a6f0f420a12948eba633a8"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>tryLock</b> () const noexcept</td></tr>
<tr class="separator:a40d6b2ffb3a6f0f420a12948eba633a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac73c95d2045fdd1f83c0a13e437f937d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac73c95d2045fdd1f83c0a13e437f937d"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>unlock</b> () const noexcept</td></tr>
<tr class="separator:ac73c95d2045fdd1f83c0a13e437f937d"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>distrho/extra/<a class="el" href="d__mutex_8hpp_source.html">d_mutex.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 102
- 0
classScopedLocker-members.html View File

@@ -0,0 +1,102 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: Member List</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">ScopedLocker&lt; Mutex &gt; Member List</div> </div>
</div><!--header-->
<div class="contents">

<p>This is the complete list of members for <a class="el" href="classScopedLocker.html">ScopedLocker&lt; Mutex &gt;</a>, including all inherited members.</p>
<table class="directory">
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>ScopedLocker</b>(const Mutex &amp;mutex) noexcept (defined in <a class="el" href="classScopedLocker.html">ScopedLocker&lt; Mutex &gt;</a>)</td><td class="entry"><a class="el" href="classScopedLocker.html">ScopedLocker&lt; Mutex &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>~ScopedLocker</b>() noexcept (defined in <a class="el" href="classScopedLocker.html">ScopedLocker&lt; Mutex &gt;</a>)</td><td class="entry"><a class="el" href="classScopedLocker.html">ScopedLocker&lt; Mutex &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 110
- 0
classScopedLocker.html View File

@@ -0,0 +1,110 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: ScopedLocker&lt; Mutex &gt; Class Template Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classScopedLocker-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">ScopedLocker&lt; Mutex &gt; Class Template Reference</div> </div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:abe21247e9519079fe513f958f8a046be"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abe21247e9519079fe513f958f8a046be"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>ScopedLocker</b> (const <a class="el" href="classMutex.html">Mutex</a> &amp;mutex) noexcept</td></tr>
<tr class="separator:abe21247e9519079fe513f958f8a046be"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>distrho/extra/<a class="el" href="d__mutex_8hpp_source.html">d_mutex.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 112
- 0
classScopedPointer-members.html View File

@@ -0,0 +1,112 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: Member List</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">ScopedPointer&lt; ObjectType &gt; Member List</div> </div>
</div><!--header-->
<div class="contents">

<p>This is the complete list of members for <a class="el" href="classScopedPointer.html">ScopedPointer&lt; ObjectType &gt;</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classScopedPointer.html#ac65fb45b9eb2d53773489fcfbc6fd740">get</a>() const noexcept</td><td class="entry"><a class="el" href="classScopedPointer.html">ScopedPointer&lt; ObjectType &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr><td class="entry"><a class="el" href="classScopedPointer.html#af7c241c736d79754fd6f8d305cce8bc3">operator ObjectType *</a>() const noexcept</td><td class="entry"><a class="el" href="classScopedPointer.html">ScopedPointer&lt; ObjectType &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classScopedPointer.html#a2f48458a1656a6ef1bd35cb8452eed35">operator*</a>() const noexcept</td><td class="entry"><a class="el" href="classScopedPointer.html">ScopedPointer&lt; ObjectType &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr><td class="entry"><a class="el" href="classScopedPointer.html#a6eedc84349cbe629cc1abb79ffa74e87">operator-&gt;</a>() const noexcept</td><td class="entry"><a class="el" href="classScopedPointer.html">ScopedPointer&lt; ObjectType &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classScopedPointer.html#afefc7940828d72c056e03804cd6bea9f">operator=</a>(ScopedPointer &amp;objectToTransferFrom)</td><td class="entry"><a class="el" href="classScopedPointer.html">ScopedPointer&lt; ObjectType &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr><td class="entry"><a class="el" href="classScopedPointer.html#a88ee7f038e57471539d3181141c0390e">operator=</a>(ObjectType *const newObjectToTakePossessionOf)</td><td class="entry"><a class="el" href="classScopedPointer.html">ScopedPointer&lt; ObjectType &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classScopedPointer.html#a10c8f696fec0cca763b067ec3e469199">release</a>() noexcept</td><td class="entry"><a class="el" href="classScopedPointer.html">ScopedPointer&lt; ObjectType &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr><td class="entry"><a class="el" href="classScopedPointer.html#ac187958296e33aa057dd37478ea70400">ScopedPointer</a>() noexcept</td><td class="entry"><a class="el" href="classScopedPointer.html">ScopedPointer&lt; ObjectType &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classScopedPointer.html#a44a7843e49c3ff719f06607b6e908f7d">ScopedPointer</a>(ObjectType *const objectToTakePossessionOf) noexcept</td><td class="entry"><a class="el" href="classScopedPointer.html">ScopedPointer&lt; ObjectType &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr><td class="entry"><a class="el" href="classScopedPointer.html#a04688b1561dd9d861ca80c6deb63a233">ScopedPointer</a>(ScopedPointer &amp;objectToTransferFrom) noexcept</td><td class="entry"><a class="el" href="classScopedPointer.html">ScopedPointer&lt; ObjectType &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classScopedPointer.html#a362cd8d5a212df0ee08691b75a4ba3de">swapWith</a>(ScopedPointer&lt; ObjectType &gt; &amp;other) noexcept</td><td class="entry"><a class="el" href="classScopedPointer.html">ScopedPointer&lt; ObjectType &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr><td class="entry"><a class="el" href="classScopedPointer.html#a3c540f0121065aafa5f9607362fc1450">~ScopedPointer</a>()</td><td class="entry"><a class="el" href="classScopedPointer.html">ScopedPointer&lt; ObjectType &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 467
- 0
classScopedPointer.html View File

@@ -0,0 +1,467 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: ScopedPointer&lt; ObjectType &gt; Class Template Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classScopedPointer-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">ScopedPointer&lt; ObjectType &gt; Class Template Reference</div> </div>
</div><!--header-->
<div class="contents">

<p><code>#include &lt;<a class="el" href="d__scopedpointer_8hpp_source.html">d_scopedpointer.hpp</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:ac187958296e33aa057dd37478ea70400"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classScopedPointer.html#ac187958296e33aa057dd37478ea70400">ScopedPointer</a> () noexcept</td></tr>
<tr class="separator:ac187958296e33aa057dd37478ea70400"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a44a7843e49c3ff719f06607b6e908f7d"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classScopedPointer.html#a44a7843e49c3ff719f06607b6e908f7d">ScopedPointer</a> (ObjectType *const objectToTakePossessionOf) noexcept</td></tr>
<tr class="separator:a44a7843e49c3ff719f06607b6e908f7d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a04688b1561dd9d861ca80c6deb63a233"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classScopedPointer.html#a04688b1561dd9d861ca80c6deb63a233">ScopedPointer</a> (<a class="el" href="classScopedPointer.html">ScopedPointer</a> &amp;objectToTransferFrom) noexcept</td></tr>
<tr class="separator:a04688b1561dd9d861ca80c6deb63a233"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3c540f0121065aafa5f9607362fc1450"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classScopedPointer.html#a3c540f0121065aafa5f9607362fc1450">~ScopedPointer</a> ()</td></tr>
<tr class="separator:a3c540f0121065aafa5f9607362fc1450"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afefc7940828d72c056e03804cd6bea9f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classScopedPointer.html">ScopedPointer</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classScopedPointer.html#afefc7940828d72c056e03804cd6bea9f">operator=</a> (<a class="el" href="classScopedPointer.html">ScopedPointer</a> &amp;objectToTransferFrom)</td></tr>
<tr class="separator:afefc7940828d72c056e03804cd6bea9f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a88ee7f038e57471539d3181141c0390e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classScopedPointer.html">ScopedPointer</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classScopedPointer.html#a88ee7f038e57471539d3181141c0390e">operator=</a> (ObjectType *const newObjectToTakePossessionOf)</td></tr>
<tr class="separator:a88ee7f038e57471539d3181141c0390e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af7c241c736d79754fd6f8d305cce8bc3"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classScopedPointer.html#af7c241c736d79754fd6f8d305cce8bc3">operator ObjectType *</a> () const noexcept</td></tr>
<tr class="separator:af7c241c736d79754fd6f8d305cce8bc3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac65fb45b9eb2d53773489fcfbc6fd740"><td class="memItemLeft" align="right" valign="top">ObjectType *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classScopedPointer.html#ac65fb45b9eb2d53773489fcfbc6fd740">get</a> () const noexcept</td></tr>
<tr class="separator:ac65fb45b9eb2d53773489fcfbc6fd740"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2f48458a1656a6ef1bd35cb8452eed35"><td class="memItemLeft" align="right" valign="top">ObjectType &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classScopedPointer.html#a2f48458a1656a6ef1bd35cb8452eed35">operator*</a> () const noexcept</td></tr>
<tr class="separator:a2f48458a1656a6ef1bd35cb8452eed35"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6eedc84349cbe629cc1abb79ffa74e87"><td class="memItemLeft" align="right" valign="top">ObjectType *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classScopedPointer.html#a6eedc84349cbe629cc1abb79ffa74e87">operator-&gt;</a> () const noexcept</td></tr>
<tr class="separator:a6eedc84349cbe629cc1abb79ffa74e87"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a10c8f696fec0cca763b067ec3e469199"><td class="memItemLeft" align="right" valign="top">ObjectType *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classScopedPointer.html#a10c8f696fec0cca763b067ec3e469199">release</a> () noexcept</td></tr>
<tr class="separator:a10c8f696fec0cca763b067ec3e469199"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a362cd8d5a212df0ee08691b75a4ba3de"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classScopedPointer.html#a362cd8d5a212df0ee08691b75a4ba3de">swapWith</a> (<a class="el" href="classScopedPointer.html">ScopedPointer</a>&lt; ObjectType &gt; &amp;other) noexcept</td></tr>
<tr class="separator:a362cd8d5a212df0ee08691b75a4ba3de"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><h3>template&lt;class ObjectType&gt;<br />
class ScopedPointer&lt; ObjectType &gt;</h3>

<p>This class holds a pointer which is automatically deleted when this object goes out of scope.</p>
<p>Once a pointer has been passed to a <a class="el" href="classScopedPointer.html">ScopedPointer</a>, it will make sure that the pointer gets deleted when the <a class="el" href="classScopedPointer.html">ScopedPointer</a> is deleted. Using the <a class="el" href="classScopedPointer.html">ScopedPointer</a> on the stack or as member variables is a good way to use RAII to avoid accidentally leaking dynamically created objects.</p>
<p>A <a class="el" href="classScopedPointer.html">ScopedPointer</a> can be used in pretty much the same way that you'd use a normal pointer to an object. If you use the assignment operator to assign a different object to a <a class="el" href="classScopedPointer.html">ScopedPointer</a>, the old one will be automatically deleted.</p>
<p>A const <a class="el" href="classScopedPointer.html">ScopedPointer</a> is guaranteed not to lose ownership of its object or change the object to which it points during its lifetime. This means that making a copy of a const <a class="el" href="classScopedPointer.html">ScopedPointer</a> is impossible, as that would involve the new copy taking ownership from the old one.</p>
<p>If you need to get a pointer out of a <a class="el" href="classScopedPointer.html">ScopedPointer</a> without it being deleted, you can use the <a class="el" href="classScopedPointer.html#a10c8f696fec0cca763b067ec3e469199">release()</a> method.</p>
<p>Something to note is the main difference between this class and the std::auto_ptr class, which is that <a class="el" href="classScopedPointer.html">ScopedPointer</a> provides a cast-to-object operator, wheras std::auto_ptr requires that you always call <a class="el" href="classScopedPointer.html#ac65fb45b9eb2d53773489fcfbc6fd740">get()</a> to retrieve the pointer. The advantages of providing the cast is that you don't need to call <a class="el" href="classScopedPointer.html#ac65fb45b9eb2d53773489fcfbc6fd740">get()</a>, so can use the <a class="el" href="classScopedPointer.html">ScopedPointer</a> in pretty much exactly the same way as a raw pointer. The disadvantage is that the compiler is free to use the cast in unexpected and sometimes dangerous ways - in particular, it becomes difficult to return a <a class="el" href="classScopedPointer.html">ScopedPointer</a> as the result of a function. To avoid this causing errors, <a class="el" href="classScopedPointer.html">ScopedPointer</a> contains an overloaded constructor that should cause a syntax error in these circumstances, but it does mean that instead of returning a <a class="el" href="classScopedPointer.html">ScopedPointer</a> from a function, you'd need to return a raw pointer (or use a std::auto_ptr instead). </p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="ac187958296e33aa057dd37478ea70400"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class ObjectType&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classScopedPointer.html">ScopedPointer</a>&lt; ObjectType &gt;::<a class="el" href="classScopedPointer.html">ScopedPointer</a> </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Creates a <a class="el" href="classScopedPointer.html">ScopedPointer</a> containing a null pointer. </p>

</div>
</div>
<a class="anchor" id="a44a7843e49c3ff719f06607b6e908f7d"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class ObjectType&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classScopedPointer.html">ScopedPointer</a>&lt; ObjectType &gt;::<a class="el" href="classScopedPointer.html">ScopedPointer</a> </td>
<td>(</td>
<td class="paramtype">ObjectType *const&#160;</td>
<td class="paramname"><em>objectToTakePossessionOf</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Creates a <a class="el" href="classScopedPointer.html">ScopedPointer</a> that owns the specified object. </p>

</div>
</div>
<a class="anchor" id="a04688b1561dd9d861ca80c6deb63a233"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class ObjectType&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classScopedPointer.html">ScopedPointer</a>&lt; ObjectType &gt;::<a class="el" href="classScopedPointer.html">ScopedPointer</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classScopedPointer.html">ScopedPointer</a>&lt; ObjectType &gt; &amp;&#160;</td>
<td class="paramname"><em>objectToTransferFrom</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Creates a <a class="el" href="classScopedPointer.html">ScopedPointer</a> that takes its pointer from another <a class="el" href="classScopedPointer.html">ScopedPointer</a>.</p>
<p>Because a pointer can only belong to one <a class="el" href="classScopedPointer.html">ScopedPointer</a>, this transfers the pointer from the other object to this one, and the other object is reset to be a null pointer. </p>

</div>
</div>
<a class="anchor" id="a3c540f0121065aafa5f9607362fc1450"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class ObjectType&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classScopedPointer.html">ScopedPointer</a>&lt; ObjectType &gt;::~<a class="el" href="classScopedPointer.html">ScopedPointer</a> </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Destructor. This will delete the object that this <a class="el" href="classScopedPointer.html">ScopedPointer</a> currently refers to. </p>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="afefc7940828d72c056e03804cd6bea9f"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class ObjectType&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classScopedPointer.html">ScopedPointer</a>&amp; <a class="el" href="classScopedPointer.html">ScopedPointer</a>&lt; ObjectType &gt;::operator= </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classScopedPointer.html">ScopedPointer</a>&lt; ObjectType &gt; &amp;&#160;</td>
<td class="paramname"><em>objectToTransferFrom</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Changes this <a class="el" href="classScopedPointer.html">ScopedPointer</a> to point to a new object.</p>
<p>Because a pointer can only belong to one <a class="el" href="classScopedPointer.html">ScopedPointer</a>, this transfers the pointer from the other object to this one, and the other object is reset to be a null pointer.</p>
<p>If this <a class="el" href="classScopedPointer.html">ScopedPointer</a> already points to an object, that object will first be deleted. </p>

</div>
</div>
<a class="anchor" id="a88ee7f038e57471539d3181141c0390e"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class ObjectType&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classScopedPointer.html">ScopedPointer</a>&amp; <a class="el" href="classScopedPointer.html">ScopedPointer</a>&lt; ObjectType &gt;::operator= </td>
<td>(</td>
<td class="paramtype">ObjectType *const&#160;</td>
<td class="paramname"><em>newObjectToTakePossessionOf</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Changes this <a class="el" href="classScopedPointer.html">ScopedPointer</a> to point to a new object.</p>
<p>If this <a class="el" href="classScopedPointer.html">ScopedPointer</a> already points to an object, that object will first be deleted.</p>
<p>The pointer that you pass in may be a nullptr. </p>

</div>
</div>
<a class="anchor" id="af7c241c736d79754fd6f8d305cce8bc3"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class ObjectType&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classScopedPointer.html">ScopedPointer</a>&lt; ObjectType &gt;::operator ObjectType * </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the object that this <a class="el" href="classScopedPointer.html">ScopedPointer</a> refers to. </p>

</div>
</div>
<a class="anchor" id="ac65fb45b9eb2d53773489fcfbc6fd740"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class ObjectType&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">ObjectType* <a class="el" href="classScopedPointer.html">ScopedPointer</a>&lt; ObjectType &gt;::get </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the object that this <a class="el" href="classScopedPointer.html">ScopedPointer</a> refers to. </p>

</div>
</div>
<a class="anchor" id="a2f48458a1656a6ef1bd35cb8452eed35"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class ObjectType&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">ObjectType&amp; <a class="el" href="classScopedPointer.html">ScopedPointer</a>&lt; ObjectType &gt;::operator* </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the object that this <a class="el" href="classScopedPointer.html">ScopedPointer</a> refers to. </p>

</div>
</div>
<a class="anchor" id="a6eedc84349cbe629cc1abb79ffa74e87"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class ObjectType&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">ObjectType* <a class="el" href="classScopedPointer.html">ScopedPointer</a>&lt; ObjectType &gt;::operator-&gt; </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Lets you access methods and properties of the object that this <a class="el" href="classScopedPointer.html">ScopedPointer</a> refers to. </p>

</div>
</div>
<a class="anchor" id="a10c8f696fec0cca763b067ec3e469199"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class ObjectType&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">ObjectType* <a class="el" href="classScopedPointer.html">ScopedPointer</a>&lt; ObjectType &gt;::release </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Removes the current object from this <a class="el" href="classScopedPointer.html">ScopedPointer</a> without deleting it. This will return the current object, and set the <a class="el" href="classScopedPointer.html">ScopedPointer</a> to a null pointer. </p>

</div>
</div>
<a class="anchor" id="a362cd8d5a212df0ee08691b75a4ba3de"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class ObjectType&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classScopedPointer.html">ScopedPointer</a>&lt; ObjectType &gt;::swapWith </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classScopedPointer.html">ScopedPointer</a>&lt; ObjectType &gt; &amp;&#160;</td>
<td class="paramname"><em>other</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Swaps this object with that of another <a class="el" href="classScopedPointer.html">ScopedPointer</a>. The two objects simply exchange their pointers. </p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>distrho/extra/<a class="el" href="d__scopedpointer_8hpp_source.html">d_scopedpointer.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 102
- 0
classScopedUnlocker-members.html View File

@@ -0,0 +1,102 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: Member List</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">ScopedUnlocker&lt; Mutex &gt; Member List</div> </div>
</div><!--header-->
<div class="contents">

<p>This is the complete list of members for <a class="el" href="classScopedUnlocker.html">ScopedUnlocker&lt; Mutex &gt;</a>, including all inherited members.</p>
<table class="directory">
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>ScopedUnlocker</b>(const Mutex &amp;mutex) noexcept (defined in <a class="el" href="classScopedUnlocker.html">ScopedUnlocker&lt; Mutex &gt;</a>)</td><td class="entry"><a class="el" href="classScopedUnlocker.html">ScopedUnlocker&lt; Mutex &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>~ScopedUnlocker</b>() noexcept (defined in <a class="el" href="classScopedUnlocker.html">ScopedUnlocker&lt; Mutex &gt;</a>)</td><td class="entry"><a class="el" href="classScopedUnlocker.html">ScopedUnlocker&lt; Mutex &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 110
- 0
classScopedUnlocker.html View File

@@ -0,0 +1,110 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: ScopedUnlocker&lt; Mutex &gt; Class Template Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classScopedUnlocker-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">ScopedUnlocker&lt; Mutex &gt; Class Template Reference</div> </div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a2f0d2b3f476da4ef1f16cb33e0dac6b4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2f0d2b3f476da4ef1f16cb33e0dac6b4"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>ScopedUnlocker</b> (const <a class="el" href="classMutex.html">Mutex</a> &amp;mutex) noexcept</td></tr>
<tr class="separator:a2f0d2b3f476da4ef1f16cb33e0dac6b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>distrho/extra/<a class="el" href="d__mutex_8hpp_source.html">d_mutex.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 125
- 0
classSize-members.html View File

@@ -0,0 +1,125 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: Member List</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">Size&lt; T &gt; Member List</div> </div>
</div><!--header-->
<div class="contents">

<p>This is the complete list of members for <a class="el" href="classSize.html">Size&lt; T &gt;</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classSize.html#a562e9d68738d1873a6aa0615af80505b">getHeight</a>() const noexcept</td><td class="entry"><a class="el" href="classSize.html">Size&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classSize.html#a3e65e5ff12f6bf57eaa6f45c54346942">getWidth</a>() const noexcept</td><td class="entry"><a class="el" href="classSize.html">Size&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classSize.html#ac6cb1721051ed5c8f21467f009d72982">growBy</a>(double multiplier) noexcept</td><td class="entry"><a class="el" href="classSize.html">Size&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classSize.html#ab832e37b50a2d98648be4ac811af305f">isInvalid</a>() const noexcept</td><td class="entry"><a class="el" href="classSize.html">Size&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classSize.html#a57093e93dcdfadc9f720b9d8fda4b59e">isNotNull</a>() const noexcept</td><td class="entry"><a class="el" href="classSize.html">Size&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classSize.html#ab49a572da2fb72ab4f6dfd7a06b000c8">isNull</a>() const noexcept</td><td class="entry"><a class="el" href="classSize.html">Size&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classSize.html#a1e6c381d5a5c19e7ab2c83118ebbd0ec">isValid</a>() const noexcept</td><td class="entry"><a class="el" href="classSize.html">Size&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>operator!=</b>(const Size&lt; T &gt; &amp;size) const noexcept (defined in <a class="el" href="classSize.html">Size&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classSize.html">Size&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>operator*=</b>(double m) noexcept (defined in <a class="el" href="classSize.html">Size&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classSize.html">Size&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>operator+</b>(const Size&lt; T &gt; &amp;size) noexcept (defined in <a class="el" href="classSize.html">Size&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classSize.html">Size&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>operator+=</b>(const Size&lt; T &gt; &amp;size) noexcept (defined in <a class="el" href="classSize.html">Size&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classSize.html">Size&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>operator-</b>(const Size&lt; T &gt; &amp;size) noexcept (defined in <a class="el" href="classSize.html">Size&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classSize.html">Size&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>operator-=</b>(const Size&lt; T &gt; &amp;size) noexcept (defined in <a class="el" href="classSize.html">Size&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classSize.html">Size&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>operator/=</b>(double d) noexcept (defined in <a class="el" href="classSize.html">Size&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classSize.html">Size&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>operator=</b>(const Size&lt; T &gt; &amp;size) noexcept (defined in <a class="el" href="classSize.html">Size&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classSize.html">Size&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>operator==</b>(const Size&lt; T &gt; &amp;size) const noexcept (defined in <a class="el" href="classSize.html">Size&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classSize.html">Size&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Rectangle</b> (defined in <a class="el" href="classSize.html">Size&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classSize.html">Size&lt; T &gt;</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
<tr><td class="entry"><a class="el" href="classSize.html#a30d453133d7a677e14641f010204237e">setHeight</a>(const T &amp;height) noexcept</td><td class="entry"><a class="el" href="classSize.html">Size&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classSize.html#a6dd4d69857ef92c65dd941eea3356ed9">setSize</a>(const T &amp;width, const T &amp;height) noexcept</td><td class="entry"><a class="el" href="classSize.html">Size&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classSize.html#a973da47d41aaa3757646a8ec0a1d93da">setSize</a>(const Size&lt; T &gt; &amp;size) noexcept</td><td class="entry"><a class="el" href="classSize.html">Size&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classSize.html#aa552662217b3e8e9c0b6d69d7bc22665">setWidth</a>(const T &amp;width) noexcept</td><td class="entry"><a class="el" href="classSize.html">Size&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classSize.html#abbcf98f504b23679162cab3b6f818949">shrinkBy</a>(double divider) noexcept</td><td class="entry"><a class="el" href="classSize.html">Size&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classSize.html#ada0c1f75029742b2514ede5466993776">Size</a>() noexcept</td><td class="entry"><a class="el" href="classSize.html">Size&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classSize.html#ac3096253937df7e318a02838c48bf941">Size</a>(const T &amp;width, const T &amp;height) noexcept</td><td class="entry"><a class="el" href="classSize.html">Size&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classSize.html#a90ab9513f96f3642def121d2fbd92593">Size</a>(const Size&lt; T &gt; &amp;size) noexcept</td><td class="entry"><a class="el" href="classSize.html">Size&lt; T &gt;</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 600
- 0
classSize.html View File

@@ -0,0 +1,600 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: Size&lt; T &gt; Class Template Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#friends">Friends</a> &#124;
<a href="classSize-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">Size&lt; T &gt; Class Template Reference</div> </div>
</div><!--header-->
<div class="contents">

<p><code>#include &lt;<a class="el" href="Geometry_8hpp_source.html">Geometry.hpp</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:ada0c1f75029742b2514ede5466993776"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSize.html#ada0c1f75029742b2514ede5466993776">Size</a> () noexcept</td></tr>
<tr class="separator:ada0c1f75029742b2514ede5466993776"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac3096253937df7e318a02838c48bf941"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSize.html#ac3096253937df7e318a02838c48bf941">Size</a> (const T &amp;width, const T &amp;height) noexcept</td></tr>
<tr class="separator:ac3096253937df7e318a02838c48bf941"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a90ab9513f96f3642def121d2fbd92593"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSize.html#a90ab9513f96f3642def121d2fbd92593">Size</a> (const <a class="el" href="classSize.html">Size</a>&lt; T &gt; &amp;size) noexcept</td></tr>
<tr class="separator:a90ab9513f96f3642def121d2fbd92593"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3e65e5ff12f6bf57eaa6f45c54346942"><td class="memItemLeft" align="right" valign="top">const T &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSize.html#a3e65e5ff12f6bf57eaa6f45c54346942">getWidth</a> () const noexcept</td></tr>
<tr class="separator:a3e65e5ff12f6bf57eaa6f45c54346942"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a562e9d68738d1873a6aa0615af80505b"><td class="memItemLeft" align="right" valign="top">const T &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSize.html#a562e9d68738d1873a6aa0615af80505b">getHeight</a> () const noexcept</td></tr>
<tr class="separator:a562e9d68738d1873a6aa0615af80505b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa552662217b3e8e9c0b6d69d7bc22665"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSize.html#aa552662217b3e8e9c0b6d69d7bc22665">setWidth</a> (const T &amp;width) noexcept</td></tr>
<tr class="separator:aa552662217b3e8e9c0b6d69d7bc22665"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a30d453133d7a677e14641f010204237e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSize.html#a30d453133d7a677e14641f010204237e">setHeight</a> (const T &amp;height) noexcept</td></tr>
<tr class="separator:a30d453133d7a677e14641f010204237e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6dd4d69857ef92c65dd941eea3356ed9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSize.html#a6dd4d69857ef92c65dd941eea3356ed9">setSize</a> (const T &amp;width, const T &amp;height) noexcept</td></tr>
<tr class="separator:a6dd4d69857ef92c65dd941eea3356ed9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a973da47d41aaa3757646a8ec0a1d93da"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSize.html#a973da47d41aaa3757646a8ec0a1d93da">setSize</a> (const <a class="el" href="classSize.html">Size</a>&lt; T &gt; &amp;size) noexcept</td></tr>
<tr class="separator:a973da47d41aaa3757646a8ec0a1d93da"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac6cb1721051ed5c8f21467f009d72982"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSize.html#ac6cb1721051ed5c8f21467f009d72982">growBy</a> (double multiplier) noexcept</td></tr>
<tr class="separator:ac6cb1721051ed5c8f21467f009d72982"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abbcf98f504b23679162cab3b6f818949"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSize.html#abbcf98f504b23679162cab3b6f818949">shrinkBy</a> (double divider) noexcept</td></tr>
<tr class="separator:abbcf98f504b23679162cab3b6f818949"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab49a572da2fb72ab4f6dfd7a06b000c8"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSize.html#ab49a572da2fb72ab4f6dfd7a06b000c8">isNull</a> () const noexcept</td></tr>
<tr class="separator:ab49a572da2fb72ab4f6dfd7a06b000c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a57093e93dcdfadc9f720b9d8fda4b59e"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSize.html#a57093e93dcdfadc9f720b9d8fda4b59e">isNotNull</a> () const noexcept</td></tr>
<tr class="separator:a57093e93dcdfadc9f720b9d8fda4b59e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1e6c381d5a5c19e7ab2c83118ebbd0ec"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSize.html#a1e6c381d5a5c19e7ab2c83118ebbd0ec">isValid</a> () const noexcept</td></tr>
<tr class="separator:a1e6c381d5a5c19e7ab2c83118ebbd0ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab832e37b50a2d98648be4ac811af305f"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classSize.html#ab832e37b50a2d98648be4ac811af305f">isInvalid</a> () const noexcept</td></tr>
<tr class="separator:ab832e37b50a2d98648be4ac811af305f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8b0790e006158e54701e6c9f8d6495ac"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8b0790e006158e54701e6c9f8d6495ac"></a>
<a class="el" href="classSize.html">Size</a>&lt; T &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>operator+</b> (const <a class="el" href="classSize.html">Size</a>&lt; T &gt; &amp;size) noexcept</td></tr>
<tr class="separator:a8b0790e006158e54701e6c9f8d6495ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad0803fa2bb4da0b596f47d00b1827539"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad0803fa2bb4da0b596f47d00b1827539"></a>
<a class="el" href="classSize.html">Size</a>&lt; T &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>operator-</b> (const <a class="el" href="classSize.html">Size</a>&lt; T &gt; &amp;size) noexcept</td></tr>
<tr class="separator:ad0803fa2bb4da0b596f47d00b1827539"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a406aae79812c7928edb37b0b06e63800"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a406aae79812c7928edb37b0b06e63800"></a>
<a class="el" href="classSize.html">Size</a>&lt; T &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (const <a class="el" href="classSize.html">Size</a>&lt; T &gt; &amp;size) noexcept</td></tr>
<tr class="separator:a406aae79812c7928edb37b0b06e63800"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae1678fde8d841a60d58bee13e53410f4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae1678fde8d841a60d58bee13e53410f4"></a>
<a class="el" href="classSize.html">Size</a>&lt; T &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator+=</b> (const <a class="el" href="classSize.html">Size</a>&lt; T &gt; &amp;size) noexcept</td></tr>
<tr class="separator:ae1678fde8d841a60d58bee13e53410f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aebd15adc4e278fdb36a0a98653bf6fb8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aebd15adc4e278fdb36a0a98653bf6fb8"></a>
<a class="el" href="classSize.html">Size</a>&lt; T &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator-=</b> (const <a class="el" href="classSize.html">Size</a>&lt; T &gt; &amp;size) noexcept</td></tr>
<tr class="separator:aebd15adc4e278fdb36a0a98653bf6fb8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1e1acc25bcc33fd3e021f088fb1a4954"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1e1acc25bcc33fd3e021f088fb1a4954"></a>
<a class="el" href="classSize.html">Size</a>&lt; T &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator*=</b> (double m) noexcept</td></tr>
<tr class="separator:a1e1acc25bcc33fd3e021f088fb1a4954"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4403812fe4e6910a06ccae7a3cab1f27"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4403812fe4e6910a06ccae7a3cab1f27"></a>
<a class="el" href="classSize.html">Size</a>&lt; T &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator/=</b> (double d) noexcept</td></tr>
<tr class="separator:a4403812fe4e6910a06ccae7a3cab1f27"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5b0d72bbb160a7edc2aaa4b2f18e40de"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5b0d72bbb160a7edc2aaa4b2f18e40de"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>operator==</b> (const <a class="el" href="classSize.html">Size</a>&lt; T &gt; &amp;size) const noexcept</td></tr>
<tr class="separator:a5b0d72bbb160a7edc2aaa4b2f18e40de"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0560070c108907a3b0ae49eaa3adaf43"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0560070c108907a3b0ae49eaa3adaf43"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>operator!=</b> (const <a class="el" href="classSize.html">Size</a>&lt; T &gt; &amp;size) const noexcept</td></tr>
<tr class="separator:a0560070c108907a3b0ae49eaa3adaf43"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
Friends</h2></td></tr>
<tr class="memitem:a9b0852de9d45cf8a1b602ce114984ae1"><td class="memTemplParams" colspan="2"><a class="anchor" id="a9b0852de9d45cf8a1b602ce114984ae1"></a>
template&lt;typename &gt; </td></tr>
<tr class="memitem:a9b0852de9d45cf8a1b602ce114984ae1"><td class="memTemplItemLeft" align="right" valign="top">class&#160;</td><td class="memTemplItemRight" valign="bottom"><b>Rectangle</b></td></tr>
<tr class="separator:a9b0852de9d45cf8a1b602ce114984ae1"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><h3>template&lt;typename T&gt;<br />
class Size&lt; T &gt;</h3>

<p>DGL <a class="el" href="classSize.html">Size</a> class.</p>
<p>This class describes a size, defined by a width and height value. </p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="ada0c1f75029742b2514ede5466993776"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classSize.html">Size</a>&lt; T &gt;::<a class="el" href="classSize.html">Size</a> </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Constructor for null size (0x0). </p>

</div>
</div>
<a class="anchor" id="ac3096253937df7e318a02838c48bf941"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classSize.html">Size</a>&lt; T &gt;::<a class="el" href="classSize.html">Size</a> </td>
<td>(</td>
<td class="paramtype">const T &amp;&#160;</td>
<td class="paramname"><em>width</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const T &amp;&#160;</td>
<td class="paramname"><em>height</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Constructor using custom width and height values. </p>

</div>
</div>
<a class="anchor" id="a90ab9513f96f3642def121d2fbd92593"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classSize.html">Size</a>&lt; T &gt;::<a class="el" href="classSize.html">Size</a> </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classSize.html">Size</a>&lt; T &gt; &amp;&#160;</td>
<td class="paramname"><em>size</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Constructor using another <a class="el" href="classSize.html">Size</a> class values. </p>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a3e65e5ff12f6bf57eaa6f45c54346942"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const T&amp; <a class="el" href="classSize.html">Size</a>&lt; T &gt;::getWidth </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get width. </p>

</div>
</div>
<a class="anchor" id="a562e9d68738d1873a6aa0615af80505b"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const T&amp; <a class="el" href="classSize.html">Size</a>&lt; T &gt;::getHeight </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get height. </p>

</div>
</div>
<a class="anchor" id="aa552662217b3e8e9c0b6d69d7bc22665"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classSize.html">Size</a>&lt; T &gt;::setWidth </td>
<td>(</td>
<td class="paramtype">const T &amp;&#160;</td>
<td class="paramname"><em>width</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Set width. </p>

</div>
</div>
<a class="anchor" id="a30d453133d7a677e14641f010204237e"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classSize.html">Size</a>&lt; T &gt;::setHeight </td>
<td>(</td>
<td class="paramtype">const T &amp;&#160;</td>
<td class="paramname"><em>height</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Set height. </p>

</div>
</div>
<a class="anchor" id="a6dd4d69857ef92c65dd941eea3356ed9"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classSize.html">Size</a>&lt; T &gt;::setSize </td>
<td>(</td>
<td class="paramtype">const T &amp;&#160;</td>
<td class="paramname"><em>width</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const T &amp;&#160;</td>
<td class="paramname"><em>height</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Set size to <em>width</em> and <em>height</em>. </p>

</div>
</div>
<a class="anchor" id="a973da47d41aaa3757646a8ec0a1d93da"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classSize.html">Size</a>&lt; T &gt;::setSize </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classSize.html">Size</a>&lt; T &gt; &amp;&#160;</td>
<td class="paramname"><em>size</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Set size. </p>

</div>
</div>
<a class="anchor" id="ac6cb1721051ed5c8f21467f009d72982"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classSize.html">Size</a>&lt; T &gt;::growBy </td>
<td>(</td>
<td class="paramtype">double&#160;</td>
<td class="paramname"><em>multiplier</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Grow size by <em>multiplier</em>. </p>

</div>
</div>
<a class="anchor" id="abbcf98f504b23679162cab3b6f818949"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="classSize.html">Size</a>&lt; T &gt;::shrinkBy </td>
<td>(</td>
<td class="paramtype">double&#160;</td>
<td class="paramname"><em>divider</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Shrink size by <em>divider</em>. </p>

</div>
</div>
<a class="anchor" id="ab49a572da2fb72ab4f6dfd7a06b000c8"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool <a class="el" href="classSize.html">Size</a>&lt; T &gt;::isNull </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Return true if size is null (0x0). An null size is also invalid. </p>

</div>
</div>
<a class="anchor" id="a57093e93dcdfadc9f720b9d8fda4b59e"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool <a class="el" href="classSize.html">Size</a>&lt; T &gt;::isNotNull </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Return true if size is not null (0x0). A non-null size is still invalid if its width or height is negative. </p>

</div>
</div>
<a class="anchor" id="a1e6c381d5a5c19e7ab2c83118ebbd0ec"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool <a class="el" href="classSize.html">Size</a>&lt; T &gt;::isValid </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Return true if size is valid (width and height are higher than zero). </p>

</div>
</div>
<a class="anchor" id="ab832e37b50a2d98648be4ac811af305f"></a>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T&gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool <a class="el" href="classSize.html">Size</a>&lt; T &gt;::isInvalid </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Return true if size is invalid (width or height are lower or equal to zero). An invalid size might not be null under some circumstances. </p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>dgl/<a class="el" href="Geometry_8hpp_source.html">Geometry.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 139
- 0
classStandaloneWindow-members.html View File

@@ -0,0 +1,139 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: Member List</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">StandaloneWindow Member List</div> </div>
</div><!--header-->
<div class="contents">

<p>This is the complete list of members for <a class="el" href="classStandaloneWindow.html">StandaloneWindow</a>, including all inherited members.</p>
<table class="directory">
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>addIdleCallback</b>(IdleCallback *const callback) (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classApp.html#acb8cbf3e285b91d0170ffe87df5989c5">App::App</a>()</td><td class="entry"><a class="el" href="classApp.html">App</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>close</b>() (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>exec</b>() (defined in <a class="el" href="classStandaloneWindow.html">StandaloneWindow</a>)</td><td class="entry"><a class="el" href="classStandaloneWindow.html">StandaloneWindow</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>exec</b>(bool lockWait=false) (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>fileBrowserSelected</b>(const char *filename) (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>focus</b>() (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>getApp</b>() const noexcept (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>getHeight</b>() const noexcept (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>getSize</b>() const noexcept (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>getTitle</b>() const noexcept (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>getWidth</b>() const noexcept (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>getWindowId</b>() const noexcept (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>hide</b>() (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classApp.html#a4309d67edf51bdf612a82220285ada49">idle</a>()</td><td class="entry"><a class="el" href="classApp.html">App</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classApp.html#af7471b06a9bfccc16293b020268d0401">isQuiting</a>() const noexcept</td><td class="entry"><a class="el" href="classApp.html">App</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>isResizable</b>() const noexcept (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>isVisible</b>() const noexcept (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>onClose</b>() (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>onDisplayAfter</b>() (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>onDisplayBefore</b>() (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>onReshape</b>(uint width, uint height) override (defined in <a class="el" href="classStandaloneWindow.html">StandaloneWindow</a>)</td><td class="entry"><a class="el" href="classStandaloneWindow.html">StandaloneWindow</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>openFileBrowser</b>(const FileBrowserOptions &amp;options) (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classApp.html#ab474007a8e53ffa41f9a13e0640b387f">quit</a>()</td><td class="entry"><a class="el" href="classApp.html">App</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>removeIdleCallback</b>(IdleCallback *const callback) (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>repaint</b>() noexcept (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>setResizable</b>(bool yesNo) (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>setSize</b>(uint width, uint height) (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>setSize</b>(Size&lt; uint &gt; size) (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>setTitle</b>(const char *title) (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>setTransientWinId</b>(uintptr_t winId) (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>setVisible</b>(bool yesNo) (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>show</b>() (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>StandaloneWindow</b>() (defined in <a class="el" href="classStandaloneWindow.html">StandaloneWindow</a>)</td><td class="entry"><a class="el" href="classStandaloneWindow.html">StandaloneWindow</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Window</b>(App &amp;app) (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>Window</b>(App &amp;app, Window &amp;parent) (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Window</b>(App &amp;app, intptr_t parentId) (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
<tr><td class="entry"><a class="el" href="classApp.html#a34f1f253b1cef5f4ecbac66eaf6964ec">~App</a>()</td><td class="entry"><a class="el" href="classApp.html">App</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~Window</b>() (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 232
- 0
classStandaloneWindow.html View File

@@ -0,0 +1,232 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: StandaloneWindow Class Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="classStandaloneWindow-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">StandaloneWindow Class Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="dynheader">
Inheritance diagram for StandaloneWindow:</div>
<div class="dyncontent">
<div class="center">
<img src="classStandaloneWindow.png" usemap="#StandaloneWindow_map" alt=""/>
<map id="StandaloneWindow_map" name="StandaloneWindow_map">
<area href="classApp.html" alt="App" shape="rect" coords="0,0,119,24"/>
<area href="classWindow.html" alt="Window" shape="rect" coords="129,0,248,24"/>
</map>
</div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:aa8fcc3ae9fc81e388d1e6dfe3e1b0b4b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa8fcc3ae9fc81e388d1e6dfe3e1b0b4b"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>exec</b> ()</td></tr>
<tr class="separator:aa8fcc3ae9fc81e388d1e6dfe3e1b0b4b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classApp"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classApp')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classApp.html">App</a></td></tr>
<tr class="memitem:acb8cbf3e285b91d0170ffe87df5989c5 inherit pub_methods_classApp"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classApp.html#acb8cbf3e285b91d0170ffe87df5989c5">App</a> ()</td></tr>
<tr class="separator:acb8cbf3e285b91d0170ffe87df5989c5 inherit pub_methods_classApp"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a34f1f253b1cef5f4ecbac66eaf6964ec inherit pub_methods_classApp"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classApp.html#a34f1f253b1cef5f4ecbac66eaf6964ec">~App</a> ()</td></tr>
<tr class="separator:a34f1f253b1cef5f4ecbac66eaf6964ec inherit pub_methods_classApp"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4309d67edf51bdf612a82220285ada49 inherit pub_methods_classApp"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classApp.html#a4309d67edf51bdf612a82220285ada49">idle</a> ()</td></tr>
<tr class="separator:a4309d67edf51bdf612a82220285ada49 inherit pub_methods_classApp"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a94fa325175749054947480e1ae66b110 inherit pub_methods_classApp"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classApp.html#a94fa325175749054947480e1ae66b110">exec</a> ()</td></tr>
<tr class="separator:a94fa325175749054947480e1ae66b110 inherit pub_methods_classApp"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab474007a8e53ffa41f9a13e0640b387f inherit pub_methods_classApp"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classApp.html#ab474007a8e53ffa41f9a13e0640b387f">quit</a> ()</td></tr>
<tr class="separator:ab474007a8e53ffa41f9a13e0640b387f inherit pub_methods_classApp"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af7471b06a9bfccc16293b020268d0401 inherit pub_methods_classApp"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classApp.html#af7471b06a9bfccc16293b020268d0401">isQuiting</a> () const noexcept</td></tr>
<tr class="separator:af7471b06a9bfccc16293b020268d0401 inherit pub_methods_classApp"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classWindow"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classWindow')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classWindow.html">Window</a></td></tr>
<tr class="memitem:ad3b0d5f4e188c6aaa01d4d669c5dbdf8 inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad3b0d5f4e188c6aaa01d4d669c5dbdf8"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>Window</b> (<a class="el" href="classApp.html">App</a> &amp;app)</td></tr>
<tr class="separator:ad3b0d5f4e188c6aaa01d4d669c5dbdf8 inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad74a58ec3c3e1f2cc6337d0352a73c94 inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad74a58ec3c3e1f2cc6337d0352a73c94"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>Window</b> (<a class="el" href="classApp.html">App</a> &amp;app, <a class="el" href="classWindow.html">Window</a> &amp;parent)</td></tr>
<tr class="separator:ad74a58ec3c3e1f2cc6337d0352a73c94 inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae4aa8ab25259a7bd34658cad19928e81 inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae4aa8ab25259a7bd34658cad19928e81"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>Window</b> (<a class="el" href="classApp.html">App</a> &amp;app, intptr_t parentId)</td></tr>
<tr class="separator:ae4aa8ab25259a7bd34658cad19928e81 inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8f986e19a11c4c97ed8e6ad3d0e648b7 inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8f986e19a11c4c97ed8e6ad3d0e648b7"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>show</b> ()</td></tr>
<tr class="separator:a8f986e19a11c4c97ed8e6ad3d0e648b7 inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4626829d3cb9d01285f739d2bbc69b74 inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4626829d3cb9d01285f739d2bbc69b74"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>hide</b> ()</td></tr>
<tr class="separator:a4626829d3cb9d01285f739d2bbc69b74 inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a35055c04498121d39741bfcd5082705b inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a35055c04498121d39741bfcd5082705b"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>close</b> ()</td></tr>
<tr class="separator:a35055c04498121d39741bfcd5082705b inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4a9fd2970404d2e67856bc23e11c9e50 inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4a9fd2970404d2e67856bc23e11c9e50"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>exec</b> (bool lockWait=false)</td></tr>
<tr class="separator:a4a9fd2970404d2e67856bc23e11c9e50 inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a03985e4ca2c9b4fcf572b5029e8c0115 inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a03985e4ca2c9b4fcf572b5029e8c0115"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>focus</b> ()</td></tr>
<tr class="separator:a03985e4ca2c9b4fcf572b5029e8c0115 inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a729ab39a1ac99d81b289e08a42582ade inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a729ab39a1ac99d81b289e08a42582ade"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>repaint</b> () noexcept</td></tr>
<tr class="separator:a729ab39a1ac99d81b289e08a42582ade inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa0d7a058ff1194def1a07edb21c30f4c inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa0d7a058ff1194def1a07edb21c30f4c"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>openFileBrowser</b> (const <a class="el" href="structWindow_1_1FileBrowserOptions.html">FileBrowserOptions</a> &amp;options)</td></tr>
<tr class="separator:aa0d7a058ff1194def1a07edb21c30f4c inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6be53a737e7dfcc74167962437e93b8f inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6be53a737e7dfcc74167962437e93b8f"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>isVisible</b> () const noexcept</td></tr>
<tr class="separator:a6be53a737e7dfcc74167962437e93b8f inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9729d92a50712cd3d37041f8c7f54fad inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9729d92a50712cd3d37041f8c7f54fad"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>setVisible</b> (bool yesNo)</td></tr>
<tr class="separator:a9729d92a50712cd3d37041f8c7f54fad inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1b888a7e6a5562968a253b915ccb7825 inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1b888a7e6a5562968a253b915ccb7825"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>isResizable</b> () const noexcept</td></tr>
<tr class="separator:a1b888a7e6a5562968a253b915ccb7825 inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad94f784be678b6d63939bf184b5413b3 inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad94f784be678b6d63939bf184b5413b3"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>setResizable</b> (bool yesNo)</td></tr>
<tr class="separator:ad94f784be678b6d63939bf184b5413b3 inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab19430997dd1b3d7bf9bd3640d73b007 inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab19430997dd1b3d7bf9bd3640d73b007"></a>
uint&#160;</td><td class="memItemRight" valign="bottom"><b>getWidth</b> () const noexcept</td></tr>
<tr class="separator:ab19430997dd1b3d7bf9bd3640d73b007 inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5d53bcba43455f8f77cfcbac61ec6c8e inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5d53bcba43455f8f77cfcbac61ec6c8e"></a>
uint&#160;</td><td class="memItemRight" valign="bottom"><b>getHeight</b> () const noexcept</td></tr>
<tr class="separator:a5d53bcba43455f8f77cfcbac61ec6c8e inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acd158570648b07967a4af011d6223eea inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acd158570648b07967a4af011d6223eea"></a>
<a class="el" href="classSize.html">Size</a>&lt; uint &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>getSize</b> () const noexcept</td></tr>
<tr class="separator:acd158570648b07967a4af011d6223eea inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a89bd0c91920029ddcb21b8975e8b47d9 inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a89bd0c91920029ddcb21b8975e8b47d9"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>setSize</b> (uint width, uint height)</td></tr>
<tr class="separator:a89bd0c91920029ddcb21b8975e8b47d9 inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a101c75c067671deddcd28d67dbdaefae inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a101c75c067671deddcd28d67dbdaefae"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>setSize</b> (<a class="el" href="classSize.html">Size</a>&lt; uint &gt; size)</td></tr>
<tr class="separator:a101c75c067671deddcd28d67dbdaefae inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af437e6afd9104708f30ab769d9afce7a inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af437e6afd9104708f30ab769d9afce7a"></a>
const char *&#160;</td><td class="memItemRight" valign="bottom"><b>getTitle</b> () const noexcept</td></tr>
<tr class="separator:af437e6afd9104708f30ab769d9afce7a inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab2f1b80c5dfcafd2cbdf6b85b756fdbd inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab2f1b80c5dfcafd2cbdf6b85b756fdbd"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>setTitle</b> (const char *title)</td></tr>
<tr class="separator:ab2f1b80c5dfcafd2cbdf6b85b756fdbd inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa00fb01e200451c925b7750bf2710010 inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa00fb01e200451c925b7750bf2710010"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>setTransientWinId</b> (uintptr_t winId)</td></tr>
<tr class="separator:aa00fb01e200451c925b7750bf2710010 inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ace49f35179b7f97468acdeb849762181 inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ace49f35179b7f97468acdeb849762181"></a>
<a class="el" href="classApp.html">App</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>getApp</b> () const noexcept</td></tr>
<tr class="separator:ace49f35179b7f97468acdeb849762181 inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abc7f04bab45e89fb23dfc156f996dbe7 inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abc7f04bab45e89fb23dfc156f996dbe7"></a>
intptr_t&#160;</td><td class="memItemRight" valign="bottom"><b>getWindowId</b> () const noexcept</td></tr>
<tr class="separator:abc7f04bab45e89fb23dfc156f996dbe7 inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5d002fd26f8389b9177ae30829439edd inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5d002fd26f8389b9177ae30829439edd"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>addIdleCallback</b> (<a class="el" href="classIdleCallback.html">IdleCallback</a> *const callback)</td></tr>
<tr class="separator:a5d002fd26f8389b9177ae30829439edd inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aab7051655ccdb53c1de7febb5fff93ca inherit pub_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aab7051655ccdb53c1de7febb5fff93ca"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>removeIdleCallback</b> (<a class="el" href="classIdleCallback.html">IdleCallback</a> *const callback)</td></tr>
<tr class="separator:aab7051655ccdb53c1de7febb5fff93ca inherit pub_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:a1128d3f13e14e6a229b598da7a29462f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1128d3f13e14e6a229b598da7a29462f"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>onReshape</b> (uint width, uint height) override</td></tr>
<tr class="separator:a1128d3f13e14e6a229b598da7a29462f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_classWindow"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classWindow')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classWindow.html">Window</a></td></tr>
<tr class="memitem:aaffc338094513893982daa88a6854b2c inherit pro_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aaffc338094513893982daa88a6854b2c"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>onDisplayBefore</b> ()</td></tr>
<tr class="separator:aaffc338094513893982daa88a6854b2c inherit pro_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1f9237bae01014d8703d27ccb60ea623 inherit pro_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1f9237bae01014d8703d27ccb60ea623"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>onDisplayAfter</b> ()</td></tr>
<tr class="separator:a1f9237bae01014d8703d27ccb60ea623 inherit pro_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa0edbace2768fe846d9fe0cdc2959dd0 inherit pro_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa0edbace2768fe846d9fe0cdc2959dd0"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>onClose</b> ()</td></tr>
<tr class="separator:aa0edbace2768fe846d9fe0cdc2959dd0 inherit pro_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6ec017881675f860ae746dad6c021b63 inherit pro_methods_classWindow"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6ec017881675f860ae746dad6c021b63"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>fileBrowserSelected</b> (const char *filename)</td></tr>
<tr class="separator:a6ec017881675f860ae746dad6c021b63 inherit pro_methods_classWindow"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>dgl/<a class="el" href="StandaloneWindow_8hpp_source.html">StandaloneWindow.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

BIN
classStandaloneWindow.png View File

Before After
Width: 248  |  Height: 80  |  Size: 658B

+ 110
- 0
classThread-members.html View File

@@ -0,0 +1,110 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: Member List</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">Thread Member List</div> </div>
</div><!--header-->
<div class="contents">

<p>This is the complete list of members for <a class="el" href="classThread.html">Thread</a>, including all inherited members.</p>
<table class="directory">
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>getThreadName</b>() const noexcept (defined in <a class="el" href="classThread.html">Thread</a>)</td><td class="entry"><a class="el" href="classThread.html">Thread</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>isThreadRunning</b>() const noexcept (defined in <a class="el" href="classThread.html">Thread</a>)</td><td class="entry"><a class="el" href="classThread.html">Thread</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>run</b>()=0 (defined in <a class="el" href="classThread.html">Thread</a>)</td><td class="entry"><a class="el" href="classThread.html">Thread</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>setCurrentThreadName</b>(const char *const name) noexcept (defined in <a class="el" href="classThread.html">Thread</a>)</td><td class="entry"><a class="el" href="classThread.html">Thread</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>shouldThreadExit</b>() const noexcept (defined in <a class="el" href="classThread.html">Thread</a>)</td><td class="entry"><a class="el" href="classThread.html">Thread</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>signalThreadShouldExit</b>() noexcept (defined in <a class="el" href="classThread.html">Thread</a>)</td><td class="entry"><a class="el" href="classThread.html">Thread</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>startThread</b>() noexcept (defined in <a class="el" href="classThread.html">Thread</a>)</td><td class="entry"><a class="el" href="classThread.html">Thread</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>stopThread</b>(const int timeOutMilliseconds) noexcept (defined in <a class="el" href="classThread.html">Thread</a>)</td><td class="entry"><a class="el" href="classThread.html">Thread</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Thread</b>(const char *const threadName=nullptr) noexcept (defined in <a class="el" href="classThread.html">Thread</a>)</td><td class="entry"><a class="el" href="classThread.html">Thread</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>~Thread</b>() (defined in <a class="el" href="classThread.html">Thread</a>)</td><td class="entry"><a class="el" href="classThread.html">Thread</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:35 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 142
- 0
classThread.html View File

@@ -0,0 +1,142 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: Thread Class Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="classThread-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">Thread Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a43ff15a88d142fd3fb112f6f801ad1ef"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a43ff15a88d142fd3fb112f6f801ad1ef"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>isThreadRunning</b> () const noexcept</td></tr>
<tr class="separator:a43ff15a88d142fd3fb112f6f801ad1ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a261ed6f5073b681129d6892b645aeac9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a261ed6f5073b681129d6892b645aeac9"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>shouldThreadExit</b> () const noexcept</td></tr>
<tr class="separator:a261ed6f5073b681129d6892b645aeac9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7dcfd73e108cf2288e53d2c130a5e9d1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7dcfd73e108cf2288e53d2c130a5e9d1"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>startThread</b> () noexcept</td></tr>
<tr class="separator:a7dcfd73e108cf2288e53d2c130a5e9d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a35a7bf228734d406243d7c52739f5c93"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a35a7bf228734d406243d7c52739f5c93"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>stopThread</b> (const int timeOutMilliseconds) noexcept</td></tr>
<tr class="separator:a35a7bf228734d406243d7c52739f5c93"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a72043b3684f6b51a089dff65f523491a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a72043b3684f6b51a089dff65f523491a"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>signalThreadShouldExit</b> () noexcept</td></tr>
<tr class="separator:a72043b3684f6b51a089dff65f523491a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4b36a8f92c2a1da60de24a979c6b65a5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4b36a8f92c2a1da60de24a979c6b65a5"></a>
const <a class="el" href="classd__string.html">d_string</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>getThreadName</b> () const noexcept</td></tr>
<tr class="separator:a4b36a8f92c2a1da60de24a979c6b65a5"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr class="memitem:accc450d8056f287d984c2cd8866daf2f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="accc450d8056f287d984c2cd8866daf2f"></a>
static void&#160;</td><td class="memItemRight" valign="bottom"><b>setCurrentThreadName</b> (const char *const name) noexcept</td></tr>
<tr class="separator:accc450d8056f287d984c2cd8866daf2f"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:a296f51dbefe82aa028d2cfabe1afc6a9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a296f51dbefe82aa028d2cfabe1afc6a9"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>Thread</b> (const char *const threadName=nullptr) noexcept</td></tr>
<tr class="separator:a296f51dbefe82aa028d2cfabe1afc6a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aae90dfabab3e1776cf01a26e7ee3a620"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aae90dfabab3e1776cf01a26e7ee3a620"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>run</b> ()=0</td></tr>
<tr class="separator:aae90dfabab3e1776cf01a26e7ee3a620"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>distrho/extra/<a class="el" href="d__thread_8hpp_source.html">d_thread.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 113
- 0
classTriangle-members.html View File

@@ -0,0 +1,113 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: Member List</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">Triangle&lt; T &gt; Member List</div> </div>
</div><!--header-->
<div class="contents">

<p>This is the complete list of members for <a class="el" href="singletonTriangle.html">Triangle&lt; T &gt;</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="singletonTriangle.html#a5dd94312d41f36fb149e03d90800bb53">draw</a>()</td><td class="entry"><a class="el" href="singletonTriangle.html">Triangle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="singletonTriangle.html#a93cda515489108aa6c14b0b1ab8cff11">drawOutline</a>()</td><td class="entry"><a class="el" href="singletonTriangle.html">Triangle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="singletonTriangle.html#a757b50c4c2e0d154c6626e252527fc2f">isInvalid</a>() const noexcept</td><td class="entry"><a class="el" href="singletonTriangle.html">Triangle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="singletonTriangle.html#ab825fecc8ba95577430002de793c5683">isNotNull</a>() const noexcept</td><td class="entry"><a class="el" href="singletonTriangle.html">Triangle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="singletonTriangle.html#a14729ce6716a66216a991ce7958dbed3">isNull</a>() const noexcept</td><td class="entry"><a class="el" href="singletonTriangle.html">Triangle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="singletonTriangle.html#a3fd5cf976cd212276d10885f99856bdc">isValid</a>() const noexcept</td><td class="entry"><a class="el" href="singletonTriangle.html">Triangle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>operator!=</b>(const Triangle&lt; T &gt; &amp;tri) const noexcept (defined in <a class="el" href="singletonTriangle.html">Triangle&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="singletonTriangle.html">Triangle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>operator=</b>(const Triangle&lt; T &gt; &amp;tri) noexcept (defined in <a class="el" href="singletonTriangle.html">Triangle&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="singletonTriangle.html">Triangle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>operator==</b>(const Triangle&lt; T &gt; &amp;tri) const noexcept (defined in <a class="el" href="singletonTriangle.html">Triangle&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="singletonTriangle.html">Triangle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="singletonTriangle.html#ad3ae4f80efb4b18f4f8b8a25543aa10c">Triangle</a>() noexcept</td><td class="entry"><a class="el" href="singletonTriangle.html">Triangle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="singletonTriangle.html#a394b031be82e2e0c043547ad1e551ddb">Triangle</a>(const T &amp;x1, const T &amp;y1, const T &amp;x2, const T &amp;y2, const T &amp;x3, const T &amp;y3) noexcept</td><td class="entry"><a class="el" href="singletonTriangle.html">Triangle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="singletonTriangle.html#a79fdc0930afc294c7bce90a2cd3075ed">Triangle</a>(const Point&lt; T &gt; &amp;pos1, const Point&lt; T &gt; &amp;pos2, const Point&lt; T &gt; &amp;pos3) noexcept</td><td class="entry"><a class="el" href="singletonTriangle.html">Triangle&lt; T &gt;</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="singletonTriangle.html#a5130f571dd5de1f070573929637544ce">Triangle</a>(const Triangle&lt; T &gt; &amp;tri) noexcept</td><td class="entry"><a class="el" href="singletonTriangle.html">Triangle&lt; T &gt;</a></td><td class="entry"></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:35 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 17
- 17
classUI-members.html View File

@@ -89,28 +89,28 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');

<p>This is the complete list of members for <a class="el" href="classUI.html">UI</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classUI.html#a768b898d1e063d5c0112197b99ccba99">d_editParameter</a>(const uint32_t index, const bool started)</td><td class="entry"><a class="el" href="classUI.html">UI</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classUI.html#a5393f505fc8702905c15c70c9fcf0d48">d_getPluginInstancePointer</a>() const noexcept</td><td class="entry"><a class="el" href="classUI.html">UI</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classUI.html#ab6cbe4dcade92f7f49d4405e51ee639c">d_getSampleRate</a>() const noexcept</td><td class="entry"><a class="el" href="classUI.html">UI</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classUI.html#a9599da33720f4648e9ce78cc18249b07">d_parameterChanged</a>(uint32_t index, float value)=0</td><td class="entry"><a class="el" href="classUI.html">UI</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classUI.html#a7d703d2caff4765f270686b8428a2fa0">d_programChanged</a>(uint32_t index)=0</td><td class="entry"><a class="el" href="classUI.html">UI</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classUI.html#a18f4b84a973405fc098e69047e0d1994">d_sampleRateChanged</a>(double newSampleRate)</td><td class="entry"><a class="el" href="classUI.html">UI</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classUI.html#a621c381126d8e2f0124199b82cdcd456">d_sendNote</a>(const uint8_t channel, const uint8_t note, const uint8_t velocity)</td><td class="entry"><a class="el" href="classUI.html">UI</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classUI.html#a310a08018194f82937ca92bed4e77f1f">d_setParameterValue</a>(const uint32_t index, const float value)</td><td class="entry"><a class="el" href="classUI.html">UI</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classUI.html#ac32cb7fd88c642eadebf64137acd910e">d_setState</a>(const char *const key, const char *const value)</td><td class="entry"><a class="el" href="classUI.html">UI</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classUI.html#a7f508ebffec7a5168b532ccb9d81df70">d_stateChanged</a>(const char *key, const char *value)=0</td><td class="entry"><a class="el" href="classUI.html">UI</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classUI.html#ab10300e34b40d6b447b1213813f474c0">d_uiFileBrowserSelected</a>(const char *filename)</td><td class="entry"><a class="el" href="classUI.html">UI</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classUI.html#aa320b8d3e826394dad9f7c36692f9b6c">d_uiIdle</a>()</td><td class="entry"><a class="el" href="classUI.html">UI</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classUI.html#aaf729415450434ad6690db93fd936bbf">d_uiReshape</a>(uint width, uint height)</td><td class="entry"><a class="el" href="classUI.html">UI</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classUI.html#aeea59720583d501254284e5be540f60e">editParameter</a>(const uint32_t index, const bool started)</td><td class="entry"><a class="el" href="classUI.html">UI</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classUI.html#a0863a8f7ca7fc7e172e703c58518329f">getPluginInstancePointer</a>() const noexcept</td><td class="entry"><a class="el" href="classUI.html">UI</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classUI.html#a97d880182254652f94e7bed355370c07">getSampleRate</a>() const noexcept</td><td class="entry"><a class="el" href="classUI.html">UI</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classUI.html#a8de15be030bbdf0eb81461349cb1cc77">onResize</a>(const ResizeEvent &amp;ev) override</td><td class="entry"><a class="el" href="classUI.html">UI</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classUI.html#ad3425075e4a23234a8568d1893b54f22">UI</a>(uint width=0, uint height=0)</td><td class="entry"><a class="el" href="classUI.html">UI</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>UIExporter</b> (defined in <a class="el" href="classUI.html">UI</a>)</td><td class="entry"><a class="el" href="classUI.html">UI</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>UIExporterWindow</b> (defined in <a class="el" href="classUI.html">UI</a>)</td><td class="entry"><a class="el" href="classUI.html">UI</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classUI.html#ab3086d302a9685b25abf144ade3e88f6">parameterChanged</a>(uint32_t index, float value)=0</td><td class="entry"><a class="el" href="classUI.html">UI</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classUI.html#a84c36578d87c5b569d1ab6a372f31937">programChanged</a>(uint32_t index)=0</td><td class="entry"><a class="el" href="classUI.html">UI</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classUI.html#ac3e98726ca71f95a1e6c867706ebd9be">sampleRateChanged</a>(double newSampleRate)</td><td class="entry"><a class="el" href="classUI.html">UI</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classUI.html#a95d686f44e486f7ed1505399612b4f84">sendNote</a>(const uint8_t channel, const uint8_t note, const uint8_t velocity)</td><td class="entry"><a class="el" href="classUI.html">UI</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classUI.html#ab280fd0729e3b51d15ededbd61f5c93c">setParameterValue</a>(const uint32_t index, const float value)</td><td class="entry"><a class="el" href="classUI.html">UI</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classUI.html#aa50fc2fef715805435a14f653cb90cbd">setState</a>(const char *const key, const char *const value)</td><td class="entry"><a class="el" href="classUI.html">UI</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classUI.html#a1bdc7e158d974e82f0535f1658d66575">stateChanged</a>(const char *key, const char *value)=0</td><td class="entry"><a class="el" href="classUI.html">UI</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classUI.html#ad3425075e4a23234a8568d1893b54f22">UI</a>(uint width=0, uint height=0)</td><td class="entry"><a class="el" href="classUI.html">UI</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>UIExporter</b> (defined in <a class="el" href="classUI.html">UI</a>)</td><td class="entry"><a class="el" href="classUI.html">UI</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>UIExporterWindow</b> (defined in <a class="el" href="classUI.html">UI</a>)</td><td class="entry"><a class="el" href="classUI.html">UI</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classUI.html#a6d4697296129d3a6bc34fc810d6297ac">uiFileBrowserSelected</a>(const char *filename)</td><td class="entry"><a class="el" href="classUI.html">UI</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classUI.html#af8de639088f3b2d42c266a2d2d6719da">uiIdle</a>()</td><td class="entry"><a class="el" href="classUI.html">UI</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classUI.html#ab6861389e1bb01268a189dadbeb4fbcc">uiReshape</a>(uint width, uint height)</td><td class="entry"><a class="el" href="classUI.html">UI</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classUI.html#a47e7b6111faba049dfee4738d067cc42">~UI</a>()</td><td class="entry"><a class="el" href="classUI.html">UI</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Fri Apr 24 2015 00:23:57 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Sun Apr 26 2015 14:49:35 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>


+ 57
- 57
classUI.html View File

@@ -88,7 +88,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<a href="#friends">Friends</a> &#124;
<a href="classUI-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">UI Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div>
<div class="title">UI Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span><div class="ingroups"><a class="el" href="group__MainClasses.html">Main Classes</a></div></div> </div>
</div><!--header-->
<div class="contents">

@@ -108,35 +108,35 @@ Public Member Functions</h2></td></tr>
<tr class="separator:ad3425075e4a23234a8568d1893b54f22"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a47e7b6111faba049dfee4738d067cc42"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUI.html#a47e7b6111faba049dfee4738d067cc42">~UI</a> ()</td></tr>
<tr class="separator:a47e7b6111faba049dfee4738d067cc42"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab6cbe4dcade92f7f49d4405e51ee639c"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUI.html#ab6cbe4dcade92f7f49d4405e51ee639c">d_getSampleRate</a> () const noexcept</td></tr>
<tr class="separator:ab6cbe4dcade92f7f49d4405e51ee639c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a768b898d1e063d5c0112197b99ccba99"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUI.html#a768b898d1e063d5c0112197b99ccba99">d_editParameter</a> (const uint32_t index, const bool started)</td></tr>
<tr class="separator:a768b898d1e063d5c0112197b99ccba99"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a310a08018194f82937ca92bed4e77f1f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUI.html#a310a08018194f82937ca92bed4e77f1f">d_setParameterValue</a> (const uint32_t index, const float value)</td></tr>
<tr class="separator:a310a08018194f82937ca92bed4e77f1f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac32cb7fd88c642eadebf64137acd910e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUI.html#ac32cb7fd88c642eadebf64137acd910e">d_setState</a> (const char *const key, const char *const value)</td></tr>
<tr class="separator:ac32cb7fd88c642eadebf64137acd910e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a621c381126d8e2f0124199b82cdcd456"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUI.html#a621c381126d8e2f0124199b82cdcd456">d_sendNote</a> (const uint8_t channel, const uint8_t note, const uint8_t velocity)</td></tr>
<tr class="separator:a621c381126d8e2f0124199b82cdcd456"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5393f505fc8702905c15c70c9fcf0d48"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUI.html#a5393f505fc8702905c15c70c9fcf0d48">d_getPluginInstancePointer</a> () const noexcept</td></tr>
<tr class="separator:a5393f505fc8702905c15c70c9fcf0d48"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a97d880182254652f94e7bed355370c07"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUI.html#a97d880182254652f94e7bed355370c07">getSampleRate</a> () const noexcept</td></tr>
<tr class="separator:a97d880182254652f94e7bed355370c07"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeea59720583d501254284e5be540f60e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUI.html#aeea59720583d501254284e5be540f60e">editParameter</a> (const uint32_t index, const bool started)</td></tr>
<tr class="separator:aeea59720583d501254284e5be540f60e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab280fd0729e3b51d15ededbd61f5c93c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUI.html#ab280fd0729e3b51d15ededbd61f5c93c">setParameterValue</a> (const uint32_t index, const float value)</td></tr>
<tr class="separator:ab280fd0729e3b51d15ededbd61f5c93c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa50fc2fef715805435a14f653cb90cbd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUI.html#aa50fc2fef715805435a14f653cb90cbd">setState</a> (const char *const key, const char *const value)</td></tr>
<tr class="separator:aa50fc2fef715805435a14f653cb90cbd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a95d686f44e486f7ed1505399612b4f84"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUI.html#a95d686f44e486f7ed1505399612b4f84">sendNote</a> (const uint8_t channel, const uint8_t note, const uint8_t velocity)</td></tr>
<tr class="separator:a95d686f44e486f7ed1505399612b4f84"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0863a8f7ca7fc7e172e703c58518329f"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUI.html#a0863a8f7ca7fc7e172e703c58518329f">getPluginInstancePointer</a> () const noexcept</td></tr>
<tr class="separator:a0863a8f7ca7fc7e172e703c58518329f"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:a9599da33720f4648e9ce78cc18249b07"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUI.html#a9599da33720f4648e9ce78cc18249b07">d_parameterChanged</a> (uint32_t index, float value)=0</td></tr>
<tr class="separator:a9599da33720f4648e9ce78cc18249b07"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7d703d2caff4765f270686b8428a2fa0"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUI.html#a7d703d2caff4765f270686b8428a2fa0">d_programChanged</a> (uint32_t index)=0</td></tr>
<tr class="separator:a7d703d2caff4765f270686b8428a2fa0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7f508ebffec7a5168b532ccb9d81df70"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUI.html#a7f508ebffec7a5168b532ccb9d81df70">d_stateChanged</a> (const char *key, const char *value)=0</td></tr>
<tr class="separator:a7f508ebffec7a5168b532ccb9d81df70"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a18f4b84a973405fc098e69047e0d1994"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUI.html#a18f4b84a973405fc098e69047e0d1994">d_sampleRateChanged</a> (double newSampleRate)</td></tr>
<tr class="separator:a18f4b84a973405fc098e69047e0d1994"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa320b8d3e826394dad9f7c36692f9b6c"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUI.html#aa320b8d3e826394dad9f7c36692f9b6c">d_uiIdle</a> ()</td></tr>
<tr class="separator:aa320b8d3e826394dad9f7c36692f9b6c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab10300e34b40d6b447b1213813f474c0"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUI.html#ab10300e34b40d6b447b1213813f474c0">d_uiFileBrowserSelected</a> (const char *filename)</td></tr>
<tr class="separator:ab10300e34b40d6b447b1213813f474c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaf729415450434ad6690db93fd936bbf"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUI.html#aaf729415450434ad6690db93fd936bbf">d_uiReshape</a> (uint width, uint height)</td></tr>
<tr class="separator:aaf729415450434ad6690db93fd936bbf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab3086d302a9685b25abf144ade3e88f6"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUI.html#ab3086d302a9685b25abf144ade3e88f6">parameterChanged</a> (uint32_t index, float value)=0</td></tr>
<tr class="separator:ab3086d302a9685b25abf144ade3e88f6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a84c36578d87c5b569d1ab6a372f31937"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUI.html#a84c36578d87c5b569d1ab6a372f31937">programChanged</a> (uint32_t index)=0</td></tr>
<tr class="separator:a84c36578d87c5b569d1ab6a372f31937"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1bdc7e158d974e82f0535f1658d66575"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUI.html#a1bdc7e158d974e82f0535f1658d66575">stateChanged</a> (const char *key, const char *value)=0</td></tr>
<tr class="separator:a1bdc7e158d974e82f0535f1658d66575"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac3e98726ca71f95a1e6c867706ebd9be"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUI.html#ac3e98726ca71f95a1e6c867706ebd9be">sampleRateChanged</a> (double newSampleRate)</td></tr>
<tr class="separator:ac3e98726ca71f95a1e6c867706ebd9be"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af8de639088f3b2d42c266a2d2d6719da"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUI.html#af8de639088f3b2d42c266a2d2d6719da">uiIdle</a> ()</td></tr>
<tr class="separator:af8de639088f3b2d42c266a2d2d6719da"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6d4697296129d3a6bc34fc810d6297ac"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUI.html#a6d4697296129d3a6bc34fc810d6297ac">uiFileBrowserSelected</a> (const char *filename)</td></tr>
<tr class="separator:a6d4697296129d3a6bc34fc810d6297ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab6861389e1bb01268a189dadbeb4fbcc"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUI.html#ab6861389e1bb01268a189dadbeb4fbcc">uiReshape</a> (uint width, uint height)</td></tr>
<tr class="separator:ab6861389e1bb01268a189dadbeb4fbcc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8de15be030bbdf0eb81461349cb1cc77"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classUI.html#a8de15be030bbdf0eb81461349cb1cc77">onResize</a> (const ResizeEvent &amp;ev) override</td></tr>
<tr class="separator:a8de15be030bbdf0eb81461349cb1cc77"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
@@ -206,7 +206,7 @@ class&#160;</td><td class="memItemRight" valign="bottom"><b>UIExporterWindow</b>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="ab6cbe4dcade92f7f49d4405e51ee639c"></a>
<a class="anchor" id="a97d880182254652f94e7bed355370c07"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
@@ -214,7 +214,7 @@ class&#160;</td><td class="memItemRight" valign="bottom"><b>UIExporterWindow</b>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">double UI::d_getSampleRate </td>
<td class="memname">double UI::getSampleRate </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
@@ -226,16 +226,16 @@ class&#160;</td><td class="memItemRight" valign="bottom"><b>UIExporterWindow</b>
</tr>
</table>
</div><div class="memdoc">
<p>Get the current sample rate used in plugin processing. </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="classUI.html#a18f4b84a973405fc098e69047e0d1994">d_sampleRateChanged(double)</a> </dd></dl>
<p>Get the current sample rate used in plugin processing. </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="classUI.html#ac3e98726ca71f95a1e6c867706ebd9be">sampleRateChanged(double)</a> </dd></dl>

</div>
</div>
<a class="anchor" id="a768b898d1e063d5c0112197b99ccba99"></a>
<a class="anchor" id="aeea59720583d501254284e5be540f60e"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void UI::d_editParameter </td>
<td class="memname">void UI::editParameter </td>
<td>(</td>
<td class="paramtype">const uint32_t&#160;</td>
<td class="paramname"><em>index</em>, </td>
@@ -257,12 +257,12 @@ class&#160;</td><td class="memItemRight" valign="bottom"><b>UIExporterWindow</b>

</div>
</div>
<a class="anchor" id="a310a08018194f82937ca92bed4e77f1f"></a>
<a class="anchor" id="ab280fd0729e3b51d15ededbd61f5c93c"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void UI::d_setParameterValue </td>
<td class="memname">void UI::setParameterValue </td>
<td>(</td>
<td class="paramtype">const uint32_t&#160;</td>
<td class="paramname"><em>index</em>, </td>
@@ -284,12 +284,12 @@ class&#160;</td><td class="memItemRight" valign="bottom"><b>UIExporterWindow</b>

</div>
</div>
<a class="anchor" id="ac32cb7fd88c642eadebf64137acd910e"></a>
<a class="anchor" id="aa50fc2fef715805435a14f653cb90cbd"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void UI::d_setState </td>
<td class="memname">void UI::setState </td>
<td>(</td>
<td class="paramtype">const char *const&#160;</td>
<td class="paramname"><em>key</em>, </td>
@@ -311,12 +311,12 @@ class&#160;</td><td class="memItemRight" valign="bottom"><b>UIExporterWindow</b>

</div>
</div>
<a class="anchor" id="a621c381126d8e2f0124199b82cdcd456"></a>
<a class="anchor" id="a95d686f44e486f7ed1505399612b4f84"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void UI::d_sendNote </td>
<td class="memname">void UI::sendNote </td>
<td>(</td>
<td class="paramtype">const uint8_t&#160;</td>
<td class="paramname"><em>channel</em>, </td>
@@ -344,7 +344,7 @@ class&#160;</td><td class="memItemRight" valign="bottom"><b>UIExporterWindow</b>

</div>
</div>
<a class="anchor" id="a5393f505fc8702905c15c70c9fcf0d48"></a>
<a class="anchor" id="a0863a8f7ca7fc7e172e703c58518329f"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
@@ -352,7 +352,7 @@ class&#160;</td><td class="memItemRight" valign="bottom"><b>UIExporterWindow</b>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void* UI::d_getPluginInstancePointer </td>
<td class="memname">void* UI::getPluginInstancePointer </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
@@ -368,7 +368,7 @@ class&#160;</td><td class="memItemRight" valign="bottom"><b>UIExporterWindow</b>

</div>
</div>
<a class="anchor" id="a9599da33720f4648e9ce78cc18249b07"></a>
<a class="anchor" id="ab3086d302a9685b25abf144ade3e88f6"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
@@ -376,7 +376,7 @@ class&#160;</td><td class="memItemRight" valign="bottom"><b>UIExporterWindow</b>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void UI::d_parameterChanged </td>
<td class="memname">virtual void UI::parameterChanged </td>
<td>(</td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>index</em>, </td>
@@ -403,7 +403,7 @@ class&#160;</td><td class="memItemRight" valign="bottom"><b>UIExporterWindow</b>

</div>
</div>
<a class="anchor" id="a7d703d2caff4765f270686b8428a2fa0"></a>
<a class="anchor" id="a84c36578d87c5b569d1ab6a372f31937"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
@@ -411,7 +411,7 @@ class&#160;</td><td class="memItemRight" valign="bottom"><b>UIExporterWindow</b>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void UI::d_programChanged </td>
<td class="memname">virtual void UI::programChanged </td>
<td>(</td>
<td class="paramtype">uint32_t&#160;</td>
<td class="paramname"><em>index</em></td><td>)</td>
@@ -428,7 +428,7 @@ class&#160;</td><td class="memItemRight" valign="bottom"><b>UIExporterWindow</b>

</div>
</div>
<a class="anchor" id="a7f508ebffec7a5168b532ccb9d81df70"></a>
<a class="anchor" id="a1bdc7e158d974e82f0535f1658d66575"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
@@ -436,7 +436,7 @@ class&#160;</td><td class="memItemRight" valign="bottom"><b>UIExporterWindow</b>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void UI::d_stateChanged </td>
<td class="memname">virtual void UI::stateChanged </td>
<td>(</td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>key</em>, </td>
@@ -463,7 +463,7 @@ class&#160;</td><td class="memItemRight" valign="bottom"><b>UIExporterWindow</b>

</div>
</div>
<a class="anchor" id="a18f4b84a973405fc098e69047e0d1994"></a>
<a class="anchor" id="ac3e98726ca71f95a1e6c867706ebd9be"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
@@ -471,7 +471,7 @@ class&#160;</td><td class="memItemRight" valign="bottom"><b>UIExporterWindow</b>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void UI::d_sampleRateChanged </td>
<td class="memname">virtual void UI::sampleRateChanged </td>
<td>(</td>
<td class="paramtype">double&#160;</td>
<td class="paramname"><em>newSampleRate</em></td><td>)</td>
@@ -484,11 +484,11 @@ class&#160;</td><td class="memItemRight" valign="bottom"><b>UIExporterWindow</b>
</tr>
</table>
</div><div class="memdoc">
<p>Optional callback to inform the <a class="el" href="classUI.html">UI</a> about a sample rate change on the plugin side. </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="classUI.html#ab6cbe4dcade92f7f49d4405e51ee639c">d_getSampleRate()</a> </dd></dl>
<p>Optional callback to inform the <a class="el" href="classUI.html">UI</a> about a sample rate change on the plugin side. </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="classUI.html#a97d880182254652f94e7bed355370c07">getSampleRate()</a> </dd></dl>

</div>
</div>
<a class="anchor" id="aa320b8d3e826394dad9f7c36692f9b6c"></a>
<a class="anchor" id="af8de639088f3b2d42c266a2d2d6719da"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
@@ -496,7 +496,7 @@ class&#160;</td><td class="memItemRight" valign="bottom"><b>UIExporterWindow</b>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void UI::d_uiIdle </td>
<td class="memname">virtual void UI::uiIdle </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
@@ -512,7 +512,7 @@ class&#160;</td><td class="memItemRight" valign="bottom"><b>UIExporterWindow</b>

</div>
</div>
<a class="anchor" id="ab10300e34b40d6b447b1213813f474c0"></a>
<a class="anchor" id="a6d4697296129d3a6bc34fc810d6297ac"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
@@ -520,7 +520,7 @@ class&#160;</td><td class="memItemRight" valign="bottom"><b>UIExporterWindow</b>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void UI::d_uiFileBrowserSelected </td>
<td class="memname">virtual void UI::uiFileBrowserSelected </td>
<td>(</td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>filename</em></td><td>)</td>
@@ -537,7 +537,7 @@ class&#160;</td><td class="memItemRight" valign="bottom"><b>UIExporterWindow</b>

</div>
</div>
<a class="anchor" id="aaf729415450434ad6690db93fd936bbf"></a>
<a class="anchor" id="ab6861389e1bb01268a189dadbeb4fbcc"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
@@ -545,7 +545,7 @@ class&#160;</td><td class="memItemRight" valign="bottom"><b>UIExporterWindow</b>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void UI::d_uiReshape </td>
<td class="memname">virtual void UI::uiReshape </td>
<td>(</td>
<td class="paramtype">uint&#160;</td>
<td class="paramname"><em>width</em>, </td>
@@ -593,7 +593,7 @@ class&#160;</td><td class="memItemRight" valign="bottom"><b>UIExporterWindow</b>
</tr>
</table>
</div><div class="memdoc">
<p>OpenGL widget resize function, called when the widget is resized. This is overriden here so the host knows when the <a class="el" href="classUI.html">UI</a> is resized by you. </p><dl class="section see"><dt>See also</dt><dd>Widget::onResize(const ResizeEvent&amp;) </dd></dl>
<p>OpenGL widget resize function, called when the widget is resized. This is overriden here so the host knows when the <a class="el" href="classUI.html">UI</a> is resized by you. </p><dl class="section see"><dt>See also</dt><dd><a class="el" href="classWidget.html#acc0365ec4b9245bdffb8d0285be55dea">Widget::onResize(const ResizeEvent&amp;)</a> </dd></dl>

</div>
</div>
@@ -603,7 +603,7 @@ class&#160;</td><td class="memItemRight" valign="bottom"><b>UIExporterWindow</b>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Fri Apr 24 2015 00:23:57 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Sun Apr 26 2015 14:49:35 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>


+ 138
- 0
classWidget-members.html View File

@@ -0,0 +1,138 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: Member List</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">Widget Member List</div> </div>
</div><!--header-->
<div class="contents">

<p>This is the complete list of members for <a class="el" href="classWidget.html">Widget</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a655f9dac3838b52a3deec1a4b9e6001b">contains</a>(int x, int y) const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a9dc3a8c1c7fe1dd0ffa28577f1eaa5fd">contains</a>(const Point&lt; int &gt; &amp;pos) const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#ae952149aa2b1661ebc9712547ac5cc04">getAbsolutePos</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a4e41debfe323ee307706af42818636dd">getAbsoluteX</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#af2ee4713e052b65e839da667aec4e05a">getAbsoluteY</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#aa20f6dc096a8836706173f31324c4db8">getHeight</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a3ee6b2824e3f3719c1c9b3d070385f49">getId</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#afa1fe45064cf9bb107fe1dcdb2384d33">getParentApp</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a0e0b0b2293bb63b2d84774542cc6a421">getParentWindow</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#ae375b05cd76f63c957949e9121ff56bb">getSize</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a169c317caf734c6664494a573e427b40">getWidth</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a4a2f8eebacdd20db505b838f1a118c6b">hide</a>()</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a234a8ee8a685dc211ad11f492f0dbc71">isVisible</a>() const noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#ae1554f348fe3b2f9d4c3c5c4f9ec55bd">onDisplay</a>()=0</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a9fa874aede538b41348f1029524aea11">onKeyboard</a>(const KeyboardEvent &amp;)</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a655569fb78a598652e9f24cefa1fe4a5">onMotion</a>(const MotionEvent &amp;)</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a097ec1d56a06bdc9e0a4e54880def378">onMouse</a>(const MouseEvent &amp;)</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#acc0365ec4b9245bdffb8d0285be55dea">onResize</a>(const ResizeEvent &amp;)</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a0d78d28bd4a98c3a016a38091b2d4185">onScroll</a>(const ScrollEvent &amp;)</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a3b42652fcb2f95c6f86bdd43a1727507">onSpecial</a>(const SpecialEvent &amp;)</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a808fa28a78ec9e850d5e86f63b3be26d">repaint</a>() noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a1f58ab9f12f0e88da6bf600c504b53c5">setAbsolutePos</a>(int x, int y) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a65b3a31bbf5cfbecdf5cf84ae27ae089">setAbsolutePos</a>(const Point&lt; int &gt; &amp;pos) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a56b6c0c92551d25bafa54be5d185e4f6">setAbsoluteX</a>(int x) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a65f48c414326491ddb3bbb70bf783829">setAbsoluteY</a>(int y) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#ac6d2e6cbb2ff96f3645493d804af07f7">setHeight</a>(uint height) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#abfba3652559de84ba1ae9ccbd3d35e31">setId</a>(uint id) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#aa92462db80ed1dc8334910038cd262cc">setNeedsFullViewport</a>(bool yesNo) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#a2ce358088e8f3b65621afd02c675bad8">setNeedsScaling</a>(bool yesNo) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#ab4d9e0156e455db3ff23730f82544daa">setSize</a>(uint width, uint height) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#afce784b204902c0f11e9ed02bc692362">setSize</a>(const Size&lt; uint &gt; &amp;size) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a0bec84d07a6c508e069da9821993d1c2">setVisible</a>(bool yesNo)</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="classWidget.html#aed80a9cbc4a13c01641f35dd3d8688ea">setWidth</a>(uint width) noexcept</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a25ff178539e226b5f30ef0335d060f2b">show</a>()</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>StandaloneWindow</b> (defined in <a class="el" href="classWidget.html">Widget</a>)</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a556f58c8ff8a80ae22cc4df7e5f8218c">Widget</a>(Window &amp;parent)</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Window</b> (defined in <a class="el" href="classWidget.html">Widget</a>)</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
<tr><td class="entry"><a class="el" href="classWidget.html#a714cf798aadb4d615f6f60a355382c02">~Widget</a>()</td><td class="entry"><a class="el" href="classWidget.html">Widget</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:35 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 1137
- 0
classWidget.html
File diff suppressed because it is too large
View File


BIN
classWidget.png View File

Before After
Width: 782  |  Height: 80  |  Size: 1.4KB

+ 135
- 0
classWindow-members.html View File

@@ -0,0 +1,135 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: Member List</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">Window Member List</div> </div>
</div><!--header-->
<div class="contents">

<p>This is the complete list of members for <a class="el" href="classWindow.html">Window</a>, including all inherited members.</p>
<table class="directory">
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>addIdleCallback</b>(IdleCallback *const callback) (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>App</b> (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>close</b>() (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>exec</b>(bool lockWait=false) (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>fileBrowserSelected</b>(const char *filename) (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>focus</b>() (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>getApp</b>() const noexcept (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>getHeight</b>() const noexcept (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>getSize</b>() const noexcept (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>getTitle</b>() const noexcept (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>getWidth</b>() const noexcept (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>getWindowId</b>() const noexcept (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>hide</b>() (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>isResizable</b>() const noexcept (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>isVisible</b>() const noexcept (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>onClose</b>() (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>onDisplayAfter</b>() (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>onDisplayBefore</b>() (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>onReshape</b>(uint width, uint height) (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>openFileBrowser</b>(const FileBrowserOptions &amp;options) (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>removeIdleCallback</b>(IdleCallback *const callback) (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>repaint</b>() noexcept (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>setResizable</b>(bool yesNo) (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>setSize</b>(uint width, uint height) (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>setSize</b>(Size&lt; uint &gt; size) (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>setTitle</b>(const char *title) (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>setTransientWinId</b>(uintptr_t winId) (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>setVisible</b>(bool yesNo) (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>show</b>() (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>StandaloneWindow</b> (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Widget</b> (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>Window</b>(App &amp;app) (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Window</b>(App &amp;app, Window &amp;parent) (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>Window</b>(App &amp;app, intptr_t parentId) (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~Window</b>() (defined in <a class="el" href="classWindow.html">Window</a>)</td><td class="entry"><a class="el" href="classWindow.html">Window</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:36 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 233
- 0
classWindow.html View File

@@ -0,0 +1,233 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: Window Class Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="#friends">Friends</a> &#124;
<a href="classWindow-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">Window Class Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="dynheader">
Inheritance diagram for Window:</div>
<div class="dyncontent">
<div class="center">
<img src="classWindow.png" usemap="#Window_map" alt=""/>
<map id="Window_map" name="Window_map">
<area href="classImageAboutWindow.html" alt="ImageAboutWindow" shape="rect" coords="0,56,122,80"/>
<area href="classStandaloneWindow.html" alt="StandaloneWindow" shape="rect" coords="132,56,254,80"/>
</map>
</div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structWindow_1_1FileBrowserOptions.html">FileBrowserOptions</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:ad3b0d5f4e188c6aaa01d4d669c5dbdf8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad3b0d5f4e188c6aaa01d4d669c5dbdf8"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>Window</b> (<a class="el" href="classApp.html">App</a> &amp;app)</td></tr>
<tr class="separator:ad3b0d5f4e188c6aaa01d4d669c5dbdf8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad74a58ec3c3e1f2cc6337d0352a73c94"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad74a58ec3c3e1f2cc6337d0352a73c94"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>Window</b> (<a class="el" href="classApp.html">App</a> &amp;app, <a class="el" href="classWindow.html">Window</a> &amp;parent)</td></tr>
<tr class="separator:ad74a58ec3c3e1f2cc6337d0352a73c94"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae4aa8ab25259a7bd34658cad19928e81"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae4aa8ab25259a7bd34658cad19928e81"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>Window</b> (<a class="el" href="classApp.html">App</a> &amp;app, intptr_t parentId)</td></tr>
<tr class="separator:ae4aa8ab25259a7bd34658cad19928e81"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8f986e19a11c4c97ed8e6ad3d0e648b7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8f986e19a11c4c97ed8e6ad3d0e648b7"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>show</b> ()</td></tr>
<tr class="separator:a8f986e19a11c4c97ed8e6ad3d0e648b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4626829d3cb9d01285f739d2bbc69b74"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4626829d3cb9d01285f739d2bbc69b74"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>hide</b> ()</td></tr>
<tr class="separator:a4626829d3cb9d01285f739d2bbc69b74"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a35055c04498121d39741bfcd5082705b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a35055c04498121d39741bfcd5082705b"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>close</b> ()</td></tr>
<tr class="separator:a35055c04498121d39741bfcd5082705b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4a9fd2970404d2e67856bc23e11c9e50"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4a9fd2970404d2e67856bc23e11c9e50"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>exec</b> (bool lockWait=false)</td></tr>
<tr class="separator:a4a9fd2970404d2e67856bc23e11c9e50"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a03985e4ca2c9b4fcf572b5029e8c0115"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a03985e4ca2c9b4fcf572b5029e8c0115"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>focus</b> ()</td></tr>
<tr class="separator:a03985e4ca2c9b4fcf572b5029e8c0115"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a729ab39a1ac99d81b289e08a42582ade"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a729ab39a1ac99d81b289e08a42582ade"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>repaint</b> () noexcept</td></tr>
<tr class="separator:a729ab39a1ac99d81b289e08a42582ade"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa0d7a058ff1194def1a07edb21c30f4c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa0d7a058ff1194def1a07edb21c30f4c"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>openFileBrowser</b> (const <a class="el" href="structWindow_1_1FileBrowserOptions.html">FileBrowserOptions</a> &amp;options)</td></tr>
<tr class="separator:aa0d7a058ff1194def1a07edb21c30f4c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6be53a737e7dfcc74167962437e93b8f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6be53a737e7dfcc74167962437e93b8f"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>isVisible</b> () const noexcept</td></tr>
<tr class="separator:a6be53a737e7dfcc74167962437e93b8f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9729d92a50712cd3d37041f8c7f54fad"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9729d92a50712cd3d37041f8c7f54fad"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>setVisible</b> (bool yesNo)</td></tr>
<tr class="separator:a9729d92a50712cd3d37041f8c7f54fad"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1b888a7e6a5562968a253b915ccb7825"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1b888a7e6a5562968a253b915ccb7825"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>isResizable</b> () const noexcept</td></tr>
<tr class="separator:a1b888a7e6a5562968a253b915ccb7825"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad94f784be678b6d63939bf184b5413b3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad94f784be678b6d63939bf184b5413b3"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>setResizable</b> (bool yesNo)</td></tr>
<tr class="separator:ad94f784be678b6d63939bf184b5413b3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab19430997dd1b3d7bf9bd3640d73b007"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab19430997dd1b3d7bf9bd3640d73b007"></a>
uint&#160;</td><td class="memItemRight" valign="bottom"><b>getWidth</b> () const noexcept</td></tr>
<tr class="separator:ab19430997dd1b3d7bf9bd3640d73b007"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5d53bcba43455f8f77cfcbac61ec6c8e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5d53bcba43455f8f77cfcbac61ec6c8e"></a>
uint&#160;</td><td class="memItemRight" valign="bottom"><b>getHeight</b> () const noexcept</td></tr>
<tr class="separator:a5d53bcba43455f8f77cfcbac61ec6c8e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acd158570648b07967a4af011d6223eea"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acd158570648b07967a4af011d6223eea"></a>
<a class="el" href="classSize.html">Size</a>&lt; uint &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>getSize</b> () const noexcept</td></tr>
<tr class="separator:acd158570648b07967a4af011d6223eea"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a89bd0c91920029ddcb21b8975e8b47d9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a89bd0c91920029ddcb21b8975e8b47d9"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>setSize</b> (uint width, uint height)</td></tr>
<tr class="separator:a89bd0c91920029ddcb21b8975e8b47d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a101c75c067671deddcd28d67dbdaefae"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a101c75c067671deddcd28d67dbdaefae"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>setSize</b> (<a class="el" href="classSize.html">Size</a>&lt; uint &gt; size)</td></tr>
<tr class="separator:a101c75c067671deddcd28d67dbdaefae"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af437e6afd9104708f30ab769d9afce7a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af437e6afd9104708f30ab769d9afce7a"></a>
const char *&#160;</td><td class="memItemRight" valign="bottom"><b>getTitle</b> () const noexcept</td></tr>
<tr class="separator:af437e6afd9104708f30ab769d9afce7a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab2f1b80c5dfcafd2cbdf6b85b756fdbd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab2f1b80c5dfcafd2cbdf6b85b756fdbd"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>setTitle</b> (const char *title)</td></tr>
<tr class="separator:ab2f1b80c5dfcafd2cbdf6b85b756fdbd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa00fb01e200451c925b7750bf2710010"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa00fb01e200451c925b7750bf2710010"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>setTransientWinId</b> (uintptr_t winId)</td></tr>
<tr class="separator:aa00fb01e200451c925b7750bf2710010"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ace49f35179b7f97468acdeb849762181"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ace49f35179b7f97468acdeb849762181"></a>
<a class="el" href="classApp.html">App</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>getApp</b> () const noexcept</td></tr>
<tr class="separator:ace49f35179b7f97468acdeb849762181"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abc7f04bab45e89fb23dfc156f996dbe7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abc7f04bab45e89fb23dfc156f996dbe7"></a>
intptr_t&#160;</td><td class="memItemRight" valign="bottom"><b>getWindowId</b> () const noexcept</td></tr>
<tr class="separator:abc7f04bab45e89fb23dfc156f996dbe7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5d002fd26f8389b9177ae30829439edd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5d002fd26f8389b9177ae30829439edd"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>addIdleCallback</b> (<a class="el" href="classIdleCallback.html">IdleCallback</a> *const callback)</td></tr>
<tr class="separator:a5d002fd26f8389b9177ae30829439edd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aab7051655ccdb53c1de7febb5fff93ca"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aab7051655ccdb53c1de7febb5fff93ca"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>removeIdleCallback</b> (<a class="el" href="classIdleCallback.html">IdleCallback</a> *const callback)</td></tr>
<tr class="separator:aab7051655ccdb53c1de7febb5fff93ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:aaffc338094513893982daa88a6854b2c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aaffc338094513893982daa88a6854b2c"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>onDisplayBefore</b> ()</td></tr>
<tr class="separator:aaffc338094513893982daa88a6854b2c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1f9237bae01014d8703d27ccb60ea623"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1f9237bae01014d8703d27ccb60ea623"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>onDisplayAfter</b> ()</td></tr>
<tr class="separator:a1f9237bae01014d8703d27ccb60ea623"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a04207502372d42d0d17604b104c1d8d6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a04207502372d42d0d17604b104c1d8d6"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>onReshape</b> (uint width, uint height)</td></tr>
<tr class="separator:a04207502372d42d0d17604b104c1d8d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa0edbace2768fe846d9fe0cdc2959dd0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa0edbace2768fe846d9fe0cdc2959dd0"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>onClose</b> ()</td></tr>
<tr class="separator:aa0edbace2768fe846d9fe0cdc2959dd0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6ec017881675f860ae746dad6c021b63"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6ec017881675f860ae746dad6c021b63"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>fileBrowserSelected</b> (const char *filename)</td></tr>
<tr class="separator:a6ec017881675f860ae746dad6c021b63"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
Friends</h2></td></tr>
<tr class="memitem:a4097b3e04a4f8ece21f5abe1b10e6323"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4097b3e04a4f8ece21f5abe1b10e6323"></a>
class&#160;</td><td class="memItemRight" valign="bottom"><b>App</b></td></tr>
<tr class="separator:a4097b3e04a4f8ece21f5abe1b10e6323"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a29fa75ce3911bef8c5f4414f6f0242b8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a29fa75ce3911bef8c5f4414f6f0242b8"></a>
class&#160;</td><td class="memItemRight" valign="bottom"><b>Widget</b></td></tr>
<tr class="separator:a29fa75ce3911bef8c5f4414f6f0242b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a46d8d52b6ee3f8a662192a4b4775cb3e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a46d8d52b6ee3f8a662192a4b4775cb3e"></a>
class&#160;</td><td class="memItemRight" valign="bottom"><b>StandaloneWindow</b></td></tr>
<tr class="separator:a46d8d52b6ee3f8a662192a4b4775cb3e"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>dgl/<a class="el" href="Window_8hpp_source.html">Window.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:36 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

BIN
classWindow.png View File

Before After
Width: 254  |  Height: 80  |  Size: 714B

+ 147
- 0
classd__string-members.html View File

@@ -0,0 +1,147 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: Member List</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">d_string Member List</div> </div>
</div><!--header-->
<div class="contents">

<p>This is the complete list of members for <a class="el" href="classd__string.html">d_string</a>, including all inherited members.</p>
<table class="directory">
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>buffer</b>() const noexcept (defined in <a class="el" href="classd__string.html">d_string</a>)</td><td class="entry"><a class="el" href="classd__string.html">d_string</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>clear</b>() noexcept (defined in <a class="el" href="classd__string.html">d_string</a>)</td><td class="entry"><a class="el" href="classd__string.html">d_string</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>contains</b>(const char *const strBuf, const bool ignoreCase=false) const noexcept (defined in <a class="el" href="classd__string.html">d_string</a>)</td><td class="entry"><a class="el" href="classd__string.html">d_string</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>d_string</b>() noexcept (defined in <a class="el" href="classd__string.html">d_string</a>)</td><td class="entry"><a class="el" href="classd__string.html">d_string</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>d_string</b>(const char c) noexcept (defined in <a class="el" href="classd__string.html">d_string</a>)</td><td class="entry"><a class="el" href="classd__string.html">d_string</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>d_string</b>(char *const strBuf) noexcept (defined in <a class="el" href="classd__string.html">d_string</a>)</td><td class="entry"><a class="el" href="classd__string.html">d_string</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>d_string</b>(const char *const strBuf) noexcept (defined in <a class="el" href="classd__string.html">d_string</a>)</td><td class="entry"><a class="el" href="classd__string.html">d_string</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>d_string</b>(const int value) noexcept (defined in <a class="el" href="classd__string.html">d_string</a>)</td><td class="entry"><a class="el" href="classd__string.html">d_string</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>d_string</b>(const unsigned int value, const bool hexadecimal=false) noexcept (defined in <a class="el" href="classd__string.html">d_string</a>)</td><td class="entry"><a class="el" href="classd__string.html">d_string</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>d_string</b>(const long value) noexcept (defined in <a class="el" href="classd__string.html">d_string</a>)</td><td class="entry"><a class="el" href="classd__string.html">d_string</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>d_string</b>(const unsigned long value, const bool hexadecimal=false) noexcept (defined in <a class="el" href="classd__string.html">d_string</a>)</td><td class="entry"><a class="el" href="classd__string.html">d_string</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>d_string</b>(const long long value) noexcept (defined in <a class="el" href="classd__string.html">d_string</a>)</td><td class="entry"><a class="el" href="classd__string.html">d_string</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>d_string</b>(const unsigned long long value, const bool hexadecimal=false) noexcept (defined in <a class="el" href="classd__string.html">d_string</a>)</td><td class="entry"><a class="el" href="classd__string.html">d_string</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>d_string</b>(const float value) noexcept (defined in <a class="el" href="classd__string.html">d_string</a>)</td><td class="entry"><a class="el" href="classd__string.html">d_string</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>d_string</b>(const double value) noexcept (defined in <a class="el" href="classd__string.html">d_string</a>)</td><td class="entry"><a class="el" href="classd__string.html">d_string</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">explicit</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>d_string</b>(const d_string &amp;str) noexcept (defined in <a class="el" href="classd__string.html">d_string</a>)</td><td class="entry"><a class="el" href="classd__string.html">d_string</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>endsWith</b>(const char c) const noexcept (defined in <a class="el" href="classd__string.html">d_string</a>)</td><td class="entry"><a class="el" href="classd__string.html">d_string</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>endsWith</b>(const char *const suffix) const noexcept (defined in <a class="el" href="classd__string.html">d_string</a>)</td><td class="entry"><a class="el" href="classd__string.html">d_string</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>find</b>(const char c, bool *const found=nullptr) const noexcept (defined in <a class="el" href="classd__string.html">d_string</a>)</td><td class="entry"><a class="el" href="classd__string.html">d_string</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>find</b>(const char *const strBuf, bool *const found=nullptr) const noexcept (defined in <a class="el" href="classd__string.html">d_string</a>)</td><td class="entry"><a class="el" href="classd__string.html">d_string</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>isDigit</b>(const size_t pos) const noexcept (defined in <a class="el" href="classd__string.html">d_string</a>)</td><td class="entry"><a class="el" href="classd__string.html">d_string</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>isEmpty</b>() const noexcept (defined in <a class="el" href="classd__string.html">d_string</a>)</td><td class="entry"><a class="el" href="classd__string.html">d_string</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>isNotEmpty</b>() const noexcept (defined in <a class="el" href="classd__string.html">d_string</a>)</td><td class="entry"><a class="el" href="classd__string.html">d_string</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>length</b>() const noexcept (defined in <a class="el" href="classd__string.html">d_string</a>)</td><td class="entry"><a class="el" href="classd__string.html">d_string</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>operator const char *</b>() const noexcept (defined in <a class="el" href="classd__string.html">d_string</a>)</td><td class="entry"><a class="el" href="classd__string.html">d_string</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>operator!=</b>(const char *const strBuf) const noexcept (defined in <a class="el" href="classd__string.html">d_string</a>)</td><td class="entry"><a class="el" href="classd__string.html">d_string</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>operator!=</b>(const d_string &amp;str) const noexcept (defined in <a class="el" href="classd__string.html">d_string</a>)</td><td class="entry"><a class="el" href="classd__string.html">d_string</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>operator+</b>(const char *const strBuf) noexcept (defined in <a class="el" href="classd__string.html">d_string</a>)</td><td class="entry"><a class="el" href="classd__string.html">d_string</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>operator+</b>(const d_string &amp;str) noexcept (defined in <a class="el" href="classd__string.html">d_string</a>)</td><td class="entry"><a class="el" href="classd__string.html">d_string</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>operator+=</b>(const char *const strBuf) noexcept (defined in <a class="el" href="classd__string.html">d_string</a>)</td><td class="entry"><a class="el" href="classd__string.html">d_string</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>operator+=</b>(const d_string &amp;str) noexcept (defined in <a class="el" href="classd__string.html">d_string</a>)</td><td class="entry"><a class="el" href="classd__string.html">d_string</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>operator=</b>(const char *const strBuf) noexcept (defined in <a class="el" href="classd__string.html">d_string</a>)</td><td class="entry"><a class="el" href="classd__string.html">d_string</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>operator=</b>(const d_string &amp;str) noexcept (defined in <a class="el" href="classd__string.html">d_string</a>)</td><td class="entry"><a class="el" href="classd__string.html">d_string</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>operator==</b>(const char *const strBuf) const noexcept (defined in <a class="el" href="classd__string.html">d_string</a>)</td><td class="entry"><a class="el" href="classd__string.html">d_string</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>operator==</b>(const d_string &amp;str) const noexcept (defined in <a class="el" href="classd__string.html">d_string</a>)</td><td class="entry"><a class="el" href="classd__string.html">d_string</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>operator[]</b>(const size_t pos) const noexcept (defined in <a class="el" href="classd__string.html">d_string</a>)</td><td class="entry"><a class="el" href="classd__string.html">d_string</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>operator[]</b>(const size_t pos) noexcept (defined in <a class="el" href="classd__string.html">d_string</a>)</td><td class="entry"><a class="el" href="classd__string.html">d_string</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>replace</b>(const char before, const char after) noexcept (defined in <a class="el" href="classd__string.html">d_string</a>)</td><td class="entry"><a class="el" href="classd__string.html">d_string</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>rfind</b>(const char c, bool *const found=nullptr) const noexcept (defined in <a class="el" href="classd__string.html">d_string</a>)</td><td class="entry"><a class="el" href="classd__string.html">d_string</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>rfind</b>(const char *const strBuf, bool *const found=nullptr) const noexcept (defined in <a class="el" href="classd__string.html">d_string</a>)</td><td class="entry"><a class="el" href="classd__string.html">d_string</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>startsWith</b>(const char c) const noexcept (defined in <a class="el" href="classd__string.html">d_string</a>)</td><td class="entry"><a class="el" href="classd__string.html">d_string</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>startsWith</b>(const char *const prefix) const noexcept (defined in <a class="el" href="classd__string.html">d_string</a>)</td><td class="entry"><a class="el" href="classd__string.html">d_string</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>toBasic</b>() noexcept (defined in <a class="el" href="classd__string.html">d_string</a>)</td><td class="entry"><a class="el" href="classd__string.html">d_string</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>toLower</b>() noexcept (defined in <a class="el" href="classd__string.html">d_string</a>)</td><td class="entry"><a class="el" href="classd__string.html">d_string</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>toUpper</b>() noexcept (defined in <a class="el" href="classd__string.html">d_string</a>)</td><td class="entry"><a class="el" href="classd__string.html">d_string</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0"><td class="entry"><b>truncate</b>(const size_t n) noexcept (defined in <a class="el" href="classd__string.html">d_string</a>)</td><td class="entry"><a class="el" href="classd__string.html">d_string</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~d_string</b>() noexcept (defined in <a class="el" href="classd__string.html">d_string</a>)</td><td class="entry"><a class="el" href="classd__string.html">d_string</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 242
- 0
classd__string.html View File

@@ -0,0 +1,242 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: d_string Class Reference</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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classd__string-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">d_string Class Reference</div> </div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:afc122167e0c21f105c6e89b407686064"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afc122167e0c21f105c6e89b407686064"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>d_string</b> (const char c) noexcept</td></tr>
<tr class="separator:afc122167e0c21f105c6e89b407686064"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a443f09cb4427c005753d6dc942ddde9c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a443f09cb4427c005753d6dc942ddde9c"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>d_string</b> (char *const strBuf) noexcept</td></tr>
<tr class="separator:a443f09cb4427c005753d6dc942ddde9c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8557c572d8e4661d42d282fa2337694a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8557c572d8e4661d42d282fa2337694a"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>d_string</b> (const char *const strBuf) noexcept</td></tr>
<tr class="separator:a8557c572d8e4661d42d282fa2337694a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6cbb31d515e715b8b35070a948c02736"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6cbb31d515e715b8b35070a948c02736"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>d_string</b> (const int value) noexcept</td></tr>
<tr class="separator:a6cbb31d515e715b8b35070a948c02736"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a725967c59c73a532a47ec18162be1a97"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a725967c59c73a532a47ec18162be1a97"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>d_string</b> (const unsigned int value, const bool hexadecimal=false) noexcept</td></tr>
<tr class="separator:a725967c59c73a532a47ec18162be1a97"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8edbd14dafb8c52e7241b975a34731cb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8edbd14dafb8c52e7241b975a34731cb"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>d_string</b> (const long value) noexcept</td></tr>
<tr class="separator:a8edbd14dafb8c52e7241b975a34731cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1490a7501e8ddb1fdfa65af7ebe36ec6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1490a7501e8ddb1fdfa65af7ebe36ec6"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>d_string</b> (const unsigned long value, const bool hexadecimal=false) noexcept</td></tr>
<tr class="separator:a1490a7501e8ddb1fdfa65af7ebe36ec6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3b4b11b91996e192cc4bf45060a82576"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3b4b11b91996e192cc4bf45060a82576"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>d_string</b> (const long long value) noexcept</td></tr>
<tr class="separator:a3b4b11b91996e192cc4bf45060a82576"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac6bc2f504b91533899d6fa174b830173"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac6bc2f504b91533899d6fa174b830173"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>d_string</b> (const unsigned long long value, const bool hexadecimal=false) noexcept</td></tr>
<tr class="separator:ac6bc2f504b91533899d6fa174b830173"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a37a1a8923ac66d621f6625d76ceafbfd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a37a1a8923ac66d621f6625d76ceafbfd"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>d_string</b> (const float value) noexcept</td></tr>
<tr class="separator:a37a1a8923ac66d621f6625d76ceafbfd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abff12fa3521a48e26eb306bcc486fdde"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abff12fa3521a48e26eb306bcc486fdde"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>d_string</b> (const double value) noexcept</td></tr>
<tr class="separator:abff12fa3521a48e26eb306bcc486fdde"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1400df5c96f5a42705b214dabf6d1e3b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1400df5c96f5a42705b214dabf6d1e3b"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>d_string</b> (const <a class="el" href="classd__string.html">d_string</a> &amp;str) noexcept</td></tr>
<tr class="separator:a1400df5c96f5a42705b214dabf6d1e3b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9faa904cb525522cf102c9c54064677d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9faa904cb525522cf102c9c54064677d"></a>
size_t&#160;</td><td class="memItemRight" valign="bottom"><b>length</b> () const noexcept</td></tr>
<tr class="separator:a9faa904cb525522cf102c9c54064677d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae95c9cd25310e53af38c3380d89ed0c0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae95c9cd25310e53af38c3380d89ed0c0"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>isEmpty</b> () const noexcept</td></tr>
<tr class="separator:ae95c9cd25310e53af38c3380d89ed0c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a56c654257660d1e50f6941976e823414"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a56c654257660d1e50f6941976e823414"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>isNotEmpty</b> () const noexcept</td></tr>
<tr class="separator:a56c654257660d1e50f6941976e823414"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4d45a1349ca077083c5f006acd73fb0f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4d45a1349ca077083c5f006acd73fb0f"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>contains</b> (const char *const strBuf, const bool ignoreCase=false) const noexcept</td></tr>
<tr class="separator:a4d45a1349ca077083c5f006acd73fb0f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:addccbd82404df7d0d17c23f8b926bf7d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="addccbd82404df7d0d17c23f8b926bf7d"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>isDigit</b> (const size_t pos) const noexcept</td></tr>
<tr class="separator:addccbd82404df7d0d17c23f8b926bf7d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a93e2f3c4f55c9d22a9a0ca9207ec6bbd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a93e2f3c4f55c9d22a9a0ca9207ec6bbd"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>startsWith</b> (const char c) const noexcept</td></tr>
<tr class="separator:a93e2f3c4f55c9d22a9a0ca9207ec6bbd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a07dec20e01ac00077ed83221eb2527ee"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a07dec20e01ac00077ed83221eb2527ee"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>startsWith</b> (const char *const prefix) const noexcept</td></tr>
<tr class="separator:a07dec20e01ac00077ed83221eb2527ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a87e1e6d165fdd95335044fa41675d103"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a87e1e6d165fdd95335044fa41675d103"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>endsWith</b> (const char c) const noexcept</td></tr>
<tr class="separator:a87e1e6d165fdd95335044fa41675d103"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9cd872a6720fe76946ba4a4ea6be9379"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9cd872a6720fe76946ba4a4ea6be9379"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>endsWith</b> (const char *const suffix) const noexcept</td></tr>
<tr class="separator:a9cd872a6720fe76946ba4a4ea6be9379"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a95c2adc8f687b141a48f3b56ff35d8ba"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a95c2adc8f687b141a48f3b56ff35d8ba"></a>
size_t&#160;</td><td class="memItemRight" valign="bottom"><b>find</b> (const char c, bool *const found=nullptr) const noexcept</td></tr>
<tr class="separator:a95c2adc8f687b141a48f3b56ff35d8ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9f5915f9bf7ebab68ae4ce93d489eb4c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9f5915f9bf7ebab68ae4ce93d489eb4c"></a>
size_t&#160;</td><td class="memItemRight" valign="bottom"><b>find</b> (const char *const strBuf, bool *const found=nullptr) const noexcept</td></tr>
<tr class="separator:a9f5915f9bf7ebab68ae4ce93d489eb4c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac25fd9a7cddbfcc0b6273f57d8faaa7a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac25fd9a7cddbfcc0b6273f57d8faaa7a"></a>
size_t&#160;</td><td class="memItemRight" valign="bottom"><b>rfind</b> (const char c, bool *const found=nullptr) const noexcept</td></tr>
<tr class="separator:ac25fd9a7cddbfcc0b6273f57d8faaa7a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af61fde82fba8642d4b2457ad8a86051d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af61fde82fba8642d4b2457ad8a86051d"></a>
size_t&#160;</td><td class="memItemRight" valign="bottom"><b>rfind</b> (const char *const strBuf, bool *const found=nullptr) const noexcept</td></tr>
<tr class="separator:af61fde82fba8642d4b2457ad8a86051d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a47ae104c7022d883f819c194159d3427"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a47ae104c7022d883f819c194159d3427"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>clear</b> () noexcept</td></tr>
<tr class="separator:a47ae104c7022d883f819c194159d3427"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa6999ff46628d5fa4bf1066e66c54f73"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa6999ff46628d5fa4bf1066e66c54f73"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>replace</b> (const char before, const char after) noexcept</td></tr>
<tr class="separator:aa6999ff46628d5fa4bf1066e66c54f73"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac1fe338442b77f7190443e1ad6252fa4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac1fe338442b77f7190443e1ad6252fa4"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>truncate</b> (const size_t n) noexcept</td></tr>
<tr class="separator:ac1fe338442b77f7190443e1ad6252fa4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4161855f27b7d70d42dc370ccee1436a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4161855f27b7d70d42dc370ccee1436a"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>toBasic</b> () noexcept</td></tr>
<tr class="separator:a4161855f27b7d70d42dc370ccee1436a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a985aa638a5accc72ac2bae571d69c4d9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a985aa638a5accc72ac2bae571d69c4d9"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>toLower</b> () noexcept</td></tr>
<tr class="separator:a985aa638a5accc72ac2bae571d69c4d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abd094fdf6bfccb5548cb199836db3856"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abd094fdf6bfccb5548cb199836db3856"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>toUpper</b> () noexcept</td></tr>
<tr class="separator:abd094fdf6bfccb5548cb199836db3856"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac225bfea8032b1357da45655b5005892"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac225bfea8032b1357da45655b5005892"></a>
const char *&#160;</td><td class="memItemRight" valign="bottom"><b>buffer</b> () const noexcept</td></tr>
<tr class="separator:ac225bfea8032b1357da45655b5005892"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a715a54865199b97344071c249c41a943"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a715a54865199b97344071c249c41a943"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>operator const char *</b> () const noexcept</td></tr>
<tr class="separator:a715a54865199b97344071c249c41a943"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a50041bbace94921232c777a25b2d5ae2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a50041bbace94921232c777a25b2d5ae2"></a>
char&#160;</td><td class="memItemRight" valign="bottom"><b>operator[]</b> (const size_t pos) const noexcept</td></tr>
<tr class="separator:a50041bbace94921232c777a25b2d5ae2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae9dba3ed27d54c8f3be67675d7421ba8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae9dba3ed27d54c8f3be67675d7421ba8"></a>
char &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator[]</b> (const size_t pos) noexcept</td></tr>
<tr class="separator:ae9dba3ed27d54c8f3be67675d7421ba8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a038da91693ec0b5f85dfc611325235ab"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a038da91693ec0b5f85dfc611325235ab"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>operator==</b> (const char *const strBuf) const noexcept</td></tr>
<tr class="separator:a038da91693ec0b5f85dfc611325235ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a14976c718656b85123780b449f6fefc6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a14976c718656b85123780b449f6fefc6"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>operator==</b> (const <a class="el" href="classd__string.html">d_string</a> &amp;str) const noexcept</td></tr>
<tr class="separator:a14976c718656b85123780b449f6fefc6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9f3d742c0de35f13695ab9c64763a2ef"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9f3d742c0de35f13695ab9c64763a2ef"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>operator!=</b> (const char *const strBuf) const noexcept</td></tr>
<tr class="separator:a9f3d742c0de35f13695ab9c64763a2ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7e8e70004f38b69f18dc84f7d6ba02a2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7e8e70004f38b69f18dc84f7d6ba02a2"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>operator!=</b> (const <a class="el" href="classd__string.html">d_string</a> &amp;str) const noexcept</td></tr>
<tr class="separator:a7e8e70004f38b69f18dc84f7d6ba02a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a64a5adfd4091d41b33a91f6b2aead3b4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a64a5adfd4091d41b33a91f6b2aead3b4"></a>
<a class="el" href="classd__string.html">d_string</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (const char *const strBuf) noexcept</td></tr>
<tr class="separator:a64a5adfd4091d41b33a91f6b2aead3b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a90347be6b69e0fdf62bbf40a84100af3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a90347be6b69e0fdf62bbf40a84100af3"></a>
<a class="el" href="classd__string.html">d_string</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (const <a class="el" href="classd__string.html">d_string</a> &amp;str) noexcept</td></tr>
<tr class="separator:a90347be6b69e0fdf62bbf40a84100af3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3e0d322b6fc993f520bdf454fd53a7fb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3e0d322b6fc993f520bdf454fd53a7fb"></a>
<a class="el" href="classd__string.html">d_string</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator+=</b> (const char *const strBuf) noexcept</td></tr>
<tr class="separator:a3e0d322b6fc993f520bdf454fd53a7fb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6ae8542fbb9970653a2b8719b6ee1555"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6ae8542fbb9970653a2b8719b6ee1555"></a>
<a class="el" href="classd__string.html">d_string</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator+=</b> (const <a class="el" href="classd__string.html">d_string</a> &amp;str) noexcept</td></tr>
<tr class="separator:a6ae8542fbb9970653a2b8719b6ee1555"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a43ad94c373b96133b9ff099533919370"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a43ad94c373b96133b9ff099533919370"></a>
<a class="el" href="classd__string.html">d_string</a>&#160;</td><td class="memItemRight" valign="bottom"><b>operator+</b> (const char *const strBuf) noexcept</td></tr>
<tr class="separator:a43ad94c373b96133b9ff099533919370"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ace035e9e9293cd467f26f6cc54f8310d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ace035e9e9293cd467f26f6cc54f8310d"></a>
<a class="el" href="classd__string.html">d_string</a>&#160;</td><td class="memItemRight" valign="bottom"><b>operator+</b> (const <a class="el" href="classd__string.html">d_string</a> &amp;str) noexcept</td></tr>
<tr class="separator:ace035e9e9293cd467f26f6cc54f8310d"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>distrho/extra/<a class="el" href="d__string_8hpp_source.html">d_string.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 35
- 12
classes.html View File

@@ -86,27 +86,50 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="title">Class Index</div> </div>
</div><!--header-->
<div class="contents">
<div class="qindex"><a class="qindex" href="#letter_A">A</a>&#160;|&#160;<a class="qindex" href="#letter_B">B</a>&#160;|&#160;<a class="qindex" href="#letter_M">M</a>&#160;|&#160;<a class="qindex" href="#letter_P">P</a>&#160;|&#160;<a class="qindex" href="#letter_T">T</a>&#160;|&#160;<a class="qindex" href="#letter_U">U</a></div>
<div class="qindex"><a class="qindex" href="#letter_A">A</a>&#160;|&#160;<a class="qindex" href="#letter_B">B</a>&#160;|&#160;<a class="qindex" href="#letter_C">C</a>&#160;|&#160;<a class="qindex" href="#letter_D">D</a>&#160;|&#160;<a class="qindex" href="#letter_F">F</a>&#160;|&#160;<a class="qindex" href="#letter_G">G</a>&#160;|&#160;<a class="qindex" href="#letter_I">I</a>&#160;|&#160;<a class="qindex" href="#letter_K">K</a>&#160;|&#160;<a class="qindex" href="#letter_L">L</a>&#160;|&#160;<a class="qindex" href="#letter_M">M</a>&#160;|&#160;<a class="qindex" href="#letter_N">N</a>&#160;|&#160;<a class="qindex" href="#letter_P">P</a>&#160;|&#160;<a class="qindex" href="#letter_R">R</a>&#160;|&#160;<a class="qindex" href="#letter_S">S</a>&#160;|&#160;<a class="qindex" href="#letter_T">T</a>&#160;|&#160;<a class="qindex" href="#letter_U">U</a>&#160;|&#160;<a class="qindex" href="#letter_W">W</a></div>
<table style="margin: 10px; white-space: nowrap;" align="center" width="95%" border="0" cellspacing="0" cellpadding="0">
<tr><td rowspan="2" valign="bottom"><a name="letter_A"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;A&#160;&#160;</div></td></tr></table>
</td><td rowspan="2" valign="bottom"><a name="letter_M"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;M&#160;&#160;</div></td></tr></table>
</td><td valign="top"><a class="el" href="structParameterRanges.html">ParameterRanges</a>&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_U"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;U&#160;&#160;</div></td></tr></table>
</td><td rowspan="2" valign="bottom"><a name="letter_F"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;F&#160;&#160;</div></td></tr></table>
</td><td rowspan="2" valign="bottom"><a name="letter_L"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;L&#160;&#160;</div></td></tr></table>
</td><td valign="top"><a class="el" href="structParameter.html">Parameter</a>&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_T"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;T&#160;&#160;</div></td></tr></table>
</td></tr>
<tr><td valign="top"><a class="el" href="classPlugin.html">Plugin</a>&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="structAudioPort.html">AudioPort</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structMidiEvent.html">MidiEvent</a>&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_T"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;T&#160;&#160;</div></td></tr></table>
</td><td valign="top"><a class="el" href="classUI.html">UI</a>&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="structParameterRanges.html">ParameterRanges</a>&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="classApp.html">App</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structWindow_1_1FileBrowserOptions.html">Window::FileBrowserOptions</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classLeakedObjectDetector.html">LeakedObjectDetector</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classPlugin.html">Plugin</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structNanoVG_1_1TextRow.html">NanoVG::TextRow</a>&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="structAudioPort.html">AudioPort</a>&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_G"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;G&#160;&#160;</div></td></tr></table>
</td><td valign="top"><a class="el" href="singletonLine.html">Line</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classPoint.html">Point</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classThread.html">Thread</a>&#160;&#160;&#160;</td></tr>
<tr><td rowspan="2" valign="bottom"><a name="letter_B"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;B&#160;&#160;</div></td></tr></table>
</td><td rowspan="2" valign="bottom"><a name="letter_M"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;M&#160;&#160;</div></td></tr></table>
</td><td rowspan="2" valign="bottom"><a name="letter_R"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;R&#160;&#160;</div></td></tr></table>
</td><td valign="top"><a class="el" href="structTimePosition.html">TimePosition</a>&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="structNanoVG_1_1GlyphPosition.html">NanoVG::GlyphPosition</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="singletonTriangle.html">Triangle</a>&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="structTimePosition_1_1BarBeatTick.html">TimePosition::BarBeatTick</a>&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_I"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;I&#160;&#160;</div></td></tr></table>
</td><td valign="top"><a class="el" href="structMidiEvent.html">MidiEvent</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="singletonRectangle.html">Rectangle</a>&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_U"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;U&#160;&#160;</div></td></tr></table>
</td></tr>
<tr><td valign="top"><a class="el" href="structWidget_1_1BaseEvent.html">Widget::BaseEvent</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structWidget_1_1MotionEvent.html">Widget::MotionEvent</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classRecursiveMutex.html">RecursiveMutex</a>&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="structWindow_1_1FileBrowserOptions_1_1Buttons.html">Window::FileBrowserOptions::Buttons</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classIdleCallback.html">IdleCallback</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structWidget_1_1MouseEvent.html">Widget::MouseEvent</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structWidget_1_1ResizeEvent.html">Widget::ResizeEvent</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classUI.html">UI</a>&#160;&#160;&#160;</td></tr>
<tr><td rowspan="2" valign="bottom"><a name="letter_C"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;C&#160;&#160;</div></td></tr></table>
</td><td valign="top"><a class="el" href="classImage.html">Image</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classMutex.html">Mutex</a>&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_S"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;S&#160;&#160;</div></td></tr></table>
</td><td rowspan="2" valign="bottom"><a name="letter_W"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;W&#160;&#160;</div></td></tr></table>
</td></tr>
<tr><td valign="top"><a class="el" href="classImageAboutWindow.html">ImageAboutWindow</a>&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_N"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;N&#160;&#160;</div></td></tr></table>
</td></tr>
<tr><td valign="top"><a class="el" href="classImageButton_1_1Callback.html">ImageButton::Callback</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classImageButton.html">ImageButton</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classScopedLocker.html">ScopedLocker</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classWidget.html">Widget</a>&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="classImageKnob_1_1Callback.html">ImageKnob::Callback</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classImageKnob.html">ImageKnob</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classNanoImage.html">NanoImage</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classScopedPointer.html">ScopedPointer</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classWindow.html">Window</a>&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="classImageSlider_1_1Callback.html">ImageSlider::Callback</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classImageSlider.html">ImageSlider</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classNanoVG.html">NanoVG</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classScopedUnlocker.html">ScopedUnlocker</a>&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_d"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;d&#160;&#160;</div></td></tr></table>
</td></tr>
<tr><td valign="top"><a class="el" href="classImageSwitch_1_1Callback.html">ImageSwitch::Callback</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classImageSwitch.html">ImageSwitch</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classNanoWidget.html">NanoWidget</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structWidget_1_1ScrollEvent.html">Widget::ScrollEvent</a>&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="singletonCircle.html">Circle</a>&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_K"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;K&#160;&#160;</div></td></tr></table>
</td><td rowspan="2" valign="bottom"><a name="letter_P"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;P&#160;&#160;</div></td></tr></table>
</td><td></td></tr>
<tr><td valign="top"><a class="el" href="structTimePosition.html">TimePosition</a>&#160;&#160;&#160;</td><td></td></tr>
<tr><td valign="top"><a class="el" href="structTimePosition_1_1BarBeatTick.html">TimePosition::BarBeatTick</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structParameter.html">Parameter</a>&#160;&#160;&#160;</td><td></td><td></td></tr>
<tr><td></td><td></td><td></td><td></td></tr>
</td><td valign="top"><a class="el" href="classSize.html">Size</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classd__string.html">d_string</a>&#160;&#160;&#160;</td></tr>
<tr><td valign="top"><a class="el" href="structColor.html">Color</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structWidget_1_1SpecialEvent.html">Widget::SpecialEvent</a>&#160;&#160;&#160;</td><td></td></tr>
<tr><td valign="top"><a class="el" href="structContainerDeletePolicy.html">ContainerDeletePolicy</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structWidget_1_1KeyboardEvent.html">Widget::KeyboardEvent</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structNanoVG_1_1Paint.html">NanoVG::Paint</a>&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classStandaloneWindow.html">StandaloneWindow</a>&#160;&#160;&#160;</td><td></td></tr>
<tr><td></td><td></td><td></td><td></td><td></td></tr>
</table>
<div class="qindex"><a class="qindex" href="#letter_A">A</a>&#160;|&#160;<a class="qindex" href="#letter_B">B</a>&#160;|&#160;<a class="qindex" href="#letter_M">M</a>&#160;|&#160;<a class="qindex" href="#letter_P">P</a>&#160;|&#160;<a class="qindex" href="#letter_T">T</a>&#160;|&#160;<a class="qindex" href="#letter_U">U</a></div>
<div class="qindex"><a class="qindex" href="#letter_A">A</a>&#160;|&#160;<a class="qindex" href="#letter_B">B</a>&#160;|&#160;<a class="qindex" href="#letter_C">C</a>&#160;|&#160;<a class="qindex" href="#letter_D">D</a>&#160;|&#160;<a class="qindex" href="#letter_F">F</a>&#160;|&#160;<a class="qindex" href="#letter_G">G</a>&#160;|&#160;<a class="qindex" href="#letter_I">I</a>&#160;|&#160;<a class="qindex" href="#letter_K">K</a>&#160;|&#160;<a class="qindex" href="#letter_L">L</a>&#160;|&#160;<a class="qindex" href="#letter_M">M</a>&#160;|&#160;<a class="qindex" href="#letter_N">N</a>&#160;|&#160;<a class="qindex" href="#letter_P">P</a>&#160;|&#160;<a class="qindex" href="#letter_R">R</a>&#160;|&#160;<a class="qindex" href="#letter_S">S</a>&#160;|&#160;<a class="qindex" href="#letter_T">T</a>&#160;|&#160;<a class="qindex" href="#letter_U">U</a>&#160;|&#160;<a class="qindex" href="#letter_W">W</a></div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Fri Apr 24 2015 00:23:57 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Sun Apr 26 2015 14:49:36 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>


+ 241
- 0
d__leakdetector_8hpp_source.html View File

@@ -0,0 +1,241 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: distrho/extra/d_leakdetector.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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</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>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_37257469cca17bab24b582e18a78eb75.html">distrho</a></li><li class="navelem"><a class="el" href="dir_b1be46be7d80596b116b2b4ac973f2f0.html">extra</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">d_leakdetector.hpp</div> </div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> * DISTRHO Plugin Framework (DPF)</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright (C) 2012-2014 Filipe Coelho &lt;falktx@falktx.com&gt;</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * Permission to use, copy, modify, and/or distribute this software for any purpose with</span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * or without fee is hereby granted, provided that the above copyright notice and this</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * permission notice appear in all copies.</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * THE SOFTWARE IS PROVIDED &quot;AS IS&quot; AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> */</span></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"> 17</span>&#160;<span class="preprocessor">#ifndef DISTRHO_LEAK_DETECTOR_HPP_INCLUDED</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="preprocessor">#define DISTRHO_LEAK_DETECTOR_HPP_INCLUDED</span></div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;</div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="preprocessor">#include &quot;../DistrhoUtils.hpp&quot;</span></div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;</div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;START_NAMESPACE_DISTRHO</div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;</div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment">// The following code was based from juce-core LeakDetector class</span></div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment">// Copyright (C) 2013 Raw Material Software Ltd.</span></div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment">/** A good old-fashioned C macro concatenation helper.</span></div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> This combines two items (which may themselves be macros) into a single string,</span></div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> avoiding the pitfalls of the ## macro operator.</span></div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment">*/</span></div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="preprocessor">#define DISTRHO_JOIN_MACRO_HELPER(a, b) a ## b</span></div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="preprocessor">#define DISTRHO_JOIN_MACRO(item1, item2) DISTRHO_JOIN_MACRO_HELPER(item1, item2)</span></div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="comment">/** This macro lets you embed a leak-detecting object inside a class.\n</span></div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="comment"> To use it, simply declare a DISTRHO_LEAK_DETECTOR(YourClassName) inside a private section</span></div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="comment"> of the class declaration. E.g.</span></div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="comment"> \code</span></div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="comment"> class MyClass</span></div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="comment"> {</span></div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment"> public:</span></div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment"> MyClass();</span></div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment"> void blahBlah();</span></div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment"> private:</span></div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="comment"> DISTRHO_LEAK_DETECTOR(MyClass)</span></div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment"> };</span></div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="comment"> \endcode</span></div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="comment">*/</span></div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="preprocessor">#define DISTRHO_LEAK_DETECTOR(ClassName) \</span></div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="preprocessor"> friend class DISTRHO_NAMESPACE::LeakedObjectDetector&lt;ClassName&gt;; \</span></div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="preprocessor"> static const char* getLeakedObjectClassName() noexcept { return #ClassName; } \</span></div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="preprocessor"> DISTRHO_NAMESPACE::LeakedObjectDetector&lt;ClassName&gt; DISTRHO_JOIN_MACRO(leakDetector_, ClassName);</span></div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="preprocessor">#define DISTRHO_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR(ClassName) \</span></div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="preprocessor"> DISTRHO_DECLARE_NON_COPY_CLASS(ClassName) \</span></div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="preprocessor"> DISTRHO_LEAK_DETECTOR(ClassName)</span></div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="comment">//==============================================================================</span><span class="comment"></span></div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="comment">/**</span></div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="comment"> Embedding an instance of this class inside another class can be used as a low-overhead</span></div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="comment"> way of detecting leaked instances.</span></div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="comment"> This class keeps an internal static count of the number of instances that are</span></div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="comment"> active, so that when the app is shutdown and the static destructors are called,</span></div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="comment"> it can check whether there are any left-over instances that may have been leaked.</span></div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="comment"> To use it, use the DISTRHO_LEAK_DETECTOR macro as a simple way to put one in your</span></div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="comment"> class declaration.</span></div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="comment">*/</span></div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">class</span> OwnerClass&gt;</div>
<div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="classLeakedObjectDetector.html"> 72</a></span>&#160;<span class="keyword">class </span><a class="code" href="classLeakedObjectDetector.html">LeakedObjectDetector</a></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"> 74</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="comment">//==============================================================================</span></div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <a class="code" href="classLeakedObjectDetector.html">LeakedObjectDetector</a>() noexcept { ++(getCounter().numObjects); }</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <a class="code" href="classLeakedObjectDetector.html">LeakedObjectDetector</a>(<span class="keyword">const</span> <a class="code" href="classLeakedObjectDetector.html">LeakedObjectDetector</a>&amp;) noexcept { ++(getCounter().numObjects); }</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;</div>
<div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="classLeakedObjectDetector.html#af4fd575fa5361ce5b01f65a635b1d6b3"> 79</a></span>&#160; <a class="code" href="classLeakedObjectDetector.html#af4fd575fa5361ce5b01f65a635b1d6b3">~LeakedObjectDetector</a>() noexcept</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; {</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="keywordflow">if</span> (--(getCounter().numObjects) &lt; 0)</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; {<span class="comment"></span></div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="comment"> /** If you hit this, then you&#39;ve managed to delete more instances of this class than you&#39;ve</span></div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="comment"> created.. That indicates that you&#39;re deleting some dangling pointers.</span></div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="comment"> Note that although this assertion will have been triggered during a destructor, it might</span></div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="comment"> not be this particular deletion that&#39;s at fault - the incorrect one may have happened</span></div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="comment"> at an earlier point in the program, and simply not been detected until now.</span></div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;<span class="comment"> Most errors like this are caused by using old-fashioned, non-RAII techniques for</span></div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="comment"> your object management. Tut, tut. Always, always use ScopedPointers, OwnedArrays,</span></div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;<span class="comment"> ReferenceCountedObjects, etc, and avoid the &#39;delete&#39; operator at all costs!</span></div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; d_stderr2(<span class="stringliteral">&quot;*** Dangling pointer deletion! Class: &#39;%s&#39;, Count: %i&quot;</span>, getLeakedObjectClassName(), getCounter().numObjects);</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; }</div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; }</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="comment">//==============================================================================</span></div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="keyword">class </span>LeakCounter</div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; {</div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="keyword">public</span>:</div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; LeakCounter() noexcept</div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; : numObjects(0) {}</div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; ~LeakCounter() noexcept</div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; {</div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keywordflow">if</span> (numObjects &gt; 0)</div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; {<span class="comment"></span></div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;<span class="comment"> /** If you hit this, then you&#39;ve leaked one or more objects of the type specified by</span></div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;<span class="comment"> the &#39;OwnerClass&#39; template parameter - the name should have been printed by the line above.</span></div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;<span class="comment"> If you&#39;re leaking, it&#39;s probably because you&#39;re using old-fashioned, non-RAII techniques for</span></div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;<span class="comment"> your object management. Tut, tut. Always, always use ScopedPointers, OwnedArrays,</span></div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;<span class="comment"> ReferenceCountedObjects, etc, and avoid the &#39;delete&#39; operator at all costs!</span></div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; d_stderr2(<span class="stringliteral">&quot;*** Leaked objects detected: %i instance(s) of class &#39;%s&#39;&quot;</span>, numObjects, getLeakedObjectClassName());</div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; }</div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; }</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"> 121</span>&#160; <span class="comment">// this should be an atomic...</span></div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <span class="keyword">volatile</span> <span class="keywordtype">int</span> numObjects;</div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; };</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;</div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* getLeakedObjectClassName() noexcept</div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; {</div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="keywordflow">return</span> OwnerClass::getLeakedObjectClassName();</div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; }</div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <span class="keyword">static</span> LeakCounter&amp; getCounter() noexcept</div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; {</div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="keyword">static</span> LeakCounter counter;</div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <span class="keywordflow">return</span> counter;</div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; }</div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;};</div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;</div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;</div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;END_NAMESPACE_DISTRHO</div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;</div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;<span class="preprocessor">#endif // DISTRHO_LEAK_DETECTOR_HPP_INCLUDED</span></div>
<div class="ttc" id="classLeakedObjectDetector_html"><div class="ttname"><a href="classLeakedObjectDetector.html">LeakedObjectDetector</a></div><div class="ttdef"><b>Definition:</b> d_leakdetector.hpp:72</div></div>
<div class="ttc" id="classLeakedObjectDetector_html_af4fd575fa5361ce5b01f65a635b1d6b3"><div class="ttname"><a href="classLeakedObjectDetector.html#af4fd575fa5361ce5b01f65a635b1d6b3">LeakedObjectDetector::~LeakedObjectDetector</a></div><div class="ttdeci">~LeakedObjectDetector() noexcept</div><div class="ttdef"><b>Definition:</b> d_leakdetector.hpp:79</div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 332
- 0
d__mutex_8hpp_source.html View File

@@ -0,0 +1,332 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: distrho/extra/d_mutex.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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</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>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_37257469cca17bab24b582e18a78eb75.html">distrho</a></li><li class="navelem"><a class="el" href="dir_b1be46be7d80596b116b2b4ac973f2f0.html">extra</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">d_mutex.hpp</div> </div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> * DISTRHO Plugin Framework (DPF)</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright (C) 2012-2014 Filipe Coelho &lt;falktx@falktx.com&gt;</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * Permission to use, copy, modify, and/or distribute this software for any purpose with</span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * or without fee is hereby granted, provided that the above copyright notice and this</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * permission notice appear in all copies.</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * THE SOFTWARE IS PROVIDED &quot;AS IS&quot; AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> */</span></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"> 17</span>&#160;<span class="preprocessor">#ifndef DISTRHO_MUTEX_HPP_INCLUDED</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="preprocessor">#define DISTRHO_MUTEX_HPP_INCLUDED</span></div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;</div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="preprocessor">#include &quot;../DistrhoUtils.hpp&quot;</span></div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;</div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="preprocessor">#ifdef DISTRHO_OS_WINDOWS</span></div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="preprocessor"># include &lt;winsock2.h&gt;</span></div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="preprocessor"># include &lt;windows.h&gt;</span></div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;</div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="preprocessor">#include &lt;pthread.h&gt;</span></div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;</div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;START_NAMESPACE_DISTRHO</div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;</div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment">// Mutex class</span></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"><a class="line" href="classMutex.html"> 34</a></span>&#160;<span class="keyword">class </span><a class="code" href="classMutex.html">Mutex</a></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;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="comment"> * Constructor.</span></div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; <a class="code" href="classMutex.html">Mutex</a>() noexcept</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; {</div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; pthread_mutex_init(&amp;fMutex, <span class="keyword">nullptr</span>);</div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; }</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="comment"> * Destructor.</span></div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; ~<a class="code" href="classMutex.html">Mutex</a>() noexcept</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; pthread_mutex_destroy(&amp;fMutex);</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"> 52</span>&#160;</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="comment"> * Lock the mutex.</span></div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="keywordtype">void</span> lock() <span class="keyword">const</span> noexcept</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; {</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; pthread_mutex_lock(&amp;fMutex);</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; }</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="comment"> * Try to lock the mutex.</span></div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="comment"> * Returns true if successful.</span></div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="keywordtype">bool</span> tryLock() <span class="keyword">const</span> noexcept</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; {</div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="keywordflow">return</span> (pthread_mutex_trylock(&amp;fMutex) == 0);</div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; }</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="comment"> * Unlock the mutex.</span></div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordtype">void</span> unlock() <span class="keyword">const</span> noexcept</div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; {</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; pthread_mutex_unlock(&amp;fMutex);</div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; }</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keyword">mutable</span> pthread_mutex_t fMutex;</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; DISTRHO_PREVENT_HEAP_ALLOCATION</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; DISTRHO_DECLARE_NON_COPY_CLASS(<a class="code" href="classMutex.html">Mutex</a>)</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;};</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="comment">// RecursiveMutex class</span></div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;</div>
<div class="line"><a name="l00088"></a><span class="lineno"><a class="line" href="classRecursiveMutex.html"> 88</a></span>&#160;<span class="keyword">class </span><a class="code" href="classRecursiveMutex.html">RecursiveMutex</a></div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;{</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;<span class="comment"> * Constructor.</span></div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <a class="code" href="classRecursiveMutex.html">RecursiveMutex</a>() noexcept</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; {</div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;<span class="preprocessor">#ifdef DISTRHO_OS_WINDOWS</span></div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; InitializeCriticalSection(&amp;fSection);</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;<span class="preprocessor">#else</span></div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; pthread_mutexattr_t atts;</div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; pthread_mutexattr_init(&amp;atts);</div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; pthread_mutexattr_settype(&amp;atts, PTHREAD_MUTEX_RECURSIVE);</div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; pthread_mutex_init(&amp;fMutex, &amp;atts);</div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; pthread_mutexattr_destroy(&amp;atts);</div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; }</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;</div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;<span class="comment"> * Destructor.</span></div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; ~<a class="code" href="classRecursiveMutex.html">RecursiveMutex</a>() noexcept</div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; {</div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;<span class="preprocessor">#ifdef DISTRHO_OS_WINDOWS</span></div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; DeleteCriticalSection(&amp;fSection);</div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;<span class="preprocessor">#else</span></div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; pthread_mutex_destroy(&amp;fMutex);</div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; }</div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;</div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;<span class="comment"> * Lock the mutex.</span></div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <span class="keywordtype">void</span> lock() <span class="keyword">const</span> noexcept</div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; {</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;<span class="preprocessor">#ifdef DISTRHO_OS_WINDOWS</span></div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; EnterCriticalSection(&amp;fSection);</div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;<span class="preprocessor">#else</span></div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; pthread_mutex_lock(&amp;fMutex);</div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; }</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;</div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;<span class="comment"> * Try to lock the mutex.</span></div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;<span class="comment"> * Returns true if successful.</span></div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <span class="keywordtype">bool</span> tryLock() <span class="keyword">const</span> noexcept</div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; {</div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;<span class="preprocessor">#ifdef DISTRHO_OS_WINDOWS</span></div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="keywordflow">return</span> (TryEnterCriticalSection(&amp;fSection) != FALSE);</div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;<span class="preprocessor">#else</span></div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <span class="keywordflow">return</span> (pthread_mutex_trylock(&amp;fMutex) == 0);</div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; }</div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;</div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;<span class="comment"> * Unlock the mutex.</span></div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="keywordtype">void</span> unlock() <span class="keyword">const</span> noexcept</div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; {</div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;<span class="preprocessor">#ifdef DISTRHO_OS_WINDOWS</span></div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; LeaveCriticalSection(&amp;fSection);</div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;<span class="preprocessor">#else</span></div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; pthread_mutex_unlock(&amp;fMutex);</div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; }</div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;</div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;<span class="preprocessor">#ifdef DISTRHO_OS_WINDOWS</span></div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <span class="keyword">mutable</span> CRITICAL_SECTION fSection;</div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;<span class="preprocessor">#else</span></div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <span class="keyword">mutable</span> pthread_mutex_t fMutex;</div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;</div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; DISTRHO_PREVENT_HEAP_ALLOCATION</div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; DISTRHO_DECLARE_NON_COPY_CLASS(<a class="code" href="classRecursiveMutex.html">RecursiveMutex</a>)</div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;};</div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;</div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;<span class="comment">// Helper class to lock&amp;unlock a mutex during a function scope.</span></div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;</div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> Mutex&gt;</div>
<div class="line"><a name="l00171"></a><span class="lineno"><a class="line" href="classScopedLocker.html"> 171</a></span>&#160;<span class="keyword">class </span><a class="code" href="classScopedLocker.html">ScopedLocker</a></div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;{</div>
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; <a class="code" href="classScopedLocker.html">ScopedLocker</a>(<span class="keyword">const</span> <a class="code" href="classMutex.html">Mutex</a>&amp; mutex) noexcept</div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; : fMutex(mutex)</div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; {</div>
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; fMutex.lock();</div>
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; }</div>
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;</div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; ~<a class="code" href="classScopedLocker.html">ScopedLocker</a>() noexcept</div>
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; {</div>
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; fMutex.unlock();</div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; }</div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;</div>
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; <span class="keyword">const</span> <a class="code" href="classMutex.html">Mutex</a>&amp; fMutex;</div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;</div>
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; DISTRHO_PREVENT_HEAP_ALLOCATION</div>
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; DISTRHO_DECLARE_NON_COPY_CLASS(<a class="code" href="classScopedLocker.html">ScopedLocker</a>)</div>
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;};</div>
<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160;</div>
<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;<span class="comment">// Helper class to unlock&amp;lock a mutex during a function scope.</span></div>
<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160;</div>
<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> Mutex&gt;</div>
<div class="line"><a name="l00196"></a><span class="lineno"><a class="line" href="classScopedUnlocker.html"> 196</a></span>&#160;<span class="keyword">class </span><a class="code" href="classScopedUnlocker.html">ScopedUnlocker</a></div>
<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160;{</div>
<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; <a class="code" href="classScopedUnlocker.html">ScopedUnlocker</a>(<span class="keyword">const</span> <a class="code" href="classMutex.html">Mutex</a>&amp; mutex) noexcept</div>
<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; : fMutex(mutex)</div>
<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; {</div>
<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; fMutex.unlock();</div>
<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; }</div>
<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160;</div>
<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; ~<a class="code" href="classScopedUnlocker.html">ScopedUnlocker</a>() noexcept</div>
<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; {</div>
<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; fMutex.lock();</div>
<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; }</div>
<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160;</div>
<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; <span class="keyword">const</span> <a class="code" href="classMutex.html">Mutex</a>&amp; fMutex;</div>
<div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160;</div>
<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; DISTRHO_PREVENT_HEAP_ALLOCATION</div>
<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; DISTRHO_DECLARE_NON_COPY_CLASS(<a class="code" href="classScopedUnlocker.html">ScopedUnlocker</a>)</div>
<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160;};</div>
<div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160;</div>
<div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160;<span class="comment">// Define types</span></div>
<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160;</div>
<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160;<span class="keyword">typedef</span> <a class="code" href="classScopedLocker.html">ScopedLocker&lt;Mutex&gt;</a> <a class="code" href="classScopedLocker.html">MutexLocker</a>;</div>
<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160;<span class="keyword">typedef</span> <a class="code" href="classScopedLocker.html">ScopedLocker&lt;RecursiveMutex&gt;</a> <a class="code" href="classScopedLocker.html">RecursiveMutexLocker</a>;</div>
<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160;</div>
<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160;<span class="keyword">typedef</span> <a class="code" href="classScopedUnlocker.html">ScopedUnlocker&lt;Mutex&gt;</a> <a class="code" href="classScopedUnlocker.html">MutexUnlocker</a>;</div>
<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160;<span class="keyword">typedef</span> <a class="code" href="classScopedUnlocker.html">ScopedUnlocker&lt;RecursiveMutex&gt;</a> <a class="code" href="classScopedUnlocker.html">RecursiveMutexUnlocker</a>;</div>
<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160;</div>
<div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160;</div>
<div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160;END_NAMESPACE_DISTRHO</div>
<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160;</div>
<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160;<span class="preprocessor">#endif // DISTRHO_MUTEX_HPP_INCLUDED</span></div>
<div class="ttc" id="classRecursiveMutex_html"><div class="ttname"><a href="classRecursiveMutex.html">RecursiveMutex</a></div><div class="ttdef"><b>Definition:</b> d_mutex.hpp:88</div></div>
<div class="ttc" id="classScopedUnlocker_html"><div class="ttname"><a href="classScopedUnlocker.html">ScopedUnlocker</a></div><div class="ttdef"><b>Definition:</b> d_mutex.hpp:196</div></div>
<div class="ttc" id="classMutex_html"><div class="ttname"><a href="classMutex.html">Mutex</a></div><div class="ttdef"><b>Definition:</b> d_mutex.hpp:34</div></div>
<div class="ttc" id="classScopedLocker_html"><div class="ttname"><a href="classScopedLocker.html">ScopedLocker</a></div><div class="ttdef"><b>Definition:</b> d_mutex.hpp:171</div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 357
- 0
d__scopedpointer_8hpp_source.html View File

@@ -0,0 +1,357 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: distrho/extra/d_scopedpointer.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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</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>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_37257469cca17bab24b582e18a78eb75.html">distrho</a></li><li class="navelem"><a class="el" href="dir_b1be46be7d80596b116b2b4ac973f2f0.html">extra</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">d_scopedpointer.hpp</div> </div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> * DISTRHO Plugin Framework (DPF)</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright (C) 2012-2014 Filipe Coelho &lt;falktx@falktx.com&gt;</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * Permission to use, copy, modify, and/or distribute this software for any purpose with</span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * or without fee is hereby granted, provided that the above copyright notice and this</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * permission notice appear in all copies.</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * THE SOFTWARE IS PROVIDED &quot;AS IS&quot; AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> */</span></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"> 17</span>&#160;<span class="preprocessor">#ifndef DISTRHO_SCOPED_POINTER_HPP_INCLUDED</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="preprocessor">#define DISTRHO_SCOPED_POINTER_HPP_INCLUDED</span></div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;</div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="preprocessor">#include &quot;../DistrhoUtils.hpp&quot;</span></div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;</div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="preprocessor">#include &lt;algorithm&gt;</span></div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;</div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;START_NAMESPACE_DISTRHO</div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;</div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment">// The following code was based from juce-core ScopedPointer class</span></div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment">// Copyright (C) 2013 Raw Material Software Ltd.</span></div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment">/**</span></div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> Used by container classes as an indirect way to delete an object of a</span></div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> particular type.</span></div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="comment"> The generic implementation of this class simply calls &#39;delete&#39;, but you can</span></div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="comment"> create a specialised version of it for a particular class if you need to</span></div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="comment"> delete that type of object in a more appropriate way.</span></div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="comment">*/</span></div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">typename</span> ObjectType&gt;</div>
<div class="line"><a name="l00039"></a><span class="lineno"><a class="line" href="structContainerDeletePolicy.html"> 39</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structContainerDeletePolicy.html">ContainerDeletePolicy</a></div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;{</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <span class="keyword">static</span> <span class="keywordtype">void</span> destroy(ObjectType* <span class="keyword">const</span> <span class="keywordtype">object</span>)</div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; {</div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <span class="keyword">delete</span> object;</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; }</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;};</div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment">//==============================================================================</span><span class="comment"></span></div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="comment">/**</span></div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="comment"> This class holds a pointer which is automatically deleted when this object goes</span></div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="comment"> out of scope.</span></div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="comment"> Once a pointer has been passed to a ScopedPointer, it will make sure that the pointer</span></div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="comment"> gets deleted when the ScopedPointer is deleted. Using the ScopedPointer on the stack or</span></div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="comment"> as member variables is a good way to use RAII to avoid accidentally leaking dynamically</span></div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="comment"> created objects.</span></div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="comment"> A ScopedPointer can be used in pretty much the same way that you&#39;d use a normal pointer</span></div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="comment"> to an object. If you use the assignment operator to assign a different object to a</span></div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="comment"> ScopedPointer, the old one will be automatically deleted.</span></div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="comment"> A const ScopedPointer is guaranteed not to lose ownership of its object or change the</span></div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="comment"> object to which it points during its lifetime. This means that making a copy of a const</span></div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="comment"> ScopedPointer is impossible, as that would involve the new copy taking ownership from the</span></div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="comment"> old one.</span></div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="comment"> If you need to get a pointer out of a ScopedPointer without it being deleted, you</span></div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="comment"> can use the release() method.</span></div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="comment"> Something to note is the main difference between this class and the std::auto_ptr class,</span></div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="comment"> which is that ScopedPointer provides a cast-to-object operator, wheras std::auto_ptr</span></div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="comment"> requires that you always call get() to retrieve the pointer. The advantages of providing</span></div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="comment"> the cast is that you don&#39;t need to call get(), so can use the ScopedPointer in pretty much</span></div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="comment"> exactly the same way as a raw pointer. The disadvantage is that the compiler is free to</span></div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="comment"> use the cast in unexpected and sometimes dangerous ways - in particular, it becomes difficult</span></div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="comment"> to return a ScopedPointer as the result of a function. To avoid this causing errors,</span></div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="comment"> ScopedPointer contains an overloaded constructor that should cause a syntax error in these</span></div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="comment"> circumstances, but it does mean that instead of returning a ScopedPointer from a function,</span></div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="comment"> you&#39;d need to return a raw pointer (or use a std::auto_ptr instead).</span></div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="comment">*/</span></div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">class</span> ObjectType&gt;</div>
<div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="classScopedPointer.html"> 81</a></span>&#160;<span class="keyword">class </span><a class="code" href="classScopedPointer.html">ScopedPointer</a></div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;{</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="comment">//==============================================================================</span><span class="comment"></span></div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<span class="comment"> /** Creates a ScopedPointer containing a null pointer. */</span></div>
<div class="line"><a name="l00086"></a><span class="lineno"><a class="line" href="classScopedPointer.html#ac187958296e33aa057dd37478ea70400"> 86</a></span>&#160; <a class="code" href="classScopedPointer.html#ac187958296e33aa057dd37478ea70400">ScopedPointer</a>() noexcept</div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; : <span class="keywordtype">object</span>(<span class="keywordtype">nullptr</span>) {}</div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="comment"> /** Creates a ScopedPointer that owns the specified object. */</span></div>
<div class="line"><a name="l00090"></a><span class="lineno"><a class="line" href="classScopedPointer.html#a44a7843e49c3ff719f06607b6e908f7d"> 90</a></span>&#160; <a class="code" href="classScopedPointer.html#a44a7843e49c3ff719f06607b6e908f7d">ScopedPointer</a>(ObjectType* <span class="keyword">const</span> objectToTakePossessionOf) noexcept</div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; : object(objectToTakePossessionOf) {}</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="comment"> /** Creates a ScopedPointer that takes its pointer from another ScopedPointer.</span></div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<span class="comment"> Because a pointer can only belong to one ScopedPointer, this transfers</span></div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;<span class="comment"> the pointer from the other object to this one, and the other object is reset to</span></div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;<span class="comment"> be a null pointer.</span></div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00099"></a><span class="lineno"><a class="line" href="classScopedPointer.html#a04688b1561dd9d861ca80c6deb63a233"> 99</a></span>&#160; <a class="code" href="classScopedPointer.html#a04688b1561dd9d861ca80c6deb63a233">ScopedPointer</a>(<a class="code" href="classScopedPointer.html">ScopedPointer</a>&amp; objectToTransferFrom) noexcept</div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; : object(objectToTransferFrom.object)</div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; {</div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; objectToTransferFrom.object = <span class="keyword">nullptr</span>;</div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; }</div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<span class="comment"> /** Destructor.</span></div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<span class="comment"> This will delete the object that this ScopedPointer currently refers to.</span></div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00108"></a><span class="lineno"><a class="line" href="classScopedPointer.html#a3c540f0121065aafa5f9607362fc1450"> 108</a></span>&#160; <a class="code" href="classScopedPointer.html#a3c540f0121065aafa5f9607362fc1450">~ScopedPointer</a>()</div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; {</div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <a class="code" href="structContainerDeletePolicy.html">ContainerDeletePolicy&lt;ObjectType&gt;::destroy</a>(<span class="keywordtype">object</span>);</div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; }</div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;<span class="comment"> /** Changes this ScopedPointer to point to a new object.</span></div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;<span class="comment"> Because a pointer can only belong to one ScopedPointer, this transfers</span></div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;<span class="comment"> the pointer from the other object to this one, and the other object is reset to</span></div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;<span class="comment"> be a null pointer.</span></div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;<span class="comment"> If this ScopedPointer already points to an object, that object</span></div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;<span class="comment"> will first be deleted.</span></div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00122"></a><span class="lineno"><a class="line" href="classScopedPointer.html#afefc7940828d72c056e03804cd6bea9f"> 122</a></span>&#160; <a class="code" href="classScopedPointer.html">ScopedPointer</a>&amp; <a class="code" href="classScopedPointer.html#afefc7940828d72c056e03804cd6bea9f">operator=</a>(<a class="code" href="classScopedPointer.html">ScopedPointer</a>&amp; objectToTransferFrom)</div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; {</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <span class="keywordflow">if</span> (<span class="keyword">this</span> != objectToTransferFrom.getAddress())</div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; {</div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="comment">// Two ScopedPointers should never be able to refer to the same object - if</span></div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="comment">// this happens, you must have done something dodgy!</span></div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; DISTRHO_SAFE_ASSERT_RETURN(<span class="keywordtype">object</span> == <span class="keyword">nullptr</span> || <span class="keywordtype">object</span> != objectToTransferFrom.object, *<span class="keyword">this</span>);</div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; ObjectType* <span class="keyword">const</span> oldObject = object;</div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="keywordtype">object</span> = objectToTransferFrom.object;</div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; objectToTransferFrom.object = <span class="keyword">nullptr</span>;</div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <a class="code" href="structContainerDeletePolicy.html">ContainerDeletePolicy&lt;ObjectType&gt;::destroy</a>(oldObject);</div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; }</div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;</div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; }</div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;<span class="comment"> /** Changes this ScopedPointer to point to a new object.</span></div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;<span class="comment"> If this ScopedPointer already points to an object, that object</span></div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;<span class="comment"> will first be deleted.</span></div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;<span class="comment"> The pointer that you pass in may be a nullptr.</span></div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00146"></a><span class="lineno"><a class="line" href="classScopedPointer.html#a88ee7f038e57471539d3181141c0390e"> 146</a></span>&#160; <a class="code" href="classScopedPointer.html">ScopedPointer</a>&amp; <a class="code" href="classScopedPointer.html#a88ee7f038e57471539d3181141c0390e">operator=</a>(ObjectType* <span class="keyword">const</span> newObjectToTakePossessionOf)</div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; {</div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <span class="keywordflow">if</span> (<span class="keywordtype">object</span> != newObjectToTakePossessionOf)</div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; {</div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; ObjectType* <span class="keyword">const</span> oldObject = object;</div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <span class="keywordtype">object</span> = newObjectToTakePossessionOf;</div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <a class="code" href="structContainerDeletePolicy.html">ContainerDeletePolicy&lt;ObjectType&gt;::destroy</a>(oldObject);</div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; }</div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;</div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; }</div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;</div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <span class="comment">//==============================================================================</span><span class="comment"></span></div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;<span class="comment"> /** Returns the object that this ScopedPointer refers to. */</span></div>
<div class="line"><a name="l00160"></a><span class="lineno"><a class="line" href="classScopedPointer.html#af7c241c736d79754fd6f8d305cce8bc3"> 160</a></span>&#160; <span class="keyword">operator</span> ObjectType*() <span class="keyword">const</span> noexcept { <span class="keywordflow">return</span> object; }</div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;<span class="comment"> /** Returns the object that this ScopedPointer refers to. */</span></div>
<div class="line"><a name="l00163"></a><span class="lineno"><a class="line" href="classScopedPointer.html#ac65fb45b9eb2d53773489fcfbc6fd740"> 163</a></span>&#160; ObjectType* <span class="keyword">get</span>() <span class="keyword">const</span> noexcept { <span class="keywordflow">return</span> object; }</div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;<span class="comment"> /** Returns the object that this ScopedPointer refers to. */</span></div>
<div class="line"><a name="l00166"></a><span class="lineno"><a class="line" href="classScopedPointer.html#a2f48458a1656a6ef1bd35cb8452eed35"> 166</a></span>&#160; ObjectType&amp; <a class="code" href="classScopedPointer.html#a2f48458a1656a6ef1bd35cb8452eed35">operator*</a>() const noexcept { <span class="keywordflow">return</span> *object; }</div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;<span class="comment"> /** Lets you access methods and properties of the object that this ScopedPointer refers to. */</span></div>
<div class="line"><a name="l00169"></a><span class="lineno"><a class="line" href="classScopedPointer.html#a6eedc84349cbe629cc1abb79ffa74e87"> 169</a></span>&#160; ObjectType* <a class="code" href="classScopedPointer.html#a6eedc84349cbe629cc1abb79ffa74e87">operator-&gt;</a>() const noexcept { <span class="keywordflow">return</span> object; }</div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;</div>
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="comment">//==============================================================================</span><span class="comment"></span></div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;<span class="comment"> /** Removes the current object from this ScopedPointer without deleting it.</span></div>
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160;<span class="comment"> This will return the current object, and set the ScopedPointer to a null pointer.</span></div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00175"></a><span class="lineno"><a class="line" href="classScopedPointer.html#a10c8f696fec0cca763b067ec3e469199"> 175</a></span>&#160; ObjectType* <a class="code" href="classScopedPointer.html#a10c8f696fec0cca763b067ec3e469199">release</a>() noexcept { ObjectType* <span class="keyword">const</span> o = object; <span class="keywordtype">object</span> = <span class="keyword">nullptr</span>; <span class="keywordflow">return</span> o; }</div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;</div>
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <span class="comment">//==============================================================================</span><span class="comment"></span></div>
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160;<span class="comment"> /** Swaps this object with that of another ScopedPointer.</span></div>
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;<span class="comment"> The two objects simply exchange their pointers.</span></div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00181"></a><span class="lineno"><a class="line" href="classScopedPointer.html#a362cd8d5a212df0ee08691b75a4ba3de"> 181</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classScopedPointer.html#a362cd8d5a212df0ee08691b75a4ba3de">swapWith</a>(<a class="code" href="classScopedPointer.html">ScopedPointer&lt;ObjectType&gt;</a>&amp; other) noexcept</div>
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; {</div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <span class="comment">// Two ScopedPointers should never be able to refer to the same object - if</span></div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; <span class="comment">// this happens, you must have done something dodgy!</span></div>
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; DISTRHO_SAFE_ASSERT_RETURN(<span class="keywordtype">object</span> != other.object || <span class="keyword">this</span> == other.getAddress() || <span class="keywordtype">object</span> == <span class="keyword">nullptr</span>,);</div>
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;</div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; std::swap(<span class="keywordtype">object</span>, other.object);</div>
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; }</div>
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;</div>
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; <span class="comment">//==============================================================================</span></div>
<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; ObjectType* object;</div>
<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;</div>
<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; <span class="comment">// (Required as an alternative to the overloaded &amp; operator).</span></div>
<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; <span class="keyword">const</span> <a class="code" href="classScopedPointer.html">ScopedPointer</a>* getAddress() const noexcept { <span class="keywordflow">return</span> <span class="keyword">this</span>; }</div>
<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160;</div>
<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160;<span class="preprocessor">#ifndef _MSC_VER // (MSVC can&#39;t deal with multiple copy constructors)</span></div>
<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; <span class="comment">/* The copy constructors are private to stop people accidentally copying a const ScopedPointer</span></div>
<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160;<span class="comment"> (the compiler would let you do so by implicitly casting the source to its raw object pointer).</span></div>
<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160;<span class="comment"> A side effect of this is that in a compiler that doesn&#39;t support C++11, you may hit an</span></div>
<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160;<span class="comment"> error when you write something like this:</span></div>
<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160;<span class="comment"> ScopedPointer&lt;MyClass&gt; m = new MyClass(); // Compile error: copy constructor is private.</span></div>
<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160;<span class="comment"> Even though the compiler would normally ignore the assignment here, it can&#39;t do so when the</span></div>
<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160;<span class="comment"> copy constructor is private. It&#39;s very easy to fix though - just write it like this:</span></div>
<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160;<span class="comment"> ScopedPointer&lt;MyClass&gt; m (new MyClass()); // Compiles OK</span></div>
<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160;<span class="comment"> It&#39;s probably best to use the latter form when writing your object declarations anyway, as</span></div>
<div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160;<span class="comment"> this is a better representation of the code that you actually want the compiler to produce.</span></div>
<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160;<span class="preprocessor"># ifdef DISTRHO_PROPER_CPP11_SUPPORT</span></div>
<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; <a class="code" href="classScopedPointer.html#ac187958296e33aa057dd37478ea70400">ScopedPointer</a>(<span class="keyword">const</span> <a class="code" href="classScopedPointer.html">ScopedPointer</a>&amp;) = <span class="keyword">delete</span>;</div>
<div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; <a class="code" href="classScopedPointer.html">ScopedPointer</a>&amp; <a class="code" href="classScopedPointer.html#afefc7940828d72c056e03804cd6bea9f">operator=</a>(<span class="keyword">const</span> <a class="code" href="classScopedPointer.html">ScopedPointer</a>&amp;) = <span class="keyword">delete</span>;</div>
<div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160;<span class="preprocessor"># else</span></div>
<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; <a class="code" href="classScopedPointer.html#ac187958296e33aa057dd37478ea70400">ScopedPointer</a>(<span class="keyword">const</span> <a class="code" href="classScopedPointer.html">ScopedPointer</a>&amp;);</div>
<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; <a class="code" href="classScopedPointer.html">ScopedPointer</a>&amp; <a class="code" href="classScopedPointer.html#afefc7940828d72c056e03804cd6bea9f">operator=</a>(<span class="keyword">const</span> <a class="code" href="classScopedPointer.html">ScopedPointer</a>&amp;);</div>
<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160;<span class="preprocessor"># endif</span></div>
<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160;};</div>
<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160;</div>
<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160;<span class="comment">//==============================================================================</span><span class="comment"></span></div>
<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160;<span class="comment">/** Compares a ScopedPointer with another pointer.</span></div>
<div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160;<span class="comment"> This can be handy for checking whether this is a null pointer.</span></div>
<div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160;<span class="comment">*/</span></div>
<div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">class</span> ObjectType&gt;</div>
<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160;<span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> <a class="code" href="classScopedPointer.html">ScopedPointer&lt;ObjectType&gt;</a>&amp; pointer1, ObjectType* <span class="keyword">const</span> pointer2) noexcept</div>
<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160;{</div>
<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; <span class="keywordflow">return</span> <span class="keyword">static_cast&lt;</span>ObjectType*<span class="keyword">&gt;</span>(pointer1) == pointer2;</div>
<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160;}</div>
<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160;<span class="comment">/** Compares a ScopedPointer with another pointer.</span></div>
<div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160;<span class="comment"> This can be handy for checking whether this is a null pointer.</span></div>
<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160;<span class="comment">*/</span></div>
<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">class</span> ObjectType&gt;</div>
<div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160;<span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> <a class="code" href="classScopedPointer.html">ScopedPointer&lt;ObjectType&gt;</a>&amp; pointer1, ObjectType* <span class="keyword">const</span> pointer2) noexcept</div>
<div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;{</div>
<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; <span class="keywordflow">return</span> <span class="keyword">static_cast&lt;</span>ObjectType*<span class="keyword">&gt;</span>(pointer1) != pointer2;</div>
<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160;}</div>
<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160;</div>
<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160;</div>
<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160;END_NAMESPACE_DISTRHO</div>
<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160;</div>
<div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160;<span class="preprocessor">#endif // DISTRHO_SCOPED_POINTER_HPP_INCLUDED</span></div>
<div class="ttc" id="classScopedPointer_html_a10c8f696fec0cca763b067ec3e469199"><div class="ttname"><a href="classScopedPointer.html#a10c8f696fec0cca763b067ec3e469199">ScopedPointer::release</a></div><div class="ttdeci">ObjectType * release() noexcept</div><div class="ttdef"><b>Definition:</b> d_scopedpointer.hpp:175</div></div>
<div class="ttc" id="classScopedPointer_html_a3c540f0121065aafa5f9607362fc1450"><div class="ttname"><a href="classScopedPointer.html#a3c540f0121065aafa5f9607362fc1450">ScopedPointer::~ScopedPointer</a></div><div class="ttdeci">~ScopedPointer()</div><div class="ttdef"><b>Definition:</b> d_scopedpointer.hpp:108</div></div>
<div class="ttc" id="classScopedPointer_html_a2f48458a1656a6ef1bd35cb8452eed35"><div class="ttname"><a href="classScopedPointer.html#a2f48458a1656a6ef1bd35cb8452eed35">ScopedPointer::operator*</a></div><div class="ttdeci">ObjectType &amp; operator*() const noexcept</div><div class="ttdef"><b>Definition:</b> d_scopedpointer.hpp:166</div></div>
<div class="ttc" id="classScopedPointer_html_a44a7843e49c3ff719f06607b6e908f7d"><div class="ttname"><a href="classScopedPointer.html#a44a7843e49c3ff719f06607b6e908f7d">ScopedPointer::ScopedPointer</a></div><div class="ttdeci">ScopedPointer(ObjectType *const objectToTakePossessionOf) noexcept</div><div class="ttdef"><b>Definition:</b> d_scopedpointer.hpp:90</div></div>
<div class="ttc" id="classScopedPointer_html_a6eedc84349cbe629cc1abb79ffa74e87"><div class="ttname"><a href="classScopedPointer.html#a6eedc84349cbe629cc1abb79ffa74e87">ScopedPointer::operator-&gt;</a></div><div class="ttdeci">ObjectType * operator-&gt;() const noexcept</div><div class="ttdef"><b>Definition:</b> d_scopedpointer.hpp:169</div></div>
<div class="ttc" id="classScopedPointer_html_a04688b1561dd9d861ca80c6deb63a233"><div class="ttname"><a href="classScopedPointer.html#a04688b1561dd9d861ca80c6deb63a233">ScopedPointer::ScopedPointer</a></div><div class="ttdeci">ScopedPointer(ScopedPointer &amp;objectToTransferFrom) noexcept</div><div class="ttdef"><b>Definition:</b> d_scopedpointer.hpp:99</div></div>
<div class="ttc" id="classScopedPointer_html_a362cd8d5a212df0ee08691b75a4ba3de"><div class="ttname"><a href="classScopedPointer.html#a362cd8d5a212df0ee08691b75a4ba3de">ScopedPointer::swapWith</a></div><div class="ttdeci">void swapWith(ScopedPointer&lt; ObjectType &gt; &amp;other) noexcept</div><div class="ttdef"><b>Definition:</b> d_scopedpointer.hpp:181</div></div>
<div class="ttc" id="classScopedPointer_html"><div class="ttname"><a href="classScopedPointer.html">ScopedPointer</a></div><div class="ttdef"><b>Definition:</b> d_scopedpointer.hpp:81</div></div>
<div class="ttc" id="classScopedPointer_html_ac187958296e33aa057dd37478ea70400"><div class="ttname"><a href="classScopedPointer.html#ac187958296e33aa057dd37478ea70400">ScopedPointer::ScopedPointer</a></div><div class="ttdeci">ScopedPointer() noexcept</div><div class="ttdef"><b>Definition:</b> d_scopedpointer.hpp:86</div></div>
<div class="ttc" id="structContainerDeletePolicy_html"><div class="ttname"><a href="structContainerDeletePolicy.html">ContainerDeletePolicy</a></div><div class="ttdef"><b>Definition:</b> d_scopedpointer.hpp:39</div></div>
<div class="ttc" id="classScopedPointer_html_a88ee7f038e57471539d3181141c0390e"><div class="ttname"><a href="classScopedPointer.html#a88ee7f038e57471539d3181141c0390e">ScopedPointer::operator=</a></div><div class="ttdeci">ScopedPointer &amp; operator=(ObjectType *const newObjectToTakePossessionOf)</div><div class="ttdef"><b>Definition:</b> d_scopedpointer.hpp:146</div></div>
<div class="ttc" id="classScopedPointer_html_afefc7940828d72c056e03804cd6bea9f"><div class="ttname"><a href="classScopedPointer.html#afefc7940828d72c056e03804cd6bea9f">ScopedPointer::operator=</a></div><div class="ttdeci">ScopedPointer &amp; operator=(ScopedPointer &amp;objectToTransferFrom)</div><div class="ttdef"><b>Definition:</b> d_scopedpointer.hpp:122</div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 160
- 0
d__sleep_8hpp_source.html View File

@@ -0,0 +1,160 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: distrho/extra/d_sleep.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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</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>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_37257469cca17bab24b582e18a78eb75.html">distrho</a></li><li class="navelem"><a class="el" href="dir_b1be46be7d80596b116b2b4ac973f2f0.html">extra</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">d_sleep.hpp</div> </div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> * DISTRHO Plugin Framework (DPF)</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright (C) 2012-2014 Filipe Coelho &lt;falktx@falktx.com&gt;</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * Permission to use, copy, modify, and/or distribute this software for any purpose with</span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * or without fee is hereby granted, provided that the above copyright notice and this</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * permission notice appear in all copies.</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * THE SOFTWARE IS PROVIDED &quot;AS IS&quot; AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> */</span></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"> 17</span>&#160;<span class="preprocessor">#ifndef DISTRHO_SLEEP_HPP_INCLUDED</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="preprocessor">#define DISTRHO_SLEEP_HPP_INCLUDED</span></div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;</div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="preprocessor">#include &quot;../DistrhoUtils.hpp&quot;</span></div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;</div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="preprocessor">#ifdef DISTRHO_OS_WINDOWS</span></div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="preprocessor"># include &lt;winsock2.h&gt;</span></div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="preprocessor"># include &lt;windows.h&gt;</span></div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="preprocessor">#else</span></div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="preprocessor"># include &lt;unistd.h&gt;</span></div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;</div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment">// d_*sleep</span></div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;</div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="keyword">static</span> <span class="keyword">inline</span></div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="keywordtype">void</span> d_sleep(<span class="keyword">const</span> uint secs) noexcept</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; DISTRHO_SAFE_ASSERT_RETURN(secs &gt; 0,);</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; <span class="keywordflow">try</span> {</div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#ifdef DISTRHO_OS_WINDOWS</span></div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; ::Sleep(secs * 1000);</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#else</span></div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; ::sleep(secs);</div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; } DISTRHO_SAFE_EXCEPTION(<span class="stringliteral">&quot;d_sleep&quot;</span>);</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;}</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="keyword">static</span> <span class="keyword">inline</span></div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="keywordtype">void</span> d_msleep(<span class="keyword">const</span> uint msecs) noexcept</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; DISTRHO_SAFE_ASSERT_RETURN(msecs &gt; 0,);</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; <span class="keywordflow">try</span> {</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="preprocessor">#ifdef DISTRHO_OS_WINDOWS</span></div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; ::Sleep(msecs);</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="preprocessor">#else</span></div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; ::usleep(msecs * 1000);</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; } DISTRHO_SAFE_EXCEPTION(<span class="stringliteral">&quot;d_msleep&quot;</span>);</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;}</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="preprocessor">#endif // DISTRHO_SLEEP_HPP_INCLUDED</span></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

+ 849
- 0
d__string_8hpp_source.html View File

@@ -0,0 +1,849 @@
<!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.8"/>
<title>DISTRHO Plugin Framework: distrho/extra/d_string.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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.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 style="padding-left: 0.5em;">
<div id="projectname">DISTRHO Plugin Framework
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.8 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</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>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Modules</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_37257469cca17bab24b582e18a78eb75.html">distrho</a></li><li class="navelem"><a class="el" href="dir_b1be46be7d80596b116b2b4ac973f2f0.html">extra</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">d_string.hpp</div> </div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> * DISTRHO Plugin Framework (DPF)</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright (C) 2012-2014 Filipe Coelho &lt;falktx@falktx.com&gt;</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * Permission to use, copy, modify, and/or distribute this software for any purpose with</span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * or without fee is hereby granted, provided that the above copyright notice and this</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * permission notice appear in all copies.</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * THE SOFTWARE IS PROVIDED &quot;AS IS&quot; AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> */</span></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"> 17</span>&#160;<span class="preprocessor">#ifndef DISTRHO_STRING_HPP_INCLUDED</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="preprocessor">#define DISTRHO_STRING_HPP_INCLUDED</span></div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;</div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="preprocessor">#include &quot;d_leakdetector.hpp&quot;</span></div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;</div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;START_NAMESPACE_DISTRHO</div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;</div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment">// d_string class</span></div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;</div>
<div class="line"><a name="l00027"></a><span class="lineno"><a class="line" href="classd__string.html"> 27</a></span>&#160;<span class="keyword">class </span><a class="code" href="classd__string.html">d_string</a></div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;{</div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; <span class="comment">// -------------------------------------------------------------------</span></div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; <span class="comment">// constructors (no explicit conversions allowed)</span></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; <span class="comment">/*</span></div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="comment"> * Empty string.</span></div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; <span class="keyword">explicit</span> <a class="code" href="classd__string.html">d_string</a>() noexcept</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"> 38</span>&#160; _init();</div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; }</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment"> * Simple character.</span></div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <span class="keyword">explicit</span> <a class="code" href="classd__string.html">d_string</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> c) noexcept</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; {</div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <span class="keywordtype">char</span> ch[2];</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; ch[0] = c;</div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; ch[1] = <span class="charliteral">&#39;\0&#39;</span>;</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; _init();</div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; _dup(ch);</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; }</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="comment"> * Simple char string.</span></div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="keyword">explicit</span> <a class="code" href="classd__string.html">d_string</a>(<span class="keywordtype">char</span>* <span class="keyword">const</span> strBuf) noexcept</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; {</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; _init();</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; _dup(strBuf);</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; }</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="comment"> * Simple const char string.</span></div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keyword">explicit</span> <a class="code" href="classd__string.html">d_string</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keyword">const</span> strBuf) noexcept</div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; {</div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; _init();</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; _dup(strBuf);</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; }</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="comment"> * Integer.</span></div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="keyword">explicit</span> <a class="code" href="classd__string.html">d_string</a>(<span class="keyword">const</span> <span class="keywordtype">int</span> value) noexcept</div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; {</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keywordtype">char</span> strBuf[0xff+1];</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; std::snprintf(strBuf, 0xff, <span class="stringliteral">&quot;%d&quot;</span>, value);</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; strBuf[0xff] = <span class="charliteral">&#39;\0&#39;</span>;</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; _init();</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; _dup(strBuf);</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; }</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="comment"> * Unsigned integer, possibly in hexadecimal.</span></div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="keyword">explicit</span> <a class="code" href="classd__string.html">d_string</a>(<span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> value, <span class="keyword">const</span> <span class="keywordtype">bool</span> hexadecimal = <span class="keyword">false</span>) noexcept</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; {</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="keywordtype">char</span> strBuf[0xff+1];</div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; std::snprintf(strBuf, 0xff, hexadecimal ? <span class="stringliteral">&quot;0x%x&quot;</span> : <span class="stringliteral">&quot;%u&quot;</span>, value);</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; strBuf[0xff] = <span class="charliteral">&#39;\0&#39;</span>;</div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;</div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; _init();</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; _dup(strBuf);</div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; }</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;<span class="comment"> * Long integer.</span></div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keyword">explicit</span> <a class="code" href="classd__string.html">d_string</a>(<span class="keyword">const</span> <span class="keywordtype">long</span> value) noexcept</div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; {</div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="keywordtype">char</span> strBuf[0xff+1];</div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; std::snprintf(strBuf, 0xff, <span class="stringliteral">&quot;%ld&quot;</span>, value);</div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; strBuf[0xff] = <span class="charliteral">&#39;\0&#39;</span>;</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;</div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; _init();</div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; _dup(strBuf);</div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; }</div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;</div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;<span class="comment"> * Long unsigned integer, possibly hexadecimal.</span></div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="keyword">explicit</span> <a class="code" href="classd__string.html">d_string</a>(<span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> value, <span class="keyword">const</span> <span class="keywordtype">bool</span> hexadecimal = <span class="keyword">false</span>) noexcept</div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; {</div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <span class="keywordtype">char</span> strBuf[0xff+1];</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; std::snprintf(strBuf, 0xff, hexadecimal ? <span class="stringliteral">&quot;0x%lx&quot;</span> : <span class="stringliteral">&quot;%lu&quot;</span>, value);</div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; strBuf[0xff] = <span class="charliteral">&#39;\0&#39;</span>;</div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;</div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; _init();</div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; _dup(strBuf);</div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; }</div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;<span class="comment"> * Long long integer.</span></div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="keyword">explicit</span> <a class="code" href="classd__string.html">d_string</a>(<span class="keyword">const</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span> value) noexcept</div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; {</div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <span class="keywordtype">char</span> strBuf[0xff+1];</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; std::snprintf(strBuf, 0xff, <span class="stringliteral">&quot;%lld&quot;</span>, value);</div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; strBuf[0xff] = <span class="charliteral">&#39;\0&#39;</span>;</div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;</div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; _init();</div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; _dup(strBuf);</div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; }</div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;</div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;<span class="comment"> * Long long unsigned integer, possibly hexadecimal.</span></div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <span class="keyword">explicit</span> <a class="code" href="classd__string.html">d_string</a>(<span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span> value, <span class="keyword">const</span> <span class="keywordtype">bool</span> hexadecimal = <span class="keyword">false</span>) noexcept</div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; {</div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <span class="keywordtype">char</span> strBuf[0xff+1];</div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; std::snprintf(strBuf, 0xff, hexadecimal ? <span class="stringliteral">&quot;0x%llx&quot;</span> : <span class="stringliteral">&quot;%llu&quot;</span>, value);</div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; strBuf[0xff] = <span class="charliteral">&#39;\0&#39;</span>;</div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;</div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; _init();</div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; _dup(strBuf);</div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; }</div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;</div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;<span class="comment"> * Single-precision floating point number.</span></div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <span class="keyword">explicit</span> <a class="code" href="classd__string.html">d_string</a>(<span class="keyword">const</span> <span class="keywordtype">float</span> value) noexcept</div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; {</div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <span class="keywordtype">char</span> strBuf[0xff+1];</div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; std::snprintf(strBuf, 0xff, <span class="stringliteral">&quot;%f&quot;</span>, value);</div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; strBuf[0xff] = <span class="charliteral">&#39;\0&#39;</span>;</div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;</div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; _init();</div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; _dup(strBuf);</div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; }</div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;</div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;<span class="comment"> * Double-precision floating point number.</span></div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <span class="keyword">explicit</span> <a class="code" href="classd__string.html">d_string</a>(<span class="keyword">const</span> <span class="keywordtype">double</span> value) noexcept</div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; {</div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; <span class="keywordtype">char</span> strBuf[0xff+1];</div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; std::snprintf(strBuf, 0xff, <span class="stringliteral">&quot;%g&quot;</span>, value);</div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; strBuf[0xff] = <span class="charliteral">&#39;\0&#39;</span>;</div>
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;</div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; _init();</div>
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; _dup(strBuf);</div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; }</div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160;</div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <span class="comment">// -------------------------------------------------------------------</span></div>
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <span class="comment">// non-explicit constructor</span></div>
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160;</div>
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;<span class="comment"> * Create string from another string.</span></div>
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; <a class="code" href="classd__string.html">d_string</a>(<span class="keyword">const</span> <a class="code" href="classd__string.html">d_string</a>&amp; str) noexcept</div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; {</div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; _init();</div>
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; _dup(str.fBuffer);</div>
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; }</div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;</div>
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; <span class="comment">// -------------------------------------------------------------------</span></div>
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <span class="comment">// destructor</span></div>
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;</div>
<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160;<span class="comment"> * Destructor.</span></div>
<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; ~<a class="code" href="classd__string.html">d_string</a>() noexcept</div>
<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; {</div>
<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; DISTRHO_SAFE_ASSERT_RETURN(fBuffer != <span class="keyword">nullptr</span>,);</div>
<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160;</div>
<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; <span class="keywordflow">if</span> (fBuffer == _null())</div>
<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; <span class="keywordflow">return</span>;</div>
<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160;</div>
<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; std::free(fBuffer);</div>
<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160;</div>
<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; fBuffer = <span class="keyword">nullptr</span>;</div>
<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; fBufferLen = 0;</div>
<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; }</div>
<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160;</div>
<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; <span class="comment">// -------------------------------------------------------------------</span></div>
<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; <span class="comment">// public methods</span></div>
<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160;</div>
<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160;<span class="comment"> * Get length of the string.</span></div>
<div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; <span class="keywordtype">size_t</span> length() <span class="keyword">const</span> noexcept</div>
<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; {</div>
<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; <span class="keywordflow">return</span> fBufferLen;</div>
<div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; }</div>
<div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160;</div>
<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160;<span class="comment"> * Check if the string is empty.</span></div>
<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; <span class="keywordtype">bool</span> isEmpty() <span class="keyword">const</span> noexcept</div>
<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; {</div>
<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; <span class="keywordflow">return</span> (fBufferLen == 0);</div>
<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; }</div>
<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160;</div>
<div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160;<span class="comment"> * Check if the string is not empty.</span></div>
<div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; <span class="keywordtype">bool</span> isNotEmpty() <span class="keyword">const</span> noexcept</div>
<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; {</div>
<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; <span class="keywordflow">return</span> (fBufferLen != 0);</div>
<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; }</div>
<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160;</div>
<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160;<span class="comment"> * Check if the string contains another string, optionally ignoring case.</span></div>
<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; <span class="keywordtype">bool</span> contains(<span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keyword">const</span> strBuf, <span class="keyword">const</span> <span class="keywordtype">bool</span> ignoreCase = <span class="keyword">false</span>) <span class="keyword">const</span> noexcept</div>
<div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; {</div>
<div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; DISTRHO_SAFE_ASSERT_RETURN(strBuf != <span class="keyword">nullptr</span>, <span class="keyword">false</span>);</div>
<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160;</div>
<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; <span class="keywordflow">if</span> (ignoreCase)</div>
<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; {</div>
<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160;<span class="preprocessor">#ifdef __USE_GNU</span></div>
<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; <span class="keywordflow">return</span> (strcasestr(fBuffer, strBuf) != <span class="keyword">nullptr</span>);</div>
<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160;<span class="preprocessor">#else</span></div>
<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; <a class="code" href="classd__string.html">d_string</a> tmp1(fBuffer), tmp2(strBuf);</div>
<div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160;</div>
<div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; <span class="comment">// memory allocation failed or empty string(s)</span></div>
<div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; <span class="keywordflow">if</span> (tmp1.fBuffer == _null() || tmp2.fBuffer == _null())</div>
<div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160;</div>
<div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; tmp1.toLower();</div>
<div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; tmp2.toLower();</div>
<div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; <span class="keywordflow">return</span> (std::strstr(tmp1, tmp2) != <span class="keyword">nullptr</span>);</div>
<div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; }</div>
<div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160;</div>
<div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; <span class="keywordflow">return</span> (std::strstr(fBuffer, strBuf) != <span class="keyword">nullptr</span>);</div>
<div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; }</div>
<div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160;</div>
<div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160;<span class="comment"> * Check if character at &#39;pos&#39; is a digit.</span></div>
<div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; <span class="keywordtype">bool</span> isDigit(<span class="keyword">const</span> <span class="keywordtype">size_t</span> pos) <span class="keyword">const</span> noexcept</div>
<div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; {</div>
<div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; DISTRHO_SAFE_ASSERT_RETURN(pos &lt; fBufferLen, <span class="keyword">false</span>);</div>
<div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160;</div>
<div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; <span class="keywordflow">return</span> (fBuffer[pos] &gt;= <span class="charliteral">&#39;0&#39;</span> &amp;&amp; fBuffer[pos] &lt;= <span class="charliteral">&#39;9&#39;</span>);</div>
<div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; }</div>
<div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160;</div>
<div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160;<span class="comment"> * Check if the string starts with the character &#39;c&#39;.</span></div>
<div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; <span class="keywordtype">bool</span> startsWith(<span class="keyword">const</span> <span class="keywordtype">char</span> c) <span class="keyword">const</span> noexcept</div>
<div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; {</div>
<div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; DISTRHO_SAFE_ASSERT_RETURN(c != <span class="charliteral">&#39;\0&#39;</span>, <span class="keyword">false</span>);</div>
<div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160;</div>
<div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; <span class="keywordflow">return</span> (fBufferLen &gt; 0 &amp;&amp; fBuffer[0] == c);</div>
<div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; }</div>
<div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160;</div>
<div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160;<span class="comment"> * Check if the string starts with the string &#39;prefix&#39;.</span></div>
<div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; <span class="keywordtype">bool</span> startsWith(<span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keyword">const</span> prefix) <span class="keyword">const</span> noexcept</div>
<div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; {</div>
<div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; DISTRHO_SAFE_ASSERT_RETURN(prefix != <span class="keyword">nullptr</span>, <span class="keyword">false</span>);</div>
<div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160;</div>
<div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; <span class="keyword">const</span> <span class="keywordtype">size_t</span> prefixLen(std::strlen(prefix));</div>
<div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160;</div>
<div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; <span class="keywordflow">if</span> (fBufferLen &lt; prefixLen)</div>
<div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160;</div>
<div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; <span class="keywordflow">return</span> (std::strncmp(fBuffer, prefix, prefixLen) == 0);</div>
<div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; }</div>
<div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160;</div>
<div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160;<span class="comment"> * Check if the string ends with the character &#39;c&#39;.</span></div>
<div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; <span class="keywordtype">bool</span> endsWith(<span class="keyword">const</span> <span class="keywordtype">char</span> c) <span class="keyword">const</span> noexcept</div>
<div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; {</div>
<div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; DISTRHO_SAFE_ASSERT_RETURN(c != <span class="charliteral">&#39;\0&#39;</span>, <span class="keyword">false</span>);</div>
<div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160;</div>
<div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; <span class="keywordflow">return</span> (fBufferLen &gt; 0 &amp;&amp; fBuffer[fBufferLen-1] == c);</div>
<div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; }</div>
<div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160;</div>
<div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160;<span class="comment"> * Check if the string ends with the string &#39;suffix&#39;.</span></div>
<div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; <span class="keywordtype">bool</span> endsWith(<span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keyword">const</span> suffix) <span class="keyword">const</span> noexcept</div>
<div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; {</div>
<div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; DISTRHO_SAFE_ASSERT_RETURN(suffix != <span class="keyword">nullptr</span>, <span class="keyword">false</span>);</div>
<div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160;</div>
<div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; <span class="keyword">const</span> <span class="keywordtype">size_t</span> suffixLen(std::strlen(suffix));</div>
<div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160;</div>
<div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; <span class="keywordflow">if</span> (fBufferLen &lt; suffixLen)</div>
<div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160;</div>
<div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; <span class="keywordflow">return</span> (std::strncmp(fBuffer + (fBufferLen-suffixLen), suffix, suffixLen) == 0);</div>
<div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; }</div>
<div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160;</div>
<div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160;<span class="comment"> * Find the first occurrence of character &#39;c&#39; in the string.</span></div>
<div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160;<span class="comment"> * Returns &quot;length()&quot; if the character is not found.</span></div>
<div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; <span class="keywordtype">size_t</span> find(<span class="keyword">const</span> <span class="keywordtype">char</span> c, <span class="keywordtype">bool</span>* <span class="keyword">const</span> found = <span class="keyword">nullptr</span>) <span class="keyword">const</span> noexcept</div>
<div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; {</div>
<div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; <span class="keywordflow">if</span> (fBufferLen == 0 || c == <span class="charliteral">&#39;\0&#39;</span>)</div>
<div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; {</div>
<div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; <span class="keywordflow">if</span> (found != <span class="keyword">nullptr</span>)</div>
<div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; *found = <span class="keyword">false</span>;</div>
<div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; <span class="keywordflow">return</span> fBufferLen;</div>
<div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; }</div>
<div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160;</div>
<div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i=0; i &lt; fBufferLen; ++i)</div>
<div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; {</div>
<div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; <span class="keywordflow">if</span> (fBuffer[i] == c)</div>
<div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; {</div>
<div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; <span class="keywordflow">if</span> (found != <span class="keyword">nullptr</span>)</div>
<div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; *found = <span class="keyword">true</span>;</div>
<div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; <span class="keywordflow">return</span> i;</div>
<div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; }</div>
<div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160; }</div>
<div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160;</div>
<div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; <span class="keywordflow">if</span> (found != <span class="keyword">nullptr</span>)</div>
<div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; *found = <span class="keyword">false</span>;</div>
<div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; <span class="keywordflow">return</span> fBufferLen;</div>
<div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; }</div>
<div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160;</div>
<div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160;<span class="comment"> * Find the first occurrence of string &#39;strBuf&#39; in the string.</span></div>
<div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160;<span class="comment"> * Returns &quot;length()&quot; if the string is not found.</span></div>
<div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; <span class="keywordtype">size_t</span> find(<span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keyword">const</span> strBuf, <span class="keywordtype">bool</span>* <span class="keyword">const</span> found = <span class="keyword">nullptr</span>) <span class="keyword">const</span> noexcept</div>
<div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160; {</div>
<div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160; <span class="keywordflow">if</span> (fBufferLen == 0 || strBuf == <span class="keyword">nullptr</span> || strBuf[0] == <span class="charliteral">&#39;\0&#39;</span>)</div>
<div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; {</div>
<div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; <span class="keywordflow">if</span> (found != <span class="keyword">nullptr</span>)</div>
<div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; *found = <span class="keyword">false</span>;</div>
<div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; <span class="keywordflow">return</span> fBufferLen;</div>
<div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160; }</div>
<div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160;</div>
<div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; <span class="keywordflow">if</span> (<span class="keywordtype">char</span>* <span class="keyword">const</span> subStrBuf = std::strstr(fBuffer, strBuf))</div>
<div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; {</div>
<div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; <span class="keyword">const</span> ssize_t ret(subStrBuf - fBuffer);</div>
<div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160;</div>
<div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; <span class="keywordflow">if</span> (ret &lt; 0)</div>
<div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; {</div>
<div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; <span class="comment">// should never happen!</span></div>
<div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; d_safe_assert(<span class="stringliteral">&quot;ret &gt;= 0&quot;</span>, __FILE__, __LINE__);</div>
<div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160;</div>
<div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; <span class="keywordflow">if</span> (found != <span class="keyword">nullptr</span>)</div>
<div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; *found = <span class="keyword">false</span>;</div>
<div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; <span class="keywordflow">return</span> fBufferLen;</div>
<div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; }</div>
<div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160;</div>
<div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; <span class="keywordflow">if</span> (found != <span class="keyword">nullptr</span>)</div>
<div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; *found = <span class="keyword">true</span>;</div>
<div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; <span class="keywordflow">return</span> <span class="keyword">static_cast&lt;</span><span class="keywordtype">size_t</span><span class="keyword">&gt;</span>(ret);</div>
<div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; }</div>
<div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160;</div>
<div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; <span class="keywordflow">if</span> (found != <span class="keyword">nullptr</span>)</div>
<div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; *found = <span class="keyword">false</span>;</div>
<div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; <span class="keywordflow">return</span> fBufferLen;</div>
<div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; }</div>
<div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160;</div>
<div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160;<span class="comment"> * Find the last occurrence of character &#39;c&#39; in the string.</span></div>
<div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160;<span class="comment"> * Returns &quot;length()&quot; if the character is not found.</span></div>
<div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; <span class="keywordtype">size_t</span> rfind(<span class="keyword">const</span> <span class="keywordtype">char</span> c, <span class="keywordtype">bool</span>* <span class="keyword">const</span> found = <span class="keyword">nullptr</span>) <span class="keyword">const</span> noexcept</div>
<div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; {</div>
<div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; <span class="keywordflow">if</span> (fBufferLen == 0 || c == <span class="charliteral">&#39;\0&#39;</span>)</div>
<div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; {</div>
<div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; <span class="keywordflow">if</span> (found != <span class="keyword">nullptr</span>)</div>
<div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; *found = <span class="keyword">false</span>;</div>
<div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; <span class="keywordflow">return</span> fBufferLen;</div>
<div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; }</div>
<div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160;</div>
<div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i=fBufferLen; i &gt; 0; --i)</div>
<div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; {</div>
<div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; <span class="keywordflow">if</span> (fBuffer[i-1] == c)</div>
<div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; {</div>
<div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; <span class="keywordflow">if</span> (found != <span class="keyword">nullptr</span>)</div>
<div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; *found = <span class="keyword">true</span>;</div>
<div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; <span class="keywordflow">return</span> i-1;</div>
<div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; }</div>
<div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160; }</div>
<div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160;</div>
<div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160; <span class="keywordflow">if</span> (found != <span class="keyword">nullptr</span>)</div>
<div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160; *found = <span class="keyword">false</span>;</div>
<div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160; <span class="keywordflow">return</span> fBufferLen;</div>
<div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160; }</div>
<div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160;</div>
<div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160;<span class="comment"> * Find the last occurrence of string &#39;strBuf&#39; in the string.</span></div>
<div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160;<span class="comment"> * Returns &quot;length()&quot; if the string is not found.</span></div>
<div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; <span class="keywordtype">size_t</span> rfind(<span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keyword">const</span> strBuf, <span class="keywordtype">bool</span>* <span class="keyword">const</span> found = <span class="keyword">nullptr</span>) <span class="keyword">const</span> noexcept</div>
<div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; {</div>
<div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; <span class="keywordflow">if</span> (found != <span class="keyword">nullptr</span>)</div>
<div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; *found = <span class="keyword">false</span>;</div>
<div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160;</div>
<div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; <span class="keywordflow">if</span> (fBufferLen == 0 || strBuf == <span class="keyword">nullptr</span> || strBuf[0] == <span class="charliteral">&#39;\0&#39;</span>)</div>
<div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; <span class="keywordflow">return</span> fBufferLen;</div>
<div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160;</div>
<div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; <span class="keyword">const</span> <span class="keywordtype">size_t</span> strBufLen(std::strlen(strBuf));</div>
<div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160;</div>
<div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; <span class="keywordtype">size_t</span> ret = fBufferLen;</div>
<div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span>* tmpBuf = fBuffer;</div>
<div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160;</div>
<div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i=0; i &lt; fBufferLen; ++i)</div>
<div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160; {</div>
<div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160; <span class="keywordflow">if</span> (std::strstr(tmpBuf+1, strBuf) == <span class="keyword">nullptr</span> &amp;&amp; std::strncmp(tmpBuf, strBuf, strBufLen) == 0)</div>
<div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; {</div>
<div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; <span class="keywordflow">if</span> (found != <span class="keyword">nullptr</span>)</div>
<div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; *found = <span class="keyword">true</span>;</div>
<div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; }</div>
<div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160;</div>
<div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; --ret;</div>
<div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; ++tmpBuf;</div>
<div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160; }</div>
<div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160;</div>
<div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; <span class="keywordflow">return</span> fBufferLen-ret;</div>
<div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; }</div>
<div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160;</div>
<div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160;<span class="comment"> * Clear the string.</span></div>
<div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160; <span class="keywordtype">void</span> clear() noexcept</div>
<div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160; {</div>
<div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; truncate(0);</div>
<div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160; }</div>
<div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160;</div>
<div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160;<span class="comment"> * Replace all occurrences of character &#39;before&#39; with character &#39;after&#39;.</span></div>
<div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; <span class="keywordtype">void</span> replace(<span class="keyword">const</span> <span class="keywordtype">char</span> before, <span class="keyword">const</span> <span class="keywordtype">char</span> after) noexcept</div>
<div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; {</div>
<div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; DISTRHO_SAFE_ASSERT_RETURN(before != <span class="charliteral">&#39;\0&#39;</span> &amp;&amp; after != <span class="charliteral">&#39;\0&#39;</span>,);</div>
<div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160;</div>
<div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i=0; i &lt; fBufferLen; ++i)</div>
<div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160; {</div>
<div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; <span class="keywordflow">if</span> (fBuffer[i] == before)</div>
<div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160; fBuffer[i] = after;</div>
<div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160; }</div>
<div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160; }</div>
<div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160;</div>
<div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160;<span class="comment"> * Truncate the string to size &#39;n&#39;.</span></div>
<div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160; <span class="keywordtype">void</span> truncate(<span class="keyword">const</span> <span class="keywordtype">size_t</span> n) noexcept</div>
<div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160; {</div>
<div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160; <span class="keywordflow">if</span> (n &gt;= fBufferLen)</div>
<div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160; <span class="keywordflow">return</span>;</div>
<div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160;</div>
<div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i=n; i &lt; fBufferLen; ++i)</div>
<div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160; fBuffer[i] = <span class="charliteral">&#39;\0&#39;</span>;</div>
<div class="line"><a name="l00479"></a><span class="lineno"> 479</span>&#160;</div>
<div class="line"><a name="l00480"></a><span class="lineno"> 480</span>&#160; fBufferLen = n;</div>
<div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160; }</div>
<div class="line"><a name="l00482"></a><span class="lineno"> 482</span>&#160;</div>
<div class="line"><a name="l00483"></a><span class="lineno"> 483</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00484"></a><span class="lineno"> 484</span>&#160;<span class="comment"> * Convert all non-basic characters to &#39;_&#39;.</span></div>
<div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160; <span class="keywordtype">void</span> toBasic() noexcept</div>
<div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160; {</div>
<div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i=0; i &lt; fBufferLen; ++i)</div>
<div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160; {</div>
<div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160; <span class="keywordflow">if</span> (fBuffer[i] &gt;= <span class="charliteral">&#39;0&#39;</span> &amp;&amp; fBuffer[i] &lt;= <span class="charliteral">&#39;9&#39;</span>)</div>
<div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160; <span class="keywordflow">continue</span>;</div>
<div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160; <span class="keywordflow">if</span> (fBuffer[i] &gt;= <span class="charliteral">&#39;A&#39;</span> &amp;&amp; fBuffer[i] &lt;= <span class="charliteral">&#39;Z&#39;</span>)</div>
<div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160; <span class="keywordflow">continue</span>;</div>
<div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160; <span class="keywordflow">if</span> (fBuffer[i] &gt;= <span class="charliteral">&#39;a&#39;</span> &amp;&amp; fBuffer[i] &lt;= <span class="charliteral">&#39;z&#39;</span>)</div>
<div class="line"><a name="l00495"></a><span class="lineno"> 495</span>&#160; <span class="keywordflow">continue</span>;</div>
<div class="line"><a name="l00496"></a><span class="lineno"> 496</span>&#160; <span class="keywordflow">if</span> (fBuffer[i] == <span class="charliteral">&#39;_&#39;</span>)</div>
<div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160; <span class="keywordflow">continue</span>;</div>
<div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160;</div>
<div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160; fBuffer[i] = <span class="charliteral">&#39;_&#39;</span>;</div>
<div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160; }</div>
<div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160; }</div>
<div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160;</div>
<div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160;<span class="comment"> * Convert to all ascii characters to lowercase.</span></div>
<div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00506"></a><span class="lineno"> 506</span>&#160; <span class="keywordtype">void</span> toLower() noexcept</div>
<div class="line"><a name="l00507"></a><span class="lineno"> 507</span>&#160; {</div>
<div class="line"><a name="l00508"></a><span class="lineno"> 508</span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span> kCharDiff(<span class="charliteral">&#39;a&#39;</span> - <span class="charliteral">&#39;A&#39;</span>);</div>
<div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160;</div>
<div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i=0; i &lt; fBufferLen; ++i)</div>
<div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160; {</div>
<div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160; <span class="keywordflow">if</span> (fBuffer[i] &gt;= <span class="charliteral">&#39;A&#39;</span> &amp;&amp; fBuffer[i] &lt;= <span class="charliteral">&#39;Z&#39;</span>)</div>
<div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160; fBuffer[i] = <span class="keyword">static_cast&lt;</span><span class="keywordtype">char</span><span class="keyword">&gt;</span>(fBuffer[i] + kCharDiff);</div>
<div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160; }</div>
<div class="line"><a name="l00515"></a><span class="lineno"> 515</span>&#160; }</div>
<div class="line"><a name="l00516"></a><span class="lineno"> 516</span>&#160;</div>
<div class="line"><a name="l00517"></a><span class="lineno"> 517</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00518"></a><span class="lineno"> 518</span>&#160;<span class="comment"> * Convert to all ascii characters to uppercase.</span></div>
<div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00520"></a><span class="lineno"> 520</span>&#160; <span class="keywordtype">void</span> toUpper() noexcept</div>
<div class="line"><a name="l00521"></a><span class="lineno"> 521</span>&#160; {</div>
<div class="line"><a name="l00522"></a><span class="lineno"> 522</span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span> kCharDiff(<span class="charliteral">&#39;a&#39;</span> - <span class="charliteral">&#39;A&#39;</span>);</div>
<div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160;</div>
<div class="line"><a name="l00524"></a><span class="lineno"> 524</span>&#160; <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i=0; i &lt; fBufferLen; ++i)</div>
<div class="line"><a name="l00525"></a><span class="lineno"> 525</span>&#160; {</div>
<div class="line"><a name="l00526"></a><span class="lineno"> 526</span>&#160; <span class="keywordflow">if</span> (fBuffer[i] &gt;= <span class="charliteral">&#39;a&#39;</span> &amp;&amp; fBuffer[i] &lt;= <span class="charliteral">&#39;z&#39;</span>)</div>
<div class="line"><a name="l00527"></a><span class="lineno"> 527</span>&#160; fBuffer[i] = <span class="keyword">static_cast&lt;</span><span class="keywordtype">char</span><span class="keyword">&gt;</span>(fBuffer[i] - kCharDiff);</div>
<div class="line"><a name="l00528"></a><span class="lineno"> 528</span>&#160; }</div>
<div class="line"><a name="l00529"></a><span class="lineno"> 529</span>&#160; }</div>
<div class="line"><a name="l00530"></a><span class="lineno"> 530</span>&#160;</div>
<div class="line"><a name="l00531"></a><span class="lineno"> 531</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00532"></a><span class="lineno"> 532</span>&#160;<span class="comment"> * Direct access to the string buffer (read-only).</span></div>
<div class="line"><a name="l00533"></a><span class="lineno"> 533</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00534"></a><span class="lineno"> 534</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span>* buffer() <span class="keyword">const</span> noexcept</div>
<div class="line"><a name="l00535"></a><span class="lineno"> 535</span>&#160; {</div>
<div class="line"><a name="l00536"></a><span class="lineno"> 536</span>&#160; <span class="keywordflow">return</span> fBuffer;</div>
<div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160; }</div>
<div class="line"><a name="l00538"></a><span class="lineno"> 538</span>&#160;</div>
<div class="line"><a name="l00539"></a><span class="lineno"> 539</span>&#160; <span class="comment">// -------------------------------------------------------------------</span></div>
<div class="line"><a name="l00540"></a><span class="lineno"> 540</span>&#160; <span class="comment">// public operators</span></div>
<div class="line"><a name="l00541"></a><span class="lineno"> 541</span>&#160;</div>
<div class="line"><a name="l00542"></a><span class="lineno"> 542</span>&#160; <span class="keyword">operator</span> <span class="keyword">const</span> <span class="keywordtype">char</span>*() <span class="keyword">const</span> noexcept</div>
<div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160; {</div>
<div class="line"><a name="l00544"></a><span class="lineno"> 544</span>&#160; <span class="keywordflow">return</span> fBuffer;</div>
<div class="line"><a name="l00545"></a><span class="lineno"> 545</span>&#160; }</div>
<div class="line"><a name="l00546"></a><span class="lineno"> 546</span>&#160;</div>
<div class="line"><a name="l00547"></a><span class="lineno"> 547</span>&#160; <span class="keywordtype">char</span> operator[](<span class="keyword">const</span> <span class="keywordtype">size_t</span> pos) <span class="keyword">const</span> noexcept</div>
<div class="line"><a name="l00548"></a><span class="lineno"> 548</span>&#160; {</div>
<div class="line"><a name="l00549"></a><span class="lineno"> 549</span>&#160; <span class="keywordflow">if</span> (pos &lt; fBufferLen)</div>
<div class="line"><a name="l00550"></a><span class="lineno"> 550</span>&#160; <span class="keywordflow">return</span> fBuffer[pos];</div>
<div class="line"><a name="l00551"></a><span class="lineno"> 551</span>&#160;</div>
<div class="line"><a name="l00552"></a><span class="lineno"> 552</span>&#160; d_safe_assert(<span class="stringliteral">&quot;pos &lt; fBufferLen&quot;</span>, __FILE__, __LINE__);</div>
<div class="line"><a name="l00553"></a><span class="lineno"> 553</span>&#160;</div>
<div class="line"><a name="l00554"></a><span class="lineno"> 554</span>&#160; <span class="keyword">static</span> <span class="keywordtype">char</span> fallback;</div>
<div class="line"><a name="l00555"></a><span class="lineno"> 555</span>&#160; fallback = <span class="charliteral">&#39;\0&#39;</span>;</div>
<div class="line"><a name="l00556"></a><span class="lineno"> 556</span>&#160; <span class="keywordflow">return</span> fallback;</div>
<div class="line"><a name="l00557"></a><span class="lineno"> 557</span>&#160; }</div>
<div class="line"><a name="l00558"></a><span class="lineno"> 558</span>&#160;</div>
<div class="line"><a name="l00559"></a><span class="lineno"> 559</span>&#160; <span class="keywordtype">char</span>&amp; operator[](<span class="keyword">const</span> <span class="keywordtype">size_t</span> pos) noexcept</div>
<div class="line"><a name="l00560"></a><span class="lineno"> 560</span>&#160; {</div>
<div class="line"><a name="l00561"></a><span class="lineno"> 561</span>&#160; <span class="keywordflow">if</span> (pos &lt; fBufferLen)</div>
<div class="line"><a name="l00562"></a><span class="lineno"> 562</span>&#160; <span class="keywordflow">return</span> fBuffer[pos];</div>
<div class="line"><a name="l00563"></a><span class="lineno"> 563</span>&#160;</div>
<div class="line"><a name="l00564"></a><span class="lineno"> 564</span>&#160; d_safe_assert(<span class="stringliteral">&quot;pos &lt; fBufferLen&quot;</span>, __FILE__, __LINE__);</div>
<div class="line"><a name="l00565"></a><span class="lineno"> 565</span>&#160;</div>
<div class="line"><a name="l00566"></a><span class="lineno"> 566</span>&#160; <span class="keyword">static</span> <span class="keywordtype">char</span> fallback;</div>
<div class="line"><a name="l00567"></a><span class="lineno"> 567</span>&#160; fallback = <span class="charliteral">&#39;\0&#39;</span>;</div>
<div class="line"><a name="l00568"></a><span class="lineno"> 568</span>&#160; <span class="keywordflow">return</span> fallback;</div>
<div class="line"><a name="l00569"></a><span class="lineno"> 569</span>&#160; }</div>
<div class="line"><a name="l00570"></a><span class="lineno"> 570</span>&#160;</div>
<div class="line"><a name="l00571"></a><span class="lineno"> 571</span>&#160; <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keyword">const</span> strBuf) <span class="keyword">const</span> noexcept</div>
<div class="line"><a name="l00572"></a><span class="lineno"> 572</span>&#160; {</div>
<div class="line"><a name="l00573"></a><span class="lineno"> 573</span>&#160; <span class="keywordflow">return</span> (strBuf != <span class="keyword">nullptr</span> &amp;&amp; std::strcmp(fBuffer, strBuf) == 0);</div>
<div class="line"><a name="l00574"></a><span class="lineno"> 574</span>&#160; }</div>
<div class="line"><a name="l00575"></a><span class="lineno"> 575</span>&#160;</div>
<div class="line"><a name="l00576"></a><span class="lineno"> 576</span>&#160; <span class="keywordtype">bool</span> operator==(<span class="keyword">const</span> <a class="code" href="classd__string.html">d_string</a>&amp; str) <span class="keyword">const</span> noexcept</div>
<div class="line"><a name="l00577"></a><span class="lineno"> 577</span>&#160; {</div>
<div class="line"><a name="l00578"></a><span class="lineno"> 578</span>&#160; <span class="keywordflow">return</span> operator==(str.fBuffer);</div>
<div class="line"><a name="l00579"></a><span class="lineno"> 579</span>&#160; }</div>
<div class="line"><a name="l00580"></a><span class="lineno"> 580</span>&#160;</div>
<div class="line"><a name="l00581"></a><span class="lineno"> 581</span>&#160; <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keyword">const</span> strBuf) <span class="keyword">const</span> noexcept</div>
<div class="line"><a name="l00582"></a><span class="lineno"> 582</span>&#160; {</div>
<div class="line"><a name="l00583"></a><span class="lineno"> 583</span>&#160; <span class="keywordflow">return</span> !operator==(strBuf);</div>
<div class="line"><a name="l00584"></a><span class="lineno"> 584</span>&#160; }</div>
<div class="line"><a name="l00585"></a><span class="lineno"> 585</span>&#160;</div>
<div class="line"><a name="l00586"></a><span class="lineno"> 586</span>&#160; <span class="keywordtype">bool</span> operator!=(<span class="keyword">const</span> <a class="code" href="classd__string.html">d_string</a>&amp; str) <span class="keyword">const</span> noexcept</div>
<div class="line"><a name="l00587"></a><span class="lineno"> 587</span>&#160; {</div>
<div class="line"><a name="l00588"></a><span class="lineno"> 588</span>&#160; <span class="keywordflow">return</span> !operator==(str.fBuffer);</div>
<div class="line"><a name="l00589"></a><span class="lineno"> 589</span>&#160; }</div>
<div class="line"><a name="l00590"></a><span class="lineno"> 590</span>&#160;</div>
<div class="line"><a name="l00591"></a><span class="lineno"> 591</span>&#160; <a class="code" href="classd__string.html">d_string</a>&amp; operator=(<span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keyword">const</span> strBuf) noexcept</div>
<div class="line"><a name="l00592"></a><span class="lineno"> 592</span>&#160; {</div>
<div class="line"><a name="l00593"></a><span class="lineno"> 593</span>&#160; _dup(strBuf);</div>
<div class="line"><a name="l00594"></a><span class="lineno"> 594</span>&#160;</div>
<div class="line"><a name="l00595"></a><span class="lineno"> 595</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
<div class="line"><a name="l00596"></a><span class="lineno"> 596</span>&#160; }</div>
<div class="line"><a name="l00597"></a><span class="lineno"> 597</span>&#160;</div>
<div class="line"><a name="l00598"></a><span class="lineno"> 598</span>&#160; <a class="code" href="classd__string.html">d_string</a>&amp; operator=(<span class="keyword">const</span> <a class="code" href="classd__string.html">d_string</a>&amp; str) noexcept</div>
<div class="line"><a name="l00599"></a><span class="lineno"> 599</span>&#160; {</div>
<div class="line"><a name="l00600"></a><span class="lineno"> 600</span>&#160; _dup(str.fBuffer);</div>
<div class="line"><a name="l00601"></a><span class="lineno"> 601</span>&#160;</div>
<div class="line"><a name="l00602"></a><span class="lineno"> 602</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
<div class="line"><a name="l00603"></a><span class="lineno"> 603</span>&#160; }</div>
<div class="line"><a name="l00604"></a><span class="lineno"> 604</span>&#160;</div>
<div class="line"><a name="l00605"></a><span class="lineno"> 605</span>&#160; <a class="code" href="classd__string.html">d_string</a>&amp; operator+=(<span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keyword">const</span> strBuf) noexcept</div>
<div class="line"><a name="l00606"></a><span class="lineno"> 606</span>&#160; {</div>
<div class="line"><a name="l00607"></a><span class="lineno"> 607</span>&#160; <span class="keywordflow">if</span> (strBuf == <span class="keyword">nullptr</span>)</div>
<div class="line"><a name="l00608"></a><span class="lineno"> 608</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
<div class="line"><a name="l00609"></a><span class="lineno"> 609</span>&#160;</div>
<div class="line"><a name="l00610"></a><span class="lineno"> 610</span>&#160; <span class="keyword">const</span> <span class="keywordtype">size_t</span> newBufSize = fBufferLen + std::strlen(strBuf) + 1;</div>
<div class="line"><a name="l00611"></a><span class="lineno"> 611</span>&#160; <span class="keywordtype">char</span> newBuf[newBufSize];</div>
<div class="line"><a name="l00612"></a><span class="lineno"> 612</span>&#160;</div>
<div class="line"><a name="l00613"></a><span class="lineno"> 613</span>&#160; std::strcpy(newBuf, fBuffer);</div>
<div class="line"><a name="l00614"></a><span class="lineno"> 614</span>&#160; std::strcat(newBuf, strBuf);</div>
<div class="line"><a name="l00615"></a><span class="lineno"> 615</span>&#160;</div>
<div class="line"><a name="l00616"></a><span class="lineno"> 616</span>&#160; _dup(newBuf, newBufSize-1);</div>
<div class="line"><a name="l00617"></a><span class="lineno"> 617</span>&#160;</div>
<div class="line"><a name="l00618"></a><span class="lineno"> 618</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
<div class="line"><a name="l00619"></a><span class="lineno"> 619</span>&#160; }</div>
<div class="line"><a name="l00620"></a><span class="lineno"> 620</span>&#160;</div>
<div class="line"><a name="l00621"></a><span class="lineno"> 621</span>&#160; <a class="code" href="classd__string.html">d_string</a>&amp; operator+=(<span class="keyword">const</span> <a class="code" href="classd__string.html">d_string</a>&amp; str) noexcept</div>
<div class="line"><a name="l00622"></a><span class="lineno"> 622</span>&#160; {</div>
<div class="line"><a name="l00623"></a><span class="lineno"> 623</span>&#160; <span class="keywordflow">return</span> operator+=(str.fBuffer);</div>
<div class="line"><a name="l00624"></a><span class="lineno"> 624</span>&#160; }</div>
<div class="line"><a name="l00625"></a><span class="lineno"> 625</span>&#160;</div>
<div class="line"><a name="l00626"></a><span class="lineno"> 626</span>&#160; <a class="code" href="classd__string.html">d_string</a> operator+(<span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keyword">const</span> strBuf) noexcept</div>
<div class="line"><a name="l00627"></a><span class="lineno"> 627</span>&#160; {</div>
<div class="line"><a name="l00628"></a><span class="lineno"> 628</span>&#160; <span class="keyword">const</span> <span class="keywordtype">size_t</span> newBufSize = fBufferLen + ((strBuf != <span class="keyword">nullptr</span>) ? std::strlen(strBuf) : 0) + 1;</div>
<div class="line"><a name="l00629"></a><span class="lineno"> 629</span>&#160; <span class="keywordtype">char</span> newBuf[newBufSize];</div>
<div class="line"><a name="l00630"></a><span class="lineno"> 630</span>&#160;</div>
<div class="line"><a name="l00631"></a><span class="lineno"> 631</span>&#160; std::strcpy(newBuf, fBuffer);</div>
<div class="line"><a name="l00632"></a><span class="lineno"> 632</span>&#160;</div>
<div class="line"><a name="l00633"></a><span class="lineno"> 633</span>&#160; <span class="keywordflow">if</span> (strBuf != <span class="keyword">nullptr</span>)</div>
<div class="line"><a name="l00634"></a><span class="lineno"> 634</span>&#160; std::strcat(newBuf, strBuf);</div>
<div class="line"><a name="l00635"></a><span class="lineno"> 635</span>&#160;</div>
<div class="line"><a name="l00636"></a><span class="lineno"> 636</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classd__string.html">d_string</a>(newBuf);</div>
<div class="line"><a name="l00637"></a><span class="lineno"> 637</span>&#160; }</div>
<div class="line"><a name="l00638"></a><span class="lineno"> 638</span>&#160;</div>
<div class="line"><a name="l00639"></a><span class="lineno"> 639</span>&#160; <a class="code" href="classd__string.html">d_string</a> operator+(<span class="keyword">const</span> <a class="code" href="classd__string.html">d_string</a>&amp; str) noexcept</div>
<div class="line"><a name="l00640"></a><span class="lineno"> 640</span>&#160; {</div>
<div class="line"><a name="l00641"></a><span class="lineno"> 641</span>&#160; <span class="keywordflow">return</span> operator+(str.fBuffer);</div>
<div class="line"><a name="l00642"></a><span class="lineno"> 642</span>&#160; }</div>
<div class="line"><a name="l00643"></a><span class="lineno"> 643</span>&#160;</div>
<div class="line"><a name="l00644"></a><span class="lineno"> 644</span>&#160; <span class="comment">// -------------------------------------------------------------------</span></div>
<div class="line"><a name="l00645"></a><span class="lineno"> 645</span>&#160;</div>
<div class="line"><a name="l00646"></a><span class="lineno"> 646</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00647"></a><span class="lineno"> 647</span>&#160; <span class="keywordtype">char</span>* fBuffer; <span class="comment">// the actual string buffer</span></div>
<div class="line"><a name="l00648"></a><span class="lineno"> 648</span>&#160; <span class="keywordtype">size_t</span> fBufferLen; <span class="comment">// string length</span></div>
<div class="line"><a name="l00649"></a><span class="lineno"> 649</span>&#160;</div>
<div class="line"><a name="l00650"></a><span class="lineno"> 650</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00651"></a><span class="lineno"> 651</span>&#160;<span class="comment"> * Static null string.</span></div>
<div class="line"><a name="l00652"></a><span class="lineno"> 652</span>&#160;<span class="comment"> * Prevents allocation for new and/or empty strings.</span></div>
<div class="line"><a name="l00653"></a><span class="lineno"> 653</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00654"></a><span class="lineno"> 654</span>&#160; <span class="keyword">static</span> <span class="keywordtype">char</span>* _null() noexcept</div>
<div class="line"><a name="l00655"></a><span class="lineno"> 655</span>&#160; {</div>
<div class="line"><a name="l00656"></a><span class="lineno"> 656</span>&#160; <span class="keyword">static</span> <span class="keywordtype">char</span> sNull = <span class="charliteral">&#39;\0&#39;</span>;</div>
<div class="line"><a name="l00657"></a><span class="lineno"> 657</span>&#160; <span class="keywordflow">return</span> &amp;sNull;</div>
<div class="line"><a name="l00658"></a><span class="lineno"> 658</span>&#160; }</div>
<div class="line"><a name="l00659"></a><span class="lineno"> 659</span>&#160;</div>
<div class="line"><a name="l00660"></a><span class="lineno"> 660</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00661"></a><span class="lineno"> 661</span>&#160;<span class="comment"> * Shared init function.</span></div>
<div class="line"><a name="l00662"></a><span class="lineno"> 662</span>&#160;<span class="comment"> * Called on all constructors.</span></div>
<div class="line"><a name="l00663"></a><span class="lineno"> 663</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00664"></a><span class="lineno"> 664</span>&#160; <span class="keywordtype">void</span> _init() noexcept</div>
<div class="line"><a name="l00665"></a><span class="lineno"> 665</span>&#160; {</div>
<div class="line"><a name="l00666"></a><span class="lineno"> 666</span>&#160; fBuffer = _null();</div>
<div class="line"><a name="l00667"></a><span class="lineno"> 667</span>&#160; fBufferLen = 0;</div>
<div class="line"><a name="l00668"></a><span class="lineno"> 668</span>&#160; }</div>
<div class="line"><a name="l00669"></a><span class="lineno"> 669</span>&#160;</div>
<div class="line"><a name="l00670"></a><span class="lineno"> 670</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00671"></a><span class="lineno"> 671</span>&#160;<span class="comment"> * Helper function.</span></div>
<div class="line"><a name="l00672"></a><span class="lineno"> 672</span>&#160;<span class="comment"> * Called whenever the string needs to be allocated.</span></div>
<div class="line"><a name="l00673"></a><span class="lineno"> 673</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00674"></a><span class="lineno"> 674</span>&#160;<span class="comment"> * Notes:</span></div>
<div class="line"><a name="l00675"></a><span class="lineno"> 675</span>&#160;<span class="comment"> * - Allocates string only if &#39;strBuf&#39; is not null and new string contents are different</span></div>
<div class="line"><a name="l00676"></a><span class="lineno"> 676</span>&#160;<span class="comment"> * - If &#39;strBuf&#39; is null, &#39;size&#39; must be 0</span></div>
<div class="line"><a name="l00677"></a><span class="lineno"> 677</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00678"></a><span class="lineno"> 678</span>&#160; <span class="keywordtype">void</span> _dup(<span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keyword">const</span> strBuf, <span class="keyword">const</span> <span class="keywordtype">size_t</span> size = 0) noexcept</div>
<div class="line"><a name="l00679"></a><span class="lineno"> 679</span>&#160; {</div>
<div class="line"><a name="l00680"></a><span class="lineno"> 680</span>&#160; <span class="keywordflow">if</span> (strBuf != <span class="keyword">nullptr</span>)</div>
<div class="line"><a name="l00681"></a><span class="lineno"> 681</span>&#160; {</div>
<div class="line"><a name="l00682"></a><span class="lineno"> 682</span>&#160; <span class="comment">// don&#39;t recreate string if contents match</span></div>
<div class="line"><a name="l00683"></a><span class="lineno"> 683</span>&#160; <span class="keywordflow">if</span> (std::strcmp(fBuffer, strBuf) == 0)</div>
<div class="line"><a name="l00684"></a><span class="lineno"> 684</span>&#160; <span class="keywordflow">return</span>;</div>
<div class="line"><a name="l00685"></a><span class="lineno"> 685</span>&#160;</div>
<div class="line"><a name="l00686"></a><span class="lineno"> 686</span>&#160; <span class="keywordflow">if</span> (fBuffer != _null())</div>
<div class="line"><a name="l00687"></a><span class="lineno"> 687</span>&#160; std::free(fBuffer);</div>
<div class="line"><a name="l00688"></a><span class="lineno"> 688</span>&#160;</div>
<div class="line"><a name="l00689"></a><span class="lineno"> 689</span>&#160; fBufferLen = (size &gt; 0) ? size : std::strlen(strBuf);</div>
<div class="line"><a name="l00690"></a><span class="lineno"> 690</span>&#160; fBuffer = (<span class="keywordtype">char</span>*)std::malloc(fBufferLen+1);</div>
<div class="line"><a name="l00691"></a><span class="lineno"> 691</span>&#160;</div>
<div class="line"><a name="l00692"></a><span class="lineno"> 692</span>&#160; <span class="keywordflow">if</span> (fBuffer == <span class="keyword">nullptr</span>)</div>
<div class="line"><a name="l00693"></a><span class="lineno"> 693</span>&#160; <span class="keywordflow">return</span> _init();</div>
<div class="line"><a name="l00694"></a><span class="lineno"> 694</span>&#160;</div>
<div class="line"><a name="l00695"></a><span class="lineno"> 695</span>&#160; std::strcpy(fBuffer, strBuf);</div>
<div class="line"><a name="l00696"></a><span class="lineno"> 696</span>&#160;</div>
<div class="line"><a name="l00697"></a><span class="lineno"> 697</span>&#160; fBuffer[fBufferLen] = <span class="charliteral">&#39;\0&#39;</span>;</div>
<div class="line"><a name="l00698"></a><span class="lineno"> 698</span>&#160; }</div>
<div class="line"><a name="l00699"></a><span class="lineno"> 699</span>&#160; <span class="keywordflow">else</span></div>
<div class="line"><a name="l00700"></a><span class="lineno"> 700</span>&#160; {</div>
<div class="line"><a name="l00701"></a><span class="lineno"> 701</span>&#160; DISTRHO_SAFE_ASSERT(size == 0);</div>
<div class="line"><a name="l00702"></a><span class="lineno"> 702</span>&#160;</div>
<div class="line"><a name="l00703"></a><span class="lineno"> 703</span>&#160; <span class="comment">// don&#39;t recreate null string</span></div>
<div class="line"><a name="l00704"></a><span class="lineno"> 704</span>&#160; <span class="keywordflow">if</span> (fBuffer == _null())</div>
<div class="line"><a name="l00705"></a><span class="lineno"> 705</span>&#160; <span class="keywordflow">return</span>;</div>
<div class="line"><a name="l00706"></a><span class="lineno"> 706</span>&#160;</div>
<div class="line"><a name="l00707"></a><span class="lineno"> 707</span>&#160; DISTRHO_SAFE_ASSERT(fBuffer != <span class="keyword">nullptr</span>);</div>
<div class="line"><a name="l00708"></a><span class="lineno"> 708</span>&#160; std::free(fBuffer);</div>
<div class="line"><a name="l00709"></a><span class="lineno"> 709</span>&#160;</div>
<div class="line"><a name="l00710"></a><span class="lineno"> 710</span>&#160; _init();</div>
<div class="line"><a name="l00711"></a><span class="lineno"> 711</span>&#160; }</div>
<div class="line"><a name="l00712"></a><span class="lineno"> 712</span>&#160; }</div>
<div class="line"><a name="l00713"></a><span class="lineno"> 713</span>&#160;</div>
<div class="line"><a name="l00714"></a><span class="lineno"> 714</span>&#160; DISTRHO_LEAK_DETECTOR(<a class="code" href="classd__string.html">d_string</a>)</div>
<div class="line"><a name="l00715"></a><span class="lineno"> 715</span>&#160; DISTRHO_PREVENT_HEAP_ALLOCATION</div>
<div class="line"><a name="l00716"></a><span class="lineno"> 716</span>&#160;};</div>
<div class="line"><a name="l00717"></a><span class="lineno"> 717</span>&#160;</div>
<div class="line"><a name="l00718"></a><span class="lineno"> 718</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00719"></a><span class="lineno"> 719</span>&#160;</div>
<div class="line"><a name="l00720"></a><span class="lineno"> 720</span>&#160;<span class="keyword">static</span> <span class="keyword">inline</span></div>
<div class="line"><a name="l00721"></a><span class="lineno"> 721</span>&#160;<a class="code" href="classd__string.html">d_string</a> operator+(<span class="keyword">const</span> <a class="code" href="classd__string.html">d_string</a>&amp; strBefore, <span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keyword">const</span> strBufAfter) noexcept</div>
<div class="line"><a name="l00722"></a><span class="lineno"> 722</span>&#160;{</div>
<div class="line"><a name="l00723"></a><span class="lineno"> 723</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keyword">const</span> strBufBefore = strBefore.buffer();</div>
<div class="line"><a name="l00724"></a><span class="lineno"> 724</span>&#160; <span class="keyword">const</span> <span class="keywordtype">size_t</span> newBufSize = strBefore.length() + ((strBufAfter != <span class="keyword">nullptr</span>) ? std::strlen(strBufAfter) : 0) + 1;</div>
<div class="line"><a name="l00725"></a><span class="lineno"> 725</span>&#160; <span class="keywordtype">char</span> newBuf[newBufSize];</div>
<div class="line"><a name="l00726"></a><span class="lineno"> 726</span>&#160;</div>
<div class="line"><a name="l00727"></a><span class="lineno"> 727</span>&#160; std::strcpy(newBuf, strBufBefore);</div>
<div class="line"><a name="l00728"></a><span class="lineno"> 728</span>&#160; std::strcat(newBuf, strBufAfter);</div>
<div class="line"><a name="l00729"></a><span class="lineno"> 729</span>&#160;</div>
<div class="line"><a name="l00730"></a><span class="lineno"> 730</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classd__string.html">d_string</a>(newBuf);</div>
<div class="line"><a name="l00731"></a><span class="lineno"> 731</span>&#160;}</div>
<div class="line"><a name="l00732"></a><span class="lineno"> 732</span>&#160;</div>
<div class="line"><a name="l00733"></a><span class="lineno"> 733</span>&#160;<span class="keyword">static</span> <span class="keyword">inline</span></div>
<div class="line"><a name="l00734"></a><span class="lineno"> 734</span>&#160;<a class="code" href="classd__string.html">d_string</a> operator+(<span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keyword">const</span> strBufBefore, <span class="keyword">const</span> <a class="code" href="classd__string.html">d_string</a>&amp; strAfter) noexcept</div>
<div class="line"><a name="l00735"></a><span class="lineno"> 735</span>&#160;{</div>
<div class="line"><a name="l00736"></a><span class="lineno"> 736</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keyword">const</span> strBufAfter = strAfter.buffer();</div>
<div class="line"><a name="l00737"></a><span class="lineno"> 737</span>&#160; <span class="keyword">const</span> <span class="keywordtype">size_t</span> newBufSize = ((strBufBefore != <span class="keyword">nullptr</span>) ? std::strlen(strBufBefore) : 0) + strAfter.length() + 1;</div>
<div class="line"><a name="l00738"></a><span class="lineno"> 738</span>&#160; <span class="keywordtype">char</span> newBuf[newBufSize];</div>
<div class="line"><a name="l00739"></a><span class="lineno"> 739</span>&#160;</div>
<div class="line"><a name="l00740"></a><span class="lineno"> 740</span>&#160; std::strcpy(newBuf, strBufBefore);</div>
<div class="line"><a name="l00741"></a><span class="lineno"> 741</span>&#160; std::strcat(newBuf, strBufAfter);</div>
<div class="line"><a name="l00742"></a><span class="lineno"> 742</span>&#160;</div>
<div class="line"><a name="l00743"></a><span class="lineno"> 743</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classd__string.html">d_string</a>(newBuf);</div>
<div class="line"><a name="l00744"></a><span class="lineno"> 744</span>&#160;}</div>
<div class="line"><a name="l00745"></a><span class="lineno"> 745</span>&#160;</div>
<div class="line"><a name="l00746"></a><span class="lineno"> 746</span>&#160;<span class="comment">// -----------------------------------------------------------------------</span></div>
<div class="line"><a name="l00747"></a><span class="lineno"> 747</span>&#160;</div>
<div class="line"><a name="l00748"></a><span class="lineno"> 748</span>&#160;END_NAMESPACE_DISTRHO</div>
<div class="line"><a name="l00749"></a><span class="lineno"> 749</span>&#160;</div>
<div class="line"><a name="l00750"></a><span class="lineno"> 750</span>&#160;<span class="preprocessor">#endif // DISTRHO_STRING_HPP_INCLUDED</span></div>
<div class="ttc" id="classd__string_html"><div class="ttname"><a href="classd__string.html">d_string</a></div><div class="ttdef"><b>Definition:</b> d_string.hpp:27</div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Apr 26 2015 14:49:34 for DISTRHO Plugin Framework by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.8
</small></address>
</body>
</html>

Some files were not shown because too many files changed in this diff

Loading…
Cancel
Save