Statistics
| Revision:

root / trunk / docs / libwireless / group__tokenring.html @ 1427

History | View | Annotate | Download (23.6 KB)

1
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2
<html xmlns="http://www.w3.org/1999/xhtml">
3
<head>
4
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
5
<title>libwireless: Token Ring</title>
6
<link href="tabs.css" rel="stylesheet" type="text/css"/>
7
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
8
</head>
9
<body>
10
<!-- Generated by Doxygen 1.6.1 -->
11
<div class="navigation" id="top">
12
  <div class="tabs">
13
    <ul>
14
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
15
      <li><a href="modules.html"><span>Modules</span></a></li>
16
      <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
17
      <li><a href="files.html"><span>Files</span></a></li>
18
    </ul>
19
  </div>
20
</div>
21
<div class="contents">
22
<h1>Token Ring</h1>
23
<p>Wireless library token ring implementation.  
24
<a href="#_details">More...</a></p>
25
<table border="0" cellpadding="0" cellspacing="0">
26
<tr><td colspan="2"><h2>Functions</h2></td></tr>
27
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__tokenring.html#ga00fb5cca21a50d39aa1e82fdc679ca44">wl_token_ring_register</a> (void)</td></tr>
28
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Register the token ring group with the wireless library.  <a href="#ga00fb5cca21a50d39aa1e82fdc679ca44"></a><br/></td></tr>
29
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__tokenring.html#gade3dd682b6a757bab6ce4cbc9c518f8e">wl_token_ring_unregister</a> (void)</td></tr>
30
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Unregister the token ring group with the wirelss library.  <a href="#gade3dd682b6a757bab6ce4cbc9c518f8e"></a><br/></td></tr>
31
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__tokenring.html#ga0c407d5c215a97d58c67006bcc6e53ce">wl_token_ring_set_bom_functions</a> (void(*on_function)(void), void(*off_function)(void), int(*max_bom_function)(void))</td></tr>
32
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the functions called to turn the bom on and off.  <a href="#ga0c407d5c215a97d58c67006bcc6e53ce"></a><br/></td></tr>
33
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__tokenring.html#gae1012b6d6c1c46b26a6c6da7e4ec7c88">wl_token_ring_join</a> (void)</td></tr>
34
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Join the token ring.  <a href="#gae1012b6d6c1c46b26a6c6da7e4ec7c88"></a><br/></td></tr>
35
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__tokenring.html#ga6c2dd8742e100f63d4fb002707d1e85a">wl_token_ring_leave</a> (void)</td></tr>
36
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Leave the token ring.  <a href="#ga6c2dd8742e100f63d4fb002707d1e85a"></a><br/></td></tr>
37
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__tokenring.html#ga0c61bb8892aa5513706e00cd8ce5ca8b">wl_token_get_robots_in_ring</a> (void)</td></tr>
38
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return the number of robots in the token ring.  <a href="#ga0c61bb8892aa5513706e00cd8ce5ca8b"></a><br/></td></tr>
39
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__tokenring.html#ga14e005f0b9582eca7e3585f247c4cd72">wl_token_is_robot_in_ring</a> (int robot)</td></tr>
40
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return whether a given robot is in the token ring.  <a href="#ga14e005f0b9582eca7e3585f247c4cd72"></a><br/></td></tr>
41
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__tokenring.html#ga37ab9fb00e9eef273b4d0fcda81a2620">wl_token_iterator_begin</a> (void)</td></tr>
42
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Begin iterating through robots in the token ring.  <a href="#ga37ab9fb00e9eef273b4d0fcda81a2620"></a><br/></td></tr>
43
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__tokenring.html#gabd7dc40ee796a67e1160b2b2b8e7d02f">wl_token_iterator_has_next</a> (void)</td></tr>
44
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns whether there are more robots to iterate through.  <a href="#gabd7dc40ee796a67e1160b2b2b8e7d02f"></a><br/></td></tr>
45
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__tokenring.html#gad9196324178877770d8ffc91d40893c3">wl_token_iterator_next</a> (void)</td></tr>
46
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the ID of the next robot in the token ring.  <a href="#gad9196324178877770d8ffc91d40893c3"></a><br/></td></tr>
47
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__tokenring.html#gab4afd4b8e034d22d415f3c4a42a652fc">wl_token_get_sensor_reading</a> (int source, int dest)</td></tr>
48
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return the latest BOM reading between two robots.  <a href="#gab4afd4b8e034d22d415f3c4a42a652fc"></a><br/></td></tr>
49
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__tokenring.html#ga1938c1d79dd9438dcd413d6d26372877">wl_token_get_my_sensor_reading</a> (int dest)</td></tr>
50
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return the latest BOM reading between us and another robot.  <a href="#ga1938c1d79dd9438dcd413d6d26372877"></a><br/></td></tr>
51
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__tokenring.html#gaf0d311d4feae71afc8bcb0b8c8e6ba57">wl_token_get_num_robots</a> (void)</td></tr>
52
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return the number of robots in the sensor matrix.  <a href="#gaf0d311d4feae71afc8bcb0b8c8e6ba57"></a><br/></td></tr>
53
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__tokenring.html#ga5fe1508968d450a970b0d5417a06431d">wl_token_get_matrix_size</a> (void)</td></tr>
54
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return the number of non-null elements in the sensor matrix.  <a href="#ga5fe1508968d450a970b0d5417a06431d"></a><br/></td></tr>
55
</table>
56
<hr/><a name="_details"></a><h2>Detailed Description</h2>
57
<p>Wireless library token ring implementation. </p>
58
<p>This packet group is used to form a token ring, which keeps track of the relative directions of the robots from one another. </p>
59
<hr/><h2>Function Documentation</h2>
60
<a class="anchor" id="ga5fe1508968d450a970b0d5417a06431d"></a><!-- doxytag: member="wl_token_ring.h::wl_token_get_matrix_size" ref="ga5fe1508968d450a970b0d5417a06431d" args="(void)" -->
61
<div class="memitem">
62
<div class="memproto">
63
      <table class="memname">
