Project

General

Profile

Statistics
| Revision:

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

History | View | Annotate | Download (23.6 KB)

1 1425 cmar
<!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 19 bcoltin
<title>libwireless: Token Ring</title>
6 1425 cmar
<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 1380 cmar
<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 241 bcoltin
</div>
21 1380 cmar
<div class="contents">
22 1425 cmar
<h1>Token Ring</h1>
23
<p>Wireless library token ring implementation.
24
<a href="#_details">More...</a></p>
25 1380 cmar
<table border="0" cellpadding="0" cellspacing="0">
26 1425 cmar
<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 19 bcoltin
</table>
56 1425 cmar
<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 241 bcoltin
<div class="memitem">
62
<div class="memproto">
63
      <table class="memname">
64 192 bcoltin
        <tr>
65 1425 cmar
          <td class="memname">int wl_token_get_matrix_size </td>
66 241 bcoltin
          <td>(</td>
67
          <td class="paramtype">void&nbsp;</td>
68 1425 cmar
          <td class="paramname"></td>
69 241 bcoltin
          <td>&nbsp;)&nbsp;</td>
70 1380 cmar
          <td></td>
71 192 bcoltin
        </tr>
72
      </table>
73 241 bcoltin
</div>
74
<div class="memdoc">
75 192 bcoltin
76 1425 cmar
<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 241 bcoltin
80 1380 cmar
<p>References <a class="el" href="sensor__matrix_8c_source.html#l00159">sensor_matrix_get_size()</a>.</p>
81
82 241 bcoltin
</div>
83 1425 cmar
</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 241 bcoltin
<div class="memitem">
86
<div class="memproto">
87
      <table class="memname">
88 19 bcoltin
        <tr>
89 1425 cmar
          <td class="memname">int wl_token_get_my_sensor_reading </td>
90 241 bcoltin
          <td>(</td>
91
          <td class="paramtype">int&nbsp;</td>
92 1425 cmar
          <td class="paramname"> <em>dest</em></td>
93 241 bcoltin
          <td>&nbsp;)&nbsp;</td>
94 1380 cmar
          <td></td>
95 19 bcoltin
        </tr>
96
      </table>
97 241 bcoltin
</div>
98
<div class="memdoc">
99 19 bcoltin
100 1425 cmar
<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 19 bcoltin
  <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 1425 cmar
  </dd>
107 19 bcoltin
</dl>
108 1425 cmar
<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 241 bcoltin
110 1380 cmar
<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 241 bcoltin
</div>
113 1425 cmar
</div>
114
<a class="anchor" id="gaf0d311d4feae71afc8bcb0b8c8e6ba57"></a><!-- doxytag: member="wl_token_ring.h::wl_token_get_num_robots" ref="gaf0d311d4feae71afc8bcb0b8c8e6ba57" args="(void)" -->
115 241 bcoltin
<div class="memitem">
116
<div class="memproto">
117
      <table class="memname">
118 192 bcoltin
        <tr>
119 1425 cmar
          <td class="memname">int wl_token_get_num_robots </td>
120 241 bcoltin
          <td>(</td>
121
          <td class="paramtype">void&nbsp;</td>
122 1425 cmar
          <td class="paramname"></td>
123 241 bcoltin
          <td>&nbsp;)&nbsp;</td>
124 1380 cmar
          <td></td>
125 192 bcoltin
        </tr>
126
      </table>
127 241 bcoltin
</div>
128
<div class="memdoc">
129 192 bcoltin
130 1425 cmar
<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 241 bcoltin
134 1380 cmar
<p>References <a class="el" href="sensor__matrix_8c_source.html#l00148">sensor_matrix_get_joined()</a>.</p>
135
136 241 bcoltin
</div>
137 1425 cmar
</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 241 bcoltin
<div class="memitem">
140
<div class="memproto">
141
      <table class="memname">
142 52 bcoltin
        <tr>
143 1425 cmar
          <td class="memname">int wl_token_get_robots_in_ring </td>
