A Discrete-Event Network Simulator
API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
ns3::BSLinkManager Class Reference

#include <bs-link-manager.h>

+ Inheritance diagram for ns3::BSLinkManager:
+ Collaboration diagram for ns3::BSLinkManager:

Public Member Functions

 BSLinkManager (Ptr< BaseStationNetDevice > bs)
 ~BSLinkManager (void)
uint8_t CalculateRangingOppsToAllocate (void)
void ProcessRangingRequest (Cid cid, RngReq rngreq)
 process a ranging request message
uint64_t SelectDlChannel (void)
void VerifyInvitedRanging (Cid cid, uint8_t uiuc)
 Verifies at the end of an invited ranging interval if SS sent ranging message in it or not.
- Public Member Functions inherited from ns3::Object
 Object ()
virtual ~Object ()
void AggregateObject (Ptr< Object > other)
void Dispose (void)
AggregateIterator GetAggregateIterator (void) const
virtual TypeId GetInstanceTypeId (void) const
template<typename T >
Ptr< T > GetObject (void) const
template<typename T >
Ptr< T > GetObject (TypeId tid) const
void Start (void)
- Public Member Functions inherited from ns3::SimpleRefCount< Object, ObjectBase, ObjectDeleter >
 SimpleRefCount ()
 SimpleRefCount (const SimpleRefCount &o)
uint32_t GetReferenceCount (void) const
SimpleRefCountoperator= (const SimpleRefCount &o)
void Ref (void) const
void Unref (void) const
- Public Member Functions inherited from ns3::ObjectBase
virtual ~ObjectBase ()
void GetAttribute (std::string name, AttributeValue &value) const
bool GetAttributeFailSafe (std::string name, AttributeValue &attribute) const
void SetAttribute (std::string name, const AttributeValue &value)
bool SetAttributeFailSafe (std::string name, const AttributeValue &value)
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::BSLinkManager.

Private Member Functions

 BSLinkManager (const BSLinkManager &)
void AbortRanging (Cid cid, RngRsp *rngrsp, SSRecord *ssRecord, bool isNewSS)
void AcceptRanging (Cid cid, RngRsp *rngrsp, SSRecord *ssRecord)
bool ChangeDlChannel (void)
void ContinueRanging (Cid cid, RngRsp *rngrsp, SSRecord *ssRecord)
void DeallocateCids (Cid cid)
uint32_t GetNewDlChannel (void)
uint8_t GetSignalQuality (void)
bool IsRangingAcceptable (void)
BSLinkManageroperator= (const BSLinkManager &)
void PerformInitialRanging (Cid cid, RngReq *rngreq, RngRsp *rngrsp)
void PerformInvitedRanging (Cid cid, RngRsp *rngrsp)
void PerformRanging (Cid cid, RngReq rngreq)
void ScheduleRngRspMessage (Cid cid, RngRsp *rngrsp)
void SetParametersToAdjust (RngRsp *rngrsp)

Private Attributes

Ptr< BaseStationNetDevicem_bs
uint32_t m_signalQuality
uint8_t m_signalQualityThreshold
int tries

Additional Inherited Members

- Protected Member Functions inherited from ns3::Object
 Object (const Object &o)
virtual void DoDispose (void)
virtual void DoStart (void)
virtual void NotifyNewAggregate (void)

Detailed Description

Definition at line 38 of file bs-link-manager.h.

Constructor & Destructor Documentation

ns3::BSLinkManager::BSLinkManager ( Ptr< BaseStationNetDevice bs)

Definition at line 48 of file bs-link-manager.cc.

References tries.

ns3::BSLinkManager::~BSLinkManager ( void  )

Definition at line 56 of file bs-link-manager.cc.

References m_bs.

ns3::BSLinkManager::BSLinkManager ( const BSLinkManager )
private

Member Function Documentation

void ns3::BSLinkManager::AbortRanging ( Cid  cid,
RngRsp rngrsp,
SSRecord ssRecord,
bool  isNewSS 
)
private
void ns3::BSLinkManager::AcceptRanging ( Cid  cid,
RngRsp rngrsp,
SSRecord ssRecord 
)
private

Definition at line 285 of file bs-link-manager.cc.

References ns3::SSRecord::DisablePollForRanging(), ns3::WimaxNetDevice::RANGING_STATUS_SUCCESS, ScheduleRngRspMessage(), ns3::SSRecord::SetRangingStatus(), and ns3::RngRsp::SetRangStatus().

Referenced by PerformInitialRanging(), and PerformInvitedRanging().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

uint8_t ns3::BSLinkManager::CalculateRangingOppsToAllocate ( void  )
Returns
the ranging opportunities to allocate

Definition at line 62 of file bs-link-manager.cc.