64
        <tr>
65
          <td class="memname">int wl_token_get_matrix_size </td>
66
          <td>(</td>
67
          <td class="paramtype">void&nbsp;</td>
68
          <td class="paramname"></td>
69
          <td>&nbsp;)&nbsp;</td>
70
          <td></td>
71
        </tr>
72
      </table>
73
</div>
74
<div class="memdoc">
75
76
<p>Return the number of non-null elements in the sensor matrix. </p>
77
<p>Returns the number of robots in the sensor matrix.</p>
78
<dl class="return"><dt><b>Returns:</b></dt><dd>the number of robots in the sensor matrix </dd></dl>
79
80
<p>References <a class="el" href="sensor__matrix_8c_source.html#l00159">sensor_matrix_get_size()</a>.</p>
81
82
</div>
83
</div>
84
<a class="anchor" id="ga1938c1d79dd9438dcd413d6d26372877"></a><!-- doxytag: member="wl_token_ring.h::wl_token_get_my_sensor_reading" ref="ga1938c1d79dd9438dcd413d6d26372877" args="(int dest)" -->
85
<div class="memitem">
86
<div class="memproto">
87
      <table class="memname">
88
        <tr>
89
          <td class="memname">int wl_token_get_my_sensor_reading </td>
90
          <td>(</td>
91
          <td class="paramtype">int&nbsp;</td>
92
          <td class="paramname"> <em>dest</em></td>
93
          <td>&nbsp;)&nbsp;</td>
94
          <td></td>
95
        </tr>
96
      </table>
97
</div>
98
<div class="memdoc">
99
100
<p>Return the latest BOM reading between us and another robot. </p>
101
<p>Returns the BOM reading we have for robot dest.</p>
102
<dl><dt><b>Parameters:</b></dt><dd>
103
  <table border="0" cellspacing="2" cellpadding="0">
104
    <tr><td valign="top"></td><td valign="top"><em>dest</em>&nbsp;</td><td>the robot whose relative location is returned</td></tr>
105
  </table>
106
  </dd>
107
</dl>
108
<dl class="return"><dt><b>Returns:</b></dt><dd>a BOM reading from us to robot dest, in the range 0-15, or -1 if it is unkown </dd></dl>
109
110
<p>References <a class="el" href="wireless_8c_source.html#l00235">wl_get_xbee_id()</a>, and <a class="el" href="wl__token__ring_8c_source.html#l00347">wl_token_get_sensor_reading()</a>.</p>
111
112
</div>
113
</div>
114
<a class="anchor" id="gaf0d311d4feae71afc8bcb0b8c8e6ba57"></a><!-- doxytag: member="wl_token_ring.h::wl_token_get_num_robots" ref="gaf0d311d4feae71afc8bcb0b8c8e6ba57" args="(void)" -->
115
<div class="memitem">
116
<div class="memproto">
117
      <table class="memname">
