A Discrete-Event Network Simulator
API
lte-control-messages.cc
Go to the documentation of this file.
1/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
2/*
3 * Copyright (c) 2010 TELEMATICS LAB, DEE - Politecnico di Bari
4 *
5 * This program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License version 2 as
7 * published by the Free Software Foundation;
8 *
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
13 *
14 * You should have received a copy of the GNU General Public License
15 * along with this program; if not, write to the Free Software
16 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17 *
18 * Author: Giuseppe Piro <g.piro@poliba.it>
19 * Marco Miozzo <marco.miozzo@cttc.es>
20 */
21
23#include "ns3/address-utils.h"
24#include "ns3/uinteger.h"
25#include "ns3/log.h"
26#include "lte-net-device.h"
27#include "lte-ue-net-device.h"
28
29namespace ns3 {
30
31NS_LOG_COMPONENT_DEFINE ("LteControlMessage");
32
34{
35}
36
37
39{
40}
41
42
43void
45{
46 m_type = type;
47}
48
49
52{
53 return m_type;
54}
55
56
57// ----------------------------------------------------------------------------------------------------------
58
59
61{
63}
64
65
67{
68
69}
70
71void
73{
74 m_dci = dci;
75
76}
77
78
81{
82 return m_dci;
83}
84
85
86// ----------------------------------------------------------------------------------------------------------
87
88
90{
92}
93
94
96{
97
98}
99
100void
102{
103 m_dci = dci;
104
105}
106
107
110{
111 return m_dci;
112}
113
114
115// ----------------------------------------------------------------------------------------------------------
116
117
119{
121}
122
123
125{
126
127}
128
129void
131{
132 m_dlCqi = dlcqi;
133
134}
135
136
139{
140 return m_dlCqi;
141}
142
143
144
145// ----------------------------------------------------------------------------------------------------------
146
147
149{
151}
152
153
155{
156
157}
158
159void
161{
162 m_bsr = bsr;
163
164}
165
166
169{
170 return m_bsr;
171}
172
173
174
175// ----------------------------------------------------------------------------------------------------------
176
177
179{
181}
182
183void
185{
186 m_rapId = rapId;
187}
188
191{
192 return m_rapId;
193}
194
195
196// ----------------------------------------------------------------------------------------------------------
197
198
200{
202}
203
204
205void
207{
208 m_raRnti = raRnti;
209}
210
211uint16_t
213{
214 return m_raRnti;
215}
216
217
218void
220{
221 m_rarList.push_back (rar);
222}
223
224std::list<RarLteControlMessage::Rar>::const_iterator
226{
227 return m_rarList.begin ();
228}
229
230std::list<RarLteControlMessage::Rar>::const_iterator
232{
233 return m_rarList.end ();
234}
235
236
237// ----------------------------------------------------------------------------------------------------------
238
239
240
242{
244}
245
246
247void
249{
250 m_mib = mib;
251}
252
255{
256 return m_mib;
257}
258
259
260// ----------------------------------------------------------------------------------------------------------
261
262
263
265{
267}
268
269
270void
272{
273 m_sib1 = sib1;
274}
275
278{
279 return m_sib1;
280}
281
282
283// ---------------------------------------------------------------------------
284
285
286
288{
290}
291
292
294{
295
296}
297
298void
300{
302}
303
304
307{
308 return m_dlInfoListElement;
309}
310
311
312} // namespace ns3
313
MacCeListElement_s m_bsr
BSR.
MacCeListElement_s GetBsr(void)
Get BSR information.
void SetBsr(MacCeListElement_s bsr)
add a BSR feedback record into the message.
CqiListElement_s m_dlCqi
DL CQI.
void SetDlCqi(CqiListElement_s dlcqi)
add a DL-CQI feedback record into the message.
CqiListElement_s GetDlCqi(void)
Get DL cqi information.
void SetDci(DlDciListElement_s dci)
add a DCI into the message
DlDciListElement_s GetDci(void)
Get dic information.
DlDciListElement_s m_dci
DCI.
void SetDlHarqFeedback(DlInfoListElement_s m)
add a DL HARQ feedback record into the message.
DlInfoListElement_s m_dlInfoListElement
DL info list element.
DlInfoListElement_s GetDlHarqFeedback(void)
Get DL HARQ information.
MessageType GetMessageType(void)
Get the type of the message.
MessageType m_type
message type
MessageType
The type of the message NOTE: The messages sent by UE are filtered by the LteEnbPhy::ReceiveLteContro...
void SetMessageType(MessageType type)
Set the type of the message.
void SetMib(LteRrcSap::MasterInformationBlock mib)
Replace the MIB content of this control message.
LteRrcSap::MasterInformationBlock m_mib
MIB.
LteRrcSap::MasterInformationBlock GetMib() const
Retrieve the MIB content from this control message.
MibLteControlMessage(void)
Create a new instance of MIB control message.
void SetRapId(uint32_t rapid)
Set the Random Access Preamble Identifier (RAPID), see 3GPP TS 36.321 6.2.2.
std::list< Rar >::const_iterator RarListEnd() const
std::list< Rar >::const_iterator RarListBegin() const
std::list< Rar > m_rarList
RAR list.
void SetRaRnti(uint16_t raRnti)
void AddRar(Rar rar)
add a RAR to the MAC PDU, see 3GPP TS 36.321 6.2.3
Sib1LteControlMessage(void)
Create a new instance of SIB1 control message.
void SetSib1(LteRrcSap::SystemInformationBlockType1 sib1)
Replace the SIB1 content of this control message.
LteRrcSap::SystemInformationBlockType1 m_sib1
SIB1.
LteRrcSap::SystemInformationBlockType1 GetSib1() const
Retrieve the SIB1 content from this control message.
void SetDci(UlDciListElement_s dci)
add a DCI into the message
UlDciListElement_s GetDci(void)
Get dic information.
UlDciListElement_s m_dci
DCI.
#define NS_LOG_COMPONENT_DEFINE(name)
Define a Log component with a specific name.
Definition: log.h:205
Every class exported by the ns3 library is enclosed in the ns3 namespace.
See section 4.3.24 cqiListElement.
See section 4.3.1 dlDciListElement.
Definition: ff-mac-common.h:94
See section 4.3.23 dlInfoListElement.
MasterInformationBlock structure.
Definition: lte-rrc-sap.h:588
SystemInformationBlockType1 structure.
Definition: lte-rrc-sap.h:595
See section 4.3.14 macCEListElement.
a MAC RAR and the corresponding RAPID subheader
See section 4.3.2 ulDciListElement.