}
}
implementation {
+ components ActiveMessageC;
components BlockingActiveMessageC as AM;
BlockingReceive = AM.BlockingReceive[amId];
+ AM.Receive[amId] -> ActiveMessageC.Receive[amId];
Packet = AM;
AMPacket = AM;
}
implementation {
+ components ActiveMessageC;
components BlockingActiveMessageC as AM;
BlockingAMSend = AM.BlockingAMSend[AMId];
+ AM.AMSend[AMId] -> ActiveMessageC.AMSend[AMId];
Packet = AM;
AMPacket = AM;
}
}
implementation {
+ components ActiveMessageC;
components BlockingActiveMessageC as AM;
BlockingReceive = AM.BlockingSnoop[amId];
+ AM.Snoop[amId] -> ActiveMessageC.Snoop[amId];
Packet = AM;
AMPacket = AM;
interface AMPacket;
interface PacketAcknowledgements;
}
+ uses {
+ interface Receive as Receive[uint8_t id];
+ interface Receive as Snoop[uint8_t id];
+ interface AMSend as AMSend[uint8_t id];
+ }
}
implementation {
components ActiveMessageC as AM;
BlockingAMSend = AMSenderP;
BlockingStdControlC.SplitControl -> AM;
- AMReceiverP.Receive -> AM.Receive;
- AMSnooperP.Snoop -> AM.Snoop;
- AMSenderP.AMSend -> AM.AMSend;
+ Receive = AMReceiverP.Receive;
+ Snoop = AMSnooperP.Snoop;
+ AMSend = AMSenderP.AMSend;
Packet = AM;
AMPacket = AM;