1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
2<html>
3  <head>
4    <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
5    <title>File Index</title>
6    <link href="doxygen.css" rel="stylesheet" type="text/css">
7  </head>
8  <body>
9<!-- Generated by Doxygen 1.7.4 -->
10  <div id="navrow1" class="tabs">
11    <ul class="tablist">
12      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
13      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
14      <li class="current"><a href="files.html"><span>Files</span></a></li>
15    </ul>
16  </div>
17  <div id="navrow2" class="tabs2">
18    <ul class="tablist">
19      <li><a href="files.html"><span>File&#160;List</span></a></li>
20      <li><a href="globals.html"><span>Globals</span></a></li>
21    </ul>
22  </div>
23</div>
24<div id="side-nav" class="ui-resizable side-nav-resizable">
25  <div id="nav-tree">
26    <div id="nav-tree-contents">
27    </div>
28  </div>
29  <div id="splitbar" style="-moz-user-select:none;" 
30       class="ui-resizable-handle">
31  </div>
32</div>
33<script type="text/javascript">
34  initNavTree('dmxmap_8c.html','');
35</script>
36<div id="doc-content">
37<div class="header">
38  <div class="summary">
39<a href="#func-members">Functions</a>  </div>
40  <div class="headertitle">
41<div class="title">dmxmap.c File Reference</div>  </div>
42</div>
43<div class="contents">
44<div class="textblock"><code>#include &quot;<a class="el" href="dmxinputinit_8h_source.html">dmxinputinit.h</a>&quot;</code><br/>
45<code>#include &quot;<a class="el" href="dmxmap_8h_source.html">dmxmap.h</a>&quot;</code><br/>
46</div><table class="memberdecls">
47<tr><td colspan="2"><h2><a name="func-members"></a>
48Functions</h2></td></tr>
49<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxmap_8c.html#ada5a28e0c746708e0f5c45e9e193d907">dmxMapInsert</a> (<a class="el" href="struct__DMXLocalInputInfo.html">DMXLocalInputInfoPtr</a> dmxLocal, int remoteEvent, int serverEvent)</td></tr>
50<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxmap_8c.html#a27107d43f96e7c09241d7ef0b5e9c0f5">dmxMapClear</a> (<a class="el" href="struct__DMXLocalInputInfo.html">DMXLocalInputInfoPtr</a> dmxLocal)</td></tr>
51<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dmxmap_8c.html#abc1a46c87c4acd45e4e5f79370be6169">dmxMapLookup</a> (<a class="el" href="struct__DMXLocalInputInfo.html">DMXLocalInputInfoPtr</a> dmxLocal, int remoteEvent)</td></tr>
52</table>
53<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
54<div class="textblock"><p>This file implements a mapping from remote XInput event types to Xdmx XInput event types.</p>
55<p>The exglobals.h file defines global server-side variables with names Device* to be integers that hold the value of the type of the server-side XInput extension event.</p>
56<p>The client-side X11/extensions/XInput.h file defines macros with THE EXACT SAME Device* names!</p>
57<p>Using those macros to extract remote server event type values from the (opaque) XDevice structure is appropriate, but makes a direct mapping to the Device* integers impossible. So we use the normalized XI_Device* names for these routines. </p>
58</div><hr/><h2>Function Documentation</h2>
59<a class="anchor" id="a27107d43f96e7c09241d7ef0b5e9c0f5"></a><!-- doxytag: member="dmxmap.c::dmxMapClear" ref="a27107d43f96e7c09241d7ef0b5e9c0f5" args="(DMXLocalInputInfoPtr dmxLocal)" -->
60<div class="memitem">
61<div class="memproto">
62      <table class="memname">
63        <tr>
64          <td class="memname">void dmxMapClear </td>
65          <td>(</td>
66          <td class="paramtype"><a class="el" href="struct__DMXLocalInputInfo.html">DMXLocalInputInfoPtr</a>&#160;</td>
67          <td class="paramname"><em>dmxLocal</em></td><td>)</td>
68          <td></td>
69        </tr>
70      </table>
71</div>
72<div class="memdoc">
73<p>Remove all mappings there were inserted with <a class="el" href="dmxmap_8h.html#ada5a28e0c746708e0f5c45e9e193d907">dmxMapInsert</a>. </p>
74
75<p>References <a class="el" href="dmxinputinit_8h.html#a13002c58c62fa0d9c65076f22c4df452">DMX_MAP_ENTRIES</a>, <a class="el" href="struct__DMXLocalInputInfo.html#af8ea073e34c4e927f7f887603aaba17d">_DMXLocalInputInfo::map</a>, <a class="el" href="struct__DMXLocalInputInfo.html#a5595cf8656f17bceb30699a6d215afa5">_DMXLocalInputInfo::mapOptimize</a>, and <a class="el" href="struct__DMXEventMap.html#aafea1b880cf1b362c7e600b4285c08c3">_DMXEventMap::remote</a>.</p>
76
77</div>
78</div>
79<a class="anchor" id="ada5a28e0c746708e0f5c45e9e193d907"></a><!-- doxytag: member="dmxmap.c::dmxMapInsert" ref="ada5a28e0c746708e0f5c45e9e193d907" args="(DMXLocalInputInfoPtr dmxLocal, int remoteEvent, int serverEvent)" -->
80<div class="memitem">
81<div class="memproto">
82      <table class="memname">
83        <tr>
84          <td class="memname">void dmxMapInsert </td>
85          <td>(</td>
86          <td class="paramtype"><a class="el" href="struct__DMXLocalInputInfo.html">DMXLocalInputInfoPtr</a>&#160;</td>
87          <td class="paramname"><em>dmxLocal</em>, </td>
88        </tr>
89        <tr>
90          <td class="paramkey"></td>
91          <td></td>
92          <td class="paramtype">int&#160;</td>
93          <td class="paramname"><em>remoteEvent</em>, </td>
94        </tr>
95        <tr>
96          <td class="paramkey"></td>
97          <td></td>
98          <td class="paramtype">int&#160;</td>
99          <td class="paramname"><em>serverEvent</em>&#160;</td>
100        </tr>
101        <tr>
102          <td></td>
103          <td>)</td>
104          <td></td><td></td>
105        </tr>
106      </table>
107</div>
108<div class="memdoc">
109<p>Create a mapping from <em>remoteEvent</em> to <em>serverEvent</em>. The <em>remoteEvent</em> is the type returned from the remote server. The <em>serverEvent</em> is from the XI_* list of events in include/extensions/XIproto.h. </p>
110
111<p>References <a class="el" href="dmxinputinit_8h.html#a13002c58c62fa0d9c65076f22c4df452">DMX_MAP_ENTRIES</a>, <a class="el" href="dmxinputinit_8h.html#a51a3f23fde19e452c34d472758710b90">DMX_MAP_MASK</a>, <a class="el" href="dmxlog_8c.html#ab6259430a57c3cffdfc9f6259df0ad23">dmxLog()</a>, <a class="el" href="dmxlog_8h.html#aeed612a5c0be196e23bd6b71b76b917fae81ae2a11fb7ab8eea902f609574210a">dmxWarning</a>, <a class="el" href="struct__DMXLocalInputInfo.html#af8ea073e34c4e927f7f887603aaba17d">_DMXLocalInputInfo::map</a>, <a class="el" href="struct__DMXLocalInputInfo.html#a5595cf8656f17bceb30699a6d215afa5">_DMXLocalInputInfo::mapOptimize</a>, <a class="el" href="struct__DMXEventMap.html#aafea1b880cf1b362c7e600b4285c08c3">_DMXEventMap::remote</a>, and <a class="el" href="struct__DMXEventMap.html#a6f3626351411d6a9555a16969761ec17">_DMXEventMap::server</a>.</p>
112
113</div>
114</div>
115<a class="anchor" id="abc1a46c87c4acd45e4e5f79370be6169"></a><!-- doxytag: member="dmxmap.c::dmxMapLookup" ref="abc1a46c87c4acd45e4e5f79370be6169" args="(DMXLocalInputInfoPtr dmxLocal, int remoteEvent)" -->
116<div class="memitem">
117<div class="memproto">
118      <table class="memname">
119        <tr>
120          <td class="memname">int dmxMapLookup </td>
121          <td>(</td>
122          <td class="paramtype"><a class="el" href="struct__DMXLocalInputInfo.html">DMXLocalInputInfoPtr</a>&#160;</td>
123          <td class="paramname"><em>dmxLocal</em>, </td>
124        </tr>
125        <tr>
126          <td class="paramkey"></td>
127          <td></td>
128          <td class="paramtype">int&#160;</td>
129          <td class="paramname"><em>remoteEvent</em>&#160;</td>
130        </tr>
131        <tr>
132          <td></td>
133          <td>)</td>
134          <td></td><td></td>
135        </tr>
136      </table>
137</div>
138<div class="memdoc">
139<p>Lookup a mapping for <em>remoteEvent</em>. The <em>remoteEvent</em> is the type returned from the remote server. The return value is that which was passed into <a class="el" href="dmxmap_8h.html#ada5a28e0c746708e0f5c45e9e193d907">dmxMapInsert</a> (i.e., a value from the XI_* list in include/extensions/XIproto.h). If a mapping is not available, -1 is returned. </p>
140
141<p>References <a class="el" href="dmxinputinit_8h.html#a13002c58c62fa0d9c65076f22c4df452">DMX_MAP_ENTRIES</a>, <a class="el" href="dmxinputinit_8h.html#a51a3f23fde19e452c34d472758710b90">DMX_MAP_MASK</a>, <a class="el" href="struct__DMXLocalInputInfo.html#af8ea073e34c4e927f7f887603aaba17d">_DMXLocalInputInfo::map</a>, <a class="el" href="struct__DMXLocalInputInfo.html#a5595cf8656f17bceb30699a6d215afa5">_DMXLocalInputInfo::mapOptimize</a>, <a class="el" href="struct__DMXEventMap.html#aafea1b880cf1b362c7e600b4285c08c3">_DMXEventMap::remote</a>, and <a class="el" href="struct__DMXEventMap.html#a6f3626351411d6a9555a16969761ec17">_DMXEventMap::server</a>.</p>
142
143<p>Referenced by <a class="el" href="dmxevents_8c.html#ae0083a2b1547708473cbc75ebf0006ae">dmxTranslateAndEnqueueExtEvent()</a>.</p>
144
145</div>
146</div>
147</div>
148</div>
149  <div id="nav-path" class="navpath">
150    <ul>
151      <li class="navelem"><a class="el" href="dmxmap_8c.html">dmxmap.c</a>      </li>
152    <hr>
153    <address>
154      <small>
155        Generated June 29, 2004 for <a
156        href="http://dmx.sourceforge.net">Distributed Multihead X</a> by
157        <a href="http://www.doxygen.org/index.html">doxygen</a>
158        1.3.4.
159      </small>
160    </addres>
161    </hr>
162  </body>
163</html>
164