21 #include "ns3/core-module.h" 22 #include "ns3/network-module.h" 23 #include "ns3/mobility-module.h" 24 #include "ns3/config-store.h" 25 #include <ns3/buildings-helper.h> 26 #include <ns3/hybrid-buildings-propagation-loss-model.h> 27 #include <ns3/constant-position-mobility-model.h> 37 main (
int argc,
char *argv[])
42 bool enbIndoor =
false;
43 bool ueIndoor =
false;
46 cmd.AddValue(
"hEnb",
"Height of the eNB", hEnb);
47 cmd.AddValue(
"hUe",
"Height of UE", hUe);
48 cmd.AddValue(
"enbIndoor",
"Boolean for eNB Indoor/Outdoor selection", enbIndoor);
49 cmd.AddValue(
"ueIndoor",
"Boolean for UE Indoor/Outdoor selection", ueIndoor);
50 cmd.Parse(argc, argv);
57 cmd.Parse (argc, argv);
60 std::ofstream outFile;
61 outFile.open (
"buildings-pathloss-profiler.out");
62 if (!outFile.is_open ())
71 Ptr<Building> building1 = CreateObject<Building> (-2, 2, -2, 2, 0.0, 20.0);
89 for (uint32_t i = 1; i < 2300; i++)
96 double loss = propagationLossModel->
GetLoss (mmEnb, mmUe);
Introspection did not find any typical Config paths.
Smart pointer class similar to boost::intrusive_ptr.
void AggregateObject(Ptr< Object > other)
Aggregate two Objects together.
#define NS_FATAL_ERROR(msg)
Report a fatal error with a message and terminate.
virtual double GetLoss(Ptr< MobilityModel > a, Ptr< MobilityModel > b) const
static void MakeConsistent(Ptr< MobilityModel > bmm)
Make the given mobility model consistent, by determining whether its position falls inside any of the...
Parse command-line arguments.
static void Destroy(void)
Execute the events scheduled with ScheduleDestroy().
void ConfigureDefaults(void)
Configure the default values.
Every class exported by the ns3 library is enclosed in the ns3 namespace.
void SetPosition(const Vector &position)
This class can be used to hold variables of floating point type such as 'double' or 'float'...
void SetAttribute(std::string name, const AttributeValue &value)
Set a single attribute, raising fatal errors if unsuccessful.