blob: 4e6ec8df80e7981f791e4716d55c119b23f78347 [file] [log] [blame]
<!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.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libguac: guacamole/protocol-types.h 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/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></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 id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">libguac
&#160;<span id="projectnumber">0.9.14</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</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_6bb9fad85c98b48a11165f494b9f53ce.html">guacamole</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">protocol-types.h</div> </div>
</div><!--header-->
<div class="contents">
<a href="protocol-types_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> * Licensed to the Apache Software Foundation (ASF) under one</span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * or more contributor license agreements. See the NOTICE file</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * distributed with this work for additional information</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * regarding copyright ownership. The ASF licenses this file</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * to you under the Apache License, Version 2.0 (the</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * &quot;License&quot;); you may not use this file except in compliance</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * with the License. You may obtain a copy of the License at</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * http://www.apache.org/licenses/LICENSE-2.0</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * Unless required by applicable law or agreed to in writing,</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * software distributed under the License is distributed on an</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * &quot;AS IS&quot; BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * KIND, either express or implied. See the License for the</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * specific language governing permissions and limitations</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * under the License.</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> */</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">#ifndef _GUAC_PROTOCOL_TYPES_H</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="preprocessor">#define _GUAC_PROTOCOL_TYPES_H</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;</div><div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2"> 44</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code" href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2">guac_protocol_status</a> {</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div><div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2aece4c889b9d626073bf7a0cb8fe6d5ac"> 49</a></span>&#160; <a class="code" href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2aece4c889b9d626073bf7a0cb8fe6d5ac">GUAC_PROTOCOL_STATUS_SUCCESS</a> = 0x0000,</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div><div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2a3a967a2c59d846eb6e6106066d95ef75"> 54</a></span>&#160; <a class="code" href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2a3a967a2c59d846eb6e6106066d95ef75">GUAC_PROTOCOL_STATUS_UNSUPPORTED</a> = 0x0100,</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div><div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2a1540c5c1a0668f06a9d71443d95063ff"> 59</a></span>&#160; <a class="code" href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2a1540c5c1a0668f06a9d71443d95063ff">GUAC_PROTOCOL_STATUS_SERVER_ERROR</a> = 0x0200,</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;</div><div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2a0344ce1d993b626382a44969934354d6"> 64</a></span>&#160; <a class="code" href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2a0344ce1d993b626382a44969934354d6">GUAC_PROTOCOL_STATUS_SERVER_BUSY</a> = 0x0201,</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;</div><div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2a5829c4335b31db5c6f1e1764264f281f"> 70</a></span>&#160; <a class="code" href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2a5829c4335b31db5c6f1e1764264f281f">GUAC_PROTOCOL_STATUS_UPSTREAM_TIMEOUT</a> = 0x0202,</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;</div><div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2a00d154907f7b45e526db18a5a5685d78"> 76</a></span>&#160; <a class="code" href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2a00d154907f7b45e526db18a5a5685d78">GUAC_PROTOCOL_STATUS_UPSTREAM_ERROR</a> = 0x0203,</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;</div><div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2a3aa788cd4b2bbcfab592573dbddc2e22"> 82</a></span>&#160; <a class="code" href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2a3aa788cd4b2bbcfab592573dbddc2e22">GUAC_PROTOCOL_STATUS_RESOURCE_NOT_FOUND</a> = 0x0204,</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;</div><div class="line"><a name="l00088"></a><span class="lineno"><a class="line" href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2a6f19a3fac58e804570a16351f8c35ee9"> 88</a></span>&#160; <a class="code" href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2a6f19a3fac58e804570a16351f8c35ee9">GUAC_PROTOCOL_STATUS_RESOURCE_CONFLICT</a> = 0x0205,</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;</div><div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2a08b2dc0d23e51f7a2cba7cc807cb80da"> 94</a></span>&#160; <a class="code" href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2a08b2dc0d23e51f7a2cba7cc807cb80da">GUAC_PROTOCOL_STATUS_RESOURCE_CLOSED</a> = 0x0206,</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;</div><div class="line"><a name="l00100"></a><span class="lineno"><a class="line" href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2a503d6c0332647939536488a19513ae3e"> 100</a></span>&#160; <a class="code" href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2a503d6c0332647939536488a19513ae3e">GUAC_PROTOCOL_STATUS_UPSTREAM_NOT_FOUND</a> = 0x0207,</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;</div><div class="line"><a name="l00106"></a><span class="lineno"><a class="line" href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2a238ff6f1d0e5fbcb0529fe4985dae814"> 106</a></span>&#160; <a class="code" href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2a238ff6f1d0e5fbcb0529fe4985dae814">GUAC_PROTOCOL_STATUS_UPSTREAM_UNAVAILABLE</a> = 0x0208,</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;</div><div class="line"><a name="l00112"></a><span class="lineno"><a class="line" href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2ae92e68bf446315028b3f1992b19967f7"> 112</a></span>&#160; <a class="code" href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2ae92e68bf446315028b3f1992b19967f7">GUAC_PROTOCOL_STATUS_SESSION_CONFLICT</a> = 0x0209,</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;</div><div class="line"><a name="l00118"></a><span class="lineno"><a class="line" href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2a3e4f469d39ea08bf7ff8fec3a2f36b23"> 118</a></span>&#160; <a class="code" href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2a3e4f469d39ea08bf7ff8fec3a2f36b23">GUAC_PROTOCOL_STATUS_SESSION_TIMEOUT</a> = 0x020A,</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;</div><div class="line"><a name="l00123"></a><span class="lineno"><a class="line" href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2a8e31816937bfdc75c639d3bf0c4063ab"> 123</a></span>&#160; <a class="code" href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2a8e31816937bfdc75c639d3bf0c4063ab">GUAC_PROTOCOL_STATUS_SESSION_CLOSED</a> = 0x020B,</div><div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;</div><div class="line"><a name="l00129"></a><span class="lineno"><a class="line" href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2a3368d253bd711779821fd35cfce26fb7"> 129</a></span>&#160; <a class="code" href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2a3368d253bd711779821fd35cfce26fb7">GUAC_PROTOCOL_STATUS_CLIENT_BAD_REQUEST</a> = 0x300,</div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;</div><div class="line"><a name="l00135"></a><span class="lineno"><a class="line" href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2af235e2bc03b76506e2b145bef2faadca"> 135</a></span>&#160; <a class="code" href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2af235e2bc03b76506e2b145bef2faadca">GUAC_PROTOCOL_STATUS_CLIENT_UNAUTHORIZED</a> = 0x0301,</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;</div><div class="line"><a name="l00141"></a><span class="lineno"><a class="line" href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2ae69699ec97ca233ff2080e258cbaffc5"> 141</a></span>&#160; <a class="code" href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2ae69699ec97ca233ff2080e258cbaffc5">GUAC_PROTOCOL_STATUS_CLIENT_FORBIDDEN</a> = 0x0303,</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;</div><div class="line"><a name="l00146"></a><span class="lineno"><a class="line" href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2a48bbc2974575fc1418a74367b090dfff"> 146</a></span>&#160; <a class="code" href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2a48bbc2974575fc1418a74367b090dfff">GUAC_PROTOCOL_STATUS_CLIENT_TIMEOUT</a> = 0x308,</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;</div><div class="line"><a name="l00151"></a><span class="lineno"><a class="line" href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2a8d525475c60f4851a0e54f80e2106d13"> 151</a></span>&#160; <a class="code" href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2a8d525475c60f4851a0e54f80e2106d13">GUAC_PROTOCOL_STATUS_CLIENT_OVERRUN</a> = 0x30D,</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;</div><div class="line"><a name="l00156"></a><span class="lineno"><a class="line" href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2aee8dbe77e34276c2c63ac48cfd9efb6a"> 156</a></span>&#160; <a class="code" href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2aee8dbe77e34276c2c63ac48cfd9efb6a">GUAC_PROTOCOL_STATUS_CLIENT_BAD_TYPE</a> = 0x30F,</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;</div><div class="line"><a name="l00162"></a><span class="lineno"><a class="line" href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2aea1d0ee50c190b937904da2ad68cabdc"> 162</a></span>&#160; <a class="code" href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2aea1d0ee50c190b937904da2ad68cabdc">GUAC_PROTOCOL_STATUS_CLIENT_TOO_MANY</a> = 0x31D</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;} <a class="code" href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2">guac_protocol_status</a>;</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;</div><div class="line"><a name="l00170"></a><span class="lineno"><a class="line" href="protocol-types_8h.html#a93612063886db58071d02b5393abf186"> 170</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code" href="protocol-types_8h.html#a93612063886db58071d02b5393abf186">guac_composite_mode</a> {</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; <span class="comment">/*</span></div><div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160;<span class="comment"> * A: Source where destination transparent = S n D&#39;</span></div><div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160;<span class="comment"> * B: Source where destination opaque = S n D</span></div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160;<span class="comment"> * C: Destination where source transparent = D n S&#39;</span></div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;<span class="comment"> * D: Destination where source opaque = D n S</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="comment"> * 0 = Active, 1 = Inactive</span></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">/* ABCD */</span></div><div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; GUAC_COMP_ROUT = 0x2, <span class="comment">/* 0010 - Clears destination where source opaque */</span></div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; GUAC_COMP_ATOP = 0x6, <span class="comment">/* 0110 - Fill where destination opaque only */</span></div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; GUAC_COMP_XOR = 0xA, <span class="comment">/* 1010 - XOR */</span></div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; GUAC_COMP_ROVER = 0xB, <span class="comment">/* 1011 - Fill where destination transparent only */</span></div><div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; GUAC_COMP_OVER = 0xE, <span class="comment">/* 1110 - Draw normally */</span></div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; GUAC_COMP_PLUS = 0xF, <span class="comment">/* 1111 - Add */</span></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">/* Unimplemented in client: */</span></div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <span class="comment">/* NOT IMPLEMENTED: 0000 - Clear */</span></div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; <span class="comment">/* NOT IMPLEMENTED: 0011 - No operation */</span></div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; <span class="comment">/* NOT IMPLEMENTED: 0101 - Additive IN */</span></div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; <span class="comment">/* NOT IMPLEMENTED: 0111 - Additive ATOP */</span></div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; <span class="comment">/* NOT IMPLEMENTED: 1101 - Additive RATOP */</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="comment">/* Buggy in webkit browsers, as they keep channel C on in all cases: */</span></div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; GUAC_COMP_RIN = 0x1, <span class="comment">/* 0001 */</span></div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; GUAC_COMP_IN = 0x4, <span class="comment">/* 0100 */</span></div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; GUAC_COMP_OUT = 0x8, <span class="comment">/* 1000 */</span></div><div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; GUAC_COMP_RATOP = 0x9, <span class="comment">/* 1001 */</span></div><div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; GUAC_COMP_SRC = 0xC <span class="comment">/* 1100 */</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="comment">/* Bitwise composite operations (binary) */</span></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;<span class="comment"> * A: S&#39; &amp; D&#39;</span></div><div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160;<span class="comment"> * B: S&#39; &amp; D</span></div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160;<span class="comment"> * C: S &amp; D&#39;</span></div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160;<span class="comment"> * D: S &amp; D</span></div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160;<span class="comment"> * 0 = Active, 1 = Inactive</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"> 212</span>&#160;</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160;} <a class="code" href="protocol-types_8h.html#a93612063886db58071d02b5393abf186">guac_composite_mode</a>;</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160;</div><div class="line"><a name="l00219"></a><span class="lineno"><a class="line" href="protocol-types_8h.html#a9c85e3f22f5dea8b2f38de6b4f75b1ff"> 219</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code" href="protocol-types_8h.html#a9c85e3f22f5dea8b2f38de6b4f75b1ff">guac_transfer_function</a> {</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160;</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; <span class="comment">/* Constant functions */</span> <span class="comment">/* ABCD */</span></div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; GUAC_TRANSFER_BINARY_BLACK = 0x0, <span class="comment">/* 0000 */</span></div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; GUAC_TRANSFER_BINARY_WHITE = 0xF, <span class="comment">/* 1111 */</span></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; <span class="comment">/* Copy functions */</span></div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; GUAC_TRANSFER_BINARY_SRC = 0x3, <span class="comment">/* 0011 */</span></div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; GUAC_TRANSFER_BINARY_DEST = 0x5, <span class="comment">/* 0101 */</span></div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; GUAC_TRANSFER_BINARY_NSRC = 0xC, <span class="comment">/* 1100 */</span></div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; GUAC_TRANSFER_BINARY_NDEST = 0xA, <span class="comment">/* 1010 */</span></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="comment">/* AND / NAND */</span></div><div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; GUAC_TRANSFER_BINARY_AND = 0x1, <span class="comment">/* 0001 */</span></div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; GUAC_TRANSFER_BINARY_NAND = 0xE, <span class="comment">/* 1110 */</span></div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160;</div><div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; <span class="comment">/* OR / NOR */</span></div><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; GUAC_TRANSFER_BINARY_OR = 0x7, <span class="comment">/* 0111 */</span></div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; GUAC_TRANSFER_BINARY_NOR = 0x8, <span class="comment">/* 1000 */</span></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; <span class="comment">/* XOR / XNOR */</span></div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; GUAC_TRANSFER_BINARY_XOR = 0x6, <span class="comment">/* 0110 */</span></div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; GUAC_TRANSFER_BINARY_XNOR = 0x9, <span class="comment">/* 1001 */</span></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">/* AND / NAND with inverted source */</span></div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; GUAC_TRANSFER_BINARY_NSRC_AND = 0x4, <span class="comment">/* 0100 */</span></div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; GUAC_TRANSFER_BINARY_NSRC_NAND = 0xB, <span class="comment">/* 1011 */</span></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="comment">/* OR / NOR with inverted source */</span></div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; GUAC_TRANSFER_BINARY_NSRC_OR = 0xD, <span class="comment">/* 1101 */</span></div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; GUAC_TRANSFER_BINARY_NSRC_NOR = 0x2, <span class="comment">/* 0010 */</span></div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160;</div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; <span class="comment">/* AND / NAND with inverted destination */</span></div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; GUAC_TRANSFER_BINARY_NDEST_AND = 0x2, <span class="comment">/* 0010 */</span></div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; GUAC_TRANSFER_BINARY_NDEST_NAND = 0xD, <span class="comment">/* 1101 */</span></div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160;</div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; <span class="comment">/* OR / NOR with inverted destination */</span></div><div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; GUAC_TRANSFER_BINARY_NDEST_OR = 0xB, <span class="comment">/* 1011 */</span></div><div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; GUAC_TRANSFER_BINARY_NDEST_NOR = 0x4 <span class="comment">/* 0100 */</span></div><div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160;</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160;} <a class="code" href="protocol-types_8h.html#a9c85e3f22f5dea8b2f38de6b4f75b1ff">guac_transfer_function</a>;</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160;</div><div class="line"><a name="l00264"></a><span class="lineno"><a class="line" href="protocol-types_8h.html#a4a0205f8ee2e29e1a4d78da74ab58efc"> 264</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code" href="protocol-types_8h.html#a4a0205f8ee2e29e1a4d78da74ab58efc">guac_line_cap_style</a> {</div><div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; GUAC_LINE_CAP_BUTT = 0x0,</div><div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; GUAC_LINE_CAP_ROUND = 0x1,</div><div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; GUAC_LINE_CAP_SQUARE = 0x2</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160;} <a class="code" href="protocol-types_8h.html#a4a0205f8ee2e29e1a4d78da74ab58efc">guac_line_cap_style</a>;</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160;</div><div class="line"><a name="l00273"></a><span class="lineno"><a class="line" href="protocol-types_8h.html#a6333200b3ff1634e0cb1826b271438b1"> 273</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> <a class="code" href="protocol-types_8h.html#a6333200b3ff1634e0cb1826b271438b1">guac_line_join_style</a> {</div><div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; GUAC_LINE_JOIN_BEVEL = 0x0,</div><div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; GUAC_LINE_JOIN_MITER = 0x1,</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; GUAC_LINE_JOIN_ROUND = 0x2</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160;} <a class="code" href="protocol-types_8h.html#a6333200b3ff1634e0cb1826b271438b1">guac_line_join_style</a>;</div><div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160;</div><div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160;</div><div class="ttc" id="protocol-types_8h_html_af946f7f843fa5935dbeeb08f85dec9e2a0344ce1d993b626382a44969934354d6"><div class="ttname"><a href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2a0344ce1d993b626382a44969934354d6">GUAC_PROTOCOL_STATUS_SERVER_BUSY</a></div><div class="ttdoc">The operation could not be performed due as the server is busy. </div><div class="ttdef"><b>Definition:</b> protocol-types.h:64</div></div>
<div class="ttc" id="protocol-types_8h_html_af946f7f843fa5935dbeeb08f85dec9e2ae69699ec97ca233ff2080e258cbaffc5"><div class="ttname"><a href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2ae69699ec97ca233ff2080e258cbaffc5">GUAC_PROTOCOL_STATUS_CLIENT_FORBIDDEN</a></div><div class="ttdoc">Permission was denied to perform the operation, and this permission will not be granted even if the u...</div><div class="ttdef"><b>Definition:</b> protocol-types.h:141</div></div>
<div class="ttc" id="protocol-types_8h_html_af946f7f843fa5935dbeeb08f85dec9e2ae92e68bf446315028b3f1992b19967f7"><div class="ttname"><a href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2ae92e68bf446315028b3f1992b19967f7">GUAC_PROTOCOL_STATUS_SESSION_CONFLICT</a></div><div class="ttdoc">The session within the upstream server has ended because it conflicted with another session...</div><div class="ttdef"><b>Definition:</b> protocol-types.h:112</div></div>
<div class="ttc" id="protocol-types_8h_html_af946f7f843fa5935dbeeb08f85dec9e2af235e2bc03b76506e2b145bef2faadca"><div class="ttname"><a href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2af235e2bc03b76506e2b145bef2faadca">GUAC_PROTOCOL_STATUS_CLIENT_UNAUTHORIZED</a></div><div class="ttdoc">Permission was denied to perform the operation, as the user is not yet authorized (not yet logged in...</div><div class="ttdef"><b>Definition:</b> protocol-types.h:135</div></div>
<div class="ttc" id="protocol-types_8h_html_af946f7f843fa5935dbeeb08f85dec9e2a3368d253bd711779821fd35cfce26fb7"><div class="ttname"><a href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2a3368d253bd711779821fd35cfce26fb7">GUAC_PROTOCOL_STATUS_CLIENT_BAD_REQUEST</a></div><div class="ttdoc">The operation could not be performed because bad parameters were given. </div><div class="ttdef"><b>Definition:</b> protocol-types.h:129</div></div>
<div class="ttc" id="protocol-types_8h_html_af946f7f843fa5935dbeeb08f85dec9e2aea1d0ee50c190b937904da2ad68cabdc"><div class="ttname"><a href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2aea1d0ee50c190b937904da2ad68cabdc">GUAC_PROTOCOL_STATUS_CLIENT_TOO_MANY</a></div><div class="ttdoc">The operation failed because the current client is already using too many resources. </div><div class="ttdef"><b>Definition:</b> protocol-types.h:162</div></div>
<div class="ttc" id="protocol-types_8h_html_af946f7f843fa5935dbeeb08f85dec9e2a3e4f469d39ea08bf7ff8fec3a2f36b23"><div class="ttname"><a href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2a3e4f469d39ea08bf7ff8fec3a2f36b23">GUAC_PROTOCOL_STATUS_SESSION_TIMEOUT</a></div><div class="ttdoc">The session within the upstream server has ended because it appeared to be inactive. </div><div class="ttdef"><b>Definition:</b> protocol-types.h:118</div></div>
<div class="ttc" id="protocol-types_8h_html_a6333200b3ff1634e0cb1826b271438b1"><div class="ttname"><a href="protocol-types_8h.html#a6333200b3ff1634e0cb1826b271438b1">guac_line_join_style</a></div><div class="ttdeci">guac_line_join_style</div><div class="ttdoc">Supported line join styles. </div><div class="ttdef"><b>Definition:</b> protocol-types.h:273</div></div>
<div class="ttc" id="protocol-types_8h_html_af946f7f843fa5935dbeeb08f85dec9e2a8e31816937bfdc75c639d3bf0c4063ab"><div class="ttname"><a href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2a8e31816937bfdc75c639d3bf0c4063ab">GUAC_PROTOCOL_STATUS_SESSION_CLOSED</a></div><div class="ttdoc">The session within the upstream server has been forcibly terminated. </div><div class="ttdef"><b>Definition:</b> protocol-types.h:123</div></div>
<div class="ttc" id="protocol-types_8h_html_a9c85e3f22f5dea8b2f38de6b4f75b1ff"><div class="ttname"><a href="protocol-types_8h.html#a9c85e3f22f5dea8b2f38de6b4f75b1ff">guac_transfer_function</a></div><div class="ttdeci">guac_transfer_function</div><div class="ttdoc">Default transfer functions. </div><div class="ttdef"><b>Definition:</b> protocol-types.h:219</div></div>
<div class="ttc" id="protocol-types_8h_html_af946f7f843fa5935dbeeb08f85dec9e2a3a967a2c59d846eb6e6106066d95ef75"><div class="ttname"><a href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2a3a967a2c59d846eb6e6106066d95ef75">GUAC_PROTOCOL_STATUS_UNSUPPORTED</a></div><div class="ttdoc">The requested operation is unsupported. </div><div class="ttdef"><b>Definition:</b> protocol-types.h:54</div></div>
<div class="ttc" id="protocol-types_8h_html_a4a0205f8ee2e29e1a4d78da74ab58efc"><div class="ttname"><a href="protocol-types_8h.html#a4a0205f8ee2e29e1a4d78da74ab58efc">guac_line_cap_style</a></div><div class="ttdeci">guac_line_cap_style</div><div class="ttdoc">Supported line cap styles. </div><div class="ttdef"><b>Definition:</b> protocol-types.h:264</div></div>
<div class="ttc" id="protocol-types_8h_html_af946f7f843fa5935dbeeb08f85dec9e2a8d525475c60f4851a0e54f80e2106d13"><div class="ttname"><a href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2a8d525475c60f4851a0e54f80e2106d13">GUAC_PROTOCOL_STATUS_CLIENT_OVERRUN</a></div><div class="ttdoc">The client sent too much data. </div><div class="ttdef"><b>Definition:</b> protocol-types.h:151</div></div>
<div class="ttc" id="protocol-types_8h_html_af946f7f843fa5935dbeeb08f85dec9e2a238ff6f1d0e5fbcb0529fe4985dae814"><div class="ttname"><a href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2a238ff6f1d0e5fbcb0529fe4985dae814">GUAC_PROTOCOL_STATUS_UPSTREAM_UNAVAILABLE</a></div><div class="ttdoc">The operation could not be performed because the upstream server is not available to service the requ...</div><div class="ttdef"><b>Definition:</b> protocol-types.h:106</div></div>
<div class="ttc" id="protocol-types_8h_html_af946f7f843fa5935dbeeb08f85dec9e2a48bbc2974575fc1418a74367b090dfff"><div class="ttname"><a href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2a48bbc2974575fc1418a74367b090dfff">GUAC_PROTOCOL_STATUS_CLIENT_TIMEOUT</a></div><div class="ttdoc">The client took too long to respond. </div><div class="ttdef"><b>Definition:</b> protocol-types.h:146</div></div>
<div class="ttc" id="protocol-types_8h_html_af946f7f843fa5935dbeeb08f85dec9e2a00d154907f7b45e526db18a5a5685d78"><div class="ttname"><a href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2a00d154907f7b45e526db18a5a5685d78">GUAC_PROTOCOL_STATUS_UPSTREAM_ERROR</a></div><div class="ttdoc">The operation was unsuccessful due to an error or otherwise unexpected condition of the upstream serv...</div><div class="ttdef"><b>Definition:</b> protocol-types.h:76</div></div>
<div class="ttc" id="protocol-types_8h_html_af946f7f843fa5935dbeeb08f85dec9e2aee8dbe77e34276c2c63ac48cfd9efb6a"><div class="ttname"><a href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2aee8dbe77e34276c2c63ac48cfd9efb6a">GUAC_PROTOCOL_STATUS_CLIENT_BAD_TYPE</a></div><div class="ttdoc">The client sent data of an unsupported or unexpected type. </div><div class="ttdef"><b>Definition:</b> protocol-types.h:156</div></div>
<div class="ttc" id="protocol-types_8h_html_af946f7f843fa5935dbeeb08f85dec9e2a3aa788cd4b2bbcfab592573dbddc2e22"><div class="ttname"><a href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2a3aa788cd4b2bbcfab592573dbddc2e22">GUAC_PROTOCOL_STATUS_RESOURCE_NOT_FOUND</a></div><div class="ttdoc">The operation could not be performed as the requested resource does not exist. </div><div class="ttdef"><b>Definition:</b> protocol-types.h:82</div></div>
<div class="ttc" id="protocol-types_8h_html_af946f7f843fa5935dbeeb08f85dec9e2a5829c4335b31db5c6f1e1764264f281f"><div class="ttname"><a href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2a5829c4335b31db5c6f1e1764264f281f">GUAC_PROTOCOL_STATUS_UPSTREAM_TIMEOUT</a></div><div class="ttdoc">The operation could not be performed because the upstream server is not responding. </div><div class="ttdef"><b>Definition:</b> protocol-types.h:70</div></div>
<div class="ttc" id="protocol-types_8h_html_a93612063886db58071d02b5393abf186"><div class="ttname"><a href="protocol-types_8h.html#a93612063886db58071d02b5393abf186">guac_composite_mode</a></div><div class="ttdeci">guac_composite_mode</div><div class="ttdoc">Composite modes used by Guacamole draw instructions. </div><div class="ttdef"><b>Definition:</b> protocol-types.h:170</div></div>
<div class="ttc" id="protocol-types_8h_html_af946f7f843fa5935dbeeb08f85dec9e2a08b2dc0d23e51f7a2cba7cc807cb80da"><div class="ttname"><a href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2a08b2dc0d23e51f7a2cba7cc807cb80da">GUAC_PROTOCOL_STATUS_RESOURCE_CLOSED</a></div><div class="ttdoc">The operation could not be performed as the requested resource is now closed. </div><div class="ttdef"><b>Definition:</b> protocol-types.h:94</div></div>
<div class="ttc" id="protocol-types_8h_html_af946f7f843fa5935dbeeb08f85dec9e2"><div class="ttname"><a href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2">guac_protocol_status</a></div><div class="ttdeci">guac_protocol_status</div><div class="ttdoc">Set of all possible status codes returned by protocol operations. </div><div class="ttdef"><b>Definition:</b> protocol-types.h:44</div></div>
<div class="ttc" id="protocol-types_8h_html_af946f7f843fa5935dbeeb08f85dec9e2a503d6c0332647939536488a19513ae3e"><div class="ttname"><a href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2a503d6c0332647939536488a19513ae3e">GUAC_PROTOCOL_STATUS_UPSTREAM_NOT_FOUND</a></div><div class="ttdoc">The operation could not be performed because the upstream server does not appear to exist...</div><div class="ttdef"><b>Definition:</b> protocol-types.h:100</div></div>
<div class="ttc" id="protocol-types_8h_html_af946f7f843fa5935dbeeb08f85dec9e2a1540c5c1a0668f06a9d71443d95063ff"><div class="ttname"><a href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2a1540c5c1a0668f06a9d71443d95063ff">GUAC_PROTOCOL_STATUS_SERVER_ERROR</a></div><div class="ttdoc">The operation could not be performed due to an internal failure. </div><div class="ttdef"><b>Definition:</b> protocol-types.h:59</div></div>
<div class="ttc" id="protocol-types_8h_html_af946f7f843fa5935dbeeb08f85dec9e2a6f19a3fac58e804570a16351f8c35ee9"><div class="ttname"><a href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2a6f19a3fac58e804570a16351f8c35ee9">GUAC_PROTOCOL_STATUS_RESOURCE_CONFLICT</a></div><div class="ttdoc">The operation could not be performed as the requested resource is already in use. ...</div><div class="ttdef"><b>Definition:</b> protocol-types.h:88</div></div>
<div class="ttc" id="protocol-types_8h_html_af946f7f843fa5935dbeeb08f85dec9e2aece4c889b9d626073bf7a0cb8fe6d5ac"><div class="ttname"><a href="protocol-types_8h.html#af946f7f843fa5935dbeeb08f85dec9e2aece4c889b9d626073bf7a0cb8fe6d5ac">GUAC_PROTOCOL_STATUS_SUCCESS</a></div><div class="ttdoc">The operation succeeded. </div><div class="ttdef"><b>Definition:</b> protocol-types.h:49</div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.13
</small></address>
</body>
</html>