19#include "ns3/event-id.h"
20#include "ns3/nstime.h"
123 bool deleteUlParameters,
An identifier for simulation events.
A base class which provides memory management and object aggregation.
Smart pointer class similar to boost::intrusive_ptr.
This class implements the ranging request message described by "IEEE Standard forLocal and metropolit...
This class implements the ranging response message described by "IEEE Standard forLocal and metropoli...
this class implements the link manager of subscriber station net device.
void SetEirXPIrMax(uint16_t eir_x_p_ir_max)
Set EIRX IR maximum.
void AdjustRangingParameters(const RngRsp &rngrsp)
Adjust ranging parameters.
~SSLinkManager() override
uint8_t m_rangingBO
ranging BO
void SetBsEirp(uint16_t bs_eirp)
Set BS EIRP.
void IncrementNrInvitedPollsRecvd()
Increment NR invited polls received.
uint8_t m_initRangOppNumber
Initial Ranging opportunity (1–255) in which SS transmitted the RNG_REQ.
EventId m_dlMapSyncTimeoutEvent
DL map sync timeout event.
uint16_t m_nrRngReqsSent
number rang requests sent
void SetRangingIntervalFound(bool rangingIntervalFound)
Set ranging interval found.
uint16_t m_pTxIrMax
maximum transmit signal strength for initial ranging calculated by SS
uint16_t m_nrInvitedPollsRecvd
number invited polls received
void EndScanning(bool status, uint64_t frequency)
End scanning.
void SelectRandomBackoff()
Select random backoff.
static TypeId GetTypeId()
Get the type ID.
SSLinkManager(const SSLinkManager &)
type conversion operator
RngReq m_rngreq
rng request
Ptr< SubscriberStationNetDevice > m_ss
subscriber station device
uint8_t m_contentionRangingRetries
contention ranging retries
void ScheduleScanningRestart(Time interval, SubscriberStationNetDevice::EventType eventType, bool deleteUlParameters, EventId &eventId)
Schedule scanning request.
uint16_t m_nrRngRspsRecvd
number rang responses received
uint8_t m_nrRangingTransOpps
number ranging trans opps
void SendRangingRequest(uint8_t uiuc, uint16_t allocationSize)
Send ranging request.
bool IsUlChannelUsable()
Is UL channel usable.
void StartContentionResolution()
Start contention resolution.
void ResetRangingRequestCW()
Reset ranging request CW.
EventId m_waitForRngRspEvent
wait for rang response event
uint16_t m_eirXPIrMax
initial ranging maximum equivalent isotropic received power at BS
uint64_t m_frequency
frequency on which it is currently operating, i.e., where scanning was successful
void SetNrRangingTransOpps(uint8_t nrRangingTransOpps)
Set NR ranging trans opps.
uint16_t CalculateMaxIRSignalStrength()
Calculate maximum IR signal strength.
uint8_t m_rangingCW
ranging CW
void DoDispose() override
Destructor implementation.
SSLinkManager & operator=(const SSLinkManager &)
assignment operator
uint32_t m_rngReqFrameNumber
frame number in which SS sent RNG_REQ message
void PerformBackoff()
Perform backoff.
uint16_t m_bsEirp
BS EIRP.
void DeleteUplinkParameters()
Delete uplink parameters.
bool m_isBackoffSet
is backoff set
void NegotiateBasicCapabilities()
Negotiate basic capabilities.
bool GetRangingIntervalFound() const
Get ranging interval found.
uint8_t m_dlChnlNr
indicates the channel/frequency currently the SS is scanning
void StartSynchronizing()
Start synchronizing.
bool SearchForDlChannel(uint8_t channel)
Search for DL channel.
void PerformRanging(Cid cid, RngRsp rngrsp)
Perform ranging.
void IncreaseRangingRequestCW()
Increase rnaging request CW.
WimaxNetDevice::RangingStatus m_rangingStatus
ranging status
EventId GetDlMapSyncTimeoutEvent()
Get DL map sync timeout event.
void StartScanning(SubscriberStationNetDevice::EventType type, bool deleteParameters)
Start scanning.
uint8_t m_rangingAnomalies
ranging anomalies
bool m_rangingIntervalFound
ranging interval found
SSLinkManager(Ptr< SubscriberStationNetDevice > ss)
Constructor.
uint16_t GetMinTransmitPowerLevel()
Get minimum transmit power level.
void SetRangingCW(uint8_t rangingCW)
Set ranging CW.
EventType
EventType enumeration.
Simulation virtual time values and global simulation resolution.
a unique identifier for an interface.
RangingStatus
RangingStatus enumeration.
Every class exported by the ns3 library is enclosed in the ns3 namespace.