Project

General

Profile

Statistics
| Revision:

root / branches / wireless / docs / libwireless / html / group__wireless.html @ 1581

History | View | Annotate | Download (26.5 KB)

1
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
3
<title>Colony: Wireless</title>
4
<link href="tabs.css" rel="stylesheet" type="text/css">
5
<link href="doxygen.css" rel="stylesheet" type="text/css">
6
</head><body>
7
<!-- Generated by Doxygen 1.5.8 -->
8
<div class="navigation" id="top">
9
  <div class="tabs">
10
    <ul>
11
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
12
      <li><a href="modules.html"><span>Modules</span></a></li>
13
      <li><a href="files.html"><span>Files</span></a></li>
14
    </ul>
15
  </div>
16
</div>
17
<div class="contents">
18
<h1>Wireless</h1>Interface with the wireless library.  
19
<a href="#_details">More...</a>
20
<p>
21
<table border="0" cellpadding="0" cellspacing="0">
22
<tr><td></td></tr>
23
<tr><td colspan="2"><br><h2>Modules</h2></td></tr>
24
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wl__defines.html">Public Constants</a></td></tr>
25

    
26
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wl__functions.html">Public API Functions</a></td></tr>
27

    
28
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wl__error.html">Error Codes</a></td></tr>
29

    
30
<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
31
<tr><td class="memItemLeft" nowrap align="right" valign="top">int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wireless.html#g6a8d6179b1fe27f762937f0b47af2009">wl_init</a> (void)</td></tr>
32

    
33
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Initialize wireless.  <a href="#g6a8d6179b1fe27f762937f0b47af2009"></a><br></td></tr>
34
<tr><td class="memItemLeft" nowrap align="right" valign="top">int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wireless.html#g223f437c2bc8ab8a3ac2e0e06841120f">wl_terminate</a> (void)</td></tr>
35

    
36
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Terminate wireless.  <a href="#g223f437c2bc8ab8a3ac2e0e06841120f"></a><br></td></tr>
37
<tr><td class="memItemLeft" nowrap align="right" valign="top">int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wireless.html#g8af34a6265a5d6af3a1525bb51e61d54">wl_register_handler</a> (uint8_t group, void(*func)(void), uint8_t priority)</td></tr>
38

    
39
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Function to register new packet handlers (for non-default groups only).  <a href="#g8af34a6265a5d6af3a1525bb51e61d54"></a><br></td></tr>
40
<tr><td class="memItemLeft" nowrap align="right" valign="top">int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wireless.html#ga5a965e3443e4b2b60243225c50ecca7">wl_get</a> (char *data, uint8_t length)</td></tr>
41

    
42
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The main receive function. Dispatches packets for registered handlers and returns next basic packet if available.  <a href="#ga5a965e3443e4b2b60243225c50ecca7"></a><br></td></tr>
43
<tr><td class="memItemLeft" nowrap align="right" valign="top">int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wireless.html#ge2509e2b6bc61faa26d87b1d87881817">wl_get_basic</a> (char *data, uint8_t length)</td></tr>
44

    
45
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the next basic packet if available.  <a href="#ge2509e2b6bc61faa26d87b1d87881817"></a><br></td></tr>
46
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ge91c1e1940dfbbd063fdcfb86049c64a"></a><!-- doxytag: member="wireless::wl_dispatch" ref="ge91c1e1940dfbbd063fdcfb86049c64a" args="(void)" -->
47
int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wireless.html#ge91c1e1940dfbbd063fdcfb86049c64a">wl_dispatch</a> (void)</td></tr>
48

    
49
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Dispatches packets for registered handlers. <br></td></tr>
50
<tr><td class="memItemLeft" nowrap align="right" valign="top">int16_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wireless.html#gf0c80262c96d3410bf0f1266871ffe3e">wl_send</a> (char *data, uint8_t length, uint8_t group, uint8_t scope, uint16_t dest, uint8_t mode)</td></tr>
51

    
52
<tr><td class="memItemLeft" nowrap align="right" valign="top">int16_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wireless.html#g48e2d69b71010e23ca5c7b2de595ae4f">wl_send_global</a> (char *data, uint8_t length, uint8_t group)</td></tr>
53

    
54
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Wrapper for core send function that will send a global packet across the current channel.  <a href="#g48e2d69b71010e23ca5c7b2de595ae4f"></a><br></td></tr>
55
<tr><td class="memItemLeft" nowrap align="right" valign="top">int16_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wireless.html#gaef3438cea00f6f3d3de16d54ec33d51">wl_send_pan</a> (char *data, uint8_t length, uint8_t group)</td></tr>
56

    
57
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Wrapper for core send function that will send a packet across the current channel on the current pan.  <a href="#gaef3438cea00f6f3d3de16d54ec33d51"></a><br></td></tr>
58
<tr><td class="memItemLeft" nowrap align="right" valign="top">int16_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wireless.html#g4a728d521deae8f12b9d40a62027600b">wl_send_robot</a> (char *data, uint8_t length, uint8_t group, uint16_t dest, uint8_t mode)</td></tr>
59

    
60
<tr><td class="memItemLeft" nowrap align="right" valign="top">int16_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wireless.html#g461b4558be666fefb9bf41edfd5ea500">wl_send_basic</a> (char *data, uint8_t length)</td></tr>
61

    
62
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default (i.e. basic) send wrapper.  <a href="#g461b4558be666fefb9bf41edfd5ea500"></a><br></td></tr>
63
<tr><td class="memItemLeft" nowrap align="right" valign="top">int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wireless.html#g11aeeac54834f0357794ae60a7513acf">wl_ack_error</a> (void)</td></tr>
64

    
65
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of acknowledgment errors.  <a href="#g11aeeac54834f0357794ae60a7513acf"></a><br></td></tr>
66
<tr><td class="memItemLeft" nowrap align="right" valign="top">int8_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wireless.html#ga364aa4d9cc8c789f05401e8adf44785">wl_ack_check</a> (uint8_t packet)</td></tr>
67

    
68
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Checks a specific packet for the acknowledgement status.  <a href="#ga364aa4d9cc8c789f05401e8adf44785"></a><br></td></tr>
69
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__wireless.html#g62e126abfcd382ec02524dd2f45a8a7b">wl_ack_reset</a> (void)</td></tr>
70

    
71
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Resets acknowledgement statistics back to zero.  <a href="#g62e126abfcd382ec02524dd2f45a8a7b"></a><br></td></tr>
72
</table>
73
<hr><a name="_details"></a><h2>Detailed Description</h2>
74
Interface with the wireless library. <hr><h2>Function Documentation</h2>
75
<a class="anchor" name="ga364aa4d9cc8c789f05401e8adf44785"></a><!-- doxytag: member="wireless_send.c::wl_ack_check" ref="ga364aa4d9cc8c789f05401e8adf44785" args="(uint8_t packet)" -->
76
<div class="memitem">
77
<div class="memproto">
78
      <table class="memname">
