Allocate buildings on a rectangular 2d grid. More...
#include <building-allocator.h>
Public Member Functions | |
BuildingContainer | Create (uint32_t n) const |
void | SetBuildingAttribute (std::string n, const AttributeValue &v) |
Public Member Functions inherited from ns3::Object | |
void | AggregateObject (Ptr< Object > other) |
void | Dispose (void) |
AggregateIterator | GetAggregateIterator (void) const |
virtual TypeId | GetInstanceTypeId (void) const |
template<typename T > | |
Ptr< T > | GetObject (void) const |
template<typename T > | |
Ptr< T > | GetObject (TypeId tid) const |
void | Initialize (void) |
Public Member Functions inherited from ns3::SimpleRefCount< Object, ObjectBase, ObjectDeleter > | |
SimpleRefCount (const SimpleRefCount &o) | |
uint32_t | GetReferenceCount (void) const |
SimpleRefCount & | operator= (const SimpleRefCount &o) |
void | Ref (void) const |
void | Unref (void) const |
Public Member Functions inherited from ns3::ObjectBase | |
void | GetAttribute (std::string name, AttributeValue &value) const |
bool | GetAttributeFailSafe (std::string name, AttributeValue &attribute) const |
void | SetAttribute (std::string name, const AttributeValue &value) |
bool | SetAttributeFailSafe (std::string name, const AttributeValue &value) |
bool | TraceConnect (std::string name, std::string context, const CallbackBase &cb) |
bool | TraceConnectWithoutContext (std::string name, const CallbackBase &cb) |
bool | TraceDisconnect (std::string name, std::string context, const CallbackBase &cb) |
bool | TraceDisconnectWithoutContext (std::string name, const CallbackBase &cb) |
Static Public Member Functions | |
static TypeId | GetTypeId (void) |
Static Public Member Functions inherited from ns3::Object | |
static TypeId | GetTypeId (void) |
Static Public Member Functions inherited from ns3::SimpleRefCount< Object, ObjectBase, ObjectDeleter > | |
static void | Cleanup (void) |
Static Public Member Functions inherited from ns3::ObjectBase | |
static TypeId | GetTypeId (void) |
Private Member Functions | |
void | PushAttributes () const |
Private Attributes | |
ObjectFactory | m_buildingFactory |
uint32_t | m_current |
double | m_deltaX |
double | m_deltaY |
double | m_height |
enum GridPositionAllocator::LayoutType | m_layoutType |
double | m_lengthX |
double | m_lengthY |
Ptr< GridPositionAllocator > | m_lowerLeftPositionAllocator |
uint32_t | m_n |
Ptr< GridPositionAllocator > | m_upperRightPositionAllocator |
double | m_xMin |
double | m_yMin |
Additional Inherited Members | |
Protected Member Functions inherited from ns3::Object | |
Object (const Object &o) | |
virtual void | DoDispose (void) |
virtual void | DoInitialize (void) |
virtual void | NotifyNewAggregate (void) |
Protected Member Functions inherited from ns3::ObjectBase | |
void | ConstructSelf (const AttributeConstructionList &attributes) |
virtual void | NotifyConstructionCompleted (void) |
Allocate buildings on a rectangular 2d grid.
This class allows to create a set of buildings positioned on a rectangular 2D grid. Under the hood, this class uses two instances of GridPositionAllocator.
Doxygen introspection did not find any typical Config paths.
No TraceSources are defined for this type.
Definition at line 44 of file building-allocator.h.
BuildingContainer ns3::GridBuildingAllocator::Create | ( | uint32_t | n | ) | const |
Create a set of buildings allocated on a grid
n | the number of buildings to create |
Definition at line 103 of file building-allocator.cc.
References ns3::BuildingContainer::Add(), ns3::ObjectFactory::Create(), NS_LOG_FUNCTION, NS_LOG_LOGIC, ns3::ObjectFactory::Set(), ns3::Vector3D::x, and ns3::Vector3D::y.
void ns3::GridBuildingAllocator::SetBuildingAttribute | ( | std::string | n, |
const AttributeValue & | v | ||
) |
Set an attribute to be used for each new building to be created
n | attribute name |
v | attribute value |
Definition at line 96 of file building-allocator.cc.
References NS_LOG_FUNCTION, and ns3::ObjectFactory::Set().