|
ns-3
|
helps to manage and create WimaxNetDevice objects More...
#include <wimax-helper.h>


Public Types | |
| enum | NetDeviceType { DEVICE_TYPE_SUBSCRIBER_STATION, DEVICE_TYPE_BASE_STATION } |
| enum | PhyType { SIMPLE_PHY_TYPE_OFDM } |
| enum | SchedulerType { SCHED_TYPE_SIMPLE, SCHED_TYPE_RTPS, SCHED_TYPE_MBQOS } |
Public Member Functions | |
| WimaxHelper (void) | |
| Create a Wimax helper in an empty state. | |
| Ptr< WimaxPhy > | CreatePhy (PhyType phyType) |
| Ptr< UplinkScheduler > | CreateUplinkScheduler (SchedulerType schedulerType) |
| Ptr< BSScheduler > | CreateBSScheduler (SchedulerType schedulerType) |
| NetDeviceContainer | Install (NodeContainer c, NetDeviceType type, PhyType phyType, SchedulerType schedulerType) |
| NetDeviceContainer | Install (NodeContainer c, NetDeviceType deviceType, PhyType phyType, Ptr< WimaxChannel > channel, SchedulerType schedulerType) |
| NetDeviceContainer | Install (NodeContainer c, NetDeviceType deviceType, PhyType phyType, SchedulerType schedulerType, double frameDuration) |
| void | SetPropagationLossModel (SimpleOfdmWimaxChannel::PropModel propagationModel) |
| Set the propagation and loss model of the channel. By default the channel uses a COST231 propagation and loss model. | |
| Ptr< WimaxPhy > | CreatePhyWithoutChannel (PhyType phyType) |
| Ptr< WimaxPhy > | CreatePhyWithoutChannel (PhyType phyType, char *SNRTraceFilePath, bool activateLoss) |
| Ptr< WimaxPhy > | CreatePhy (PhyType phyType, char *SNRTraceFilePath, bool activateLoss) |
| Ptr< WimaxNetDevice > | Install (Ptr< Node > node, NetDeviceType deviceType, PhyType phyType, Ptr< WimaxChannel > channel, SchedulerType schedulerType) |
| ServiceFlow | CreateServiceFlow (ServiceFlow::Direction direction, ServiceFlow::SchedulingType schedulinType, IpcsClassifierRecord classifier) |
| Creates a transport service flow. | |
Static Public Member Functions | |
| static void | EnableAsciiForConnection (Ptr< OutputStreamWrapper > oss, uint32_t nodeid, uint32_t deviceid, char *netdevice, char *connection) |
| Enable ascii trace output on the indicated net device for a given connection. | |
| static void | EnableLogComponents (void) |
helps to manage and create WimaxNetDevice objects
This class can help to create a large set of similar WimaxNetDevice objects and to configure their attributes during creation.
WiMAX Physical layer WiMAX Physical layers with different levels of detail
Scheduler Type Different implementations of uplink/downlink scheduler
| Ptr< BSScheduler > ns3::WimaxHelper::CreateBSScheduler | ( | SchedulerType | schedulerType | ) |
| schedulerType | Scheduling mechanism |
Creates a downlink scheduler to be used by base station according to selected scheduling mechanism.
References NS_FATAL_ERROR, SCHED_TYPE_MBQOS, SCHED_TYPE_RTPS, and SCHED_TYPE_SIMPLE.
Referenced by Install().
| Ptr< WimaxPhy > ns3::WimaxHelper::CreatePhy | ( | PhyType | phyType | ) |
| phyType | WiMAX Physical layer type |
Creates a physical layer object to be used in simulation.
References NS_FATAL_ERROR.
Referenced by Install().
| Ptr< WimaxPhy > ns3::WimaxHelper::CreatePhy | ( | PhyType | phyType, |
| char * | SNRTraceFilePath, | ||
| bool | activateLoss | ||
| ) |
| phyType | WiMAX Physical layer type |
| SNRTraceFilePath | the path to the repository containing the SNR traces files |
| activateLoss | set to 1 if you want ton activate losses 0 otherwise |
Creates a physical layer
References NS_FATAL_ERROR.
| Ptr< WimaxPhy > ns3::WimaxHelper::CreatePhyWithoutChannel | ( | PhyType | phyType | ) |
| phyType | WiMAX Physical layer type |
Creates a physical layer without a channel
References NS_FATAL_ERROR.
Referenced by Install().
| Ptr< WimaxPhy > ns3::WimaxHelper::CreatePhyWithoutChannel | ( | PhyType | phyType, |
| char * | SNRTraceFilePath, | ||
| bool | activateLoss | ||
| ) |
| phyType | WiMAX Physical layer type |
| SNRTraceFilePath | of the repository containing the SNR traces files |
| activateLoss | set to 1 to activate losses 0 otherwise |
Creates a physical layer without creating a channel
References NS_FATAL_ERROR.
| ServiceFlow ns3::WimaxHelper::CreateServiceFlow | ( | ServiceFlow::Direction | direction, |
| ServiceFlow::SchedulingType | schedulinType, | ||
| IpcsClassifierRecord | classifier | ||
| ) |
Creates a transport service flow.
| direction | the direction of the service flow: UP or DOWN. |
| schedulinType | The service scheduling type to be used: UGS, RTPS, NRTPS, BE |
| classifier | The classifier to be used for this service flow |
| Ptr< UplinkScheduler > ns3::WimaxHelper::CreateUplinkScheduler | ( | SchedulerType | schedulerType | ) |
| schedulerType | Scheduling mechanism |
Creates a uplink scheduler to be used by base station according to selected scheduling mechanism.
References NS_FATAL_ERROR, SCHED_TYPE_MBQOS, SCHED_TYPE_RTPS, SCHED_TYPE_SIMPLE, and ns3::Seconds().
Referenced by Install().
| void ns3::WimaxHelper::EnableAsciiForConnection | ( | Ptr< OutputStreamWrapper > | oss, |
| uint32_t | nodeid, | ||
| uint32_t | deviceid, | ||
| char * | netdevice, | ||
| char * | connection | ||
| ) | [static] |
Enable ascii trace output on the indicated net device for a given connection.
| oss | The output stream object to use when logging ascii traces. |
| nodeid | the id of the node for which you want to enable tracing. |
| deviceid | the id of the net device for which you want to enable tracing. |
| netdevice | the type of net device for which you want to enable tracing (SubscriberStationNetDevice, BaseStationNetDevice or WimaxNetDevice) |
| connection | the connection for which you want to enable tracing (InitialRangingConnection, BroadcastConnection, BasicConnection, PrimaryConnection). |
References ns3::Config::Connect().
| void ns3::WimaxHelper::EnableLogComponents | ( | void | ) | [static] |
Helper to enable all WimaxNetDevice log components with one statement
References ns3::LogComponentEnable().
| NetDeviceContainer ns3::WimaxHelper::Install | ( | NodeContainer | c, |
| NetDeviceType | type, | ||
| PhyType | phyType, | ||
| SchedulerType | schedulerType | ||
| ) |
| c | a set of nodes |
| type | device type to create |
| phyType | a phy to use |
| schedulerType | the type of the scheduling algorithm to install |
For each of the input nodes, a new WiMAX net device (either ns3::SubscriberStationNetDevice or ns3::BaseStationNetDevice depending on the type parameter) is attached to the shared input channel.
References ns3::NetDeviceContainer::Add(), ns3::Node::AddDevice(), ns3::Mac48Address::Allocate(), ns3::NodeContainer::Begin(), CreateBSScheduler(), CreatePhy(), CreateUplinkScheduler(), DEVICE_TYPE_BASE_STATION, ns3::NodeContainer::End(), ns3::WimaxNetDevice::SetAddress(), ns3::WimaxPhy::SetDevice(), and ns3::WimaxNetDevice::Start().
| NetDeviceContainer ns3::WimaxHelper::Install | ( | NodeContainer | c, |
| NetDeviceType | deviceType, | ||
| PhyType | phyType, | ||
| Ptr< WimaxChannel > | channel, | ||
| SchedulerType | schedulerType | ||
| ) |
| c | A set of nodes. |
| deviceType | Device type to create. |
| phyType | PHY type to create. |
| channel | A channel to use. |
| schedulerType | The scheduling mechanism. |
For each of the input nodes, a new WiMAX net device (either ns3::SubscriberStationNetDevice or ns3::BaseStationNetDevice depending on the type parameter) is attached to the shared input channel.
References ns3::NetDeviceContainer::Add(), ns3::Node::AddDevice(), ns3::Mac48Address::Allocate(), ns3::NodeContainer::Begin(), CreateBSScheduler(), CreatePhyWithoutChannel(), CreateUplinkScheduler(), DEVICE_TYPE_BASE_STATION, ns3::NodeContainer::End(), ns3::WimaxNetDevice::SetAddress(), ns3::WimaxPhy::SetDevice(), and ns3::WimaxNetDevice::Start().
| NetDeviceContainer ns3::WimaxHelper::Install | ( | NodeContainer | c, |
| NetDeviceType | deviceType, | ||
| PhyType | phyType, | ||
| SchedulerType | schedulerType, | ||
| double | frameDuration | ||
| ) |
| c | A set of nodes. |
| deviceType | Device type to create. |
| phyType | PHY type to create. |
| schedulerType | The scheduling mechanism. |
| frameDuration | the farme duration in seconds |
For each of the input nodes, a new WiMAX net device (either ns3::SubscriberStationNetDevice or ns3::BaseStationNetDevice depending on the type parameter) is attached to the shared input channel.
References ns3::NetDeviceContainer::Add(), ns3::Node::AddDevice(), ns3::Mac48Address::Allocate(), ns3::NodeContainer::Begin(), CreateBSScheduler(), CreatePhy(), CreateUplinkScheduler(), DEVICE_TYPE_BASE_STATION, ns3::NodeContainer::End(), ns3::Seconds(), ns3::WimaxNetDevice::SetAddress(), ns3::WimaxPhy::SetDevice(), ns3::WimaxPhy::SetFrameDuration(), and ns3::WimaxNetDevice::Start().
| Ptr< WimaxNetDevice > ns3::WimaxHelper::Install | ( | Ptr< Node > | node, |
| NetDeviceType | deviceType, | ||
| PhyType | phyType, | ||
| Ptr< WimaxChannel > | channel, | ||
| SchedulerType | schedulerType | ||
| ) |
| node | Node to be installed. |
| deviceType | Device type to create. |
| phyType | PHY type to create. |
| channel | A channel to use. |
| schedulerType | The scheduling mechanism to install on the device. |
For each of the input nodes, a new WiMAX net device (either ns3::SubscriberStationNetDevice or ns3::BaseStationNetDevice depending on the type parameter) is attached to the shared input channel.
References ns3::Node::AddDevice(), ns3::Mac48Address::Allocate(), CreateBSScheduler(), CreatePhyWithoutChannel(), CreateUplinkScheduler(), DEVICE_TYPE_BASE_STATION, ns3::WimaxNetDevice::SetAddress(), ns3::WimaxPhy::SetDevice(), and ns3::WimaxNetDevice::Start().
| void ns3::WimaxHelper::SetPropagationLossModel | ( | SimpleOfdmWimaxChannel::PropModel | propagationModel | ) |
Set the propagation and loss model of the channel. By default the channel uses a COST231 propagation and loss model.
| propagationModel | The propagation and loss model to set |
References ns3::Object::GetObject().