144 241 bcoltin
          <td>(</td>
145
          <td class="paramtype">void&nbsp;</td>
146 1425 cmar
          <td class="paramname"></td>
147 241 bcoltin
          <td>&nbsp;)&nbsp;</td>
148 1380 cmar
          <td></td>
149 52 bcoltin
        </tr>
150
      </table>
151 241 bcoltin
</div>
152
<div class="memdoc">
153 52 bcoltin
154 1425 cmar
<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 241 bcoltin
158 1380 cmar
<p>References <a class="el" href="sensor__matrix_8c_source.html#l00148">sensor_matrix_get_joined()</a>.</p>
159
160 241 bcoltin
</div>
161 1425 cmar
</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 241 bcoltin
<div class="memitem">
164
<div class="memproto">
165
      <table class="memname">
166 19 bcoltin
        <tr>
167 1425 cmar
          <td class="memname">int wl_token_get_sensor_reading </td>
168 241 bcoltin
          <td>(</td>
169
          <td class="paramtype">int&nbsp;</td>
170
          <td class="paramname"> <em>source</em>, </td>
171 19 bcoltin
        </tr>
172
        <tr>
173 241 bcoltin
          <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 19 bcoltin
        </tr>
178
        <tr>
179 241 bcoltin
          <td></td>
180
          <td>)</td>
181 1380 cmar
          <td></td><td></td><td></td>
182 19 bcoltin
        </tr>
183
      </table>
184 241 bcoltin
</div>
185
<div class="memdoc">
186 19 bcoltin
187 1425 cmar
<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 19 bcoltin
  <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 1425 cmar
  </dd>
195 19 bcoltin
</dl>
196 1425 cmar
<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 241 bcoltin
198 1380 cmar
<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 241 bcoltin
</div>
203 1425 cmar
</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 241 bcoltin
<div class="memitem">
206
<div class="memproto">
207
      <table class="memname">
208 52 bcoltin
        <tr>
209 1425 cmar
          <td class="memname">int wl_token_is_robot_in_ring </td>
210 241 bcoltin
          <td>(</td>
211
          <td class="paramtype">int&nbsp;</td>
212 1425 cmar
          <td class="paramname"> <em>robot</em></td>
213 241 bcoltin
          <td>&nbsp;)&nbsp;</td>
214 1380 cmar
          <td></td>
215 52 bcoltin
        </tr>
216
      </table>
217 241 bcoltin
</div>
218
<div class="memdoc">
219 52 bcoltin
220 1425 cmar
<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 52 bcoltin
  <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 1425 cmar
  </dd>
227 52 bcoltin
</dl>
228 1425 cmar
<dl class="return"><dt><b>Returns:</b></dt><dd>nonzero if the robot is in the token ring, zero otherwise </dd></dl>
229 241 bcoltin
230 1380 cmar
<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 241 bcoltin
</div>
235 1425 cmar
</div>
236
<a class="anchor" id="ga37ab9fb00e9eef273b4d0fcda81a2620"></a><!-- doxytag: member="wl_token_ring.h::wl_token_iterator_begin" ref="ga37ab9fb00e9eef273b4d0fcda81a2620" args="(void)" -->
237 241 bcoltin
<div class="memitem">
238
<div class="memproto">
239
      <table class="memname">
240 52 bcoltin
        <tr>
241 1425 cmar
          <td class="memname">void wl_token_iterator_begin </td>
242 241 bcoltin
          <td>(</td>
243
          <td class="paramtype">void&nbsp;</td>
244 1425 cmar
          <td class="paramname"></td>
245 241 bcoltin
          <td>&nbsp;)&nbsp;</td>
246 1380 cmar
          <td></td>
247 52 bcoltin
        </tr>
248
      </table>
249 241 bcoltin
</div>
250
<div class="memdoc">
251 52 bcoltin
252 1425 cmar
<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 241 bcoltin
256 1380 cmar
<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 241 bcoltin
</div>
259 1425 cmar
</div>
260
<a class="anchor" id="gabd7dc40ee796a67e1160b2b2b8e7d02f"></a><!-- doxytag: member="wl_token_ring.h::wl_token_iterator_has_next" ref="gabd7dc40ee796a67e1160b2b2b8e7d02f" args="(void)" -->
261 241 bcoltin
<div class="memitem">
262
<div class="memproto">
263
      <table class="memname">
