12#include "ns3/attribute-helper.h"
13#include "ns3/attribute.h"
15#include "ns3/object.h"
16#include "ns3/simple-ref-count.h"
17#include "ns3/vector.h"
74 Building(
double xMin,
double xMax,
double yMin,
double yMax,
double zMin,
double zMax);
177 bool IsInside(Vector position)
const;
187 uint16_t
GetRoomX(Vector position)
const;
197 uint16_t
GetRoomY(Vector position)
const;
205 uint16_t
GetFloor(Vector position)
const;
214 bool IsIntersect(
const Vector& l1,
const Vector& l2)
const;
Building()
Create a zero-sized building located at coordinates (0.0,0.0,0.0) and with 1 floors and 1 room.
uint16_t GetNRoomsY() const
Building(double xMin, double xMax, double yMin, double yMax, double zMin, double zMax)
Construct a simple building with 1 room and 1 floor.
uint32_t m_buildingId
Building ID number.
BuildingType_t m_buildingType
Building type.
ExtWallsType_t GetExtWallsType() const
ExtWallsType_t
External building wall type enum.
ExtWallsType_t m_externalWalls
External building wall type.
void SetBuildingType(Building::BuildingType_t t)
uint16_t GetNFloors() const
void SetBoundaries(Box box)
Set the boundaries of the building.
BuildingType_t GetBuildingType() const
void SetNRoomsX(uint16_t nroomx)
bool IsIntersect(const Vector &l1, const Vector &l2) const
Checks if a line-segment between position l1 and position l2 intersects a building.
uint16_t GetRoomY(Vector position) const
void SetExtWallsType(Building::ExtWallsType_t t)
uint16_t m_floors
number of floors, must be greater than 0, and 1 means only one floor (i.e., groundfloor)
void DoDispose() override
Destructor implementation.
void SetNRoomsY(uint16_t nroomy)
Box GetBoundaries() const
uint16_t m_roomsX
X Room coordinate.
~Building() override
Destructor.
uint16_t GetFloor(Vector position) const
uint16_t GetNRoomsX() const
uint16_t m_roomsY
Y Room coordinate.
bool IsInside(Vector position) const
void SetNFloors(uint16_t nfloors)
Box m_buildingBounds
Building boundaries.
uint16_t GetRoomX(Vector position) const
BuildingType_t
Building type enum.
static TypeId GetTypeId()
Get the type ID.
a unique identifier for an interface.
Every class exported by the ns3 library is enclosed in the ns3 namespace.