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>
98 virtual void DoRun (
void);
107 std::ostringstream oss;
108 oss <<
"pos=" << pib.
pos;
111 oss <<
", bid=" << pib.
bid
114 <<
", fn=" << pib.
fn;
125 :
TestCase (BuildNameString (pib, bd)),
153 BuildingsHelper::MakeMobilityModelConsistent ();
167 Simulator::Destroy ();
199 Vector vp1 (1.5, 1.5, 0.5);
209 Vector vp2 (1.5, 0.5, 0.5);
215 Vector vp3 (1.5, 2.5, 0.5);
221 Vector vp4 (1.5, 1.5, 5);
227 Vector vp5 (2.5, 1.6, 3.5);
237 Vector vp6 (0.9999, 1.5, 1.5);
243 Vector vp7 (3.0001, 1.5, 2.5);
249 Vector vp8 (1.001, 1.001, -0.01);
255 Vector vp9 (1.5, 1.5, 4.001);
275 Vector vq1 (-0.7, -1.1, 1.2);
285 Vector vq2 (0.2, 0.3, 0.2);
295 Vector vq3 (0.6, -1.75, 1.5);
301 Vector vq4 (-1.01, 0.3, 1.99);
307 Vector vq5 (-0.8, 0.7, 0.01);
313 Vector vq6 (0.2, 0.3, -0.2);
319 Vector vq7 (0.2, 0.3, 2.001);
Smart pointer class similar to boost::intrusive_ptr.
#define NS_LOG_FUNCTION(parameters)
If log level LOG_FUNCTION is enabled, this macro will output all input parameters separated by "...
BuildingsHelperTestSuite()
void SetNRoomsY(uint16_t nroomy)
static BuildingsHelperTestSuite buildingsHelperAntennaTestSuiteInstance
virtual void DoRun(void)
Implementation to actually run this TestCase.
Mobility model for which the current position does not change once it has been set and until it is se...
#define NS_LOG_COMPONENT_DEFINE(name)
Define a Log component with a specific name.
uint8_t GetFloorNumber(void)
uint8_t GetRoomNumberX(void)
void Install(Ptr< Node > node) const
"Layout" a single node according to the current position allocator type.
void AddTestCase(TestCase *testCase, enum TestDuration duration)
Add an individual child TestCase to this test suite.
void SetNFloors(uint16_t nfloors)
#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.
void AggregateObject(Ptr< Object > other)
Aggregate two Objects together.
#define NS_LOG_LOGIC(msg)
Use NS_LOG to output a message of level LOG_LOGIC.
Every class exported by the ns3 library is enclosed in the ns3 namespace.
keep track of a set of node pointers.
void SetMobilityModel(std::string type, std::string n1="", const AttributeValue &v1=EmptyAttributeValue(), std::string n2="", const AttributeValue &v2=EmptyAttributeValue(), std::string n3="", const AttributeValue &v3=EmptyAttributeValue(), std::string n4="", const AttributeValue &v4=EmptyAttributeValue(), std::string n5="", const AttributeValue &v5=EmptyAttributeValue(), std::string n6="", const AttributeValue &v6=EmptyAttributeValue(), std::string n7="", const AttributeValue &v7=EmptyAttributeValue(), std::string n8="", const AttributeValue &v8=EmptyAttributeValue(), std::string n9="", const AttributeValue &v9=EmptyAttributeValue())
void SetPosition(const Vector &position)
data to construct a Building object.
Helper class used to assign positions and mobility models to nodes.
Ptr< Building > GetBuilding()
Ptr< Node > Get(uint32_t i) const
Get the Ptr stored in this container at a given index.
static std::string BuildNameString(PositionInBuilding pib, BuildingData bd)
void SetNRoomsX(uint16_t nroomx)
void Create(uint32_t n)
Create n nodes and append pointers to them to the end of this NodeContainer.
BuildingsHelperOneTestCase(PositionInBuilding pib, BuildingData bd)
Ptr< T > GetObject(void) const
Get a pointer to the requested aggregated Object.
void SetBoundaries(Box box)
Set the boundaries of the building.
uint8_t GetRoomNumberY(void)