Class that takes care of installing blocks of the buildings in a given area. More...
Collaboration diagram for FemtocellBlockAllocator:Public Member Functions | |
| FemtocellBlockAllocator (Box area, uint32_t nApartmentsX, uint32_t nFloors) | |
| Constructor. More... | |
| void | Create (uint32_t n) |
| Function that creates building blocks. More... | |
| void | Create () |
| Create function. More... | |
Private Member Functions | |
| bool | OverlapsWithAnyPrevious (Box box) |
| Function that checks if the box area is overlapping with some of previously created building blocks. More... | |
Private Attributes | |
| Box | m_area |
| Area. More... | |
| uint32_t | m_nApartmentsX |
| X apartments. More... | |
| uint32_t | m_nFloors |
| number of floors More... | |
| std::list< Box > | m_previousBlocks |
| previous bocks More... | |
| Ptr< UniformRandomVariable > | m_xMinVar |
| X minimum variance. More... | |
| double | m_xSize |
| X size. More... | |
| Ptr< UniformRandomVariable > | m_yMinVar |
| Y minimum variance. More... | |
| double | m_ySize |
| Y size. More... | |
Class that takes care of installing blocks of the buildings in a given area.
Buildings are installed in pairs as in dual stripe scenario.
Definition at line 55 of file lena-dual-stripe.cc.
| FemtocellBlockAllocator::FemtocellBlockAllocator | ( | Box | area, |
| uint32_t | nApartmentsX, | ||
| uint32_t | nFloors | ||
| ) |
Constructor.
| area | the total area |
| nApartmentsX | the number of apartments in the X direction |
| nFloors | the number of floors |
Definition at line 91 of file lena-dual-stripe.cc.
References m_xMinVar, m_xSize, m_yMinVar, m_ySize, ns3::ObjectBase::SetAttribute(), ns3::Box::xMax, ns3::Box::xMin, ns3::Box::yMax, and ns3::Box::yMin.
Here is the call graph for this function:| void FemtocellBlockAllocator::Create | ( | uint32_t | n | ) |
Function that creates building blocks.
| n | the number of blocks to create |
Definition at line 107 of file lena-dual-stripe.cc.
References Create(), and sample-rng-plot::n.
Here is the call graph for this function:| void FemtocellBlockAllocator::Create | ( | void | ) |
Create function.
Definition at line 116 of file lena-dual-stripe.cc.
References ns3::GridBuildingAllocator::Create(), ns3::UniformRandomVariable::GetValue(), m_nApartmentsX, m_nFloors, m_previousBlocks, m_xMinVar, m_xSize, m_yMinVar, m_ySize, NS_ASSERT_MSG, NS_LOG_LOGIC, OverlapsWithAnyPrevious(), ns3::ObjectBase::SetAttribute(), ns3::GridBuildingAllocator::SetBuildingAttribute(), ns3::Box::xMax, ns3::Box::xMin, ns3::Box::yMax, and ns3::Box::yMin.
Referenced by Create().
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
Function that checks if the box area is overlapping with some of previously created building blocks.
| box | the area to check |
Definition at line 150 of file lena-dual-stripe.cc.
References AreOverlapping(), and m_previousBlocks.
Referenced by Create().
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
Area.
Definition at line 80 of file lena-dual-stripe.cc.
|
private |
|
private |
previous bocks
Definition at line 83 of file lena-dual-stripe.cc.
Referenced by Create(), and OverlapsWithAnyPrevious().
|
private |
X minimum variance.
Definition at line 86 of file lena-dual-stripe.cc.
Referenced by Create(), and FemtocellBlockAllocator().
|
private |
X size.
Definition at line 84 of file lena-dual-stripe.cc.
Referenced by Create(), and FemtocellBlockAllocator().
|
private |
Y minimum variance.
Definition at line 87 of file lena-dual-stripe.cc.
Referenced by Create(), and FemtocellBlockAllocator().
|
private |
Y size.
Definition at line 85 of file lena-dual-stripe.cc.
Referenced by Create(), and FemtocellBlockAllocator().