A Discrete-Event Network Simulator
API
lte-spectrum-signal-parameters.cc
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2011 CTTC
3  *
4  * This program is free software; you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License version 2 as
6  * published by the Free Software Foundation;
7  *
8  * This program is distributed in the hope that it will be useful,
9  * but WITHOUT ANY WARRANTY; without even the implied warranty of
10  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11  * GNU General Public License for more details.
12  *
13  * You should have received a copy of the GNU General Public License
14  * along with this program; if not, write to the Free Software
15  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
16  *
17  * Author: Nicola Baldo <nbaldo@cttc.es>
18  * Modified by Marco Miozzo <mmiozzo@cttc.es> (add data and ctrl diversity)
19  */
20 
22 
23 #include "lte-control-messages.h"
24 
25 #include <ns3/log.h>
26 #include <ns3/packet-burst.h>
27 #include <ns3/ptr.h>
28 
29 namespace ns3
30 {
31 
32 NS_LOG_COMPONENT_DEFINE("LteSpectrumSignalParameters");
33 
35 {
36  NS_LOG_FUNCTION(this);
37 }
38 
41 {
42  NS_LOG_FUNCTION(this << &p);
43  packetBurst = p.packetBurst->Copy();
44 }
45 
48 {
49  NS_LOG_FUNCTION(this);
50  return Create<LteSpectrumSignalParameters>(*this);
51 }
52 
54 {
55  NS_LOG_FUNCTION(this);
56 }
57 
61 {
62  NS_LOG_FUNCTION(this << &p);
63  cellId = p.cellId;
64  if (p.packetBurst)
65  {
66  packetBurst = p.packetBurst->Copy();
67  }
69 }
70 
73 {
74  NS_LOG_FUNCTION(this);
75  return Create<LteSpectrumSignalParametersDataFrame>(*this);
76 }
77 
79 {
80  NS_LOG_FUNCTION(this);
81 }
82 
86 {
87  NS_LOG_FUNCTION(this << &p);
88  cellId = p.cellId;
89  pss = p.pss;
91 }
92 
95 {
96  NS_LOG_FUNCTION(this);
97  return Create<LteSpectrumSignalParametersDlCtrlFrame>(*this);
98 }
99 
101 {
102  NS_LOG_FUNCTION(this);
103 }
104 
108 {
109  NS_LOG_FUNCTION(this << &p);
110  cellId = p.cellId;
111 }
112 
115 {
116  NS_LOG_FUNCTION(this);
117  return Create<LteSpectrumSignalParametersUlSrsFrame>(*this);
118 }
119 
120 } // namespace ns3
#define NS_LOG_COMPONENT_DEFINE(name)
Define a Log component with a specific name.
Definition: log.h:202
#define NS_LOG_FUNCTION(parameters)
If log level LOG_FUNCTION is enabled, this macro will output all input parameters separated by ",...
Every class exported by the ns3 library is enclosed in the ns3 namespace.
Signal parameters for Lte Data Frame (PDSCH), and eventually after some control messages through othe...
Ptr< SpectrumSignalParameters > Copy() const override
make a "virtual" copy of this class, where "virtual" refers to the fact that if the actual object is ...
std::list< Ptr< LteControlMessage > > ctrlMsgList
the control message list
Ptr< PacketBurst > packetBurst
The packet burst being transmitted with this signal.
Signal parameters for Lte DL Ctrl Frame (RS, PCFICH and PDCCH)
Ptr< SpectrumSignalParameters > Copy() const override
make a "virtual" copy of this class, where "virtual" refers to the fact that if the actual object is ...
std::list< Ptr< LteControlMessage > > ctrlMsgList
control message list
Ptr< PacketBurst > packetBurst
The packet burst being transmitted with this signal.
Ptr< SpectrumSignalParameters > Copy() const override
make a "virtual" copy of this class, where "virtual" refers to the fact that if the actual object is ...
Ptr< SpectrumSignalParameters > Copy() const override
make a "virtual" copy of this class, where "virtual" refers to the fact that if the actual object is ...
This struct provides the generic signal representation to be used by all wireless technologies.