bool ns3::BSLinkManager::ChangeDlChannel ( void  )
private

Definition at line 340 of file bs-link-manager.cc.

Referenced by PerformInitialRanging().

+ Here is the caller graph for this function:

void ns3::BSLinkManager::ContinueRanging ( Cid  cid,
RngRsp rngrsp,
SSRecord ssRecord 
)
private

Definition at line 299 of file bs-link-manager.cc.

References ns3::WimaxNetDevice::RANGING_STATUS_CONTINUE, ScheduleRngRspMessage(), ns3::SSRecord::SetRangingStatus(), and ns3::RngRsp::SetRangStatus().

Referenced by PerformInitialRanging(), and PerformInvitedRanging().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void ns3::BSLinkManager::DeallocateCids ( Cid  cid)
private

Definition at line 323 of file bs-link-manager.cc.

Referenced by AbortRanging().

+ Here is the caller graph for this function:

uint32_t ns3::BSLinkManager::GetNewDlChannel ( void  )
private

Definition at line 347 of file bs-link-manager.cc.

Referenced by PerformInitialRanging().

+ Here is the caller graph for this function:

uint8_t ns3::BSLinkManager::GetSignalQuality ( void  )
private

Definition at line 354 of file bs-link-manager.cc.

References m_signalQuality.

Referenced by IsRangingAcceptable().

+ Here is the caller graph for this function:

TypeId ns3::BSLinkManager::GetTypeId ( void  )
static

This method returns the TypeId associated to ns3::BSLinkManager.

This object is accessible through the following paths with Config::Set and Config::Connect:

  • /NodeList/[i]/DeviceList/[i]/$ns3::BaseStationNetDevice/LinkManager
  • /NodeList/[i]/DeviceList/[i]/$ns3::WimaxNetDevice/$ns3::BaseStationNetDevice/LinkManager

No Attributes defined for this type.
No TraceSources defined for this type.

Reimplemented from ns3::Object.

Definition at line 41 of file bs-link-manager.cc.

References ns3::TypeId::SetParent().

+ Here is the call graph for this function:

bool ns3::BSLinkManager::IsRangingAcceptable ( void  )
private

Definition at line 363 of file bs-link-manager.cc.

References GetSignalQuality(), and m_signalQualityThreshold.

Referenced by PerformInitialRanging(), and PerformInvitedRanging().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

BSLinkManager& ns3::BSLinkManager::operator= ( const BSLinkManager )
private
void ns3::BSLinkManager::ProcessRangingRequest ( Cid  cid,
RngReq  rngreq 
)
void ns3::BSLinkManager::ScheduleRngRspMessage ( Cid  cid,
RngRsp rngrsp 
)
private
uint64_t ns3::BSLinkManager::SelectDlChannel ( void  )
Returns
an available downlink channel

Definition at line 329 of file bs-link-manager.cc.

References ns3::WimaxNetDevice::GetChannel(), and m_bs.

Referenced by ns3::BaseStationNetDevice::Start().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void ns3::BSLinkManager::SetParametersToAdjust ( RngRsp rngrsp)
private

Definition at line 261 of file bs-link-manager.cc.

References ns3::RngRsp::SetOffsetFreqAdjust(), ns3::RngRsp::SetPowerLevelAdjust(), and ns3::RngRsp::SetTimingAdjust().

Referenced by PerformRanging(), and ScheduleRngRspMessage().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void ns3::BSLinkManager::VerifyInvitedRanging ( Cid  cid,
uint8_t  uiuc 
)

Verifies at the end of an invited ranging interval if SS sent ranging message in it or not.

Definition at line 242 of file bs-link-manager.cc.

References AbortRanging(), ns3::SSRecord::GetBasicCid(), ns3::SSRecord::GetInvitedRangRetries(), ns3::BaseStationNetDevice::GetMaxInvitedRangRetries(), ns3::BaseStationNetDevice::GetSSManager(), ns3::SSManager::GetSSRecord(), ns3::SSRecord::IncrementInvitedRangingRetries(), m_bs, and ns3::OfdmUlBurstProfile::UIUC_INITIAL_RANGING.

Referenced by ns3::BaseStationNetDevice::UplinkAllocationEnd().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Member Data Documentation

uint32_t ns3::BSLinkManager::m_signalQuality
private

Definition at line 86 of file bs-link-manager.h.

Referenced by GetSignalQuality().

uint8_t ns3::BSLinkManager::m_signalQualityThreshold
private

Definition at line 87 of file bs-link-manager.h.

Referenced by IsRangingAcceptable().

int ns3::BSLinkManager::tries
private

Definition at line 88 of file bs-link-manager.h.

Referenced by BSLinkManager(), PerformRanging(), and ProcessRangingRequest().


The documentation for this class was generated from the following files: