5G-LENA nr-v3.3-81-g75c7590d
The 5G/NR module for the ns-3 simulator
Loading...
Searching...
No Matches
ns3::BandwidthPartGnb Class Reference

GNB bandwidth part representation. More...

#include "bandwidth-part-gnb.h"

+ Inheritance diagram for ns3::BandwidthPartGnb:
+ Collaboration diagram for ns3::BandwidthPartGnb:

Public Member Functions

uint16_t GetCellId () const
 
Ptr< NrGnbMacGetMac ()
 
Ptr< NrGnbPhyGetPhy ()
 
Ptr< NrMacSchedulerGetScheduler ()
 
void SetAsPrimary (bool primaryCarrier)
 Set this bandwidth part as primary.
 
void SetCellId (uint16_t cellId)
 
void SetDlBandwidth (uint16_t bw) override
 
void SetMac (Ptr< NrGnbMac > s)
 
void SetNrMacScheduler (Ptr< NrMacScheduler > s)
 
void SetPhy (Ptr< NrGnbPhy > s)
 
void SetUlBandwidth (uint16_t bw) override
 
- Public Member Functions inherited from ns3::NrComponentCarrier
void DoDispose () override
 
uint32_t GetCsgId () const
 Returns the CSG ID of the eNodeB.
 
bool GetCsgIndication () const
 Returns the CSG indication flag of the eNodeB.
 
uint16_t GetDlBandwidth () const
 
uint32_t GetDlEarfcn () const
 
uint16_t GetUlBandwidth () const
 
uint32_t GetUlEarfcn () const
 
bool IsPrimary () const
 Checks if the carrier is the primary carrier.
 
void SetAsPrimary (bool primaryCarrier)
 Set as primary carrier.
 
void SetCsgId (uint32_t csgId)
 Associate the eNodeB device with a particular CSG.
 
void SetCsgIndication (bool csgIndication)
 Enable or disable the CSG indication flag.
 
void SetDlEarfcn (uint32_t earfcn)
 
void SetUlEarfcn (uint32_t earfcn)
 

Static Public Member Functions

static TypeId GetTypeId ()
 Get the type ID.
 
- Static Public Member Functions inherited from ns3::NrComponentCarrier
static TypeId GetTypeId ()
 Get the type ID.
 

Protected Member Functions

void DoDispose () override
 DoDispose method inherited from Object.
 

Additional Inherited Members

- Protected Attributes inherited from ns3::NrComponentCarrier
uint32_t m_csgId {0}
 CSG ID.
 
bool m_csgIndication {false}
 CSG indication.
 
uint16_t m_dlBandwidth {0}
 downlink bandwidth in RBs *‍/
 
uint32_t m_dlEarfcn {0}
 downlink carrier frequency *‍/
 
bool m_primaryCarrier {false}
 whether the carrier is primary
 
uint16_t m_ulBandwidth {0}
 uplink bandwidth in RBs *‍/
 
uint32_t m_ulEarfcn {0}
 uplink carrier frequency *‍/
 

Detailed Description

GNB bandwidth part representation.

Defines a single bandwidth part for the GNB.

Config Paths

ns3::BandwidthPartGnb is accessible through the following paths with Config::Set and Config::Connect:

Attributes

  • NrGnbPhy: The PHY associated to this GnbNetDevice
    • Set with class: ns3::PointerValue
    • Underlying type: ns3::Ptr< ns3::NrGnbPhy>
    • Initial value: 0
    • Flags: construct write read
  • NrGnbMac: The MAC associated to this GnbNetDevice
    • Set with class: ns3::PointerValue
    • Underlying type: ns3::Ptr< ns3::NrGnbMac>
    • Initial value: 0
    • Flags: construct write read
  • MacScheduler: The scheduler associated to this GnbNetDevice
    • Set with class: ns3::PointerValue
    • Underlying type: ns3::Ptr< ns3::NrMacScheduler>
    • Initial value: 0
    • Flags: construct write read

Attributes defined in parent class ns3::NrComponentCarrier

  • UlBandwidth: Uplink Transmission Bandwidth Configuration in number of Resource Blocks
    • Set with class: ns3::UintegerValue
    • Underlying type: uint8_t 0:255
    • Initial value: 25
    • Flags: construct write read
  • DlBandwidth: Downlink Transmission Bandwidth Configuration in number of Resource Blocks
    • Set with class: ns3::UintegerValue
    • Underlying type: uint8_t 0:255
    • Initial value: 25
    • Flags: construct write read
  • DlEarfcn: Downlink E-UTRA Absolute Radio Frequency Channel Number (EARFCN) as per 3GPP 36.101 Section 5.7.3.
    • Set with class: ns3::UintegerValue
    • Underlying type: uint32_t 0:262143
    • Initial value: 100
    • Flags: construct write read
  • UlEarfcn: Uplink E-UTRA Absolute Radio Frequency Channel Number (EARFCN) as per 3GPP 36.101 Section 5.7.3.
    • Set with class: ns3::UintegerValue
    • Underlying type: uint32_t 18000:262143
    • Initial value: 18100
    • Flags: construct write read
  • CsgId: The Closed Subscriber Group (CSG) identity that this eNodeB belongs to
    • Set with class: ns3::UintegerValue
    • Underlying type: uint32_t 0:4294967295
    • Initial value: 0
    • Flags: construct write read
  • CsgIndication: If true, only UEs which are members of the CSG (i.e. same CSG ID) can gain access to the eNodeB, therefore enforcing closed access mode. Otherwise, the eNodeB operates as a non-CSG cell and implements open access mode.
    • Set with class: ns3::BooleanValue
    • Underlying type: bool
    • Initial value: false
    • Flags: construct write read
  • PrimaryCarrier: If true, this Carrier Component will be the Primary Carrier Component (PCC) Only one PCC per eNodeB is (currently) allowed
    • Set with class: ns3::BooleanValue
    • Underlying type: bool
    • Initial value: false
    • Flags: construct write read