118
        <tr>
119
          <td class="memname">int wl_token_get_num_robots </td>
120
          <td>(</td>
121
          <td class="paramtype">void&nbsp;</td>
122
          <td class="paramname"></td>
123
          <td>&nbsp;)&nbsp;</td>
124
          <td></td>
125
        </tr>
126
      </table>
127
</div>
128
<div class="memdoc">
129
130
<p>Return the number of robots in the sensor matrix. </p>
131
<p>Returns the number of robots currently in the token ring.</p>
132
<dl class="return"><dt><b>Returns:</b></dt><dd>the number of robots in the token ring </dd></dl>
133
134
<p>References <a class="el" href="sensor__matrix_8c_source.html#l00148">sensor_matrix_get_joined()</a>.</p>
135
136
</div>
137
</div>
138
<a class="anchor" id="ga0c61bb8892aa5513706e00cd8ce5ca8b"></a><!-- doxytag: member="wl_token_ring.h::wl_token_get_robots_in_ring" ref="ga0c61bb8892aa5513706e00cd8ce5ca8b" args="(void)" -->
139
<div class="memitem">
140
<div class="memproto">
141
      <table class="memname">
142
        <tr>
143
          <td class="memname">int wl_token_get_robots_in_ring </td>
144
          <td>(</td>
145
          <td class="paramtype">void&nbsp;</td>
146
          <td class="paramname"></td>
147
          <td>&nbsp;)&nbsp;</td>
148
          <td></td>
149
        </tr>
150
      </table>
151
</div>
152
<div class="memdoc">
153
154
<p>Return the number of robots in the token ring. </p>
155
<p>Returns the number of robots in the token ring.</p>
156
<dl class="return"><dt><b>Returns:</b></dt><dd>the number of robots in the token ring </dd></dl>
157
158
<p>References <a class="el" href="sensor__matrix_8c_source.html#l00148">sensor_matrix_get_joined()</a>.</p>
159
160
</div>
161
</div>
162
<a class="anchor" id="gab4afd4b8e034d22d415f3c4a42a652fc"></a><!-- doxytag: member="wl_token_ring.h::wl_token_get_sensor_reading" ref="gab4afd4b8e034d22d415f3c4a42a652fc" args="(int source, int dest)" -->
163
<div class="memitem">
164
<div class="memproto">
165
      <table class="memname">
166
        <tr>
167
          <td class="memname">int wl_token_get_sensor_reading </td>
168
          <td>(</td>
169
          <td class="paramtype">int&nbsp;</td>
170
          <td class="paramname"> <em>source</em>, </td>
171
        </tr>
172
        <tr>
173
          <td class="paramkey"></td>
174
          <td></td>
175
          <td class="paramtype">int&nbsp;</td>
176
          <td class="paramname"> <em>dest</em></td><td>&nbsp;</td>
177
        </tr>
178
        <tr>
179
          <td></td>
180
          <td>)</td>
181
          <td></td><td></td><td></td>
182
        </tr>
183
      </table>
184
</div>
185
<div class="memdoc">
186
187
<p>Return the latest BOM reading between two robots. </p>
188
<p>Returns the BOM reading robot source has for robot dest.</p>
189
<dl><dt><b>Parameters:</b></dt><dd>
190
  <table border="0" cellspacing="2" cellpadding="0">
191
    <tr><td valign="top"></td><td valign="top"><em>source</em>&nbsp;</td><td>the robot that made the BOM reading </td></tr>
192
    <tr><td valign="top"></td><td valign="top"><em>dest</em>&nbsp;</td><td>the robot whose relative location is returned</td></tr>
193
  </table>
194
  </dd>
195
</dl>
196
<dl class="return"><dt><b>Returns:</b></dt><dd>a BOM reading from robot source to robot dest, in the range 0-15, or -1 if it is unknown </dd></dl>
197
198
<p>References <a class="el" href="sensor__matrix_8c_source.html#l00093">sensor_matrix_get_reading()</a>, <a class="el" href="wireless_8c_source.html#l00235">wl_get_xbee_id()</a>, and <a class="el" href="wl__token__ring_8c_source.html#l00394">wl_token_is_robot_in_ring()</a>.</p>
199
200
<p>Referenced by <a class="el" href="wl__token__ring_8c_source.html#l00367">wl_token_get_my_sensor_reading()</a>.</p>
201
202
</div>
203
</div>
204
<a class="anchor" id="ga14e005f0b9582eca7e3585f247c4cd72"></a><!-- doxytag: member="wl_token_ring.h::wl_token_is_robot_in_ring" ref="ga14e005f0b9582eca7e3585f247c4cd72" args="(int robot)" -->
205
<div class="memitem">
206
<div class="memproto">
207
      <table class="memname">
