|
A Discrete-Event Network Simulator
|
API
|
Go to the documentation of this file.
22 #include <ns3/simulator.h>
26 #include <ns3/buildings-helper.h>
27 #include <ns3/string.h>
28 #include <ns3/double.h>
29 #include <ns3/building.h>
31 #include <ns3/constant-position-mobility-model.h>
32 #include <ns3/mobility-building-info.h>
52 :
TestSuite (
"buildings-pathloss-test", SYSTEM)
139 :
TestCase (
"LOSS calculation: " + name),
141 m_mobilityModelIndex1 (
m1),
142 m_mobilityModelIndex2 (
m2),
178 double loss = propagationLossModel->
GetLoss (mma, mmb);
184 Simulator::Destroy ();
203 double henbHeight = 10.0;
210 mm = CreateObject<ConstantPositionMobilityModel> ();
215 mm = CreateObject<ConstantPositionMobilityModel> ();
220 mm = CreateObject<ConstantPositionMobilityModel> ();
225 mm = CreateObject<ConstantPositionMobilityModel> ();
230 mm = CreateObject<ConstantPositionMobilityModel> ();
235 mm = CreateObject<ConstantPositionMobilityModel> ();
240 mm = CreateObject<ConstantPositionMobilityModel> ();
245 mm = CreateObject<ConstantPositionMobilityModel> ();
250 mm = CreateObject<ConstantPositionMobilityModel> ();
255 mm = CreateObject<ConstantPositionMobilityModel> ();
260 mm = CreateObject<ConstantPositionMobilityModel> ();
uint16_t m_mobilityModelIndex1
#define NS_LOG_COMPONENT_DEFINE(name)
Define a Log component with a specific name.
void AddTestCase(TestCase *testCase, TestDuration duration=QUICK)
Add an individual child TestCase to this test suite.
uint16_t m_mobilityModelIndex2
void SetExtWallsType(Building::ExtWallsType_t t)
Every class exported by the ns3 library is enclosed in the ns3 namespace.
const double m1
First component modulus, 232 - 209.
@ LOG_LEVEL_ALL
Print everything.
void SetPosition(const Vector &position)
void LogComponentEnable(char const *name, enum LogLevel level)
Enable the logging output associated with that log component.
void SetAttribute(std::string name, const AttributeValue &value)
Set a single attribute, raising fatal errors if unsuccessful.
Ptr< MobilityModel > CreateMobilityModel(uint16_t index)
BuildingsPathlossTestSuite()
Test 1.1 BuildingsPathlossModel Pathloss compound test.
This class can be used to hold variables of floating point type such as 'double' or 'float'.
Hold variables of type enum.
Test 1.1 pathloss calculation.
BuildingsPathlossTestCase(double freq, uint16_t m1, uint16_t m2, EnvironmentType env, CitySize city, double refValue, std::string name)
TestCase.
Smart pointer class similar to boost::intrusive_ptr.
void MakeConsistent(Ptr< MobilityModel > mm)
Make the given mobility model consistent, by determining whether its position falls inside any of the...
const double m2
Second component modulus, 232 - 22853.
static BuildingsPathlossTestSuite buildingsPathlossTestSuite
void SetBuildingType(Building::BuildingType_t t)
CitySize
The size of the city in which propagation takes place.
void SetBoundaries(Box box)
Set the boundaries of the building.
#define NS_LOG_INFO(msg)
Use NS_LOG to output a message of level LOG_INFO.
#define NS_TEST_ASSERT_MSG_EQ_TOL(actual, limit, tol, msg)
Test that actual and expected (limit) values are equal to plus or minus some tolerance and report and...
void AggregateObject(Ptr< Object > other)
Aggregate two Objects together.
EnvironmentType
The type of propagation environment.
virtual ~BuildingsPathlossTestCase()
virtual void DoRun(void)
Implementation to actually run this TestCase.
#define NS_LOG_FUNCTION(parameters)
If log level LOG_FUNCTION is enabled, this macro will output all input parameters separated by ",...
virtual double GetLoss(Ptr< MobilityModel > a, Ptr< MobilityModel > b) const
void SetNFloors(uint16_t nfloors)