5#ifndef NODE_DISTRIBUTION_SCENARIO_INTERFACE_H
6#define NODE_DISTRIBUTION_SCENARIO_INTERFACE_H
8#include "scenario-parameters.h"
10#include <ns3/node-container.h>
11#include <ns3/vector.h>
Represents a scenario with base stations and user terminals.
virtual void CreateScenario()=0
Create the scenario, with the configured parameter.
const NodeContainer & GetUserTerminals() const
Get the list of user nodes.
std::size_t GetNumSites() const
Gets the number of sites with cell base stations.
std::size_t m_numBs
Number of base stations to create.
uint16_t GetSiteIndex(std::size_t cellId) const
Gets the site index the queried cell id belongs to.
void SetBsNumber(std::size_t n)
Set the number of base stations.
uint16_t GetCellIndex(std::size_t ueId) const
Get the cell (base station) index the queried UE id belongs to.
Vector GetAntennaPosition(const Vector &sitePos, uint16_t cellId) const
Returns the position of the cell antenna.
NodeContainer m_ut
User Terminals.
std::size_t m_numUt
Number of user terminals to create.
void SetUtNumber(std::size_t n)
Set the number of UT/UE.
std::size_t m_numSites
Number of sites with base stations.
void SetSitesNumber(std::size_t n)
Set number of sites/towers.
NodeContainer m_bs
Base stations.
~NodeDistributionScenarioInterface() override
~NodeDistributionScenarioInterface
double GetAntennaOrientationDegrees(std::size_t cellId) const
Returns the orientation in degrees of the antenna array for the given cellId. The orientation is the ...
uint16_t GetSectorIndex(std::size_t cellId) const
Get the sector index the queried cell id belongs to.
std::size_t GetNumCells() const
Gets the total number of cells deployed.
const NodeContainer & GetBaseStations() const
Get the list of gnb/base station nodes.
double GetAntennaOrientationRadians(std::size_t cellId) const
Returns the orientation in radians of the antenna array for the given cellId.
Basic simulation scenario parameters.