264 52 bcoltin
        <tr>
265 1425 cmar
          <td class="memname">int wl_token_iterator_has_next </td>
266 241 bcoltin
          <td>(</td>
267
          <td class="paramtype">void&nbsp;</td>
268 1425 cmar
          <td class="paramname"></td>
269 241 bcoltin
          <td>&nbsp;)&nbsp;</td>
270 1380 cmar
          <td></td>
271 52 bcoltin
        </tr>
272
      </table>
273 241 bcoltin
</div>
274
<div class="memdoc">
275 52 bcoltin
276 1425 cmar
<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 241 bcoltin
281
</div>
282 1425 cmar
</div>
283
<a class="anchor" id="gad9196324178877770d8ffc91d40893c3"></a><!-- doxytag: member="wl_token_ring.h::wl_token_iterator_next" ref="gad9196324178877770d8ffc91d40893c3" args="(void)" -->
284 241 bcoltin
<div class="memitem">
285
<div class="memproto">
286
      <table class="memname">
287 52 bcoltin
        <tr>
288 1425 cmar
          <td class="memname">int wl_token_iterator_next </td>
289 241 bcoltin
          <td>(</td>
290
          <td class="paramtype">void&nbsp;</td>
291 1425 cmar
          <td class="paramname"></td>
292 241 bcoltin
          <td>&nbsp;)&nbsp;</td>
293 1380 cmar
          <td></td>
294 52 bcoltin
        </tr>
295
      </table>
296 241 bcoltin
</div>
297
<div class="memdoc">
298 52 bcoltin
299 1425 cmar
<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 241 bcoltin
304 1380 cmar
<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 241 bcoltin
</div>
307 1425 cmar
</div>
308
<a class="anchor" id="gae1012b6d6c1c46b26a6c6da7e4ec7c88"></a><!-- doxytag: member="wl_token_ring.h::wl_token_ring_join" ref="gae1012b6d6c1c46b26a6c6da7e4ec7c88" args="(void)" -->
309 241 bcoltin
<div class="memitem">
310
<div class="memproto">
311
      <table class="memname">
312 19 bcoltin
        <tr>
313 1425 cmar
          <td class="memname">int wl_token_ring_join </td>
314 241 bcoltin
          <td>(</td>
315
          <td class="paramtype">void&nbsp;</td>
316 1425 cmar
          <td class="paramname"></td>
317 241 bcoltin
          <td>&nbsp;)&nbsp;</td>
318 1380 cmar
          <td></td>
319 19 bcoltin
        </tr>
320
      </table>
321 241 bcoltin
</div>
322
<div class="memdoc">
323 19 bcoltin
324 1425 cmar
<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 1380 cmar
<p>References <a class="el" href="wireless_8c_source.html#l00285">wl_send_global_packet()</a>.</p>
328
329 241 bcoltin
</div>
330 1425 cmar
</div>
331
<a class="anchor" id="ga6c2dd8742e100f63d4fb002707d1e85a"></a><!-- doxytag: member="wl_token_ring.h::wl_token_ring_leave" ref="ga6c2dd8742e100f63d4fb002707d1e85a" args="(void)" -->
332 241 bcoltin
<div class="memitem">
333
<div class="memproto">
334
      <table class="memname">
335 19 bcoltin
        <tr>
336 1425 cmar
          <td class="memname">void wl_token_ring_leave </td>
337 241 bcoltin
          <td>(</td>
338
          <td class="paramtype">void&nbsp;</td>
339 1425 cmar
          <td class="paramname"></td>
340 241 bcoltin
          <td>&nbsp;)&nbsp;</td>
341 1380 cmar
          <td></td>
342 19 bcoltin
        </tr>
343
      </table>
