]> oss.titaniummirror.com Git - tinyos-2.x.git/blobdiff - tos/lib/mac/tkn154/CoordBroadcastP.nc
- re-designed the radio driver interfaces, restructured/improved the CC2420 radio...
[tinyos-2.x.git] / tos / lib / mac / tkn154 / CoordBroadcastP.nc
index 3046a12de71935c74ea76d7c39f65c2e34f159a6..43bc855490574e5d692fc3f9a4e038a7fc755f84 100644 (file)
@@ -51,7 +51,7 @@ module CoordBroadcastP
     interface FrameTxNow as CapTransmitNow;
     interface ResourceTransfer as TokenToCap;
     interface ResourceTransferred as TokenTransferred;
-    interface GetNow<bool> as BeaconFramePendingBit;
+    interface SuperframeStructure as OutgoingSF;
     interface Leds;
   }
 }
@@ -90,7 +90,7 @@ implementation
   command ieee154_status_t RealignmentTx.transmit(ieee154_txframe_t *frame)
   {
     atomic {
-      if (!m_realignmentFrame){
+      if (!m_realignmentFrame) {
         m_realignmentFrame = frame;
         return IEEE154_SUCCESS;
       } else
@@ -109,15 +109,13 @@ implementation
   async event void TokenTransferred.transferred()
   {
     // CAP has started - are there any broadcast frames to be transmitted?
-    if (call BeaconFramePendingBit.getNow()){
+    if (call OutgoingSF.isBroadcastPending()) {
       ieee154_txframe_t *broadcastFrame = m_realignmentFrame;
       if (broadcastFrame == NULL)
         broadcastFrame = m_queueHead;
-      if (broadcastFrame){
-        m_lock = TRUE;
-        call CapTransmitNow.transmitNow(broadcastFrame);
-      } else
-        call Leds.led0On(); // internal error!
+      ASSERT(broadcastFrame != NULL);
+      m_lock = TRUE;
+      call CapTransmitNow.transmitNow(broadcastFrame);
     }
     call TokenToCap.transfer();
   }
@@ -133,10 +131,10 @@ implementation
   {
     if (!m_lock)
       return;
-    if (m_transmittedFrame == m_realignmentFrame){
+    if (m_transmittedFrame == m_realignmentFrame) {
       m_realignmentFrame = NULL;
       signal RealignmentTx.transmitDone(m_transmittedFrame, m_status);
-    } else if (m_transmittedFrame == m_queueHead){
+    } else if (m_transmittedFrame == m_queueHead) {
       call Queue.dequeue();
       m_queueHead = call Queue.head();
       signal BroadcastDataFrame.transmitDone(m_transmittedFrame, m_status);