79
        <tr>
80
          <td class="memname">int8_t wl_ack_check           </td>
81
          <td>(</td>
82
          <td class="paramtype">uint8_t&nbsp;</td>
83
          <td class="paramname"> <em>packet</em>          </td>
84
          <td>&nbsp;)&nbsp;</td>
85
          <td></td>
86
        </tr>
87
      </table>
88
</div>
89
<div class="memdoc">
90

    
91
<p>
92
acknowledgement error check check if a specific packet has been lost note: buffer will overflow ever 255 packets<p>
93
<dl compact><dt><b>Parameters:</b></dt><dd>
94
  <table border="0" cellspacing="2" cellpadding="0">
95
    <tr><td valign="top"></td><td valign="top"><em>packet</em>&nbsp;</td><td>number</td></tr>
96
  </table>
97
</dl>
98
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0=still sending,1=ack received,-1=ack failure </dd></dl>
99

    
100
</div>
101
</div><p>
102
<a class="anchor" name="g11aeeac54834f0357794ae60a7513acf"></a><!-- doxytag: member="wireless_send.c::wl_ack_error" ref="g11aeeac54834f0357794ae60a7513acf" args="(void)" -->
103
<div class="memitem">
104
<div class="memproto">
105
      <table class="memname">
106
        <tr>
107
          <td class="memname">int8_t wl_ack_error           </td>
108
          <td>(</td>
109
          <td class="paramtype">void&nbsp;</td>
110
          <td class="paramname">          </td>
111
          <td>&nbsp;)&nbsp;</td>
112
          <td></td>
113
        </tr>
114
      </table>
