|
|
| 31 |
#include "ns3/deprecated.h" |
31 |
#include "ns3/deprecated.h" |
| 32 |
#include "ns3/service-flow.h" |
32 |
#include "ns3/service-flow.h" |
| 33 |
#include "ns3/propagation-loss-model.h" |
33 |
#include "ns3/propagation-loss-model.h" |
|
|
34 |
#include "ns3/simple-ofdm-wimax-channel.h" |
| 34 |
#include "ns3/bs-uplink-scheduler.h" |
35 |
#include "ns3/bs-uplink-scheduler.h" |
| 35 |
#include "ns3/bs-uplink-scheduler-mbqos.h" |
36 |
#include "ns3/bs-uplink-scheduler-mbqos.h" |
| 36 |
#include "ns3/bs-uplink-scheduler-simple.h" |
37 |
#include "ns3/bs-uplink-scheduler-simple.h" |
|
|
| 46 |
class WimaxPhy; |
47 |
class WimaxPhy; |
| 47 |
class UplinkScheduler; |
48 |
class UplinkScheduler; |
| 48 |
|
49 |
|
|
|
50 |
|
| 49 |
/** |
51 |
/** |
| 50 |
* \brief build a set of WimaxNetDevice objects |
52 |
* \brief helps to manage and create WimaxNetDevice objects |
|
|
53 |
* |
| 54 |
* This class can help to create a large set of similar |
| 55 |
* WimaxNetDevice objects and to configure their attributes |
| 56 |
* during creation. |
| 51 |
*/ |
57 |
*/ |
|
|
58 |
|
| 52 |
class WimaxHelper :public PcapHelperForDevice, public AsciiTraceHelperForDevice |
59 |
class WimaxHelper :public PcapHelperForDevice, public AsciiTraceHelperForDevice |
| 53 |
{ |
60 |
{ |
| 54 |
public: |
61 |
public: |
|
|
| 84 |
/**< An migration-based uplink scheduler */ |
91 |
/**< An migration-based uplink scheduler */ |
| 85 |
|
92 |
|
| 86 |
}; |
93 |
}; |
| 87 |
|
94 |
/** |
|
|
95 |
* \brief Create a Wimax helper in an empty state. |
| 96 |
*/ |
| 88 |
WimaxHelper (void); |
97 |
WimaxHelper (void); |
| 89 |
~WimaxHelper (void); |
98 |
~WimaxHelper (void); |
| 90 |
/** |
99 |
/** |
|
|
| 133 |
* \param c a set of nodes |
142 |
* \param c a set of nodes |
| 134 |
* \param type device type to create |
143 |
* \param type device type to create |
| 135 |
* \param phyType a phy to use |
144 |
* \param phyType a phy to use |
| 136 |
* \param schedulerType a scheduling mechanism |
145 |
* \param schedulerType the type of the scheduling algorithm to install |
| 137 |
* |
146 |
* |
| 138 |
* For each of the input nodes, a new WiMAX net device (either |
147 |
* For each of the input nodes, a new WiMAX net device (either |
| 139 |
* ns3::SubscriberStationNetDevice or ns3::BaseStationNetDevice |
148 |
* ns3::SubscriberStationNetDevice or ns3::BaseStationNetDevice |
|
|
| 175 |
double frameDuration); |
184 |
double frameDuration); |
| 176 |
|
185 |
|
| 177 |
/** |
186 |
/** |
|
|
187 |
* \brief Set the propagation and loss model of the channel. By default the channel |
| 188 |
* uses a COST231 propagation and loss model. |
| 189 |
* \param propagationModel The propagation and loss model to set |
| 190 |
*/ |
| 191 |
void SetPropagationLossModel (SimpleOfdmWimaxChannel::PropModel propagationModel); |
| 192 |
|
| 193 |
/** |
| 178 |
* \param phyType WiMAX Physical layer type |
194 |
* \param phyType WiMAX Physical layer type |
| 179 |
* \return WiMAX Phy object |
195 |
* \return WiMAX Phy object |
| 180 |
* |
196 |
* |
|
|
| 188 |
* \param activateLoss set to 1 to activate losses 0 otherwise |
204 |
* \param activateLoss set to 1 to activate losses 0 otherwise |
| 189 |
* \return WiMAX Phy object |
205 |
* \return WiMAX Phy object |
| 190 |
* |
206 |
* |
| 191 |
* Creates a physical layer without a channel |
207 |
* Creates a physical layer without creating a channel |
| 192 |
*/ |
208 |
*/ |
| 193 |
Ptr<WimaxPhy> CreatePhyWithoutChannel (PhyType phyType, char * SNRTraceFilePath, bool activateLoss); |
209 |
Ptr<WimaxPhy> CreatePhyWithoutChannel (PhyType phyType, char * SNRTraceFilePath, bool activateLoss); |
| 194 |
|
210 |
|
| 195 |
/** |
211 |
/** |
| 196 |
* \param phyType WiMAX Physical layer type |
212 |
* \param phyType WiMAX Physical layer type |
| 197 |
* \param SNRTraceFilePath of the repository containing the SNR traces files |
213 |
* \param SNRTraceFilePath the path to the repository containing the SNR traces files |
| 198 |
* \param activateLoss set to 1 to activate losses 0 otherwise |
214 |
* \param activateLoss set to 1 if you want ton activate losses 0 otherwise |
| 199 |
* \return WiMAX Phy object |
215 |
* \return WiMAX Phy object |
| 200 |
* |
216 |
* |
| 201 |
* Creates a physical layer |
217 |
* Creates a physical layer |
|
|
| 206 |
* \param deviceType Device type to create. |
222 |
* \param deviceType Device type to create. |
| 207 |
* \param phyType PHY type to create. |
223 |
* \param phyType PHY type to create. |
| 208 |
* \param channel A channel to use. |
224 |
* \param channel A channel to use. |
| 209 |
* \param schedulerType The scheduling mechanism. |
225 |
* \param schedulerType The scheduling mechanism to install on the device. |
| 210 |
* |
226 |
* |
| 211 |
* For each of the input nodes, a new WiMAX net device (either |
227 |
* For each of the input nodes, a new WiMAX net device (either |
| 212 |
* ns3::SubscriberStationNetDevice or ns3::BaseStationNetDevice |
228 |
* ns3::SubscriberStationNetDevice or ns3::BaseStationNetDevice |
|
|
| 220 |
|
236 |
|
| 221 |
/** |
237 |
/** |
| 222 |
* \brief Creates a transport service flow. |
238 |
* \brief Creates a transport service flow. |
| 223 |
* \param direction the Direction of the service flow: UP or DOWN. |
239 |
* \param direction the direction of the service flow: UP or DOWN. |
| 224 |
* \param schedulinType The service scheduling type to be used: UGS, RTPS, NRTPS, BE |
240 |
* \param schedulinType The service scheduling type to be used: UGS, RTPS, NRTPS, BE |
| 225 |
* \param classifier The classifier to be used for this service flow |
241 |
* \param classifier The classifier to be used for this service flow |
| 226 |
* |
242 |
* |