View | Details | Raw Unified | Return to bug 891
Collapse All | Expand All

(-)a/src/devices/wimax/simple-ofdm-wimax-channel.h (-3 / +3 lines)
 Lines 50-66    Link Here 
50
  };
50
  };
51
  /**
51
  /**
52
   * \brief Creates a channel and sets the propagation model
52
   * \brief Creates a channel and sets the propagation model
53
   * \param propModel the propagation model to used
53
   * \param propModel the propagation model to use
54
   */
54
   */
55
  SimpleOfdmWimaxChannel (PropModel propModel);
55
  SimpleOfdmWimaxChannel (PropModel propModel);
56
  /**
56
  /**
57
   * \brief Sends a fec block to all connected physical dxdevices
57
   * \brief Sends a fec block to all connected physical devices
58
   * \param BlockTime the time needed to send the block
58
   * \param BlockTime the time needed to send the block
59
   * \param fecBlock the fec block being sent
59
   * \param fecBlock the fec block being sent
60
   * \param burstSize the size of the burst
60
   * \param burstSize the size of the burst
61
   * \param phy the sender device
61
   * \param phy the sender device
62
   * \param isFirstBlock true if this block is the first one, false otherwise
62
   * \param isFirstBlock true if this block is the first one, false otherwise
63
   * \param frequency the frequency on wich the block is sent
63
   * \param frequency the frequency on which the block is sent
64
   * \param modulationType the modulation used to send the fec block
64
   * \param modulationType the modulation used to send the fec block
65
   * \param direction uplink or downlink
65
   * \param direction uplink or downlink
66
   * \param txPowerDbm the transmission power
66
   * \param txPowerDbm the transmission power
(-)a/src/helper/wimax-helper.cc (-2 / +11 lines)
 Lines 80-86    Link Here 
80
      phy = CreateObject<SimpleOfdmWimaxPhy> ();
80
      phy = CreateObject<SimpleOfdmWimaxPhy> ();
81
      if (!m_channel)
81
      if (!m_channel)
82
        {
82
        {
83
          m_channel = CreateObject<SimpleOfdmWimaxChannel> ();
83
          m_channel = CreateObject<SimpleOfdmWimaxChannel> (SimpleOfdmWimaxChannel::COST231_PROPAGATION);
84
        }
84
        }
85
      break;
85
      break;
86
    default:
86
    default:
 Lines 91-96    Link Here 
91
  return phy;
91
  return phy;
92
}
92
}
93
93
94
void WimaxHelper::SetPropagationLossModel (SimpleOfdmWimaxChannel::PropModel propagationModel)
95
{
96
  if (!m_channel)
97
    {
98
      m_channel = CreateObject<SimpleOfdmWimaxChannel> ();
99
    }
100
  m_channel->GetObject<SimpleOfdmWimaxChannel> ()->SetPropagationModel (propagationModel);
101
}
102
94
Ptr<WimaxPhy> WimaxHelper::CreatePhy (PhyType phyType, char * SNRTraceFilePath, bool activateLoss)
103
Ptr<WimaxPhy> WimaxHelper::CreatePhy (PhyType phyType, char * SNRTraceFilePath, bool activateLoss)
95
{
104
{
96
  Ptr<WimaxPhy> phy;
105
  Ptr<WimaxPhy> phy;
 Lines 104-110    Link Here 
104
      sphy->ActivateLoss (activateLoss);
113
      sphy->ActivateLoss (activateLoss);
105
      if (!m_channel)
114
      if (!m_channel)
106
        {
115
        {
107
          m_channel = CreateObject<SimpleOfdmWimaxChannel> ();
116
          m_channel = CreateObject<SimpleOfdmWimaxChannel> (SimpleOfdmWimaxChannel::COST231_PROPAGATION);
108
        }
117
        }
109
      break;
118
      break;
110
    default:
119
    default:
(-)a/src/helper/wimax-helper.h (-8 / +24 lines)
 Lines 31-36    Link Here 
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"
 Lines 46-54    Link Here 
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:
 Lines 84-90    Link Here 
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
  /**
 Lines 133-139    Link Here 
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
 Lines 175-180    Link Here 
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
   *
 Lines 188-201    Link Here 
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
 Lines 206-212    Link Here 
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
 Lines 220-226    Link Here 
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
   *

Return to bug 891