115
</div>
116
<div class="memdoc">
117

    
118
<p>
119
acknowledgment error check if any of the packets you have sent have been lost.<p>
120
note that all other error checking will be handled by library, so your user behavior won't have to worry about it<p>
121
<dl class="return" compact><dt><b>Returns:</b></dt><dd>the # of packets lost (up to 255) </dd></dl>
122

    
123
</div>
124
</div><p>
125
<a class="anchor" name="g62e126abfcd382ec02524dd2f45a8a7b"></a><!-- doxytag: member="wireless_send.c::wl_ack_reset" ref="g62e126abfcd382ec02524dd2f45a8a7b" args="(void)" -->
126
<div class="memitem">
127
<div class="memproto">
128
      <table class="memname">
129
        <tr>
130
          <td class="memname">void wl_ack_reset           </td>
131
          <td>(</td>
132
          <td class="paramtype">void&nbsp;</td>
133
          <td class="paramname">          </td>
134
          <td>&nbsp;)&nbsp;</td>
135
          <td></td>
136
        </tr>
137
      </table>
138
</div>
139
<div class="memdoc">
140

    
141
<p>
142
acknowledgement reset reset the acknowledgement buffer 
143
</div>
144
</div><p>
145
<a class="anchor" name="ga5a965e3443e4b2b60243225c50ecca7"></a><!-- doxytag: member="wireless_receive.c::wl_get" ref="ga5a965e3443e4b2b60243225c50ecca7" args="(char *data, uint8_t length)" -->
146
<div class="memitem">
147
<div class="memproto">
148
      <table class="memname">
149
        <tr>
150
          <td class="memname">int8_t wl_get           </td>
151
          <td>(</td>
152
          <td class="paramtype">char *&nbsp;</td>
153
          <td class="paramname"> <em>data</em>, </td>
154
        </tr>
155
        <tr>
156
          <td class="paramkey"></td>
157
          <td></td>
158
          <td class="paramtype">uint8_t&nbsp;</td>
159
          <td class="paramname"> <em>length</em></td><td>&nbsp;</td>
160
        </tr>
161
        <tr>
162
          <td></td>
163
          <td>)</td>
164
          <td></td><td></td><td></td>
165
        </tr>
166
      </table>
167
</div>
168
<div class="memdoc">
169

    
170
<p>
171
the main receive function (similar to wl_do)<p>
172
when called, this function will receive the next packet on the default packet group it will also dispatch registered packet handler functions for any other packet groups it has received<p>
173
<dl compact><dt><b>Parameters:</b></dt><dd>
174
  <table border="0" cellspacing="2" cellpadding="0">
175
    <tr><td valign="top"></td><td valign="top"><em>data</em>&nbsp;</td><td>an already-initialized array to store the default group packet data in </td></tr>
176
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>the length of the initialized data array</td></tr>
177
  </table>
178
</dl>
179
<dl class="return" compact><dt><b>Returns:</b></dt><dd>the length of the used portion of data array or error (&lt;0) </dd></dl>
180

    
181
</div>
182
</div><p>
183
<a class="anchor" name="ge2509e2b6bc61faa26d87b1d87881817"></a><!-- doxytag: member="wireless_receive.c::wl_get_basic" ref="ge2509e2b6bc61faa26d87b1d87881817" args="(char *data, uint8_t length)" -->
184
<div class="memitem">
185
<div class="memproto">
186
      <table class="memname">
187
        <tr>
188
          <td class="memname">int8_t wl_get_basic           </td>
189
          <td>(</td>
190
          <td class="paramtype">char *&nbsp;</td>
191
          <td class="paramname"> <em>data</em>, </td>
192
        </tr>
193
        <tr>
194
          <td class="paramkey"></td>
195
          <td></td>
196
          <td class="paramtype">uint8_t&nbsp;</td>
197
          <td class="paramname"> <em>length</em></td><td>&nbsp;</td>
198
        </tr>
199
        <tr>
200
          <td></td>
201
          <td>)</td>
202
          <td></td><td></td><td></td>
203
        </tr>
204
      </table>
205
</div>
206
<div class="memdoc">
207

    
208
<p>
209
function to receive only packets on the default group this function is only meant to receive packets sent using <a class="el" href="group__wl__functions.html#ga8fb657e4d3bf7cb396f36e99fdd01a0" title="Default (i.e. basic) send wrapper.">wl_send_basic()</a><p>
210
<dl compact><dt><b>Parameters:</b></dt><dd>
211
  <table border="0" cellspacing="2" cellpadding="0">
