5G-LENA nr-v3.1-69-g2dd513a7
The 5G/NR module for the ns-3 simulator
Loading...
Searching...
No Matches
nr-mac-scheduling-stats.h
1// Copyright (c) 2021 Centre Tecnologic de Telecomunicacions de Catalunya (CTTC)
2//
3// SPDX-License-Identifier: GPL-2.0-only
4
5#ifndef NR_MAC_SCHEDULING_STATS_H_
6#define NR_MAC_SCHEDULING_STATS_H_
7
8#include "nr-stats-calculator.h"
9
10#include "ns3/nr-gnb-mac.h"
11#include "ns3/nstime.h"
12#include "ns3/uinteger.h"
13
14#include <fstream>
15#include <string>
16
17namespace ns3
18{
19
36{
37 public:
42
46 ~NrMacSchedulingStats() override;
47
48 // Inherited from ns3::Object
53 static TypeId GetTypeId();
54
60 void SetUlOutputFilename(std::string outputFilename);
61
66 std::string GetUlOutputFilename();
67
73 void SetDlOutputFilename(std::string outputFilename);
74
79 std::string GetDlOutputFilename();
80
88 void DlScheduling(uint16_t cellId, uint64_t imsi, const NrSchedulingCallbackInfo& traceInfo);
89
97 void UlScheduling(uint16_t cellId, uint64_t imsi, const NrSchedulingCallbackInfo& traceInfo);
98
107 static void DlSchedulingCallback(Ptr<NrMacSchedulingStats> macStats,
108 std::string path,
109 NrSchedulingCallbackInfo traceInfo);
110
118 static void UlSchedulingCallback(Ptr<NrMacSchedulingStats> macStats,
119 std::string path,
120 NrSchedulingCallbackInfo traceInfo);
121
122 private:
128 std::ofstream outDlFile;
134 std::ofstream outUlFile;
135};
136
137} // namespace ns3
138
139#endif /* NR_MAC_SCHEDULING_STATS_H_ */
void DlScheduling(uint16_t cellId, uint64_t imsi, const NrSchedulingCallbackInfo &traceInfo)
void SetDlOutputFilename(std::string outputFilename)
void SetUlOutputFilename(std::string outputFilename)
void UlScheduling(uint16_t cellId, uint64_t imsi, const NrSchedulingCallbackInfo &traceInfo)
static void UlSchedulingCallback(Ptr< NrMacSchedulingStats > macStats, std::string path, NrSchedulingCallbackInfo traceInfo)
static void DlSchedulingCallback(Ptr< NrMacSchedulingStats > macStats, std::string path, NrSchedulingCallbackInfo traceInfo)
NrSchedulingCallbackInfo structure.