344 241 bcoltin
</div>
345
<div class="memdoc">
346 19 bcoltin
347 1425 cmar
<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 241 bcoltin
</div>
351 1425 cmar
</div>
352
<a class="anchor" id="ga00fb5cca21a50d39aa1e82fdc679ca44"></a><!-- doxytag: member="wl_token_ring.h::wl_token_ring_register" ref="ga00fb5cca21a50d39aa1e82fdc679ca44" args="(void)" -->
353 241 bcoltin
<div class="memitem">
354
<div class="memproto">
355
      <table class="memname">
356 19 bcoltin
        <tr>
357 1425 cmar
          <td class="memname">int wl_token_ring_register </td>
358 241 bcoltin
          <td>(</td>
359
          <td class="paramtype">void&nbsp;</td>
360 1425 cmar
          <td class="paramname"></td>
361 241 bcoltin
          <td>&nbsp;)&nbsp;</td>
362 1380 cmar
          <td></td>
363 19 bcoltin
        </tr>
364
      </table>
365 241 bcoltin
</div>
366
<div class="memdoc">
367 19 bcoltin
368 1425 cmar
<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 1380 cmar
<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 241 bcoltin
</div>
374 1425 cmar
</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 241 bcoltin
<div class="memitem">
377
<div class="memproto">
378
      <table class="memname">
379 19 bcoltin
        <tr>
380 1425 cmar
          <td class="memname">void wl_token_ring_set_bom_functions </td>
381 241 bcoltin
          <td>(</td>
382
          <td class="paramtype">void(*)(void)&nbsp;</td>
383
          <td class="paramname"> <em>on_function</em>, </td>
384 19 bcoltin
        </tr>
385
        <tr>
386 241 bcoltin
          <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 19 bcoltin
        </tr>
391
        <tr>
392 241 bcoltin
          <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 19 bcoltin
        </tr>
397
        <tr>
398 241 bcoltin
          <td></td>
399
          <td>)</td>
400 1380 cmar
          <td></td><td></td><td></td>
401 19 bcoltin
        </tr>
402
      </table>
403 241 bcoltin
</div>
404
<div class="memdoc">
405 19 bcoltin
406 1425 cmar
<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 19 bcoltin
  <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 1425 cmar
  </dd>
415 19 bcoltin
</dl>
416 241 bcoltin
417
</div>
418 1425 cmar
</div>
419
<a class="anchor" id="gade3dd682b6a757bab6ce4cbc9c518f8e"></a><!-- doxytag: member="wl_token_ring.h::wl_token_ring_unregister" ref="gade3dd682b6a757bab6ce4cbc9c518f8e" args="(void)" -->
420 241 bcoltin
<div class="memitem">
421
<div class="memproto">
422
      <table class="memname">
423 19 bcoltin
        <tr>
424 1425 cmar
          <td class="memname">void wl_token_ring_unregister </td>
425 241 bcoltin
          <td>(</td>
426
          <td class="paramtype">void&nbsp;</td>
427 1425 cmar
          <td class="paramname"></td>
428 241 bcoltin
          <td>&nbsp;)&nbsp;</td>
429 1380 cmar
          <td></td>
430 19 bcoltin
        </tr>
431
      </table>
432 241 bcoltin
</div>
433
<div class="memdoc">
434 19 bcoltin
435 1425 cmar
<p>Unregister the token ring group with the wirelss library. </p>
436
<p>Removes the packet group from the wireless library. </p>
437
438 1380 cmar
<p>References <a class="el" href="wireless_8c_source.html#l00362">wl_unregister_packet_group()</a>.</p>
439
440 241 bcoltin
</div>
441 1380 cmar
</div>
442 1425 cmar
</div>
443 1427 cmar
<hr size="1"/><address style="text-align: right;"><small>Generated on Wed Sep 23 12:51:07 2009 for libwireless by&nbsp;
444 19 bcoltin
<a href="http://www.doxygen.org/index.html">
445 1425 cmar
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>
446 19 bcoltin
</body>
447
</html>