212
    <tr><td valign="top"></td><td valign="top"><em>data</em>&nbsp;</td><td>an already-initialized array to store the default group packet data in </td></tr>
213
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>the length of the initialized data array</td></tr>
214
  </table>
215
</dl>
216
<dl class="return" compact><dt><b>Returns:</b></dt><dd>the length of the used portion of data array or error (&lt;0) </dd></dl>
217

    
218
</div>
219
</div><p>
220
<a class="anchor" name="g6a8d6179b1fe27f762937f0b47af2009"></a><!-- doxytag: member="wireless.c::wl_init" ref="g6a8d6179b1fe27f762937f0b47af2009" args="(void)" -->
221
<div class="memitem">
222
<div class="memproto">
223
      <table class="memname">
224
        <tr>
225
          <td class="memname">int8_t wl_init           </td>
226
          <td>(</td>
227
          <td class="paramtype">void&nbsp;</td>
228
          <td class="paramname">          </td>
229
          <td>&nbsp;)&nbsp;</td>
230
          <td></td>
231
        </tr>
232
      </table>
233
</div>
234
<div class="memdoc">
235

    
236
<p>
237
initialization function: set up xbee communication and packet handler infrastructure<p>
238
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 on success, or error code </dd></dl>
239

    
240
</div>
241
</div><p>
242
<a class="anchor" name="g8af34a6265a5d6af3a1525bb51e61d54"></a><!-- doxytag: member="wireless.c::wl_register_handler" ref="g8af34a6265a5d6af3a1525bb51e61d54" args="(uint8_t group, void(*func)(void), uint8_t priority)" -->
243
<div class="memitem">
244
<div class="memproto">
245
      <table class="memname">
246
        <tr>
247
          <td class="memname">int8_t wl_register_handler           </td>
248
          <td>(</td>
249
          <td class="paramtype">uint8_t&nbsp;</td>
250
          <td class="paramname"> <em>group</em>, </td>
251
        </tr>
252
        <tr>
253
          <td class="paramkey"></td>
254
          <td></td>
255
          <td class="paramtype">void(*)(void)&nbsp;</td>
256
          <td class="paramname"> <em>func</em>, </td>
257
        </tr>
258
        <tr>
259
          <td class="paramkey"></td>
260
          <td></td>
261
          <td class="paramtype">uint8_t&nbsp;</td>
262
          <td class="paramname"> <em>priority</em></td><td>&nbsp;</td>
263
        </tr>
264
        <tr>
265
          <td></td>
266
          <td>)</td>
267
          <td></td><td></td><td></td>
268
        </tr>
269
      </table>
270
</div>
271
<div class="memdoc">
272

    
273
<p>
274
function to register new packet handlers (for non-default groups only)<p>
275
<dl compact><dt><b>Parameters:</b></dt><dd>
276
  <table border="0" cellspacing="2" cellpadding="0">
277
    <tr><td valign="top"></td><td valign="top"><em>group</em>&nbsp;</td><td>the packet group number of the packets to handle with this function </td></tr>
278
    <tr><td valign="top"></td><td valign="top"><em>func</em>&nbsp;</td><td>the function pointer to the user-specified packet handler </td></tr>
279
    <tr><td valign="top"></td><td valign="top"><em>priority</em>&nbsp;</td><td>flag to set the priority of the function handler</td></tr>
280
  </table>
281
</dl>
282
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 on success, or error code </dd></dl>
283

    
284
</div>
285
</div><p>
286
<a class="anchor" name="gf0c80262c96d3410bf0f1266871ffe3e"></a><!-- doxytag: member="wireless_send.c::wl_send" ref="gf0c80262c96d3410bf0f1266871ffe3e" args="(char *data, uint8_t length, uint8_t group, uint8_t scope, uint16_t dest, uint8_t mode)" -->
287
<div class="memitem">
288
<div class="memproto">
289
      <table class="memname">
290
        <tr>
291
          <td class="memname">int16_t wl_send           </td>
