5G-LENA nr-v4.0
The 5G/NR module for the ns-3 simulator
Loading...
Searching...
No Matches
bandwidth-part-ue.h
1// Copyright (c) 2017 Centre Tecnologic de Telecomunicacions de Catalunya (CTTC)
2//
3// SPDX-License-Identifier: GPL-2.0-only
4
5#ifndef COMPONENT_CARRIER_NR_UE_H
6#define COMPONENT_CARRIER_NR_UE_H
7
8#include "nr-component-carrier.h"
9#include "nr-ue-phy.h"
10
11#include "ns3/nstime.h"
12#include "ns3/object.h"
13
14namespace ns3
15{
16
17class NrUeMac;
18
25{
26 public:
31 static TypeId GetTypeId();
32
37
41 ~BandwidthPartUe() override;
42
46 Ptr<NrUePhy> GetPhy() const;
47
51 Ptr<NrUeMac> GetMac() const;
52
57 void SetPhy(Ptr<NrUePhy> s);
58
63 void SetMac(Ptr<NrUeMac> s);
64
65 void SetDlBandwidth(uint16_t bw) override
66 {
67 m_dlBandwidth = bw;
68 }
69
70 void SetUlBandwidth(uint16_t bw) override
71 {
72 m_ulBandwidth = bw;
73 }
74
75 protected:
79 void DoDispose() override;
80
81 private:
82 Ptr<NrUePhy> m_phy;
83 Ptr<NrUeMac> m_mac;
84};
85
86} // namespace ns3
87
88#endif /* COMPONENT_CARRIER_UE_H */
Bandwidth part representation for a UE.
void DoDispose() override
DoDispose method inherited from Object.
Ptr< NrUePhy > GetPhy() const
static TypeId GetTypeId()
Get the type ID.
Ptr< NrUeMac > GetMac() const
void SetPhy(Ptr< NrUePhy > s)
void SetMac(Ptr< NrUeMac > s)
void SetDlBandwidth(uint16_t bw) override
BandwidthPartUe()
BandwidthPartUe constructor.
void SetUlBandwidth(uint16_t bw) override
~BandwidthPartUe() override
~BandwidthPartUe
uint16_t m_dlBandwidth
downlink bandwidth in RBs *‍/
uint16_t m_ulBandwidth
uplink bandwidth in RBs *‍/