208
        <tr>
209
          <td class="memname">int wl_token_is_robot_in_ring </td>
210
          <td>(</td>
211
          <td class="paramtype">int&nbsp;</td>
212
          <td class="paramname"> <em>robot</em></td>
213
          <td>&nbsp;)&nbsp;</td>
214
          <td></td>
215
        </tr>
216
      </table>
217
</div>
218
<div class="memdoc">
219
220
<p>Return whether a given robot is in the token ring. </p>
221
<p>Returns true if the specified robot is in the token ring, false otherwise.</p>
222
<dl><dt><b>Parameters:</b></dt><dd>
223
  <table border="0" cellspacing="2" cellpadding="0">
224
    <tr><td valign="top"></td><td valign="top"><em>robot</em>&nbsp;</td><td>the robot to check for whether it is in the token ring </td></tr>
225
  </table>
226
  </dd>
227
</dl>
228
<dl class="return"><dt><b>Returns:</b></dt><dd>nonzero if the robot is in the token ring, zero otherwise </dd></dl>
229
230
<p>References <a class="el" href="sensor__matrix_8c_source.html#l00134">sensor_matrix_get_in_ring()</a>.</p>
231
232
<p>Referenced by <a class="el" href="wl__token__ring_8c_source.html#l00347">wl_token_get_sensor_reading()</a>.</p>
233
234
</div>
235
</div>
236
<a class="anchor" id="ga37ab9fb00e9eef273b4d0fcda81a2620"></a><!-- doxytag: member="wl_token_ring.h::wl_token_iterator_begin" ref="ga37ab9fb00e9eef273b4d0fcda81a2620" args="(void)" -->
237
<div class="memitem">
238
<div class="memproto">
239
      <table class="memname">
240
        <tr>
241
          <td class="memname">void wl_token_iterator_begin </td>
242
          <td>(</td>
243
          <td class="paramtype">void&nbsp;</td>
244
          <td class="paramname"></td>
245
          <td>&nbsp;)&nbsp;</td>
246
          <td></td>
247
        </tr>
248
      </table>
249
</div>
250
<div class="memdoc">
251
252
<p>Begin iterating through robots in the token ring. </p>
253
<p>Begins iterating through the robots in the token ring.</p>
254
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group__tokenring.html#gabd7dc40ee796a67e1160b2b2b8e7d02f" title="Returns whether there are more robots to iterate through.">wl_token_iterator_has_next</a>, <a class="el" href="group__tokenring.html#gad9196324178877770d8ffc91d40893c3" title="Returns the ID of the next robot in the token ring.">wl_token_iterator_next</a> </dd></dl>
255
256
<p>References <a class="el" href="sensor__matrix_8c_source.html#l00134">sensor_matrix_get_in_ring()</a>, and <a class="el" href="sensor__matrix_8c_source.html#l00159">sensor_matrix_get_size()</a>.</p>
257
258
</div>
259
</div>
260
<a class="anchor" id="gabd7dc40ee796a67e1160b2b2b8e7d02f"></a><!-- doxytag: member="wl_token_ring.h::wl_token_iterator_has_next" ref="gabd7dc40ee796a67e1160b2b2b8e7d02f" args="(void)" -->
261
<div class="memitem">
262
<div class="memproto">
263
      <table class="memname">
264
        <tr>
265
          <td class="memname">int wl_token_iterator_has_next </td>
266
          <td>(</td>
267
          <td class="paramtype">void&nbsp;</td>
268
          <td class="paramname"></td>
269
          <td>&nbsp;)&nbsp;</td>
270
          <td></td>
271
        </tr>
272
      </table>
273
</div>
274
<div class="memdoc">
275
276
<p>Returns whether there are more robots to iterate through. </p>
277
<p>Returns true if there are more robots in the token ring to iterate through, and false otherwise.</p>
278
<dl class="return"><dt><b>Returns:</b></dt><dd>nonzero if there are more robots to iterate through, zero otherwise</dd></dl>
279
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group__tokenring.html#ga37ab9fb00e9eef273b4d0fcda81a2620" title="Begin iterating through robots in the token ring.">wl_token_iterator_begin</a>, <a class="el" href="group__tokenring.html#gad9196324178877770d8ffc91d40893c3" title="Returns the ID of the next robot in the token ring.">wl_token_iterator_next</a> </dd></dl>
280
281
</div>
282
</div>
283
<a class="anchor" id="gad9196324178877770d8ffc91d40893c3"></a><!-- doxytag: member="wl_token_ring.h::wl_token_iterator_next" ref="gad9196324178877770d8ffc91d40893c3" args="(void)" -->
284
<div class="memitem">
285
<div class="memproto">
286
      <table class="memname">