292
          <td>(</td>
293
          <td class="paramtype">char *&nbsp;</td>
294
          <td class="paramname"> <em>data</em>, </td>
295
        </tr>
296
        <tr>
297
          <td class="paramkey"></td>
298
          <td></td>
299
          <td class="paramtype">uint8_t&nbsp;</td>
300
          <td class="paramname"> <em>length</em>, </td>
301
        </tr>
302
        <tr>
303
          <td class="paramkey"></td>
304
          <td></td>
305
          <td class="paramtype">uint8_t&nbsp;</td>
306
          <td class="paramname"> <em>group</em>, </td>
307
        </tr>
308
        <tr>
309
          <td class="paramkey"></td>
310
          <td></td>
311
          <td class="paramtype">uint8_t&nbsp;</td>
312
          <td class="paramname"> <em>scope</em>, </td>
313
        </tr>
314
        <tr>
315
          <td class="paramkey"></td>
316
          <td></td>
317
          <td class="paramtype">uint16_t&nbsp;</td>
318
          <td class="paramname"> <em>dest</em>, </td>
319
        </tr>
320
        <tr>
321
          <td class="paramkey"></td>
322
          <td></td>
323
          <td class="paramtype">uint8_t&nbsp;</td>
324
          <td class="paramname"> <em>mode</em></td><td>&nbsp;</td>
325
        </tr>
326
        <tr>
327
          <td></td>
328
          <td>)</td>
329
          <td></td><td></td><td></td>
330
        </tr>
331
      </table>
332
</div>
333
<div class="memdoc">
334

    
335
<p>
336
The core send function. This will take all possible arguments and send all types of packets.<p>
337
<dl compact><dt><b>Parameters:</b></dt><dd>
338
  <table border="0" cellspacing="2" cellpadding="0">
339
    <tr><td valign="top"></td><td valign="top"><em>data</em>&nbsp;</td><td>pointer to the byte array of data to be included in the packet </td></tr>
340
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>the length of the data array </td></tr>
341
    <tr><td valign="top"></td><td valign="top"><em>group</em>&nbsp;</td><td>the packet group of the packet </td></tr>
342
    <tr><td valign="top"></td><td valign="top"><em>scope</em>&nbsp;</td><td>flag for sending global packet or your current PAN </td></tr>
343
    <tr><td valign="top"></td><td valign="top"><em>dest</em>&nbsp;</td><td>robot ID (for robot to robot packet) </td></tr>
344
    <tr><td valign="top"></td><td valign="top"><em>mode</em>&nbsp;</td><td>flag for using FAST or RELIABLE sending</td></tr>
345
  </table>
346
</dl>
347
<dl class="return" compact><dt><b>Returns:</b></dt><dd>positive packet number for tracking acks, or error code (TBD) </dd></dl>
348

    
349
</div>
350
</div><p>
351
<a class="anchor" name="g461b4558be666fefb9bf41edfd5ea500"></a><!-- doxytag: member="wireless_send.c::wl_send_basic" ref="g461b4558be666fefb9bf41edfd5ea500" args="(char *data, uint8_t length)" -->
352
<div class="memitem">
353
<div class="memproto">
354
      <table class="memname">
355
        <tr>
356
          <td class="memname">int16_t wl_send_basic           </td>
357
          <td>(</td>
358
          <td class="paramtype">char *&nbsp;</td>
359
          <td class="paramname"> <em>data</em>, </td>
360
        </tr>
361
        <tr>
362
          <td class="paramkey"></td>
363
          <td></td>
364
          <td class="paramtype">uint8_t&nbsp;</td>
365
          <td class="paramname"> <em>length</em></td><td>&nbsp;</td>
366
        </tr>
367
        <tr>
368
          <td></td>
369
          <td>)</td>
370
          <td></td><td></td><td></td>
371
        </tr>
372
      </table>
373
</div>
374
<div class="memdoc">
375

    
376
<p>
377
Default (i.e. basic) send wrapper.<p>
378
<dl compact><dt><b>Parameters:</b></dt><dd>
379
  <table border="0" cellspacing="2" cellpadding="0">
380
    <tr><td valign="top"></td><td valign="top"><em>data</em>&nbsp;</td><td>pointer to the byte array of data to be included in the packet </td></tr>
381
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>the length of the data array</td></tr>
382
  </table>
