22 #ifndef RADIO_BEARER_STATS_CALCULATOR_H_
23 #define RADIO_BEARER_STATS_CALCULATOR_H_
25 #include "ns3/lte-stats-calculator.h"
26 #include "ns3/lte-common.h"
27 #include "ns3/uinteger.h"
28 #include "ns3/object.h"
29 #include "ns3/basic-data-calculators.h"
30 #include "ns3/lte-common.h"
38 typedef std::map<ImsiLcidPair_t, uint32_t> Uint32Map;
39 typedef std::map<ImsiLcidPair_t, uint64_t> Uint64Map;
40 typedef std::map<ImsiLcidPair_t, Ptr<MinMaxAvgTotalCalculator<uint32_t> > > Uint32StatsMap;
41 typedef std::map<ImsiLcidPair_t, Ptr<MinMaxAvgTotalCalculator<uint64_t> > > Uint64StatsMap;
42 typedef std::map<ImsiLcidPair_t, double> DoubleMap;
43 typedef std::map<ImsiLcidPair_t, LteFlowId_t> FlowIdMap;
156 UlTxPdu (uint16_t cellId, uint64_t imsi, uint16_t rnti, uint8_t lcid, uint32_t packetSize);
168 UlRxPdu (uint16_t cellId, uint64_t imsi, uint16_t rnti, uint8_t lcid, uint32_t packetSize, uint64_t delay);
179 DlTxPdu (uint16_t cellId, uint64_t imsi, uint16_t rnti, uint8_t lcid, uint32_t packetSize);
191 DlRxPdu (uint16_t cellId, uint64_t imsi, uint16_t rnti, uint8_t lcid, uint32_t packetSize, uint64_t delay);
341 WriteUlResults (std::ofstream& outFile);
343 WriteDlResults (std::ofstream& outFile);
347 void RescheduleEndEpoch ();
349 void EndEpoch (
void);
355 Uint32Map m_dlCellId;
356 Uint32Map m_dlTxPackets;
357 Uint32Map m_dlRxPackets;
358 Uint64Map m_dlTxData;
359 Uint64Map m_dlRxData;
360 Uint64StatsMap m_dlDelay;
361 Uint32StatsMap m_dlPduSize;
363 Uint32Map m_ulCellId;
364 Uint32Map m_ulTxPackets;
365 Uint32Map m_ulRxPackets;
366 Uint64Map m_ulTxData;
367 Uint64Map m_ulRxData;
368 Uint64StatsMap m_ulDelay;
369 Uint32StatsMap m_ulPduSize;
390 std::string m_protocolType;
392 std::string m_dlPdcpOutputFilename;
393 std::string m_ulPdcpOutputFilename;
Time GetStartTime() const
virtual ~RadioBearerStatsCalculator()
std::string GetDlOutputFilename(void)
static TypeId GetTypeId(void)
double GetUlDelay(uint64_t imsi, uint8_t lcid)
std::string GetUlPdcpOutputFilename(void)
uint32_t GetDlRxPackets(uint64_t imsi, uint8_t lcid)
uint32_t GetUlCellId(uint64_t imsi, uint8_t lcid)
RadioBearerStatsCalculator()
uint32_t GetUlTxPackets(uint64_t imsi, uint8_t lcid)
std::vector< double > GetUlPduSizeStats(uint64_t imsi, uint8_t lcid)
uint64_t GetDlRxData(uint64_t imsi, uint8_t lcid)
void SetUlPdcpOutputFilename(std::string outputFilename)
double GetDlDelay(uint64_t imsi, uint8_t lcid)
void UlTxPdu(uint16_t cellId, uint64_t imsi, uint16_t rnti, uint8_t lcid, uint32_t packetSize)
std::string GetDlPdcpOutputFilename(void)
uint32_t GetUlRxPackets(uint64_t imsi, uint8_t lcid)
std::string GetUlOutputFilename(void)
void SetStartTime(Time t)
uint64_t GetDlTxData(uint64_t imsi, uint8_t lcid)
void DlTxPdu(uint16_t cellId, uint64_t imsi, uint16_t rnti, uint8_t lcid, uint32_t packetSize)
uint32_t GetDlCellId(uint64_t imsi, uint8_t lcid)
void UlRxPdu(uint16_t cellId, uint64_t imsi, uint16_t rnti, uint8_t lcid, uint32_t packetSize, uint64_t delay)
uint64_t GetUlTxData(uint64_t imsi, uint8_t lcid)
uint64_t GetUlRxData(uint64_t imsi, uint8_t lcid)
std::vector< double > GetDlDelayStats(uint64_t imsi, uint8_t lcid)
an identifier for simulation events.
uint32_t GetDlTxPackets(uint64_t imsi, uint8_t lcid)
void SetDlPdcpOutputFilename(std::string outputFilename)
std::vector< double > GetUlDelayStats(uint64_t imsi, uint8_t lcid)
std::vector< double > GetDlPduSizeStats(uint64_t imsi, uint8_t lcid)
a unique identifier for an interface.
void DlRxPdu(uint16_t cellId, uint64_t imsi, uint16_t rnti, uint8_t lcid, uint32_t packetSize, uint64_t delay)