*
*/
-#include "802_15_4.h"
module SerialPacketInfo802_15_4P {
provides interface SerialPacketInfo as Info;
}
implementation {
+#ifdef PLATFORM_IRIS
+ enum {
+ HEADER_SIZE = sizeof(rf230packet_header_t),
+ FOOTER_SIZE = sizeof(rf230packet_footer_t),
+ };
+#else
+ enum {
+ HEADER_SIZE = sizeof(cc2420_header_t),
+ FOOTER_SIZE = sizeof(cc2420_footer_t),
+ };
+#endif
+
async command uint8_t Info.offset() {
- return sizeof(TOSRadioHeader) - sizeof(TOS802Header);
+ return sizeof(message_header_t)-HEADER_SIZE;
}
async command uint8_t Info.dataLinkLength(message_t* msg, uint8_t upperLen) {
- return upperLen + sizeof(TOS802Header) + sizeof(TOS802Footer);
+ return upperLen + HEADER_SIZE + FOOTER_SIZE;
}
async command uint8_t Info.upperLength(message_t* msg, uint8_t dataLinkLen) {
- return dataLinkLen - (sizeof(TOS802Header) + sizeof(TOS802Footer));
+ return dataLinkLen - (HEADER_SIZE + FOOTER_SIZE);
}
}