|
ns-3
|
A Yans wifi channelThis wifi channel implements the propagation model described in "Yet Another Network Simulator", (http://cutebugs.net/files/wns2-yans.pdf). More...
#include <yans-wifi-channel.h>


Public Member Functions | |
| virtual uint32_t | GetNDevices (void) const |
| virtual Ptr< NetDevice > | GetDevice (uint32_t i) const |
| void | Add (Ptr< YansWifiPhy > phy) |
| void | SetPropagationLossModel (Ptr< PropagationLossModel > loss) |
| void | SetPropagationDelayModel (Ptr< PropagationDelayModel > delay) |
| void | Send (Ptr< YansWifiPhy > sender, Ptr< const Packet > packet, double txPowerDbm, WifiMode wifiMode, WifiPreamble preamble) const |
Static Public Member Functions | |
| static TypeId | GetTypeId (void) |
| This method returns the TypeId associated to ns3::YansWifiChannel. | |
A Yans wifi channel
This wifi channel implements the propagation model described in "Yet Another Network Simulator", (http://cutebugs.net/files/wns2-yans.pdf).
This class is expected to be used in tandem with the ns3::YansWifiPhy class and contains a ns3::PropagationLossModel and a ns3::PropagationDelayModel. By default, no propagation models are set so, it is the caller's responsability to set them before using the channel.
| Ptr< NetDevice > ns3::YansWifiChannel::GetDevice | ( | uint32_t | i | ) | const [virtual] |
| i | index of NetDevice to retrieve |
This method must be implemented by subclasses.
Implements ns3::Channel.
| uint32_t ns3::YansWifiChannel::GetNDevices | ( | void | ) | const [virtual] |
This method must be implemented by subclasses.
Implements ns3::Channel.
| TypeId ns3::YansWifiChannel::GetTypeId | ( | void | ) | [static] |
This method returns the TypeId associated to ns3::YansWifiChannel.
This object is accessible through the following paths with Config::Set and Config::Connect:
Attributes defined for this type:
Attributes defined in parent class ns3::Channel:
No TraceSources defined for this type.
Reimplemented from ns3::WifiChannel.
References ns3::TypeId::SetParent().
| void ns3::YansWifiChannel::Send | ( | Ptr< YansWifiPhy > | sender, |
| Ptr< const Packet > | packet, | ||
| double | txPowerDbm, | ||
| WifiMode | wifiMode, | ||
| WifiPreamble | preamble | ||
| ) | const |
| sender | the device from which the packet is originating. |
| packet | the packet to send |
| txPowerDbm | the tx power associated to the packet |
| wifiMode | the tx mode associated to the packet |
| preamble | the preamble associated to the packet |
This method should not be invoked by normal users. It is currently invoked only from WifiPhy::Send. YansWifiChannel delivers packets only between PHYs with the same m_channelNumber, e.g. PHYs that are operating on the same channel.
References ns3::PropagationLossModel::CalcRxPower(), ns3::Packet::Copy(), ns3::PropagationDelayModel::GetDelay(), ns3::MobilityModel::GetDistanceFrom(), ns3::Object::GetObject(), NS_ASSERT, NS_LOG_DEBUG, and ns3::Simulator::ScheduleWithContext().
Referenced by ns3::YansWifiPhy::SendPacket().
| void ns3::YansWifiChannel::SetPropagationDelayModel | ( | Ptr< PropagationDelayModel > | delay | ) |
| delay | the new propagation delay model. |
Referenced by ns3::YansWifiChannelHelper::Create().
| void ns3::YansWifiChannel::SetPropagationLossModel | ( | Ptr< PropagationLossModel > | loss | ) |
| loss | the new propagation loss model. |
Referenced by ns3::YansWifiChannelHelper::Create().