25 #include <ns3/mobility-building-info.h>
26 #include <ns3/constant-position-mobility-model.h>
27 #include <ns3/building.h>
28 #include <ns3/buildings-helper.h>
29 #include <ns3/mobility-helper.h>
30 #include <ns3/simulator.h>
125 virtual void DoRun (
void);
134 std::ostringstream oss;
135 oss <<
"pos=" << pib.
pos;
138 oss <<
", bid=" << pib.
bid
141 <<
", fn=" << pib.
fn;
152 :
TestCase (BuildNameString (pib, bd)),
163 mobility.SetMobilityModel (
"ns3::ConstantPositionMobilityModel");
179 bmm->AggregateObject (buildingInfo);
185 NS_LOG_LOGIC (
" got bid=" << buildingInfo->GetBuilding ()->GetId () <<
", f=" << (uint32_t) buildingInfo->GetFloorNumber () <<
", rx=" << (uint32_t) buildingInfo->GetRoomNumberX () <<
", roomY=" << (uint32_t) buildingInfo->GetRoomNumberY ());
193 Simulator::Destroy ();
226 Vector vp1 (1.5, 1.5, 0.5);
236 Vector vp2 (1.5, 0.5, 0.5);
242 Vector vp3 (1.5, 2.5, 0.5);
248 Vector vp4 (1.5, 1.5, 5);
254 Vector vp5 (2.5, 1.6, 3.5);
264 Vector vp6 (0.9999, 1.5, 1.5);
270 Vector vp7 (3.0001, 1.5, 2.5);
276 Vector vp8 (1.001, 1.001, -0.01);
282 Vector vp9 (1.5, 1.5, 4.001);
302 Vector vq1 (-0.7, -1.1, 1.2);
312 Vector vq2 (0.2, 0.3, 0.2);
322 Vector vq3 (0.6, -1.75, 1.5);
328 Vector vq4 (-1.01, 0.3, 1.99);
334 Vector vq5 (-0.8, 0.7, 0.01);
340 Vector vq6 (0.2, 0.3, -0.2);
346 Vector vq7 (0.2, 0.3, 2.001);
static BuildingsHelperTestSuite buildingsHelperAntennaTestSuiteInstance
Static variable for test initialization.
BuildingData m_bd
Building data.
virtual void DoRun(void)
Implementation to actually run this TestCase.
static std::string BuildNameString(PositionInBuilding pib, BuildingData bd)
Build the testcase name.
PositionInBuilding m_pib
Position in the building.
BuildingsHelperOneTestCase(PositionInBuilding pib, BuildingData bd)
Constructor.
BuildingsHelper TestSuite.
BuildingsHelperTestSuite()
Mobility model for which the current position does not change once it has been set and until it is se...
Helper class used to assign positions and mobility models to nodes.
keep track of a set of node pointers.
Smart pointer class similar to boost::intrusive_ptr.
void AddTestCase(TestCase *testCase, TestDuration duration=QUICK)
Add an individual child TestCase to this test suite.
#define NS_LOG_COMPONENT_DEFINE(name)
Define a Log component with a specific name.
#define NS_LOG_LOGIC(msg)
Use NS_LOG to output a message of level LOG_LOGIC.
#define NS_LOG_FUNCTION(parameters)
If log level LOG_FUNCTION is enabled, this macro will output all input parameters separated by ",...
#define NS_TEST_ASSERT_MSG_EQ(actual, limit, msg)
Test that an actual and expected (limit) value are equal and report and abort if not.
Every class exported by the ns3 library is enclosed in the ns3 namespace.
Data to construct a Building object.
double xmin
X min coordinate.
double ymin
Y min coordinate.
double zmin
Z min coordinate.
uint16_t nrx
Number of rooms (X coord)
uint16_t nry
Number of rooms (Y coord)
double zmax
Z max coordinate.
uint16_t nf
Number of floors.
double ymax
Y max coordinate.
double xmax
X max coordinate.
Struct representing a position in a building.
bool indoor
true if indoor, false otherwise
Vector pos
coordinates of the mobility model instance