No TraceSources are defined for this type.
Size of this type is 104 bytes (on a 64-bit architecture).

Definition at line 26 of file bandwidth-part-gnb.h.

Constructor & Destructor Documentation

◆ BandwidthPartGnb()

ns3::BandwidthPartGnb::BandwidthPartGnb ( )

Definition at line 45 of file bandwidth-part-gnb.cc.

◆ ~BandwidthPartGnb()

ns3::BandwidthPartGnb::~BandwidthPartGnb ( )
override

Definition at line 52 of file bandwidth-part-gnb.cc.

Member Function Documentation

◆ DoDispose()

void ns3::BandwidthPartGnb::DoDispose ( )
overrideprotected

DoDispose method inherited from Object.

Definition at line 58 of file bandwidth-part-gnb.cc.

◆ GetCellId()

uint16_t ns3::BandwidthPartGnb::GetCellId ( ) const

Get cell identifier

Returns
cell identifier

Definition at line 124 of file bandwidth-part-gnb.cc.

◆ GetMac()

Ptr< NrGnbMac > ns3::BandwidthPartGnb::GetMac ( )
Returns
a pointer to the MAC layer.

Definition at line 85 of file bandwidth-part-gnb.cc.

◆ GetPhy()

Ptr< NrGnbPhy > ns3::BandwidthPartGnb::GetPhy ( )
Returns
a pointer to the physical layer.

Definition at line 70 of file bandwidth-part-gnb.cc.

◆ GetScheduler()

Ptr< NrMacScheduler > ns3::BandwidthPartGnb::GetScheduler ( )
Returns
a pointer to the Mac Scheduler.

Definition at line 99 of file bandwidth-part-gnb.cc.

◆ GetTypeId()

TypeId ns3::BandwidthPartGnb::GetTypeId ( )
static

Get the type ID.

Returns
the object TypeId

Definition at line 22 of file bandwidth-part-gnb.cc.

◆ SetAsPrimary()

void ns3::BandwidthPartGnb::SetAsPrimary ( bool  primaryCarrier)

Set this bandwidth part as primary.

Parameters
primaryCarriertrue or false.

Unfortunately, for the "false" value, the method will do nothing. Every carrier starts as "not primary", so please, if you have to use SetAsPrimary (false) think two times.

Definition at line 113 of file bandwidth-part-gnb.cc.

◆ SetCellId()

void ns3::BandwidthPartGnb::SetCellId ( uint16_t  cellId)

Set physical cell identifier

Parameters
cellIdcell identifier

Definition at line 130 of file bandwidth-part-gnb.cc.

◆ SetDlBandwidth()

void ns3::BandwidthPartGnb::SetDlBandwidth ( uint16_t  bw)
inlineoverridevirtual
Parameters
bwthe downlink bandwidth in RBs

Reimplemented from ns3::NrComponentCarrier.

Definition at line 71 of file bandwidth-part-gnb.h.

References ns3::NrComponentCarrier::m_dlBandwidth.

◆ SetMac()

void ns3::BandwidthPartGnb::SetMac ( Ptr< NrGnbMac s)

Set the NrGnbMac

Parameters
sa pointer to the NrGnbMac

Definition at line 92 of file bandwidth-part-gnb.cc.

◆ SetNrMacScheduler()

void ns3::BandwidthPartGnb::SetNrMacScheduler ( Ptr< NrMacScheduler s)

Set the NrMacScheduler Algorithm

Parameters
sa pointer to the NrMacScheduler

Definition at line 106 of file bandwidth-part-gnb.cc.

◆ SetPhy()

void ns3::BandwidthPartGnb::SetPhy ( Ptr< NrGnbPhy s)

Set the NrGnbPhy

Parameters
sa pointer to the NrGnbPhy

Definition at line 77 of file bandwidth-part-gnb.cc.

◆ SetUlBandwidth()

void ns3::BandwidthPartGnb::SetUlBandwidth ( uint16_t  bw)
inlineoverridevirtual
Parameters
bwthe uplink bandwidth in RBs

Reimplemented from ns3::NrComponentCarrier.

Definition at line 76 of file bandwidth-part-gnb.h.

References ns3::NrComponentCarrier::m_ulBandwidth.


The documentation for this class was generated from the following files: