diff -r 3ea02a8923ff src/lte/helper/lte-helper.h --- a/src/lte/helper/lte-helper.h Fri Nov 15 11:20:38 2013 +0100 +++ b/src/lte/helper/lte-helper.h Sat Nov 16 19:04:42 2013 +0200 @@ -294,7 +294,7 @@ /** * \brief Manual attachment of a UE device to the network via the closest * eNodeB (with respect to distance) among those in the set. - * \param ueDevices the set UE device to be attached + * \param ueDevice the UE device to be attached * \param enbDevices the set of eNodeB devices to be considered * * This function finds among the eNodeB set the closest eNodeB for the UE, @@ -319,7 +319,7 @@ /** * Activate a dedicated EPS bearer on a given UE device * - * \param ueDevices the set of UE devices + * \param ueDevice the UE device * \param bearer the characteristics of the bearer to be activated * \param tft the Traffic Flow Template that identifies the traffic to go on this bearer */ @@ -342,14 +342,19 @@ void AddX2Interface (Ptr enbNode1, Ptr enbNode2); /** - * Trigger an X2-based handover of a UE between two eNBs + * \brief Manually trigger an X2-based handover of a UE between two eNBs at a + * specific simulation time. + * \param hoTime when the Handover is initiated + * \param ueDev the UE that hands off, must be of the type LteUeNetDevice + * \param sourceEnbDev source eNB, must be of the type LteEnbNetDevice + * (originally the UE is attached to this eNB) + * \param targetEnbDev target eNB, must be of the type LteEnbNetDevice + * (the UE is finally connected to this eNB) * - * \param hoTime when the Handover is initiated - * \param ueDev the UE that hands off - * \param enbDev1 source eNB, originally the UE is attached to this eNB - * \param enbDev2 target eNB, the UE is finally connected to this eNB + * \warning Requires the use of EPC mode. See SetEpcHelper() method. */ - void HandoverRequest (Time hoTime, Ptr ueDev, Ptr sourceEnbDev, Ptr targetEnbDev); + void HandoverRequest (Time hoTime, Ptr ueDev, + Ptr sourceEnbDev, Ptr targetEnbDev); /** @@ -375,12 +380,15 @@ /** * * - * \param type the fading model to be used + * \param model the fading model to be used */ void SetFadingModel (std::string model); /** * set an attribute of the fading model + * + * \param n the name of the attribute + * \param v the value of the attribute */ void SetFadingModelAttribute (std::string n, const AttributeValue &v); @@ -494,10 +502,34 @@ virtual void DoInitialize (void); private: + /** + * \brief Create an eNodeB device (LteEnbNetDevice) on the given node. + * \param n the node where the device is to be installed + * \return pointer to the created device + */ Ptr InstallSingleEnbDevice (Ptr n); + + /** + * \brief Create a UE device (LteUeNetDevice) on the given node. + * \param n the node where the device is to be installed + * \return pointer to the created device + */ Ptr InstallSingleUeDevice (Ptr n); - void DoHandoverRequest (Ptr ueDev, Ptr sourceEnbDev, Ptr targetEnbDev); + /** + * \brief The actual function to trigger a manual handover. + * \param ueDev the UE that hands off, must be of the type LteUeNetDevice + * \param sourceEnbDev source eNB, must be of the type LteEnbNetDevice + * (originally the UE is attached to this eNB) + * \param targetEnbDev target eNB, must be of the type LteEnbNetDevice + * (the UE is finally connected to this eNB) + * + * This method is normally scheduled by HandoverRequest() to run at a specific + * time where a manual handover is desired by the simulation user. + */ + void DoHandoverRequest (Ptr ueDev, + Ptr sourceEnbDev, + Ptr targetEnbDev); Ptr m_downlinkChannel; Ptr m_uplinkChannel; diff -r 3ea02a8923ff src/lte/helper/lte-stats-calculator.h --- a/src/lte/helper/lte-stats-calculator.h Fri Nov 15 11:20:38 2013 +0100 +++ b/src/lte/helper/lte-stats-calculator.h Sat Nov 16 19:04:42 2013 +0200 @@ -51,6 +51,7 @@ /** * Get the name of the file where the uplink statistics will be stored. + * @return the name of the file where the uplink statistics will be stored */ std::string GetUlOutputFilename (void); @@ -63,12 +64,14 @@ /** * Get the name of the file where the downlink statistics will be stored. + * @return the name of the file where the downlink statistics will be stored */ std::string GetDlOutputFilename (void); /** * Checks if there is an already stored IMSI for the given path * @param path Path in the attribute system to check + * @return true if the path exists, false otherwise */ bool ExistsImsiPath (std::string path); @@ -82,12 +85,14 @@ /** * Retrieves the imsi information for the given path * @param path Path in the attribute system to get + * @return the IMSI associated with the given path */ uint64_t GetImsiPath (std::string path); /** * Checks if there is an already stored cell id for the given path * @param path Path in the attribute system to check + * @return true if the path exists, false otherwise */ bool ExistsCellIdPath (std::string path); @@ -101,6 +106,7 @@ /** * Retrieves the cell id information for the given path * @param path Path in the attribute system to get + * @return the cell ID associated with the given path */ uint16_t GetCellIdPath (std::string path); diff -r 3ea02a8923ff src/lte/helper/mac-stats-calculator.cc --- a/src/lte/helper/mac-stats-calculator.cc Fri Nov 15 11:20:38 2013 +0100 +++ b/src/lte/helper/mac-stats-calculator.cc Sat Nov 16 19:04:42 2013 +0200 @@ -133,9 +133,9 @@ void MacStatsCalculator::UlScheduling (uint16_t cellId, uint64_t imsi, uint32_t frameNo, - uint32_t subframeNo, uint16_t rnti,uint8_t mcs, uint16_t size) + uint32_t subframeNo, uint16_t rnti,uint8_t mcsTb, uint16_t size) { - NS_LOG_FUNCTION (this << cellId << imsi << frameNo << subframeNo << rnti << (uint32_t) mcs << size); + NS_LOG_FUNCTION (this << cellId << imsi << frameNo << subframeNo << rnti << (uint32_t) mcsTb << size); NS_LOG_INFO ("Write UL Mac Stats in " << GetUlOutputFilename ().c_str ()); std::ofstream outFile; @@ -167,7 +167,7 @@ outFile << frameNo << "\t"; outFile << subframeNo << "\t"; outFile << rnti << "\t"; - outFile << (uint32_t) mcs << "\t"; + outFile << (uint32_t) mcsTb << "\t"; outFile << size << std::endl; outFile.close (); } diff -r 3ea02a8923ff src/lte/helper/mac-stats-calculator.h --- a/src/lte/helper/mac-stats-calculator.h Fri Nov 15 11:20:38 2013 +0100 +++ b/src/lte/helper/mac-stats-calculator.h Sat Nov 16 19:04:42 2013 +0200 @@ -53,9 +53,7 @@ */ virtual ~MacStatsCalculator (); - /** - * Inherited from ns3::Object - */ + // Inherited from ns3::Object static TypeId GetTypeId (void); /** @@ -67,6 +65,7 @@ /** * Get the name of the file where the uplink statistics will be stored. + * @return the name of the file where the uplink statistics will be stored */ std::string GetUlOutputFilename (void); @@ -79,6 +78,7 @@ /** * Get the name of the file where the downlink statistics will be stored. + * @return the name of the file where the downlink statistics will be stored */ std::string GetDlOutputFilename (void); @@ -108,7 +108,7 @@ * @param sizeTb Size of transport block */ void UlScheduling (uint16_t cellId, uint64_t imsi,uint32_t frameNo, uint32_t subframeNo, - uint16_t rnti, uint8_t mcs, uint16_t sizeTb); + uint16_t rnti, uint8_t mcsTb, uint16_t sizeTb); /** diff -r 3ea02a8923ff src/lte/helper/phy-rx-stats-calculator.h --- a/src/lte/helper/phy-rx-stats-calculator.h Fri Nov 15 11:20:38 2013 +0100 +++ b/src/lte/helper/phy-rx-stats-calculator.h Sat Nov 16 19:04:42 2013 +0200 @@ -58,9 +58,7 @@ */ virtual ~PhyRxStatsCalculator (); - /** - * Inherited from ns3::Object - */ + // Inherited from ns3::Object static TypeId GetTypeId (void); /** @@ -72,6 +70,7 @@ /** * Get the name of the file where the UL RX PHY statistics will be stored. + * @return the name of the file where the UL RX PHY statistics will be stored */ std::string GetUlRxOutputFilename (void); @@ -84,40 +83,19 @@ /** * Get the name of the file where the DL RX PHY statistics will be stored. + * @return the name of the file where the DL RX PHY statistics will be stored */ std::string GetDlRxOutputFilename (void); /** * Notifies the stats calculator that an downlink reception has occurred. - * @param cellId Cell ID of the attached Enb - * @param imsi IMSI of the scheduled UE - * @param frameNo Frame number - * @param subframeNo Subframe number - * @param rnti C-RNTI scheduled - * @param layer the layer (cw) of the transmission - * @param txMode the transmission Mode - * @param mcs MCS for transport block - * @param size Size of transport block - * @param rv the redundancy version (HARQ) - * @param ndi new data indicator flag - * @param correctness correctness of the TB received + * @param params Trace information regarding PHY reception stats */ void DlPhyReception (PhyReceptionStatParameters params); /** * Notifies the stats calculator that an uplink reception has occurred. - * @param cellId Cell ID of the attached Enb - * @param imsi IMSI of the scheduled UE - * @param frameNo Frame number - * @param subframeNo Subframe number - * @param rnti C-RNTI scheduled - * @param layer the layer (cw) of the transmission - * @param txMode the transmission Mode - * @param mcs MCS for transport block - * @param size Size of transport block - * @param rv the redundancy version (HARQ) - * @param ndi new data indicator flag - * @param correctness correctness of the TB received + * @param params Trace information regarding PHY reception stats */ void UlPhyReception (PhyReceptionStatParameters params); diff -r 3ea02a8923ff src/lte/helper/phy-stats-calculator.h --- a/src/lte/helper/phy-stats-calculator.h Fri Nov 15 11:20:38 2013 +0100 +++ b/src/lte/helper/phy-stats-calculator.h Sat Nov 16 19:04:42 2013 +0200 @@ -63,20 +63,19 @@ */ virtual ~PhyStatsCalculator (); - /** - * Inherited from ns3::Object - */ + // Inherited from ns3::Object static TypeId GetTypeId (void); /** * Set the name of the file where the RSRP/SINR statistics will be stored. * - * \param filename string with the name of the file + * @param filename string with the name of the file */ void SetCurrentCellRsrpSinrFilename (std::string filename); /** * Get the name of the file where the RSRP/SINR statistics will be stored. + * @return the name of the file where the RSRP/SINR statistics will be stored */ std::string GetCurrentCellRsrpSinrFilename (void); @@ -89,6 +88,7 @@ /** * Get the name of the file where the UE SINR statistics will be stored. + * @return the name of the file where the UE SINR statistics will be stored */ std::string GetUeSinrFilename (void); @@ -101,6 +101,7 @@ /** * Get the name of the file where the interference statistics will be stored. + * @return the name of the file where the interference statistics will be stored */ std::string GetInterferenceFilename (void); @@ -123,8 +124,6 @@ void ReportUeSinr (uint16_t cellId, uint64_t imsi, uint16_t rnti, double sinrLinear); /** * Notifies the stats calculator that an interference report has occurred. - * @param imsi IMSI of the scheduled UE - * @param rnti C-RNTI scheduled * @param cellId Cell ID of the reported Enb * @param interference Measured interference for each RB */ diff -r 3ea02a8923ff src/lte/helper/phy-tx-stats-calculator.h --- a/src/lte/helper/phy-tx-stats-calculator.h Fri Nov 15 11:20:38 2013 +0100 +++ b/src/lte/helper/phy-tx-stats-calculator.h Sat Nov 16 19:04:42 2013 +0200 @@ -60,20 +60,19 @@ */ virtual ~PhyTxStatsCalculator (); - /** - * Inherited from ns3::Object - */ + // Inherited from ns3::Object static TypeId GetTypeId (void); /** * Set the name of the file where the UL Tx PHY statistics will be stored. * - * \param outputFilename string with the name of the file + * @param outputFilename string with the name of the file */ void SetUlTxOutputFilename (std::string outputFilename); /** * Get the name of the file where the UL RX PHY statistics will be stored. + * @return the name of the file where the UL RX PHY statistics will be stored */ std::string GetUlTxOutputFilename (void); @@ -86,38 +85,19 @@ /** * Get the name of the file where the DL TX PHY statistics will be stored. + * @return the name of the file where the DL TX PHY statistics will be stored */ std::string GetDlTxOutputFilename (void); /** * Notifies the stats calculator that an downlink trasmission has occurred. - * @param cellId Cell ID of the attached Enb - * @param imsi IMSI of the scheduled UE - * @param frameNo Frame number - * @param subframeNo Subframe number - * @param rnti C-RNTI scheduled - * @param layer the layer (cw) of the transmission - * @param txMode the transmission Mode - * @param mcs MCS for transport block - * @param size Size of transport block - * @param rv the redundancy version (HARQ) - * @param ndi new data indicator flag + * @param params Trace information regarding PHY transmission stats */ void DlPhyTransmission (PhyTransmissionStatParameters params); /** * Notifies the stats calculator that an uplink trasmission has occurred. - * @param cellId Cell ID of the attached Enb - * @param imsi IMSI of the scheduled UE - * @param frameNo Frame number - * @param subframeNo Subframe number - * @param rnti C-RNTI scheduled - * @param layer the layer (cw) of the transmission - * @param txMode the transmission Mode - * @param mcs MCS for transport block - * @param size Size of transport block - * @param rv the redundancy version (HARQ) - * @param ndi new data indicator flag + * @param params Trace information regarding PHY transmission stats */ void UlPhyTransmission (PhyTransmissionStatParameters params); diff -r 3ea02a8923ff src/lte/helper/radio-bearer-stats-calculator.h --- a/src/lte/helper/radio-bearer-stats-calculator.h Fri Nov 15 11:20:38 2013 +0100 +++ b/src/lte/helper/radio-bearer-stats-calculator.h Sat Nov 16 19:04:42 2013 +0200 @@ -79,31 +79,32 @@ virtual ~RadioBearerStatsCalculator (); - /** - * Inherited from ns3::Object - */ + // Inherited from ns3::Object static TypeId GetTypeId (void); void DoDispose (); /** * Get the name of the file where the uplink statistics will be stored. + * @return the name of the file where the uplink statistics will be stored */ std::string GetUlOutputFilename (void); /** * Get the name of the file where the downlink statistics will be stored. + * @return the name of the file where the downlink statistics will be stored */ std::string GetDlOutputFilename (void); /** * Set the name of the file where the uplink PDCP statistics will be stored. * - * \param outputFilename string with the name of the file + * @param outputFilename string with the name of the file */ void SetUlPdcpOutputFilename (std::string outputFilename); /** * Get the name of the file where the uplink PDCP statistics will be stored. + * @return the name of the file where the uplink PDCP statistics will be stored */ std::string GetUlPdcpOutputFilename (void); @@ -116,6 +117,7 @@ /** * Get the name of the file where the downlink PDCP statistics will be stored. + * @return the name of the file where the downlink PDCP statistics will be stored */ std::string GetDlPdcpOutputFilename (void); diff -r 3ea02a8923ff src/lte/model/epc-mme.h --- a/src/lte/model/epc-mme.h Fri Nov 15 11:20:38 2013 +0100 +++ b/src/lte/model/epc-mme.h Sat Nov 16 19:04:42 2013 +0200 @@ -84,10 +84,10 @@ /** * Add a new ENB to the MME. - * \param imsi the unique identifier of the UE + * \param ecgi E-UTRAN Cell Global ID, the unique identifier of the eNodeB * \param enbS1apSap the ENB side of the S1-AP SAP */ - void AddEnb (uint16_t egci, Ipv4Address enbS1UAddr, EpcS1apSapEnb* enbS1apSap); + void AddEnb (uint16_t ecgi, Ipv4Address enbS1UAddr, EpcS1apSapEnb* enbS1apSap); /** * Add a new UE to the MME. This is the equivalent of storing the UE diff -r 3ea02a8923ff src/lte/model/epc-s11-sap.h --- a/src/lte/model/epc-s11-sap.h Fri Nov 15 11:20:38 2013 +0100 +++ b/src/lte/model/epc-s11-sap.h Sat Nov 16 19:04:42 2013 +0200 @@ -99,7 +99,7 @@ /** * send a Create Session Response message * - * \params msg the message + * \param msg the message */ virtual void CreateSessionResponse (CreateSessionResponseMessage msg) = 0; @@ -120,7 +120,7 @@ /** * send a Modify Bearer Response message * - * \params msg the message + * \param msg the message */ virtual void ModifyBearerResponse (ModifyBearerResponseMessage msg) = 0; @@ -158,7 +158,7 @@ /** * send a Create Session Request message * - * \params msg the message + * \param msg the message */ virtual void CreateSessionRequest (CreateSessionRequestMessage msg) = 0; @@ -174,7 +174,7 @@ /** * send a Modify Bearer Request message * - * \params msg the message + * \param msg the message */ virtual void ModifyBearerRequest (ModifyBearerRequestMessage msg) = 0; diff -r 3ea02a8923ff src/lte/model/epc-s1ap-sap.h --- a/src/lte/model/epc-s1ap-sap.h Fri Nov 15 11:20:38 2013 +0100 +++ b/src/lte/model/epc-s1ap-sap.h Sat Nov 16 19:04:42 2013 +0200 @@ -53,11 +53,11 @@ * * \param mmeUeS1Id in practice, we use the IMSI * \param enbUeS1Id in practice, we use the RNTI - * \param s-tmsi in practice, the imsi + * \param stmsi in practice, the imsi * \param ecgi in practice, the cell Id * */ - virtual void InitialUeMessage (uint64_t mmeUeS1Id, uint16_t enbUeS1Id, uint64_t imsi, uint16_t ecgi) = 0; + virtual void InitialUeMessage (uint64_t mmeUeS1Id, uint16_t enbUeS1Id, uint64_t stmsi, uint16_t ecgi) = 0; /** @@ -76,10 +76,12 @@ * * \param mmeUeS1Id in practice, we use the IMSI * \param enbUeS1Id in practice, we use the RNTI - * \param ecgi in practice, the cell Id + * \param erabSetupList * */ - virtual void InitialContextSetupResponse (uint64_t mmeUeS1Id, uint16_t enbUeS1Id, std::list erabSetupList) = 0; + virtual void InitialContextSetupResponse (uint64_t mmeUeS1Id, + uint16_t enbUeS1Id, + std::list erabSetupList) = 0; /** @@ -126,10 +128,12 @@ * * \param mmeUeS1Id in practice, we use the IMSI * \param enbUeS1Id in practice, we use the RNTI - * \param ecgi in practice, the cell Id + * \param erabToBeSetupList * */ - virtual void InitialContextSetupRequest (uint64_t mmeUeS1Id, uint16_t enbUeS1Id, std::list erabToBeSetupList) = 0; + virtual void InitialContextSetupRequest (uint64_t mmeUeS1Id, + uint16_t enbUeS1Id, + std::list erabToBeSetupList) = 0; /** diff -r 3ea02a8923ff src/lte/model/epc-sgw-pgw-application.h --- a/src/lte/model/epc-sgw-pgw-application.h Fri Nov 15 11:20:38 2013 +0100 +++ b/src/lte/model/epc-sgw-pgw-application.h Sat Nov 16 19:04:42 2013 +0200 @@ -130,7 +130,8 @@ * Let the SGW be aware of a new eNB * * \param cellId the cell identifier - * \param enbAdd the address of the eNB + * \param enbAddr the address of the eNB + * \param sgwAddr the address of the SGW */ void AddEnb (uint16_t cellId, Ipv4Address enbAddr, Ipv4Address sgwAddr); diff -r 3ea02a8923ff src/lte/model/epc-tft.h --- a/src/lte/model/epc-tft.h Fri Nov 15 11:20:38 2013 +0100 +++ b/src/lte/model/epc-tft.h Sat Nov 16 19:04:42 2013 +0200 @@ -124,7 +124,7 @@ /** * add a PacketFilter to the Traffic Flow Template * - * \param the PacketFilter to be added + * \param f the PacketFilter to be added * * \return the id( 0 <= id < 16) of the newly added filter, if the addition was successful. Will fail if you try to add more than 15 filters. This is to be compliant with TS 24.008. */ diff -r 3ea02a8923ff src/lte/model/epc-x2.h --- a/src/lte/model/epc-x2.h Fri Nov 15 11:20:38 2013 +0100 +++ b/src/lte/model/epc-x2.h Sat Nov 16 19:04:42 2013 +0200 @@ -92,15 +92,20 @@ void SetEpcX2SapUser (EpcX2SapUser * s); /** - * \param s the X2 SAP Provider interface offered by this EPC X2 entity + * \return the X2 SAP Provider interface offered by this EPC X2 entity */ EpcX2SapProvider* GetEpcX2SapProvider (); /** - * \param s the X2 SAP Provider interface offered by this EPC X2 entity + * Add an X2 interface to this EPC X2 entity + * \param enb1CellId the cell ID of the current eNodeB + * \param enb1X2Address the address of the current eNodeB + * \param enb2CellId the cell ID of the neighbouring eNodeB + * \param enb2X2Address the address of the neighbouring eNodeB */ - void AddX2Interface (uint16_t enb1CellId, Ipv4Address enb1X2Address, uint16_t enb2CellId, Ipv4Address enb2X2Address); + void AddX2Interface (uint16_t enb1CellId, Ipv4Address enb1X2Address, + uint16_t enb2CellId, Ipv4Address enb2X2Address); /** diff -r 3ea02a8923ff src/lte/model/eps-bearer-tag.h --- a/src/lte/model/eps-bearer-tag.h Fri Nov 15 11:20:38 2013 +0100 +++ b/src/lte/model/eps-bearer-tag.h Sat Nov 16 19:04:42 2013 +0200 @@ -54,7 +54,7 @@ * * @param rnti the value of the RNTI to set */ - void SetRnti (uint16_t tid); + void SetRnti (uint16_t rnti); /** * Set the bearer id to the given value. diff -r 3ea02a8923ff src/lte/model/lte-amc.h --- a/src/lte/model/lte-amc.h Fri Nov 15 11:20:38 2013 +0100 +++ b/src/lte/model/lte-amc.h Sat Nov 16 19:04:42 2013 +0200 @@ -86,9 +86,10 @@ * \brief Create a message with CQI feedback * \param sinr the SpectrumValue vector of SINR for evaluating the CQI * \param rbgSize size of RB group (in RBs) for evaluating subband/wideband CQI - * + * \return a vector of CQI feedbacks */ - /*static*/ std::vector CreateCqiFeedbacks (const SpectrumValue& sinr, uint8_t rbgSize = 0); + /*static*/ std::vector CreateCqiFeedbacks (const SpectrumValue& sinr, + uint8_t rbgSize = 0); /** * \brief Get a proper CQI for the spectrale efficiency value. diff -r 3ea02a8923ff src/lte/model/lte-anr.h --- a/src/lte/model/lte-anr.h Fri Nov 15 11:20:38 2013 +0100 +++ b/src/lte/model/lte-anr.h Sat Nov 16 19:04:42 2013 +0200 @@ -82,8 +82,8 @@ public: /** * \brief Creates an ANR instance. - * \param the cell ID of the eNodeB instance whom this ANR instance is to be - * associated with + * \param servingCellId the cell ID of the eNodeB instance whom this ANR + * instance is to be associated with */ LteAnr (uint16_t servingCellId); virtual ~LteAnr (); @@ -109,7 +109,7 @@ /** * \brief Remove an existing Neighbour Relation entry. - * \param the cell ID to be removed from the NRT + * \param cellId the cell ID to be removed from the NRT * * This function simulates the Neighbour Relation removal operation by * network operations and maintenance, as depicted in Section 22.3.2a of diff -r 3ea02a8923ff src/lte/model/lte-common.h --- a/src/lte/model/lte-common.h Fri Nov 15 11:20:38 2013 +0100 +++ b/src/lte/model/lte-common.h Sat Nov 16 19:04:42 2013 +0200 @@ -118,31 +118,31 @@ struct PhyTransmissionStatParameters { int64_t m_timestamp; // in millisecond - uint16_t m_cellId; - uint64_t m_imsi; - uint16_t m_rnti; - uint8_t m_txMode; - uint8_t m_layer; - uint8_t m_mcs; - uint16_t m_size; - uint8_t m_rv; - uint8_t m_ndi; + uint16_t m_cellId; ///< Cell ID of the attached Enb + uint64_t m_imsi; ///< IMSI of the scheduled UE + uint16_t m_rnti; ///< C-RNTI scheduled + uint8_t m_txMode; ///< the transmission Mode + uint8_t m_layer; ///< the layer (cw) of the transmission + uint8_t m_mcs; ///< MCS for transport block + uint16_t m_size; ///< Size of transport block + uint8_t m_rv; ///< the redundancy version (HARQ) + uint8_t m_ndi; ///< new data indicator flag }; struct PhyReceptionStatParameters { int64_t m_timestamp; // in millisecond - uint16_t m_cellId; - uint64_t m_imsi; - uint16_t m_rnti; - uint8_t m_txMode; - uint8_t m_layer; - uint8_t m_mcs; - uint16_t m_size; - uint8_t m_rv; - uint8_t m_ndi; - uint8_t m_correctness; + uint16_t m_cellId; ///< Cell ID of the attached Enb + uint64_t m_imsi; ///< IMSI of the scheduled UE + uint16_t m_rnti; ///< C-RNTI scheduled + uint8_t m_txMode; ///< the transmission Mode + uint8_t m_layer; ///< the layer (cw) of the transmission + uint8_t m_mcs; ///< MCS for transport block + uint16_t m_size; ///< Size of transport block + uint8_t m_rv; ///< the redundancy version (HARQ) + uint8_t m_ndi; ///< new data indicator flag + uint8_t m_correctness; ///< correctness of the TB received }; diff -r 3ea02a8923ff src/lte/model/lte-control-messages.h --- a/src/lte/model/lte-control-messages.h Fri Nov 15 11:20:38 2013 +0100 +++ b/src/lte/model/lte-control-messages.h Sat Nov 16 19:04:42 2013 +0200 @@ -189,7 +189,7 @@ * \brief add a BSR feedback record into the message. * \param bsr the BSR feedback */ - void SetBsr (MacCeListElement_s ulcqi); + void SetBsr (MacCeListElement_s bsr); /** * \brief Get BSR informations @@ -218,7 +218,7 @@ /** * \brief add a DL HARQ feedback record into the message. - * \param DlInfoListElement_s the dl HARQ feedback + * \param m the DL HARQ feedback */ void SetDlHarqFeedback (DlInfoListElement_s m); @@ -249,7 +249,7 @@ /** * Set the Random Access Preamble Identifier (RAPID), see 3GPP TS 36.321 6.2.2 * - * \param rapid + * \param rapid the RAPID */ void SetRapId (uint32_t rapid); @@ -387,7 +387,7 @@ /** * \brief Replace the SIB1 content of this control message. - * \param sib the desired SIB1 content + * \param sib1 the desired SIB1 content */ void SetSib1 (LteRrcSap::SystemInformationBlockType1 sib1); diff -r 3ea02a8923ff src/lte/model/lte-enb-cphy-sap.h --- a/src/lte/model/lte-enb-cphy-sap.h Fri Nov 15 11:20:38 2013 +0100 +++ b/src/lte/model/lte-enb-cphy-sap.h Sat Nov 16 19:04:42 2013 +0200 @@ -83,13 +83,13 @@ * \param rnti the RNTI of the user * \param txMode the transmissionMode of the user */ - virtual void SetTransmissionMode (uint16_t rnti, uint8_t txMode) = 0; + virtual void SetTransmissionMode (uint16_t rnti, uint8_t txMode) = 0; /** * \param rnti the RNTI of the user - * \param txMode the SRS Configuration Index of the user + * \param srsCi the SRS Configuration Index of the user */ - virtual void SetSrsConfigurationIndex (uint16_t rnti, uint16_t srsCi) = 0; + virtual void SetSrsConfigurationIndex (uint16_t rnti, uint16_t srsCi) = 0; /** * diff -r 3ea02a8923ff src/lte/model/lte-enb-mac.h --- a/src/lte/model/lte-enb-mac.h Fri Nov 15 11:20:38 2013 +0100 +++ b/src/lte/model/lte-enb-mac.h Sat Nov 16 19:04:42 2013 +0200 @@ -133,7 +133,7 @@ /** * \brief Receive a CE element containing the buffer status report - * \param msg the BSR message + * \param bsr the BSR message */ void ReceiveBsrMessage (MacCeListElement_s bsr); diff -r 3ea02a8923ff src/lte/model/lte-enb-net-device.h --- a/src/lte/model/lte-enb-net-device.h Fri Nov 15 11:20:38 2013 +0100 +++ b/src/lte/model/lte-enb-net-device.h Sat Nov 16 19:04:42 2013 +0200 @@ -108,7 +108,7 @@ uint16_t GetDlEarfcn () const; /** - * \param bw the downlink carrier frequency (EARFCN) + * \param earfcn the downlink carrier frequency (EARFCN) */ void SetDlEarfcn (uint16_t earfcn); @@ -118,7 +118,7 @@ uint16_t GetUlEarfcn () const; /** - * \param bw the uplink carrier frequency (EARFCN) + * \param earfcn the uplink carrier frequency (EARFCN) */ void SetUlEarfcn (uint16_t earfcn); diff -r 3ea02a8923ff src/lte/model/lte-enb-phy.h --- a/src/lte/model/lte-enb-phy.h Fri Nov 15 11:20:38 2013 +0100 +++ b/src/lte/model/lte-enb-phy.h Sat Nov 16 19:04:42 2013 +0200 @@ -95,7 +95,7 @@ void SetLteEnbCphySapUser (LteEnbCphySapUser* s); /** - * \param pw the transmission power in dBm + * \param pow the transmission power in dBm */ void SetTxPower (double pow); @@ -106,7 +106,7 @@ /** - * \param pw the noise figure in dB + * \param pow the noise figure in dB */ void SetNoiseFigure (double pow); @@ -178,6 +178,7 @@ * \brief Create the UL CQI feedback from SINR values perceived at * the physical layer with the PUSCH signal received from eNB * \param sinr SINR values vector + * \return UL CQI feedback in the format usable by an FF MAC scheduler */ FfMacSchedSapProvider::SchedUlCqiInfoReqParameters CreatePuschCqiReport (const SpectrumValue& sinr); @@ -185,6 +186,7 @@ * \brief Create the UL CQI feedback from SINR values perceived at * the physical layer with the SRS signal received from eNB * \param sinr SINR values vector + * \return UL CQI feedback in the format usable by an FF MAC scheduler */ FfMacSchedSapProvider::SchedUlCqiInfoReqParameters CreateSrsCqiReport (const SpectrumValue& sinr); @@ -242,7 +244,7 @@ virtual void GenerateCtrlCqiReport (const SpectrumValue& sinr); virtual void GenerateDataCqiReport (const SpectrumValue& sinr); virtual void ReportInterference (const SpectrumValue& interf); - virtual void ReportRsReceivedPower (const SpectrumValue& interf); + virtual void ReportRsReceivedPower (const SpectrumValue& power); diff -r 3ea02a8923ff src/lte/model/lte-enb-rrc.cc --- a/src/lte/model/lte-enb-rrc.cc Fri Nov 15 11:20:38 2013 +0100 +++ b/src/lte/model/lte-enb-rrc.cc Sat Nov 16 19:04:42 2013 +0200 @@ -1754,8 +1754,7 @@ LteEnbRrc::DoRecvRrcConnectionRequest (uint16_t rnti, LteRrcSap::RrcConnectionRequest msg) { NS_LOG_FUNCTION (this << rnti); - - GetUeManager (rnti)->RecvRrcConnectionRequest (msg); + GetUeManager (rnti)->RecvRrcConnectionRequest (msg); } void diff -r 3ea02a8923ff src/lte/model/lte-enb-rrc.h --- a/src/lte/model/lte-enb-rrc.h Fri Nov 15 11:20:38 2013 +0100 +++ b/src/lte/model/lte-enb-rrc.h Sat Nov 16 19:04:42 2013 +0200 @@ -235,21 +235,31 @@ */ void RecvUeContextRelease (EpcX2SapUser::UeContextReleaseParams params); - // methods forwarded from RRC SAP + + // METHODS FORWARDED FROM ENB RRC SAP /////////////////////////////////////// + + /// Part of the RRC protocol. Implement the LteEnbRrcSapProvider::CompleteSetupUe interface. void CompleteSetupUe (LteEnbRrcSapProvider::CompleteSetupUeParameters params); + /// Part of the RRC protocol. Implement the LteEnbRrcSapProvider::RecvRrcConnectionRequest interface. void RecvRrcConnectionRequest (LteRrcSap::RrcConnectionRequest msg); + /// Part of the RRC protocol. Implement the LteEnbRrcSapProvider::RecvRrcConnectionSetupCompleted interface. void RecvRrcConnectionSetupCompleted (LteRrcSap::RrcConnectionSetupCompleted msg); + /// Part of the RRC protocol. Implement the LteEnbRrcSapProvider::RecvRrcConnectionReconfigurationCompleted interface. void RecvRrcConnectionReconfigurationCompleted (LteRrcSap::RrcConnectionReconfigurationCompleted msg); + /// Part of the RRC protocol. Implement the LteEnbRrcSapProvider::RecvRrcConnectionReestablishmentRequest interface. void RecvRrcConnectionReestablishmentRequest (LteRrcSap::RrcConnectionReestablishmentRequest msg); + /// Part of the RRC protocol. Implement the LteEnbRrcSapProvider::RecvRrcConnectionReestablishmentComplete interface. void RecvRrcConnectionReestablishmentComplete (LteRrcSap::RrcConnectionReestablishmentComplete msg); + /// Part of the RRC protocol. Implement the LteEnbRrcSapProvider::RecvMeasurementReport interface. void RecvMeasurementReport (LteRrcSap::MeasurementReport msg); - // methods forwarded from CMAC SAP + // METHODS FORWARDED FROM ENB CMAC SAP ////////////////////////////////////// + void CmacUeConfigUpdateInd (LteEnbCmacSapUser::UeConfig cmacParams); + // METHODS FORWARDED FROM ENB PDCP SAP ////////////////////////////////////// - // methods forwarded from PDCP SAP void DoReceivePdcpSdu (LtePdcpSapUser::ReceivePdcpSduParameters params); /** @@ -629,7 +639,6 @@ /** * set the callback used to forward data packets up the stack * - * \param void * \param cb */ void SetForwardUpCallback (Callback > cb); @@ -672,8 +681,8 @@ * by sending a handover request to the target eNB over the X2 * interface * - * \param imsi the id of the UE to be handed over - * \param cellId the id of the target eNB + * \param rnti the ID of the UE to be handed over + * \param cellId the ID of the target eNB */ void SendHandoverRequest (uint16_t rnti, uint16_t cellId); @@ -691,12 +700,19 @@ // RRC SAP methods + /// Part of the RRC protocol. Forwarding LteEnbRrcSapProvider::CompleteSetupUe interface to UeManager::CompleteSetupUe void DoCompleteSetupUe (uint16_t rnti, LteEnbRrcSapProvider::CompleteSetupUeParameters params); + /// Part of the RRC protocol. Forwarding LteEnbRrcSapProvider::RecvRrcConnectionRequest interface to UeManager::RecvRrcConnectionRequest void DoRecvRrcConnectionRequest (uint16_t rnti, LteRrcSap::RrcConnectionRequest msg); + /// Part of the RRC protocol. Forwarding LteEnbRrcSapProvider::RecvRrcConnectionSetupCompleted interface to UeManager::RecvRrcConnectionSetupCompleted void DoRecvRrcConnectionSetupCompleted (uint16_t rnti, LteRrcSap::RrcConnectionSetupCompleted msg); + /// Part of the RRC protocol. Forwarding LteEnbRrcSapProvider::RecvRrcConnectionReconfigurationCompleted interface to UeManager::RecvRrcConnectionReconfigurationCompleted void DoRecvRrcConnectionReconfigurationCompleted (uint16_t rnti, LteRrcSap::RrcConnectionReconfigurationCompleted msg); + /// Part of the RRC protocol. Forwarding LteEnbRrcSapProvider::RecvRrcConnectionReestablishmentRequest interface to UeManager::RecvRrcConnectionReestablishmentRequest void DoRecvRrcConnectionReestablishmentRequest (uint16_t rnti, LteRrcSap::RrcConnectionReestablishmentRequest msg); + /// Part of the RRC protocol. Forwarding LteEnbRrcSapProvider::RecvRrcConnectionReestablishmentComplete interface to UeManager::RecvRrcConnectionReestablishmentComplete void DoRecvRrcConnectionReestablishmentComplete (uint16_t rnti, LteRrcSap::RrcConnectionReestablishmentComplete msg); + /// Part of the RRC protocol. Forwarding LteEnbRrcSapProvider::RecvMeasurementReport interface to UeManager::RecvMeasurementReport void DoRecvMeasurementReport (uint16_t rnti, LteRrcSap::MeasurementReport msg); // S1 SAP methods @@ -767,7 +783,7 @@ /** * Add a neighbour with an X2 interface * - * \param cellid neighbouring cell id + * \param cellId neighbouring cell id */ void AddX2Neighbour (uint16_t cellId); diff -r 3ea02a8923ff src/lte/model/lte-harq-phy.h --- a/src/lte/model/lte-harq-phy.h Fri Nov 15 11:20:38 2013 +0100 +++ b/src/lte/model/lte-harq-phy.h Sat Nov 16 19:04:42 2013 +0200 @@ -88,8 +88,8 @@ /** * \brief Return the info of the HARQ procId in case of retranmissions * for UL (asynchronous) + * \param rnti the RNTI of the transmitter * \param harqProcId the HARQ proc id - * \param layer layer no. (for MIMO spatail multiplexing) * \return the vector of the info related to HARQ proc Id */ HarqProcessInfoList_t GetHarqProcessInfoUl (uint16_t rnti, uint8_t harqProcId); diff -r 3ea02a8923ff src/lte/model/lte-mi-error-model.h --- a/src/lte/model/lte-mi-error-model.h Fri Nov 15 11:20:38 2013 +0100 +++ b/src/lte/model/lte-mi-error-model.h Sat Nov 16 19:04:42 2013 +0200 @@ -82,8 +82,8 @@ static double Mib (const SpectrumValue& sinr, const std::vector& map, uint8_t mcs); /** * \brief map the mmib (mean mutual information per bit) for different MCS - * \param mmib mean mutual information per bit of a code-block - * \param mcs the MCS + * \param mib mean mutual information per bit of a code-block + * \param ecrId Effective Code Rate ID * \param cbSize the size of the CB * \return the code block error rate */ diff -r 3ea02a8923ff src/lte/model/lte-pdcp-tag.h --- a/src/lte/model/lte-pdcp-tag.h Fri Nov 15 11:20:38 2013 +0100 +++ b/src/lte/model/lte-pdcp-tag.h Sat Nov 16 19:04:42 2013 +0200 @@ -56,6 +56,7 @@ /** * Get the instant when the PDCP delivers the PDU to the MAC SAP provider + * @return the sender timestamp */ Time GetSenderTimestamp (void) const; diff -r 3ea02a8923ff src/lte/model/lte-pdcp.h --- a/src/lte/model/lte-pdcp.h Fri Nov 15 11:20:38 2013 +0100 +++ b/src/lte/model/lte-pdcp.h Sat Nov 16 19:04:42 2013 +0200 @@ -68,7 +68,7 @@ /** * * - * \param s the PDCP SAP Provider interface offered to the RRC by this LTE_PDCP + * \return the PDCP SAP Provider interface offered to the RRC by this LTE_PDCP */ LtePdcpSapProvider* GetLtePdcpSapProvider (); @@ -82,7 +82,7 @@ /** * * - * \param s the RLC SAP User interface offered to the RLC by this LTE_PDCP + * \return the RLC SAP User interface offered to the RLC by this LTE_PDCP */ LteRlcSapUser* GetLteRlcSapUser (); diff -r 3ea02a8923ff src/lte/model/lte-phy.h --- a/src/lte/model/lte-phy.h Fri Nov 15 11:20:38 2013 +0100 +++ b/src/lte/model/lte-phy.h Sat Nov 16 19:04:42 2013 +0200 @@ -121,13 +121,6 @@ void DoDispose (); /** - * \brief Receive SendLteControlMessage (PDCCH map, CQI feedbacks) using the ideal control channel - * \param msg the Ideal Control Message to receive - */ -// virtual void ReceiveLteControlMessage (Ptr msg) = 0; - - - /** * \param tti transmission time interval */ void SetTti (double tti); @@ -188,7 +181,7 @@ * * \param sinr the SINR vs frequency measured by the device */ - virtual void GenerateCtrlCqiReport (const SpectrumValue& sinr) = 0; + virtual void GenerateCtrlCqiReport (const SpectrumValue& sinr) = 0; /** * generate a CQI report based on the given SINR of Data frame @@ -196,25 +189,25 @@ * * \param sinr the SINR vs frequency measured by the device */ - virtual void GenerateDataCqiReport (const SpectrumValue& sinr) = 0; + virtual void GenerateDataCqiReport (const SpectrumValue& sinr) = 0; /** * generate a report based on the linear interference and noise power * perceived during DATA frame * NOTE: used only by eNB * - * \param sinr the interference + noise power measured by the device + * \param interf the interference + noise power measured by the device */ - virtual void ReportInterference (const SpectrumValue& power) = 0; + virtual void ReportInterference (const SpectrumValue& interf) = 0; /** * generate a report based on the linear RS power perceived during CTRL * frame * NOTE: used only by UE for evaluating RSRP * - * \param sinr the RS power measured by the device + * \param power the RS power measured by the device */ - virtual void ReportRsReceivedPower (const SpectrumValue& interf) = 0; + virtual void ReportRsReceivedPower (const SpectrumValue& power) = 0; diff -r 3ea02a8923ff src/lte/model/lte-radio-bearer-tag.h --- a/src/lte/model/lte-radio-bearer-tag.h Fri Nov 15 11:20:38 2013 +0100 +++ b/src/lte/model/lte-radio-bearer-tag.h Sat Nov 16 19:04:42 2013 +0200 @@ -57,7 +57,7 @@ * * @param rnti the value of the RNTI to set */ - void SetRnti (uint16_t tid); + void SetRnti (uint16_t rnti); /** * Set the LC id to the given value. @@ -71,7 +71,7 @@ * * @param layer the value of the layer to set */ - void SetLayer (uint8_t lcid); + void SetLayer (uint8_t layer); virtual void Serialize (TagBuffer i) const; diff -r 3ea02a8923ff src/lte/model/lte-rlc-tag.h --- a/src/lte/model/lte-rlc-tag.h Fri Nov 15 11:20:38 2013 +0100 +++ b/src/lte/model/lte-rlc-tag.h Sat Nov 16 19:04:42 2013 +0200 @@ -55,6 +55,7 @@ /** * Get the instant when the RLC delivers the PDU to the MAC SAP provider + * @return the sender timestamp */ Time GetSenderTimestamp (void) const { diff -r 3ea02a8923ff src/lte/model/lte-rlc.h --- a/src/lte/model/lte-rlc.h Fri Nov 15 11:20:38 2013 +0100 +++ b/src/lte/model/lte-rlc.h Sat Nov 16 19:04:42 2013 +0200 @@ -81,7 +81,7 @@ /** * * - * \param s the RLC SAP Provider interface offered to the PDCP by this LTE_RLC + * \return the RLC SAP Provider interface offered to the PDCP by this LTE_RLC */ LteRlcSapProvider* GetLteRlcSapProvider (); @@ -95,7 +95,7 @@ /** * * - * \param s the MAC SAP User interface offered to the MAC by this LTE_RLC + * \return the MAC SAP User interface offered to the MAC by this LTE_RLC */ LteMacSapUser* GetLteMacSapUser (); diff -r 3ea02a8923ff src/lte/model/lte-rrc-sap.h --- a/src/lte/model/lte-rrc-sap.h Fri Nov 15 11:20:38 2013 +0100 +++ b/src/lte/model/lte-rrc-sap.h Sat Nov 16 19:04:42 2013 +0200 @@ -600,10 +600,10 @@ /** - * Service Access Point (SAP) used by the UE RRC to send messages to - * the eNB. Each method defined in this class correspond to the - * transmission of a message that is defined in section 6.2.2 of TS - * 36.331. + * \brief Part of the RRC protocol. This Service Access Point (SAP) is used by + * the UE RRC to send messages to the eNB. Each method defined in this + * class corresponds to the transmission of a message that is defined in + * Section 6.2.2 of TS 36.331. */ class LteUeRrcSapUser : public LteRrcSap { @@ -615,20 +615,63 @@ }; virtual void Setup (SetupParameters params) = 0; + + /** + * \brief Send an _RRCConnectionRequest message to the serving eNodeB + * during an RRC connection establishment procedure + * (Section 5.3.3 of TS 36.331). + * \param msg the message + */ virtual void SendRrcConnectionRequest (RrcConnectionRequest msg) = 0; + + /** + * \brief Send an _RRCConnectionSetupComplete_ message to the serving eNodeB + * during an RRC connection establishment procedure + * (Section 5.3.3 of TS 36.331). + * \param msg the message + */ virtual void SendRrcConnectionSetupCompleted (RrcConnectionSetupCompleted msg) = 0; + + /** + * \brief Send an _RRCConnectionReconfigurationComplete_ message to the serving eNodeB + * during an RRC connection reconfiguration procedure + * (Section 5.3.5 of TS 36.331). + * \param msg the message + */ virtual void SendRrcConnectionReconfigurationCompleted (RrcConnectionReconfigurationCompleted msg) = 0; + + /** + * \brief Send an _RRCConnectionReestablishmentRequest_ message to the serving eNodeB + * during an RRC connection re-establishment procedure + * (Section 5.3.7 of TS 36.331). + * \param msg the message + */ virtual void SendRrcConnectionReestablishmentRequest (RrcConnectionReestablishmentRequest msg) = 0; + + /** + * \brief Send an _RRCConnectionReestablishmentComplete_ message to the serving eNodeB + * during an RRC connection re-establishment procedure + * (Section 5.3.7 of TS 36.331). + * \param msg the message + */ virtual void SendRrcConnectionReestablishmentComplete (RrcConnectionReestablishmentComplete msg) = 0; + + /** + * \brief Send a _MeasurementReport_ message to the serving eNodeB + * during a measurement reporting procedure + * (Section 5.5.5 of TS 36.331). + * \param msg the message + */ virtual void SendMeasurementReport (MeasurementReport msg) = 0; + }; /** - * Service Access Point (SAP) used to let the UE RRC receive a message - * from the eNB RRC. Each method defined in this class correspond to - * the reception of a message that is defined in section 6.2.2 of TS - * 36.331. + * \brief Part of the RRC protocol. This Service Access Point (SAP) is used to + * let the UE RRC receive a message from the eNB RRC. Each method defined + * in this class corresponds to the reception of a message that is + * defined in Section 6.2.2 of TS 36.331. */ class LteUeRrcSapProvider : public LteRrcSap { @@ -640,22 +683,71 @@ }; virtual void CompleteSetup (CompleteSetupParameters params) = 0; + + /** + * \brief Receive a _SystemInformation_ message from the serving eNodeB + * during a system information acquisition procedure + * (Section 5.2.2 of TS 36.331). + * \param msg the message + */ virtual void RecvSystemInformation (SystemInformation msg) = 0; + + /** + * \brief Receive an _RRCConnectionSetup_ message from the serving eNodeB + * during an RRC connection establishment procedure + * (Section 5.3.3 of TS 36.331). + * \param msg the message + */ virtual void RecvRrcConnectionSetup (RrcConnectionSetup msg) = 0; + + /** + * \brief Receive an _RRCConnectionReconfiguration_ message from the serving eNodeB + * during an RRC connection reconfiguration procedure + * (Section 5.3.5 of TS 36.331). + * \param msg the message + */ virtual void RecvRrcConnectionReconfiguration (RrcConnectionReconfiguration msg) = 0; + + /** + * \brief Receive an _RRCConnectionReestablishment_ message from the serving eNodeB + * during an RRC connection re-establishment procedure + * (Section 5.3.7 of TS 36.331). + * \param msg the message + */ virtual void RecvRrcConnectionReestablishment (RrcConnectionReestablishment msg) = 0; + + /** + * \brief Receive an _RRCConnectionReestablishmentReject_ message from the serving eNodeB + * during an RRC connection re-establishment procedure + * (Section 5.3.7 of TS 36.331). + * \param msg the message + */ virtual void RecvRrcConnectionReestablishmentReject (RrcConnectionReestablishmentReject msg) = 0; + + /** + * \brief Receive an _RRCConnectionRelease_ message from the serving eNodeB + * during an RRC connection release procedure + * (Section 5.3.8 of TS 36.331). + * \param msg the message + */ virtual void RecvRrcConnectionRelease (RrcConnectionRelease msg) = 0; + + /** + * \brief Receive an _RRCConnectionReject_ message from the serving eNodeB + * during an RRC connection establishment procedure + * (Section 5.3.3 of TS 36.331). + * \param msg the message + */ virtual void RecvRrcConnectionReject (RrcConnectionReject msg) = 0; }; /** - * Service Access Point (SAP) used by the eNB RRC to send messages to - * the UE RC. Each method defined in this class correspond to - * the transmission of a message that is defined in section 6.2.2 of TS - * 36.331. + * \brief Part of the RRC protocol. This Service Access Point (SAP) is used by + * the eNB RRC to send messages to the UE RRC. Each method defined in + * this class corresponds to the transmission of a message that is + * defined in Section 6.2.2 of TS 36.331. */ class LteEnbRrcSapUser : public LteRrcSap { @@ -668,13 +760,69 @@ virtual void SetupUe (uint16_t rnti, SetupUeParameters params) = 0; virtual void RemoveUe (uint16_t rnti) = 0; + + /** + * \brief Send a _SystemInformation_ message to all attached UEs + * during a system information acquisition procedure + * (Section 5.2.2 of TS 36.331). + * \param msg the message + */ virtual void SendSystemInformation (SystemInformation msg) = 0; + + /** + * \brief Send an _RRCConnectionSetup_ message to a UE + * during an RRC connection establishment procedure + * (Section 5.3.3 of TS 36.331). + * \param rnti the RNTI of the destination UE + * \param msg the message + */ virtual void SendRrcConnectionSetup (uint16_t rnti, RrcConnectionSetup msg) = 0; + + /** + * \brief Send an _RRCConnectionReconfiguration_ message to a UE + * during an RRC connection reconfiguration procedure + * (Section 5.3.5 of TS 36.331). + * \param rnti the RNTI of the destination UE + * \param msg the message + */ virtual void SendRrcConnectionReconfiguration (uint16_t rnti, RrcConnectionReconfiguration msg) = 0; + + /** + * \brief Send an _RRCConnectionReestablishment_ message to a UE + * during an RRC connection re-establishment procedure + * (Section 5.3.7 of TS 36.331). + * \param rnti the RNTI of the destination UE + * \param msg the message + */ virtual void SendRrcConnectionReestablishment (uint16_t rnti, RrcConnectionReestablishment msg) = 0; + + /** + * \brief Send an _RRCConnectionReestablishmentReject_ message to a UE + * during an RRC connection re-establishment procedure + * (Section 5.3.7 of TS 36.331). + * \param rnti the RNTI of the destination UE + * \param msg the message + */ virtual void SendRrcConnectionReestablishmentReject (uint16_t rnti, RrcConnectionReestablishmentReject msg) = 0; + + /** + * \brief Send an _RRCConnectionRelease_ message to a UE + * during an RRC connection release procedure + * (Section 5.3.8 of TS 36.331). + * \param rnti the RNTI of the destination UE + * \param msg the message + */ virtual void SendRrcConnectionRelease (uint16_t rnti, RrcConnectionRelease msg) = 0; + + /** + * \brief Send an _RRCConnectionReject_ message to a UE + * during an RRC connection establishment procedure + * (Section 5.3.3 of TS 36.331). + * \param rnti the RNTI of the destination UE + * \param msg the message + */ virtual void SendRrcConnectionReject (uint16_t rnti, RrcConnectionReject msg) = 0; + virtual Ptr EncodeHandoverPreparationInformation (HandoverPreparationInfo msg) = 0; virtual HandoverPreparationInfo DecodeHandoverPreparationInformation (Ptr p) = 0; virtual Ptr EncodeHandoverCommand (RrcConnectionReconfiguration msg) = 0; @@ -684,10 +832,10 @@ /** - * Service Access Point (SAP) used to let the eNB RRC receive a - * message from a UE RRC. Each method defined in this class correspond to - * the reception of a message that is defined in section 6.2.2 of TS - * 36.331. + * \brief Part of the RRC protocol. This Service Access Point (SAP) is used to + * let the eNB RRC receive a message from a UE RRC. Each method defined + * in this class corresponds to the reception of a message that is + * defined in Section 6.2.2 of TS 36.331. */ class LteEnbRrcSapProvider : public LteRrcSap { @@ -699,11 +847,64 @@ }; virtual void CompleteSetupUe (uint16_t rnti, CompleteSetupUeParameters params) = 0; - virtual void RecvRrcConnectionRequest (uint16_t rnti, RrcConnectionRequest msg) = 0; - virtual void RecvRrcConnectionSetupCompleted (uint16_t rnti, RrcConnectionSetupCompleted msg) = 0; - virtual void RecvRrcConnectionReconfigurationCompleted (uint16_t rnti, RrcConnectionReconfigurationCompleted msg) = 0; - virtual void RecvRrcConnectionReestablishmentRequest (uint16_t rnti, RrcConnectionReestablishmentRequest msg) = 0; - virtual void RecvRrcConnectionReestablishmentComplete (uint16_t rnti, RrcConnectionReestablishmentComplete msg) = 0; + + /** + * \brief Receive an _RRCConnectionRequest_ message from a UE + * during an RRC connection establishment procedure + * (Section 5.3.3 of TS 36.331). + * \param rnti the RNTI of UE which sent the message + * \param msg the message + */ + virtual void RecvRrcConnectionRequest (uint16_t rnti, + RrcConnectionRequest msg) = 0; + + /** + * \brief Receive an _RRCConnectionSetupComplete_ message from a UE + * during an RRC connection establishment procedure + * (Section 5.3.3 of TS 36.331). + * \param rnti the RNTI of UE which sent the message + * \param msg the message + */ + virtual void RecvRrcConnectionSetupCompleted (uint16_t rnti, + RrcConnectionSetupCompleted msg) = 0; + + /** + * \brief Receive an _RRCConnectionReconfigurationComplete_ message from a UE + * during an RRC connection reconfiguration procedure + * (Section 5.3.5 of TS 36.331). + * \param rnti the RNTI of UE which sent the message + * \param msg the message + */ + virtual void RecvRrcConnectionReconfigurationCompleted (uint16_t rnti, + RrcConnectionReconfigurationCompleted msg) = 0; + + /** + * \brief Receive an _RRCConnectionReestablishmentRequest_ message from a UE + * during an RRC connection re-establishment procedure + * (Section 5.3.7 of TS 36.331). + * \param rnti the RNTI of UE which sent the message + * \param msg the message + */ + virtual void RecvRrcConnectionReestablishmentRequest (uint16_t rnti, + RrcConnectionReestablishmentRequest msg) = 0; + + /** + * \brief Receive an _RRCConnectionReestablishmentComplete_ message from a UE + * during an RRC connection re-establishment procedure + * (Section 5.3.7 of TS 36.331). + * \param rnti the RNTI of UE which sent the message + * \param msg the message + */ + virtual void RecvRrcConnectionReestablishmentComplete (uint16_t rnti, + RrcConnectionReestablishmentComplete msg) = 0; + + /** + * \brief Receive a _MeasurementReport_ message from a UE + * during a measurement reporting procedure + * (Section 5.5.5 of TS 36.331). + * \param rnti the RNTI of UE which sent the message + * \param msg the message + */ virtual void RecvMeasurementReport (uint16_t rnti, MeasurementReport msg) = 0; }; diff -r 3ea02a8923ff src/lte/model/lte-spectrum-phy.h --- a/src/lte/model/lte-spectrum-phy.h Fri Nov 15 11:20:38 2013 +0100 +++ b/src/lte/model/lte-spectrum-phy.h Sat Nov 16 19:04:42 2013 +0200 @@ -227,7 +227,7 @@ * Start a transmission of control frame in DL * * - * @param ctrlMsgList the burst of contrl messages to be transmitted + * @param ctrlMsgList the burst of control messages to be transmitted * @param pss the flag for transmitting the primary synchronization signal * * @return true if an error occurred and the transmission was not @@ -239,9 +239,6 @@ /** * Start a transmission of control frame in UL * - * - * @param pb the burst of control messages to be transmitted - * * @return true if an error occurred and the transmission was not * started, false otherwise. */ @@ -250,7 +247,7 @@ /** * set the callback for the end of a TX, as part of the - * interconnections betweenthe PHY and the MAC + * interconnections between the PHY and the MAC * * @param c the callback */ @@ -258,7 +255,7 @@ /** * set the callback for the end of a RX in error, as part of the - * interconnections betweenthe PHY and the MAC + * interconnections between the PHY and the MAC * * @param c the callback */ @@ -266,7 +263,7 @@ /** * set the callback for the successful end of a RX, as part of the - * interconnections betweenthe PHY and the MAC + * interconnections between the PHY and the MAC * * @param c the callback */ @@ -274,7 +271,7 @@ /** * set the callback for the successful end of a RX ctrl frame, as part - * of the interconnections betweenthe LteSpectrumPhy and the PHY + * of the interconnections between the LteSpectrumPhy and the PHY * * @param c the callback */ @@ -282,7 +279,7 @@ /** * set the callback for the erroneous end of a RX ctrl frame, as part - * of the interconnections betweenthe LteSpectrumPhy and the PHY + * of the interconnections between the LteSpectrumPhy and the PHY * * @param c the callback */ @@ -298,7 +295,7 @@ /** * set the callback for the DL HARQ feedback as part of the - * interconnections betweenthe LteSpectrumPhy and the PHY + * interconnections between the LteSpectrumPhy and the PHY * * @param c the callback */ @@ -306,7 +303,7 @@ /** * set the callback for the UL HARQ feedback as part of the - * interconnections betweenthe LteSpectrumPhy and the PHY + * interconnections between the LteSpectrumPhy and the PHY * * @param c the callback */ @@ -330,7 +327,7 @@ * * * \param p the new LteSinrChunkProcessor to be added to the RS power - * \processing chain + * processing chain */ void AddRsPowerChunkProcessor (Ptr p); @@ -342,7 +339,7 @@ void AddDataSinrChunkProcessor (Ptr p); /** - * LteSinrChunkProcessor devoted to evaluate intefrerence + noise power + * LteSinrChunkProcessor devoted to evaluate interference + noise power * in control symbols of the subframe * * \param p the new LteSinrChunkProcessor to be added to the data processing chain @@ -350,7 +347,7 @@ void AddInterferenceCtrlChunkProcessor (Ptr p); /** - * LteSinrChunkProcessor devoted to evaluate intefrerence + noise power + * LteSinrChunkProcessor devoted to evaluate interference + noise power * in data symbols of the subframe * * \param p the new LteSinrChunkProcessor to be added to the data processing chain diff -r 3ea02a8923ff src/lte/model/lte-spectrum-value-helper.h --- a/src/lte/model/lte-spectrum-value-helper.h Fri Nov 15 11:20:38 2013 +0100 +++ b/src/lte/model/lte-spectrum-value-helper.h Sat Nov 16 19:04:42 2013 +0200 @@ -102,12 +102,15 @@ * \param earfcn the carrier frequency (EARFCN) of the transmission * \param bandwidth the Transmission Bandwidth Configuration in * number of resource blocks - * \param txPower the total power in dBm over the whole bandwidth - * \param ActiveRbs the list of Active Resource Blocks (PRBs) + * \param powerTx the total power in dBm over the whole bandwidth + * \param activeRbs the list of Active Resource Blocks (PRBs) * * \return a pointer to a newly allocated SpectrumValue representing the TX Power Spectral Density in W/Hz for each Resource Block */ - static Ptr CreateTxPowerSpectralDensity (uint16_t earfcn, uint8_t bandwidth, double powerTx, std::vector activeRbs); + static Ptr CreateTxPowerSpectralDensity (uint16_t earfcn, + uint8_t bandwidth, + double powerTx, + std::vector activeRbs); /** diff -r 3ea02a8923ff src/lte/model/lte-ue-cphy-sap.h --- a/src/lte/model/lte-ue-cphy-sap.h Fri Nov 15 11:20:38 2013 +0100 +++ b/src/lte/model/lte-ue-cphy-sap.h Sat Nov 16 19:04:42 2013 +0200 @@ -128,9 +128,9 @@ virtual void SetTransmissionMode (uint8_t txMode) = 0; /** - * \param txMode the transmissionMode of the user + * \param srcCi the SRS configuration index */ - virtual void SetSrsConfigurationIndex (uint16_t srcCi) = 0; + virtual void SetSrsConfigurationIndex (uint16_t srcCi) = 0; }; @@ -182,7 +182,7 @@ /** * \brief Relay an SIB1 message from the PHY entity to the RRC layer. * \param cellId the ID of the eNodeB where the message originates from - * \param mib the System Information Block Type 1 message + * \param sib1 the System Information Block Type 1 message * * This function is typically called after PHY receives an SIB1 message over * the BCH. diff -r 3ea02a8923ff src/lte/model/lte-ue-net-device.h --- a/src/lte/model/lte-ue-net-device.h Fri Nov 15 11:20:38 2013 +0100 +++ b/src/lte/model/lte-ue-net-device.h Sat Nov 16 19:04:42 2013 +0200 @@ -82,7 +82,7 @@ uint16_t GetDlEarfcn () const; /** - * \param bw the downlink carrier frequency (EARFCN) + * \param earfcn the downlink carrier frequency (EARFCN) * * Note that real-life handset typically supports more than one EARFCN, but * the sake of simplicity we assume only one EARFCN is supported. diff -r 3ea02a8923ff src/lte/model/lte-ue-phy.h --- a/src/lte/model/lte-ue-phy.h Fri Nov 15 11:20:38 2013 +0100 +++ b/src/lte/model/lte-ue-phy.h Sat Nov 16 19:04:42 2013 +0200 @@ -109,7 +109,7 @@ /** - * \param pw the transmission power in dBm + * \param pow the transmission power in dBm */ void SetTxPower (double pow); @@ -118,9 +118,9 @@ */ double GetTxPower () const; /** - * \param pw the noise figure in dB + * \param nf the noise figure in dB */ - void SetNoiseFigure (double pow); + void SetNoiseFigure (double nf); /** * \return the noise figure in dB @@ -174,6 +174,7 @@ * \brief Create the DL CQI feedback from SINR values perceived at * the physical layer with the signal received from eNB * \param sinr SINR values vector + * \return a DL CQI control message containing the CQI feedback */ Ptr CreateDlCqiFeedbackMessage (const SpectrumValue& sinr); diff -r 3ea02a8923ff src/lte/model/lte-ue-rrc.h --- a/src/lte/model/lte-ue-rrc.h Fri Nov 15 11:20:38 2013 +0100 +++ b/src/lte/model/lte-ue-rrc.h Sat Nov 16 19:04:42 2013 +0200 @@ -274,13 +274,22 @@ void DoReportUeMeasurements (LteUeCphySapUser::UeMeasurementsParameters params); // RRC SAP methods + + /// Part of the RRC protocol. Implement the LteUeRrcSapProvider::CompleteSetup interface. void DoCompleteSetup (LteUeRrcSapProvider::CompleteSetupParameters params); + /// Part of the RRC protocol. Implement the LteUeRrcSapProvider::RecvSystemInformation interface. void DoRecvSystemInformation (LteRrcSap::SystemInformation msg); + /// Part of the RRC protocol. Implement the LteUeRrcSapProvider::RecvRrcConnectionSetup interface. void DoRecvRrcConnectionSetup (LteRrcSap::RrcConnectionSetup msg); + /// Part of the RRC protocol. Implement the LteUeRrcSapProvider::RecvRrcConnectionReconfiguration interface. void DoRecvRrcConnectionReconfiguration (LteRrcSap::RrcConnectionReconfiguration msg); + /// Part of the RRC protocol. Implement the LteUeRrcSapProvider::RecvRrcConnectionReestablishment interface. void DoRecvRrcConnectionReestablishment (LteRrcSap::RrcConnectionReestablishment msg); + /// Part of the RRC protocol. Implement the LteUeRrcSapProvider::RecvRrcConnectionReestablishmentReject interface. void DoRecvRrcConnectionReestablishmentReject (LteRrcSap::RrcConnectionReestablishmentReject msg); + /// Part of the RRC protocol. Implement the LteUeRrcSapProvider::RecvRrcConnectionRelease interface. void DoRecvRrcConnectionRelease (LteRrcSap::RrcConnectionRelease msg); + /// Part of the RRC protocol. Implement the LteUeRrcSapProvider::RecvRrcConnectionReject interface. void DoRecvRrcConnectionReject (LteRrcSap::RrcConnectionReject msg); diff -r 3ea02a8923ff src/lte/model/trace-fading-loss-model.h --- a/src/lte/model/trace-fading-loss-model.h Fri Nov 15 11:20:38 2013 +0100 +++ b/src/lte/model/trace-fading-loss-model.h Sat Nov 16 19:04:42 2013 +0200 @@ -69,14 +69,12 @@ private: /** - * @param txPower set of values vs frequency representing the - * transmission power. See SpectrumChannel for details. - * - * @param a sender mobility - * @param b receiver mobility - * - * @return set of values vs frequency representing the received - * power in the same units used for the txPower parameter. + * \param txPsd set of values vs frequency representing the + * transmission power. See SpectrumChannel for details. + * \param a sender mobility + * \param b receiver mobility + * \return set of values vs frequency representing the received + * power in the same units used for the txPsd parameter. */ Ptr DoCalcRxPowerSpectralDensity (Ptr txPsd, Ptr a, diff -r 3ea02a8923ff src/lte/test/lte-test-cell-selection.h --- a/src/lte/test/lte-test-cell-selection.h Fri Nov 15 11:20:38 2013 +0100 +++ b/src/lte/test/lte-test-cell-selection.h Sat Nov 16 19:04:42 2013 +0200 @@ -76,7 +76,6 @@ * \param isIdealRrc if true, simulation uses Ideal RRC protocol, otherwise * simulation uses Real RRC protocol * \param interSiteDistance the distance between eNodeB in meters - * \param enbTxPower the transmitting power of eNodeBs in dBm * \param ueSetupList a list of UE configuration to be installed in the * simulation * \param rngRun the number of run to be used by the random number generator