287
        <tr>
288
          <td class="memname">int wl_token_iterator_next </td>
289
          <td>(</td>
290
          <td class="paramtype">void&nbsp;</td>
291
          <td class="paramname"></td>
292
          <td>&nbsp;)&nbsp;</td>
293
          <td></td>
294
        </tr>
295
      </table>
296
</div>
297
<div class="memdoc">
298
299
<p>Returns the ID of the next robot in the token ring. </p>
300
<p>Returns the next robot ID in the token ring.</p>
301
<dl class="return"><dt><b>Returns:</b></dt><dd>the next robot ID in the token ring, or -1 if none exists</dd></dl>
302
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="group__tokenring.html#ga37ab9fb00e9eef273b4d0fcda81a2620" title="Begin iterating through robots in the token ring.">wl_token_iterator_begin</a>, <a class="el" href="group__tokenring.html#gabd7dc40ee796a67e1160b2b2b8e7d02f" title="Returns whether there are more robots to iterate through.">wl_token_iterator_has_next</a> </dd></dl>
303
304
<p>References <a class="el" href="sensor__matrix_8c_source.html#l00134">sensor_matrix_get_in_ring()</a>, and <a class="el" href="sensor__matrix_8c_source.html#l00159">sensor_matrix_get_size()</a>.</p>
305
306
</div>
307
</div>
308
<a class="anchor" id="gae1012b6d6c1c46b26a6c6da7e4ec7c88"></a><!-- doxytag: member="wl_token_ring.h::wl_token_ring_join" ref="gae1012b6d6c1c46b26a6c6da7e4ec7c88" args="(void)" -->
309
<div class="memitem">
310
<div class="memproto">
311
      <table class="memname">
312
        <tr>
313
          <td class="memname">int wl_token_ring_join </td>
314
          <td>(</td>
315
          <td class="paramtype">void&nbsp;</td>
316
          <td class="paramname"></td>
317
          <td>&nbsp;)&nbsp;</td>
318
          <td></td>
319
        </tr>
320
      </table>
321
</div>
322
<div class="memdoc">
323
324
<p>Join the token ring. </p>
325
<p>Causes the robot to join an existing token ring, or create one if no token ring exists. The token ring uses global and robot to robot packets, and does not rely on any PAN. </p>
326
327
<p>References <a class="el" href="wireless_8c_source.html#l00285">wl_send_global_packet()</a>.</p>
328
329
</div>
330
</div>
331
<a class="anchor" id="ga6c2dd8742e100f63d4fb002707d1e85a"></a><!-- doxytag: member="wl_token_ring.h::wl_token_ring_leave" ref="ga6c2dd8742e100f63d4fb002707d1e85a" args="(void)" -->
332
<div class="memitem">
333
<div class="memproto">
334
      <table class="memname">
335
        <tr>
336
          <td class="memname">void wl_token_ring_leave </td>
337
          <td>(</td>
338
          <td class="paramtype">void&nbsp;</td>
339
          <td class="paramname"></td>
340
          <td>&nbsp;)&nbsp;</td>
341
          <td></td>
342
        </tr>
343
      </table>
344
</div>
345
<div class="memdoc">
346
347
<p>Leave the token ring. </p>
348
<p>Causes the robot to leave the token ring. The robot stops alerting others of its location, but continues storing the locations of other robots. </p>
349
350
</div>
351
</div>
352
<a class="anchor" id="ga00fb5cca21a50d39aa1e82fdc679ca44"></a><!-- doxytag: member="wl_token_ring.h::wl_token_ring_register" ref="ga00fb5cca21a50d39aa1e82fdc679ca44" args="(void)" -->
353
<div class="memitem">
354
<div class="memproto">
355
      <table class="memname">
356
        <tr>
357
          <td class="memname">int wl_token_ring_register </td>
358
          <td>(</td>
359
          <td class="paramtype">void&nbsp;</td>
360
          <td class="paramname"></td>
361
          <td>&nbsp;)&nbsp;</td>