383
</dl>
384
<dl class="return" compact><dt><b>Returns:</b></dt><dd>positive packet number for tracking acks, or error code (TBD) </dd></dl>
385

    
386
</div>
387
</div><p>
388
<a class="anchor" name="g48e2d69b71010e23ca5c7b2de595ae4f"></a><!-- doxytag: member="wireless_send.c::wl_send_global" ref="g48e2d69b71010e23ca5c7b2de595ae4f" args="(char *data, uint8_t length, uint8_t group)" -->
389
<div class="memitem">
390
<div class="memproto">
391
      <table class="memname">
392
        <tr>
393
          <td class="memname">int16_t wl_send_global           </td>
394
          <td>(</td>
395
          <td class="paramtype">char *&nbsp;</td>
396
          <td class="paramname"> <em>data</em>, </td>
397
        </tr>
398
        <tr>
399
          <td class="paramkey"></td>
400
          <td></td>
401
          <td class="paramtype">uint8_t&nbsp;</td>
402
          <td class="paramname"> <em>length</em>, </td>
403
        </tr>
404
        <tr>
405
          <td class="paramkey"></td>
406
          <td></td>
407
          <td class="paramtype">uint8_t&nbsp;</td>
408
          <td class="paramname"> <em>group</em></td><td>&nbsp;</td>
409
        </tr>
410
        <tr>
411
          <td></td>
412
          <td>)</td>
413
          <td></td><td></td><td></td>
414
        </tr>
415
      </table>
416
</div>
417
<div class="memdoc">
418

    
419
<p>
420
Wrapper for core send function that will send a global packet across the current channel.<p>
421
<dl compact><dt><b>Parameters:</b></dt><dd>
422
  <table border="0" cellspacing="2" cellpadding="0">
423
    <tr><td valign="top"></td><td valign="top"><em>data</em>&nbsp;</td><td>pointer to the byte array of data to be included in the packet </td></tr>
424
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>the length of the data array </td></tr>
425
    <tr><td valign="top"></td><td valign="top"><em>group</em>&nbsp;</td><td>the packet group of the packet</td></tr>
426
  </table>
427
</dl>
428
<dl class="return" compact><dt><b>Returns:</b></dt><dd>positive packet number for tracking acks, or error code (TBD) </dd></dl>
429

    
430
</div>
431
</div><p>
432
<a class="anchor" name="gaef3438cea00f6f3d3de16d54ec33d51"></a><!-- doxytag: member="wireless_send.c::wl_send_pan" ref="gaef3438cea00f6f3d3de16d54ec33d51" args="(char *data, uint8_t length, uint8_t group)" -->
433
<div class="memitem">
434
<div class="memproto">
435
      <table class="memname">
436
        <tr>
437
          <td class="memname">int16_t wl_send_pan           </td>
438
          <td>(</td>
439
          <td class="paramtype">char *&nbsp;</td>
440
          <td class="paramname"> <em>data</em>, </td>
441
        </tr>
442
        <tr>
443
          <td class="paramkey"></td>
444
          <td></td>
445
          <td class="paramtype">uint8_t&nbsp;</td>
446
          <td class="paramname"> <em>length</em>, </td>
447
        </tr>
448
        <tr>
449
          <td class="paramkey"></td>
450
          <td></td>
451
          <td class="paramtype">uint8_t&nbsp;</td>
452
          <td class="paramname"> <em>group</em></td><td>&nbsp;</td>
453
        </tr>
454
        <tr>
455
          <td></td>
456
          <td>)</td>
457
          <td></td><td></td><td></td>
458
        </tr>
459
      </table>
460
</div>
461
<div class="memdoc">
462

    
463
<p>
464
Wrapper for core send function that will send a packet across the current channel on the current pan.<p>
465
<dl compact><dt><b>Parameters:</b></dt><dd>
466
  <table border="0" cellspacing="2" cellpadding="0">
467
    <tr><td valign="top"></td><td valign="top"><em>data</em>&nbsp;</td><td>pointer to the byte array of data to be included in the packet </td></tr>
468
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>the length of the data array </td></tr>
469
    <tr><td valign="top"></td><td valign="top"><em>group</em>&nbsp;</td><td>the packet group of the packet</td></tr>
470
  </table>
