20#ifndef PHY_STATS_CALCULATOR_H_ 
   21#define PHY_STATS_CALCULATOR_H_ 
   23#include "ns3/lte-stats-calculator.h" 
   24#include "ns3/nstime.h" 
   25#include "ns3/spectrum-value.h" 
   26#include "ns3/uinteger.h" 
  131                                   uint8_t componentCarrierId);
 
  145                      uint8_t componentCarrierId);
 
  171                                                  uint8_t componentCarrierId);
 
  188                             uint8_t componentCarrierId);
 
Base class for ***StatsCalculator classes.
 
Takes care of storing the information generated at PHY layer.
 
bool m_UeSinrFirstWrite
When writing UE SINR statistics first time to file, columns description is added.
 
bool m_InterferenceFirstWrite
When writing interference statistics first time to file, columns description is added.
 
std::string GetInterferenceFilename()
Get the name of the file where the interference statistics will be stored.
 
std::string GetUeSinrFilename()
Get the name of the file where the UE SINR statistics will be stored.
 
void SetInterferenceFilename(std::string filename)
Set the name of the file where the interference statistics will be stored.
 
void ReportUeSinr(uint16_t cellId, uint64_t imsi, uint16_t rnti, double sinrLinear, uint8_t componentCarrierId)
Notifies the stats calculator that an UE SINR report has occurred.
 
bool m_RsrpSinrFirstWrite
When writing RSRP SINR statistics first time to file, columns description is added.
 
std::string m_interferenceFilename
Name of the file where the interference statistics will be saved.
 
std::string m_ueSinrFilename
Name of the file where the UE SINR statistics will be saved.
 
void SetCurrentCellRsrpSinrFilename(std::string filename)
Set the name of the file where the RSRP/SINR statistics will be stored.
 
PhyStatsCalculator()
Constructor.
 
void ReportCurrentCellRsrpSinr(uint16_t cellId, uint64_t imsi, uint16_t rnti, double rsrp, double sinr, uint8_t componentCarrierId)
Notifies the stats calculator that an RSRP and SINR report has occurred.
 
void SetUeSinrFilename(std::string filename)
Set the name of the file where the UE SINR statistics will be stored.
 
std::ofstream m_interferenceOutFile
Interference statistics output trace file.
 
std::string GetCurrentCellRsrpSinrFilename()
Get the name of the file where the RSRP/SINR statistics will be stored.
 
static TypeId GetTypeId()
Register this type.
 
std::ofstream m_ueSinrOutFile
UE SINR statistics output trace file.
 
std::string m_RsrpSinrFilename
Name of the file where the RSRP/SINR statistics will be saved.
 
std::ofstream m_rsrpOutFile
RSRP statistics output trace file.
 
void ReportInterference(uint16_t cellId, Ptr< SpectrumValue > interference)
Notifies the stats calculator that an interference report has occurred.
 
static void ReportCurrentCellRsrpSinrCallback(Ptr< PhyStatsCalculator > phyStats, std::string path, uint16_t cellId, uint16_t rnti, double rsrp, double sinr, uint8_t componentCarrierId)
trace sink
 
~PhyStatsCalculator() override
Destructor.
 
Smart pointer class similar to boost::intrusive_ptr.
 
a unique identifier for an interface.
 
Every class exported by the ns3 library is enclosed in the ns3 namespace.