362
          <td></td>
363
        </tr>
364
      </table>
365
</div>
366
<div class="memdoc">
367
368
<p>Register the token ring group with the wireless library. </p>
369
<p>Initialize the token ring packet group and register it with the wireless library. The robot will not join a token ring. </p>
370
371
<p>References <a class="el" href="sensor__matrix_8c_source.html#l00049">sensor_matrix_create()</a>, <a class="el" href="sensor__matrix_8c_source.html#l00111">sensor_matrix_set_in_ring()</a>, <a class="el" href="wireless_8c_source.html#l00235">wl_get_xbee_id()</a>, and <a class="el" href="wireless_8c_source.html#l00342">wl_register_packet_group()</a>.</p>
372
373
</div>
374
</div>
375
<a class="anchor" id="ga0c407d5c215a97d58c67006bcc6e53ce"></a><!-- doxytag: member="wl_token_ring.h::wl_token_ring_set_bom_functions" ref="ga0c407d5c215a97d58c67006bcc6e53ce" args="(void(*on_function)(void), void(*off_function)(void), int(*max_bom_function)(void))" -->
376
<div class="memitem">
377
<div class="memproto">
378
      <table class="memname">
379
        <tr>
380
          <td class="memname">void wl_token_ring_set_bom_functions </td>
381
          <td>(</td>
382
          <td class="paramtype">void(*)(void)&nbsp;</td>
383
          <td class="paramname"> <em>on_function</em>, </td>
384
        </tr>
385
        <tr>
386
          <td class="paramkey"></td>
387
          <td></td>
388
          <td class="paramtype">void(*)(void)&nbsp;</td>
389
          <td class="paramname"> <em>off_function</em>, </td>
390
        </tr>
391
        <tr>
392
          <td class="paramkey"></td>
393
          <td></td>
394
          <td class="paramtype">int(*)(void)&nbsp;</td>
395
          <td class="paramname"> <em>max_bom_function</em></td><td>&nbsp;</td>
396
        </tr>
397
        <tr>
398
          <td></td>
399
          <td>)</td>
400
          <td></td><td></td><td></td>
401
        </tr>
402
      </table>
403
</div>
404
<div class="memdoc">
405
406
<p>Set the functions called to turn the bom on and off. </p>
407
<p>Sets the functions that are called when the BOM ought to be turned on or off. This could be used for things such as charging stations, which have multiple BOMs.</p>
408
<dl><dt><b>Parameters:</b></dt><dd>
409
  <table border="0" cellspacing="2" cellpadding="0">
410
    <tr><td valign="top"></td><td valign="top"><em>on_function</em>&nbsp;</td><td>the function to be called when the BOM should be turned on </td></tr>
411
    <tr><td valign="top"></td><td valign="top"><em>off_function</em>&nbsp;</td><td>the function to be called when the BOM should be turned off </td></tr>
412
    <tr><td valign="top"></td><td valign="top"><em>max_bom_function</em>&nbsp;</td><td>the function to be called when a measurement of the maximum BOM reading is needed. </td></tr>
413
  </table>
414
  </dd>
415
</dl>
416
417
</div>
418
</div>
419
<a class="anchor" id="gade3dd682b6a757bab6ce4cbc9c518f8e"></a><!-- doxytag: member="wl_token_ring.h::wl_token_ring_unregister" ref="gade3dd682b6a757bab6ce4cbc9c518f8e" args="(void)" -->
420
<div class="memitem">
421
<div class="memproto">
422
      <table class="memname">
423
        <tr>
424
          <td class="memname">void wl_token_ring_unregister </td>
425
          <td>(</td>
426
          <td class="paramtype">void&nbsp;</td>
427
          <td class="paramname"></td>
428
          <td>&nbsp;)&nbsp;</td>
429
          <td></td>
430
        </tr>
431
      </table>
432
</div>
433
<div class="memdoc">
434
435
<p>Unregister the token ring group with the wirelss library. </p>
436
<p>Removes the packet group from the wireless library. </p>
437
438
<p>References <a class="el" href="wireless_8c_source.html#l00362">wl_unregister_packet_group()</a>.</p>
439
440
</div>
441
</div>
442
</div>
443
<hr size="1"/><address style="text-align: right;"><small>Generated on Wed Sep 23 12:51:07 2009 for libwireless by&nbsp;
444
<a href="http://www.doxygen.org/index.html">
445
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>
446
</body>
447
</html>