LEFT | RIGHT |
1 /* -*- Mode: C++; c-file-style: "gnu"; indent-tabs-mode:nil; -*- */ | 1 /* -*- Mode: C++; c-file-style: "gnu"; indent-tabs-mode:nil; -*- */ |
2 /* | 2 /* |
3 * Copyright (c) 2011 Centre Tecnologic de Telecomunicacions de Catalunya (CTTC) | 3 * Copyright (c) 2011 Centre Tecnologic de Telecomunicacions de Catalunya (CTTC) |
4 * | 4 * |
5 * This program is free software; you can redistribute it and/or modify | 5 * This program is free software; you can redistribute it and/or modify |
6 * it under the terms of the GNU General Public License version 2 as | 6 * it under the terms of the GNU General Public License version 2 as |
7 * published by the Free Software Foundation; | 7 * published by the Free Software Foundation; |
8 * | 8 * |
9 * This program is distributed in the hope that it will be useful, | 9 * This program is distributed in the hope that it will be useful, |
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of | 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
(...skipping 1114 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1125 Time holDelay (0); | 1125 Time holDelay (0); |
1126 uint32_t queueSize = 0; | 1126 uint32_t queueSize = 0; |
1127 | 1127 |
1128 if (! m_txBuffer.empty ()) | 1128 if (! m_txBuffer.empty ()) |
1129 { | 1129 { |
1130 RlcTag holTimeTag; | 1130 RlcTag holTimeTag; |
1131 NS_ASSERT_MSG (m_txBuffer.front ()->PeekPacketTag (holTimeTag), "RlcTag is
missing"); | 1131 NS_ASSERT_MSG (m_txBuffer.front ()->PeekPacketTag (holTimeTag), "RlcTag is
missing"); |
1132 m_txBuffer.front ()->PeekPacketTag (holTimeTag); | 1132 m_txBuffer.front ()->PeekPacketTag (holTimeTag); |
1133 holDelay = Simulator::Now () - holTimeTag.GetSenderTimestamp (); | 1133 holDelay = Simulator::Now () - holTimeTag.GetSenderTimestamp (); |
1134 | 1134 |
1135 queueSize = m_txBufferSize + 2 * m_txBuffer.size (); // Data in tx queue +
estimated headers size | 1135 queueSize = static_cast<uint32_t>(m_txBufferSize + 2 * m_txBuffer.size ())
; // Data in tx queue + estimated headers size |
1136 } | 1136 } |
1137 | 1137 |
1138 LteMacSapProvider::ReportBufferStatusParameters r; | 1138 LteMacSapProvider::ReportBufferStatusParameters r; |
1139 r.rnti = m_rnti; | 1139 r.rnti = m_rnti; |
1140 r.lcid = m_lcid; | 1140 r.lcid = m_lcid; |
1141 r.txQueueSize = queueSize; | 1141 r.txQueueSize = queueSize; |
1142 r.txQueueHolDelay = static_cast<uint16_t>(holDelay.GetMilliSeconds ()); | 1142 r.txQueueHolDelay = static_cast<uint16_t>(holDelay.GetMilliSeconds ()); |
1143 r.retxQueueSize = 0; | 1143 r.retxQueueSize = 0; |
1144 r.retxQueueHolDelay = 0; | 1144 r.retxQueueHolDelay = 0; |
1145 r.statusPduSize = 0; | 1145 r.statusPduSize = 0; |
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1194 NS_LOG_LOGIC ("RBS Timer expires"); | 1194 NS_LOG_LOGIC ("RBS Timer expires"); |
1195 | 1195 |
1196 if (! m_txBuffer.empty ()) | 1196 if (! m_txBuffer.empty ()) |
1197 { | 1197 { |
1198 DoReportBufferStatus (); | 1198 DoReportBufferStatus (); |
1199 m_rbsTimer = Simulator::Schedule (MilliSeconds (10), &LteRlcUm::ExpireRbsT
imer, this); | 1199 m_rbsTimer = Simulator::Schedule (MilliSeconds (10), &LteRlcUm::ExpireRbsT
imer, this); |
1200 } | 1200 } |
1201 } | 1201 } |
1202 | 1202 |
1203 } // namespace ns3 | 1203 } // namespace ns3 |
LEFT | RIGHT |