AmcPilot Class Reference

Simu5G: AmcPilot Class Reference
Simu5G
AmcPilot Class Referenceabstract

#include <AmcPilot.h>

Inheritance diagram for AmcPilot:
[legend]

Public Member Functions

 AmcPilot (Binder *binder, LteAmc *amc)
virtual ~AmcPilot ()
virtual const UserTxParams & computeTxParams (MacNodeId id, const Direction dir, GHz carrierFrequency)=0
std::string getName ()

Protected Attributes

LteAmc * amc_ = nullptr
 LteAmc owner module.
std::string name_
 Pilot Name.
UsableBandsList usableBandsList_
 contains for each user, the subset of Bands that will be considered in the AMC operations

Detailed Description

Abstract AMC Pilot class.

This is the base class for all AMC pilots. If you want to add a new AMC pilot, you have to subclass from this class and implement the computeTxParams method according to your policy.

Constructor & Destructor Documentation

◆ AmcPilot()

AmcPilot ( Binder * binder,
LteAmc * amc )
inline

Constructor

Parameters
amcLteAmc owner module

References amc_, name_, and usableBandsList_.

Referenced by AmcPilotAuto::AmcPilotAuto(), and AmcPilotD2D::AmcPilotD2D().

◆ ~AmcPilot()

virtual ~AmcPilot ( )
inlinevirtual

Destructor

Member Function Documentation

◆ computeTxParams()

virtual const UserTxParams & computeTxParams ( MacNodeId id,
const Direction dir,
GHz carrierFrequency )
pure virtual

Assign logical bands for given nodeId and direction.

Parameters
idThe mobile node ID.
dirThe link direction.
Returns
The user transmission parameters computed.

Implemented in AmcPilotAuto, and AmcPilotD2D.

◆ getName()

std::string getName ( )
inline

Function to get the AMC Pilot name. Useful for debug print.

References name_.

Member Data Documentation

◆ amc_

LteAmc* amc_ = nullptr
protected

LteAmc owner module.

Referenced by AmcPilot().

◆ name_

std::string name_
protected

◆ usableBandsList_

UsableBandsList usableBandsList_
protected

contains for each user, the subset of Bands that will be considered in the AMC operations

Referenced by AmcPilot().