5G-LENA nr-v3.3-159-ga6832aa7
The 5G/NR module for the ns-3 simulator
Loading...
Searching...
No Matches
nr-radio-bearer-info.cc
1// Copyright (c) 2011 Centre Tecnologic de Telecomunicacions de Catalunya (CTTC)
2//
3// SPDX-License-Identifier: GPL-2.0-only
4//
5// Author: Nicola Baldo <nbaldo@cttc.es>
6
7#include "nr-radio-bearer-info.h"
8
9#include "nr-pdcp.h"
10#include "nr-rlc.h"
11
12#include "ns3/log.h"
13
14namespace ns3
15{
16
17NS_OBJECT_ENSURE_REGISTERED(NrRadioBearerInfo);
18
19NrRadioBearerInfo::NrRadioBearerInfo()
20{
21}
22
23NrRadioBearerInfo::~NrRadioBearerInfo()
24{
25}
26
27TypeId
29{
30 static TypeId tid =
31 TypeId("ns3::NrRadioBearerInfo").SetParent<Object>().AddConstructor<NrRadioBearerInfo>();
32 return tid;
33}
34
35TypeId
37{
38 static TypeId tid =
39 TypeId("ns3::NrDataRadioBearerInfo")
40 .SetParent<NrRadioBearerInfo>()
41 .AddConstructor<NrDataRadioBearerInfo>()
42 .AddAttribute("DrbIdentity",
43 "The id of this Data Radio Bearer",
44 TypeId::ATTR_GET, // allow only getting it.
45 UintegerValue(0), // unused (attribute is read-only
46 MakeUintegerAccessor(&NrDataRadioBearerInfo::m_drbIdentity),
47 MakeUintegerChecker<uint8_t>())
48 .AddAttribute("EpsBearerIdentity",
49 "The id of the EPS bearer corresponding to this Data Radio Bearer",
50 TypeId::ATTR_GET, // allow only getting it.
51 UintegerValue(0), // unused (attribute is read-only
52 MakeUintegerAccessor(&NrDataRadioBearerInfo::m_epsBearerIdentity),
53 MakeUintegerChecker<uint8_t>())
54 .AddAttribute("logicalChannelIdentity",
55 "The id of the Logical Channel corresponding to this Data Radio Bearer",
56 TypeId::ATTR_GET, // allow only getting it.
57 UintegerValue(0), // unused (attribute is read-only
59 MakeUintegerChecker<uint8_t>())
60 .AddAttribute("NrRlc",
61 "RLC instance of the radio bearer.",
62 PointerValue(),
63 MakePointerAccessor(&NrRadioBearerInfo::m_rlc),
64 MakePointerChecker<NrRlc>())
65 .AddAttribute("NrPdcp",
66 "PDCP instance of the radio bearer.",
67 PointerValue(),
68 MakePointerAccessor(&NrRadioBearerInfo::m_pdcp),
69 MakePointerChecker<NrPdcp>());
70 return tid;
71}
72
73TypeId
75{
76 static TypeId tid =
77 TypeId("ns3::NrSignalingRadioBearerInfo")
78 .SetParent<NrRadioBearerInfo>()
79 .AddConstructor<NrSignalingRadioBearerInfo>()
80 .AddAttribute("SrbIdentity",
81 "The id of this Signaling Radio Bearer",
82 TypeId::ATTR_GET, // allow only getting it.
83 UintegerValue(0), // unused (attribute is read-only
84 MakeUintegerAccessor(&NrSignalingRadioBearerInfo::m_srbIdentity),
85 MakeUintegerChecker<uint8_t>())
86 .AddAttribute("NrRlc",
87 "RLC instance of the radio bearer.",
88 PointerValue(),
89 MakePointerAccessor(&NrRadioBearerInfo::m_rlc),
90 MakePointerChecker<NrRlc>())
91 .AddAttribute("NrPdcp",
92 "PDCP instance of the radio bearer.",
93 PointerValue(),
94 MakePointerAccessor(&NrRadioBearerInfo::m_pdcp),
95 MakePointerChecker<NrPdcp>());
96 return tid;
97}
98
99} // namespace ns3
static TypeId GetTypeId()
Get the type ID.
uint8_t m_logicalChannelIdentity
logical channel identity
uint8_t m_epsBearerIdentity
EPS bearer identity.
uint8_t m_drbIdentity
DRB identity.
static TypeId GetTypeId()
Get the type ID.
static TypeId GetTypeId()
Get the type ID.