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. | |
| void | Create () |
| Create function. | |
| void | Create (uint32_t n) |
| Function that creates building blocks. | |
Private Member Functions | |
| bool | OverlapsWithAnyPrevious (Box box) |
| Function that checks if the box area is overlapping with some of previously created building blocks. | |
Private Attributes | |
| Box | m_area |
| Area. | |
| uint32_t | m_nApartmentsX |
| X apartments. | |
| uint32_t | m_nFloors |
| number of floors | |
| std::list< Box > | m_previousBlocks |
| previous bocks | |
| Ptr< UniformRandomVariable > | m_xMinVar |
| X minimum variance. | |
| double | m_xSize |
| X size. | |
| Ptr< UniformRandomVariable > | m_yMinVar |
| Y minimum variance. | |
| double | m_ySize |
| Y size. | |
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 63 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 99 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 | ( | ) |
Create function.
Definition at line 124 of file lena-dual-stripe.cc.
References 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::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:| void FemtocellBlockAllocator::Create | ( | uint32_t | n | ) |
Function that creates building blocks.
| n | the number of blocks to create |
Definition at line 115 of file lena-dual-stripe.cc.
References Create().
Here is the call 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 159 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 89 of file lena-dual-stripe.cc.
|
private |
|
private |
|
private |
previous bocks
Definition at line 92 of file lena-dual-stripe.cc.
Referenced by Create(), and OverlapsWithAnyPrevious().
|
private |
X minimum variance.
Definition at line 95 of file lena-dual-stripe.cc.
Referenced by FemtocellBlockAllocator(), and Create().
|
private |
X size.
Definition at line 93 of file lena-dual-stripe.cc.
Referenced by FemtocellBlockAllocator(), and Create().
|
private |
Y minimum variance.
Definition at line 96 of file lena-dual-stripe.cc.
Referenced by FemtocellBlockAllocator(), and Create().
|
private |
Y size.
Definition at line 94 of file lena-dual-stripe.cc.
Referenced by FemtocellBlockAllocator(), and Create().