ns-3
|
Public Member Functions | |
void | Attach (Ptr< WimaxChannel > channel) |
Ptr< WimaxChannel > | GetChannel (void) const |
void | SetDevice (Ptr< WimaxNetDevice > device) |
Set the device in which this physical layer is installed. | |
Ptr< NetDevice > | GetDevice (void) const |
void | SetReceiveCallback (Callback< void, Ptr< const PacketBurst > > callback) |
set the callback function to call when a burst is received | |
Callback< void, Ptr< const PacketBurst > > | GetReceiveCallback (void) const |
virtual void | Send (SendParams *params)=0 |
send a packet on the channel | |
virtual PhyType | GetPhyType (void) const =0 |
Get the type of the physical layer. | |
void | SetDuplex (uint64_t rxFrequency, uint64_t txFrequency) |
configure the physical layer in duplex mode | |
void | SetSimplex (uint64_t frequency) |
configure the physical layer in simplex mode | |
uint64_t | GetRxFrequency (void) const |
uint64_t | GetTxFrequency (void) const |
uint64_t | GetScanningFrequency (void) const |
void | SetNrCarriers (uint8_t nrCarriers) |
Set the number of carriers in the physical frame. | |
uint8_t | GetNrCarriers (void) const |
void | SetFrameDuration (Time frameDuration) |
Set the frame duration. | |
Time | GetFrameDurationSec (void) const |
Time | GetFrameDuration (void) const |
void | SetFrequency (uint32_t frequency) |
set the frequency on which the device should lock | |
uint32_t | GetFrequency (void) const |
void | SetChannelBandwidth (uint32_t channelBandwidth) |
Set the channel bandwidth. | |
uint32_t | GetChannelBandwidth (void) const |
uint16_t | GetNfft (void) const |
double | GetSamplingFactor (void) const |
double | GetSamplingFrequency (void) const |
void | SetPsDuration (Time psDuration) |
set the physical slot duration in seconds | |
Time | GetPsDuration (void) const |
void | SetSymbolDuration (Time symbolDuration) |
set the OFMD symbol duration in second | |
Time | GetSymbolDuration (void) const |
double | GetGValue (void) const |
void | SetPsPerSymbol (uint16_t psPerSymbol) |
set the number of physical slots per symbol | |
uint16_t | GetPsPerSymbol (void) const |
void | SetPsPerFrame (uint16_t psPerFrame) |
set the number of physical slot per frame | |
uint16_t | GetPsPerFrame (void) const |
void | SetSymbolsPerFrame (uint32_t symbolsPerFrame) |
set the number of symbols per frame | |
uint32_t | GetSymbolsPerFrame (void) const |
bool | IsDuplex (void) const |
void | SetState (PhyState state) |
set the state of the device | |
PhyState | GetState (void) const |
void | StartScanning (uint64_t frequency, Time timeout, Callback< void, bool, uint64_t > callback) |
scan the frequency frequency for maximum timeout seconds and calls callback if the frequency could be used | |
void | SetScanningCallback (void) const |
calls the scanning call back function | |
EventId | GetChnlSrchTimeoutEvent (void) const |
void | SetDataRates (void) |
calculates the data rate of each modulation and save them for future use | |
uint32_t | GetDataRate (ModulationType modulationType) const |
Time | GetTransmissionTime (uint32_t size, ModulationType modulationType) const |
uint64_t | GetNrSymbols (uint32_t size, ModulationType modulationType) const |
uint64_t | GetNrBytes (uint32_t symbols, ModulationType modulationType) const |
uint16_t | GetTtg (void) const |
uint16_t | GetRtg (void) const |
uint8_t | GetFrameDurationCode (void) const |
Time | GetFrameDuration (uint8_t frameDurationCode) const |
void | SetPhyParameters (void) |
computes the Physical parameters and store them | |
virtual void | DoDispose (void) |
virtual Ptr< Object > | GetMobility (void) |
virtual void | SetMobility (Ptr< Object > mobility) |
set the mobility model of the device | |
![]() | |
virtual TypeId | GetInstanceTypeId (void) const |
template<typename T > | |
Ptr< T > | GetObject (void) const |
template<typename T > | |
Ptr< T > | GetObject (TypeId tid) const |
void | Dispose (void) |
void | AggregateObject (Ptr< Object > other) |
AggregateIterator | GetAggregateIterator (void) const |
void | Start (void) |
![]() | |
SimpleRefCount (const SimpleRefCount &o) | |
SimpleRefCount & | operator= (const SimpleRefCount &o) |
void | Ref (void) const |
void | Unref (void) const |
uint32_t | GetReferenceCount (void) const |
![]() | |
void | SetAttribute (std::string name, const AttributeValue &value) |
bool | SetAttributeFailSafe (std::string name, const AttributeValue &value) |
void | GetAttribute (std::string name, AttributeValue &value) const |
bool | GetAttributeFailSafe (std::string name, AttributeValue &attribute) const |
bool | TraceConnect (std::string name, std::string context, const CallbackBase &cb) |
bool | TraceConnectWithoutContext (std::string name, const CallbackBase &cb) |
bool | TraceDisconnect (std::string name, std::string context, const CallbackBase &cb) |
bool | TraceDisconnectWithoutContext (std::string name, const CallbackBase &cb) |
Static Public Member Functions | |
static TypeId | GetTypeId (void) |
This method returns the TypeId associated to ns3::WimaxPhy. |
Additional Inherited Members | |
![]() | |
virtual void | NotifyNewAggregate (void) |
virtual void | DoStart (void) |
Object (const Object &o) |
void ns3::WimaxPhy::Attach | ( | Ptr< WimaxChannel > | channel | ) |
Attach the physical layer to a channel.
channel | the channel to which the physical layer will be attached |
Referenced by GetTypeId(), and ns3::WimaxNetDevice::SetChannel().
|
virtual |
This method is called by Object::Dispose or by the object's destructor, whichever comes first.
Subclasses are expected to implement their real destruction code in an overriden version of this method and chain up to their parent's implementation once they are done. i.e., for simplicity, the destructor of every subclass should be empty and its content should be moved to the associated DoDispose method.
It is safe to call GetObject from within this method.
Reimplemented from ns3::Object.
Ptr< WimaxChannel > ns3::WimaxPhy::GetChannel | ( | void | ) | const |
Referenced by ns3::SimpleOfdmWimaxPhy::DoAttach(), and GetTypeId().
uint32_t ns3::WimaxPhy::GetChannelBandwidth | ( | void | ) | const |
Referenced by ns3::SimpleOfdmWimaxPhy::GetBandwidth(), and GetTypeId().
uint32_t ns3::WimaxPhy::GetDataRate | ( | WimaxPhy::ModulationType | modulationType | ) | const |
modulationType | the modulation that you want to get its data rate |
Referenced by ns3::SimpleOfdmWimaxChannel::Send().
Time ns3::WimaxPhy::GetFrameDuration | ( | void | ) | const |
References GetFrameDurationSec().
Referenced by ns3::UplinkSchedulerMBQoS::CheckDeadline().
Time ns3::WimaxPhy::GetFrameDurationSec | ( | void | ) | const |
Referenced by GetFrameDuration(), and GetTypeId().
uint32_t ns3::WimaxPhy::GetFrequency | ( | void | ) | const |
Referenced by GetTypeId().
double ns3::WimaxPhy::GetGValue | ( | void | ) | const |
uint16_t ns3::WimaxPhy::GetNfft | ( | void | ) | const |
uint64_t ns3::WimaxPhy::GetNrBytes | ( | uint32_t | symbols, |
WimaxPhy::ModulationType | modulationType | ||
) | const |
symbols | the number of symbols to use |
modulationType | the modulation that will be used |
Referenced by ns3::UplinkSchedulerMBQoS::CheckDeadline(), and ns3::UplinkSchedulerRtps::ULSchedulerRTPSConnection().
uint8_t ns3::WimaxPhy::GetNrCarriers | ( | void | ) | const |
uint64_t ns3::WimaxPhy::GetNrSymbols | ( | uint32_t | size, |
WimaxPhy::ModulationType | modulationType | ||
) | const |
size | the number of byte to transmit |
modulationType | the modulation that will be used to transmit the bytes |
Referenced by ns3::BSSchedulerRtps::BSSchedulerRTPSConnection(), ns3::UplinkSchedulerMBQoS::CheckDeadline(), ns3::UplinkSchedulerMBQoS::CountSymbolsJobs(), ns3::UplinkSchedulerRtps::Schedule(), and ns3::UplinkSchedulerRtps::ULSchedulerRTPSConnection().
Time ns3::WimaxPhy::GetPsDuration | ( | void | ) | const |
Referenced by ns3::BaseStationNetDevice::Start().
uint16_t ns3::WimaxPhy::GetPsPerFrame | ( | void | ) | const |
uint16_t ns3::WimaxPhy::GetPsPerSymbol | ( | void | ) | const |
Callback< void, Ptr< const PacketBurst > > ns3::WimaxPhy::GetReceiveCallback | ( | void | ) | const |
uint16_t ns3::WimaxPhy::GetRtg | ( | void | ) | const |
uint64_t ns3::WimaxPhy::GetRxFrequency | ( | void | ) | const |
Referenced by ns3::SimpleOfdmWimaxPhy::StartReceive().
double ns3::WimaxPhy::GetSamplingFactor | ( | void | ) | const |
double ns3::WimaxPhy::GetSamplingFrequency | ( | void | ) | const |
uint64_t ns3::WimaxPhy::GetScanningFrequency | ( | void | ) | const |
Referenced by SetScanningCallback(), and ns3::SimpleOfdmWimaxPhy::StartReceive().
WimaxPhy::PhyState ns3::WimaxPhy::GetState | ( | void | ) | const |
Referenced by ns3::SimpleOfdmWimaxPhy::Send(), and ns3::SimpleOfdmWimaxPhy::StartReceive().
Time ns3::WimaxPhy::GetSymbolDuration | ( | void | ) | const |
Referenced by ns3::BaseStationNetDevice::Start().
uint32_t ns3::WimaxPhy::GetSymbolsPerFrame | ( | void | ) | const |
Time ns3::WimaxPhy::GetTransmissionTime | ( | uint32_t | size, |
WimaxPhy::ModulationType | modulationType | ||
) | const |
size | the number of byte to transmit |
modulationType | the modulation that will be used to transmit the bytes |
uint16_t ns3::WimaxPhy::GetTtg | ( | void | ) | const |
uint64_t ns3::WimaxPhy::GetTxFrequency | ( | void | ) | const |
|
static |
This method returns the TypeId associated to ns3::WimaxPhy.
This object is accessible through the following paths with Config::Set and Config::Connect:
Attributes defined for this type:
No TraceSources defined for this type.
Reimplemented from ns3::Object.
Reimplemented in ns3::SimpleOfdmWimaxPhy.
References Attach(), GetChannel(), GetChannelBandwidth(), GetFrameDurationSec(), GetFrequency(), ns3::Seconds(), SetChannelBandwidth(), SetFrameDuration(), SetFrequency(), and ns3::TypeId::SetParent().
bool ns3::WimaxPhy::IsDuplex | ( | void | ) | const |
Referenced by ns3::SimpleOfdmWimaxPhy::StartReceive().
|
pure virtual |
send a packet on the channel
params | the parameters used to send the packet |
Implemented in ns3::SimpleOfdmWimaxPhy.
void ns3::WimaxPhy::SetChannelBandwidth | ( | uint32_t | channelBandwidth | ) |
Set the channel bandwidth.
channelBandwidth | The channel bandwidth |
Referenced by GetTypeId(), and ns3::SimpleOfdmWimaxPhy::SetBandwidth().
void ns3::WimaxPhy::SetDevice | ( | Ptr< WimaxNetDevice > | device | ) |
Set the device in which this physical layer is installed.
device | the device in which this physical layer is installed |
Referenced by ns3::WimaxHelper::Install().
void ns3::WimaxPhy::SetDuplex | ( | uint64_t | rxFrequency, |
uint64_t | txFrequency | ||
) |
configure the physical layer in duplex mode
rxFrequency | the reception frequency |
txFrequency | the transmission frequency |
void ns3::WimaxPhy::SetFrameDuration | ( | Time | frameDuration | ) |
Set the frame duration.
frameDuration | the frame duration |
Referenced by GetTypeId(), and ns3::WimaxHelper::Install().
void ns3::WimaxPhy::SetFrequency | ( | uint32_t | frequency | ) |
set the frequency on which the device should lock
frequency | the frequency to configure |
Referenced by GetTypeId().
set the mobility model of the device
mobility | the mobility model to set |
void ns3::WimaxPhy::SetNrCarriers | ( | uint8_t | nrCarriers | ) |
Set the number of carriers in the physical frame.
nrCarriers | the number of carriers in the frame |
void ns3::WimaxPhy::SetPsDuration | ( | Time | psDuration | ) |
set the physical slot duration in seconds
psDuration | the physical slot duration |
void ns3::WimaxPhy::SetPsPerFrame | ( | uint16_t | psPerFrame | ) |
set the number of physical slot per frame
psPerFrame | the number of physical slot per frame |
void ns3::WimaxPhy::SetPsPerSymbol | ( | uint16_t | psPerSymbol | ) |
set the number of physical slots per symbol
psPerSymbol | the number of physical slots per symbol |
void ns3::WimaxPhy::SetReceiveCallback | ( | Callback< void, Ptr< const PacketBurst > > | callback | ) |
set the callback function to call when a burst is received
callback | the callback function to call when a burst is received |
void ns3::WimaxPhy::SetSimplex | ( | uint64_t | frequency | ) |
configure the physical layer in simplex mode
frequency | the frequency to be used for reception and transmission process |
Referenced by ns3::BaseStationNetDevice::Start(), and ns3::SimpleOfdmWimaxPhy::StartReceive().
void ns3::WimaxPhy::SetState | ( | PhyState | state | ) |
set the state of the device
state | the state to be set (PHY_STATE_IDLE, PHY_STATE_SCANNING, PHY_STATE_TX, PHY_STATE_RX) |
Referenced by ns3::SimpleOfdmWimaxPhy::StartReceive().
void ns3::WimaxPhy::SetSymbolDuration | ( | Time | symbolDuration | ) |
set the OFMD symbol duration in second
symbolDuration | the symbol duration is second |
void ns3::WimaxPhy::SetSymbolsPerFrame | ( | uint32_t | symbolsPerFrame | ) |
set the number of symbols per frame
symbolsPerFrame | the number of symbols per frame |
void ns3::WimaxPhy::StartScanning | ( | uint64_t | frequency, |
Time | timeout, | ||
Callback< void, bool, uint64_t > | callback | ||
) |
scan the frequency frequency for maximum timeout seconds and calls callback if the frequency could be used
frequency | the frequency to scan |
timeout | the timout before considering the channel as unusable |
callback | the function to call if the channel could be used |
References NS_ASSERT_MSG, and ns3::Simulator::Schedule().