BaseStationP.RadioSend -> Radio;
BaseStationP.RadioReceive -> Radio.Receive;
+ BaseStationP.RadioSnoop -> Radio.Snoop;
BaseStationP.RadioPacket -> Radio;
BaseStationP.RadioAMPacket -> Radio;
interface AMSend as RadioSend[am_id_t id];
interface Receive as RadioReceive[am_id_t id];
+ interface Receive as RadioSnoop[am_id_t id];
interface Packet as RadioPacket;
interface AMPacket as RadioAMPacket;
event void RadioControl.stopDone(error_t error) {}
uint8_t count = 0;
+
+ message_t* receive(message_t* msg, void* payload, uint8_t len);
+
+ event message_t *RadioSnoop.receive[am_id_t id](message_t *msg,
+ void *payload,
+ uint8_t len) {
+ return receive(msg, payload, len);
+ }
+
event message_t *RadioReceive.receive[am_id_t id](message_t *msg,
void *payload,
uint8_t len) {
+ return receive(msg, payload, len);
+ }
+
+ message_t* receive(message_t *msg, void *payload, uint8_t len) {
message_t *ret = msg;
atomic {