diff --git a/src/lte/model/lte-harq-phy.cc b/src/lte/model/lte-harq-phy.cc index d6997a3d9..4e515e946 100644 --- a/src/lte/model/lte-harq-phy.cc +++ b/src/lte/model/lte-harq-phy.cc @@ -127,7 +127,7 @@ LteHarqPhy::GetHarqProcessInfoUl (uint16_t rnti, uint8_t harqProcId) void -LteHarqPhy::UpdateDlHarqProcessStatus (uint8_t id, uint8_t layer, double mi, uint16_t infoBits, uint16_t codeBits) +LteHarqPhy::UpdateDlHarqProcessStatus (uint8_t id, uint8_t layer, double mi, uint16_t infoBytes, uint16_t codeBytes) { NS_LOG_FUNCTION (this << (uint16_t) id << mi); if (m_miDlHarqProcessesInfoMap.at (layer).at (id).size () == 3) // MAX HARQ RETX @@ -137,8 +137,8 @@ LteHarqPhy::UpdateDlHarqProcessStatus (uint8_t id, uint8_t layer, double mi, uin } HarqProcessInfoElement_t el; el.m_mi = mi; - el.m_infoBits = infoBits; - el.m_codeBits = codeBits; + el.m_infoBits = infoBytes * 8; + el.m_codeBits = codeBytes * 8; m_miDlHarqProcessesInfoMap.at (layer).at (id).push_back (el); } @@ -156,7 +156,7 @@ LteHarqPhy::ResetDlHarqProcessStatus (uint8_t id) void -LteHarqPhy::UpdateUlHarqProcessStatus (uint16_t rnti, double mi, uint16_t infoBits, uint16_t codeBits) +LteHarqPhy::UpdateUlHarqProcessStatus (uint16_t rnti, double mi, uint16_t infoBytes, uint16_t codeBytes) { NS_LOG_FUNCTION (this << rnti << mi); std::map >::iterator it; @@ -168,8 +168,8 @@ LteHarqPhy::UpdateUlHarqProcessStatus (uint16_t rnti, double mi, uint16_t infoBi harqList.resize (8); HarqProcessInfoElement_t el; el.m_mi = mi; - el.m_infoBits = infoBits; - el.m_codeBits = codeBits; + el.m_infoBits = infoBytes * 8; + el.m_codeBits = codeBytes * 8; harqList.at (7).push_back (el); m_miUlHarqProcessesInfoMap.insert (std::pair > (rnti, harqList)); } @@ -182,8 +182,8 @@ LteHarqPhy::UpdateUlHarqProcessStatus (uint16_t rnti, double mi, uint16_t infoBi } HarqProcessInfoElement_t el; el.m_mi = mi; - el.m_infoBits = infoBits; - el.m_codeBits = codeBits; + el.m_infoBits = infoBytes * 8; + el.m_codeBits = codeBytes * 8; (*it).second.at (7).push_back (el); } } diff --git a/src/lte/model/lte-harq-phy.h b/src/lte/model/lte-harq-phy.h index f121a833f..82803cf4a 100644 --- a/src/lte/model/lte-harq-phy.h +++ b/src/lte/model/lte-harq-phy.h @@ -100,8 +100,10 @@ public: * \param id the HARQ proc id * \param layer layer no. (for MIMO spatail multiplexing) * \param mi the new MI + * \param infoBytes the no. of bytes of info + * \param mi the total no. of bytes txed */ - void UpdateDlHarqProcessStatus (uint8_t id, uint8_t layer, double mi, uint16_t infoBits, uint16_t codeBits); + void UpdateDlHarqProcessStatus (uint8_t id, uint8_t layer, double mi, uint16_t infoBytes, uint16_t codeBytes); /** * \brief Reset the info associated to the decodification of an HARQ process @@ -115,8 +117,10 @@ public: * for DL (asynchronous) * \param rnti the RNTI of the transmitter * \param mi the new MI + * \param infoBytes the no. of bytes of info + * \param mi the total no. of bytes txed */ - void UpdateUlHarqProcessStatus (uint16_t rnti, double mi, uint16_t infoBits, uint16_t codeBits); + void UpdateUlHarqProcessStatus (uint16_t rnti, double mi, uint16_t infoBytes, uint16_t codeBytes); /** * \brief Reset the info associated to the decodification of an HARQ process