471
</dl>
472
<dl class="return" compact><dt><b>Returns:</b></dt><dd>positive packet number for tracking acks, or error code (TBD) </dd></dl>
473

    
474
</div>
475
</div><p>
476
<a class="anchor" name="g4a728d521deae8f12b9d40a62027600b"></a><!-- doxytag: member="wireless_send.c::wl_send_robot" ref="g4a728d521deae8f12b9d40a62027600b" args="(char *data, uint8_t length, uint8_t group, uint16_t dest, uint8_t mode)" -->
477
<div class="memitem">
478
<div class="memproto">
479
      <table class="memname">
480
        <tr>
481
          <td class="memname">int16_t wl_send_robot           </td>
482
          <td>(</td>
483
          <td class="paramtype">char *&nbsp;</td>
484
          <td class="paramname"> <em>data</em>, </td>
485
        </tr>
486
        <tr>
487
          <td class="paramkey"></td>
488
          <td></td>
489
          <td class="paramtype">uint8_t&nbsp;</td>
490
          <td class="paramname"> <em>length</em>, </td>
491
        </tr>
492
        <tr>
493
          <td class="paramkey"></td>
494
          <td></td>
495
          <td class="paramtype">uint8_t&nbsp;</td>
496
          <td class="paramname"> <em>group</em>, </td>
497
        </tr>
498
        <tr>
499
          <td class="paramkey"></td>
500
          <td></td>
501
          <td class="paramtype">uint16_t&nbsp;</td>
502
          <td class="paramname"> <em>dest</em>, </td>
503
        </tr>
504
        <tr>
505
          <td class="paramkey"></td>
506
          <td></td>
507
          <td class="paramtype">uint8_t&nbsp;</td>
508
          <td class="paramname"> <em>mode</em></td><td>&nbsp;</td>
509
        </tr>
510
        <tr>
511
          <td></td>
512
          <td>)</td>
513
          <td></td><td></td><td></td>
514
        </tr>
515
      </table>
516
</div>
517
<div class="memdoc">
518

    
519
<p>
520
Wrapper for core send function that will send a packet across the current channel to a specific robot.<p>
521
<dl compact><dt><b>Parameters:</b></dt><dd>
522
  <table border="0" cellspacing="2" cellpadding="0">
523
    <tr><td valign="top"></td><td valign="top"><em>data</em>&nbsp;</td><td>pointer to the byte array of data to be included in the packet </td></tr>
524
    <tr><td valign="top"></td><td valign="top"><em>length</em>&nbsp;</td><td>the length of the data array </td></tr>
525
    <tr><td valign="top"></td><td valign="top"><em>group</em>&nbsp;</td><td>the packet group of the packet </td></tr>
526
    <tr><td valign="top"></td><td valign="top"><em>dest</em>&nbsp;</td><td>robot ID (for robot to robot packet) </td></tr>
527
    <tr><td valign="top"></td><td valign="top"><em>mode</em>&nbsp;</td><td>flag for using FAST or RELIABLE sending</td></tr>
528
  </table>
529
</dl>
530
<dl class="return" compact><dt><b>Returns:</b></dt><dd>positive packet number for tracking acks, or error code (TBD) </dd></dl>
531

    
532
</div>
533
</div><p>
534
<a class="anchor" name="g223f437c2bc8ab8a3ac2e0e06841120f"></a><!-- doxytag: member="wireless.c::wl_terminate" ref="g223f437c2bc8ab8a3ac2e0e06841120f" args="(void)" -->
535
<div class="memitem">
536
<div class="memproto">
537
      <table class="memname">
538
        <tr>
539
          <td class="memname">int8_t wl_terminate           </td>
540
          <td>(</td>
541
          <td class="paramtype">void&nbsp;</td>
542
          <td class="paramname">          </td>
543
          <td>&nbsp;)&nbsp;</td>
544
          <td></td>
545
        </tr>
546
      </table>
547
</div>
548
<div class="memdoc">
549

    
550
<p>
551
termination function: end xbee communication, deregister all handlers, etc<p>
552
<dl class="return" compact><dt><b>Returns:</b></dt><dd>0 on success, or error code </dd></dl>
553

    
554
</div>
555
</div><p>
556
</div>
557
<hr size="1"><address style="text-align: right;"><small>Generated on Tue Nov 24 12:45:55 2009 for Colony by&nbsp;
558
<a href="http://www.doxygen.org/index.html">
559
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.8 </small></address>
560
</body>
561
</html>