]> oss.titaniummirror.com Git - tinyos-2.x.git/blob - tos/lib/tossim/SimpleRadioModel.nc
Formally indicate support/sdk/c/sf/bootstrap is a shell script.
[tinyos-2.x.git] / tos / lib / tossim / SimpleRadioModel.nc
1 // $Id$
2 /*
3 * "Copyright (c) 2005 Stanford University. All rights reserved.
4 *
5 * Permission to use, copy, modify, and distribute this software and
6 * its documentation for any purpose, without fee, and without written
7 * agreement is hereby granted, provided that the above copyright
8 * notice, the following two paragraphs and the author appear in all
9 * copies of this software.
10 *
11 * IN NO EVENT SHALL STANFORD UNIVERSITY BE LIABLE TO ANY PARTY FOR
12 * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
13 * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN
14 * IF STANFORD UNIVERSITY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
15 * DAMAGE.
16 *
17 * STANFORD UNIVERSITY SPECIFICALLY DISCLAIMS ANY WARRANTIES,
18 * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
19 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE
20 * PROVIDED HEREUNDER IS ON AN "AS IS" BASIS, AND STANFORD UNIVERSITY
21 * HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES,
22 * ENHANCEMENTS, OR MODIFICATIONS."
23 */
24
25 /**
26 * The interface to a simple radio model, which has per-link bit error
27 * probabilities and assumes complete interferences (the old TOSSIM
28 * story).
29 *
30 * @author Philip Levis
31 * @date December 2 2005
32 */
33
34
35 #include "TinyError.h"
36
37 interface SimpleRadioModel {
38 command void putOnAirTo(int dest, message_t* msg, bool ack, sim_time_t endTime);
39 command void putOnAirToAll(message_t* msg, bool ack, sim_time_t endTime);
40 command bool clearChannel();
41
42 event void acked(message_t* msg);
43
44 event void receive(message_t* msg);
45 }