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 52 of file lena-dual-stripe.cc.
| void FemtocellBlockAllocator::Create | ( | ) |
Create function.
Definition at line 113 of file lena-dual-stripe.cc.
References Create(), m_nApartmentsX, m_nFloors, m_previousBlocks, m_xMinVar, m_xSize, m_yMinVar, m_ySize, NS_ASSERT_MSG, NS_LOG_LOGIC, and OverlapsWithAnyPrevious().
Referenced by visualizer.ipython_view.ConsoleView::__init__(), show_last_packets.ShowLastPackets.PacketList::__init__(), FemtocellBlockAllocator(), visualizer.ipython_view.ConsoleView::_write(), test-ns3.NS3BaseTestCase::config_ok(), Create(), Create(), visualizer.svgitem.SvgItem::do_set_property(), OverlapsWithAnyPrevious(), test-ns3.NS3StyleTestCase::setUp(), test-ns3.NS3BaseTestCase::setUp(), test-ns3.NS3ExpectedUseTestCase::setUp(), test-ns3.NS3BuildBaseTestCase::test_01_BuildExistingTargets(), test-ns3.NS3ExpectedUseTestCase::test_01_BuildProject(), test-ns3.NS3StyleTestCase::test_01_CheckCMakeFormat(), test-ns3.NS3QualityControlTestCase::test_01_CheckForDeadLinksInSources(), test-ns3.NS3DependenciesTestCase::test_01_CheckIfIncludedHeadersMatchLinkedModules(), test-ns3.NS3ConfigureBuildProfileTestCase::test_01_Debug(), test-ns3.NS3CommonSettingsTestCase::test_01_NoOption(), test-ns3.NS3UnusedSourcesTestCase::test_01_UnusedExampleSources(), test-ns3.NS3ExpectedUseTestCase::test_02_BuildAndRunExistingExecutableTarget(), test-ns3.NS3BuildBaseTestCase::test_02_BuildNonExistingTargets(), test-ns3.NS3QualityControlTestCase::test_02_MemoryCheckWithSanitizers(), test-ns3.NS3CommonSettingsTestCase::test_02_NoTaskLines(), test-ns3.NS3ConfigureBuildProfileTestCase::test_02_Release(), test-ns3.NS3ConfigureTestCase::test_02_Tests(), test-ns3.NS3UnusedSourcesTestCase::test_02_UnusedModuleSources(), test-ns3.NS3ExpectedUseTestCase::test_03_BuildAndRunExistingLibraryTarget(), test-ns3.NS3BuildBaseTestCase::test_03_BuildProject(), test-ns3.NS3CommonSettingsTestCase::test_03_CheckConfig(), test-ns3.NS3QualityControlTestCase::test_03_CheckImageBrightness(), test-ns3.NS3ConfigureBuildProfileTestCase::test_03_Optimized(), test-ns3.NS3UnusedSourcesTestCase::test_03_UnusedUtilsSources(), test-ns3.NS3ExpectedUseTestCase::test_04_BuildAndRunNonExistingTarget(), test-ns3.NS3BuildBaseTestCase::test_04_BuildProjectNoTaskLines(), test-ns3.NS3QualityControlTestCase::test_04_CheckForBrokenLogs(), test-ns3.NS3CommonSettingsTestCase::test_04_CheckProfile(), test-ns3.NS3ConfigureTestCase::test_04_DisableModules(), test-ns3.NS3ConfigureBuildProfileTestCase::test_04_Typo(), test-ns3.NS3BuildBaseTestCase::test_05_BreakBuild(), test-ns3.NS3CommonSettingsTestCase::test_05_CheckVersion(), test-ns3.NS3ConfigureTestCase::test_05_EnableModulesComma(), test-ns3.NS3ExpectedUseTestCase::test_05_RunNoBuildExistingExecutableTarget(), test-ns3.NS3ConfigureBuildProfileTestCase::test_05_TYPO(), test-ns3.NS3ConfigureTestCase::test_06_DisableModulesComma(), test-ns3.NS3ConfigureBuildProfileTestCase::test_06_OverwriteDefaultSettings(), test-ns3.NS3ExpectedUseTestCase::test_06_RunNoBuildExistingLibraryTarget(), test-ns3.NS3BuildBaseTestCase::test_06_TestVersionFile(), test-ns3.NS3BuildBaseTestCase::test_07_OutputDirectory(), test-ns3.NS3ExpectedUseTestCase::test_07_RunNoBuildNonExistingExecutableTarget(), test-ns3.NS3ConfigureTestCase::test_08_DryRun(), test-ns3.NS3BuildBaseTestCase::test_08_InstallationAndUninstallation(), test-ns3.NS3ExpectedUseTestCase::test_08_RunNoBuildGdb(), test-ns3.NS3ConfigureTestCase::test_09_PropagationOfReturnCode(), test-ns3.NS3ExpectedUseTestCase::test_09_RunNoBuildValgrind(), test-ns3.NS3BuildBaseTestCase::test_09_Scratches(), test-ns3.NS3BuildBaseTestCase::test_10_AmbiguityCheck(), test-ns3.NS3ConfigureTestCase::test_10_CheckConfig(), test-ns3.NS3ExpectedUseTestCase::test_10_DoxygenWithBuild(), test-ns3.NS3ConfigureTestCase::test_11_CheckProfile(), test-ns3.NS3ExpectedUseTestCase::test_11_DoxygenWithoutBuild(), test-ns3.NS3BuildBaseTestCase::test_11_StaticBuilds(), test-ns3.NS3ConfigureTestCase::test_12_CheckVersion(), test-ns3.NS3BuildBaseTestCase::test_12_CppyyBindings(), test-ns3.NS3ExpectedUseTestCase::test_12_SphinxDocumentation(), test-ns3.NS3ExpectedUseTestCase::test_13_Documentation(), test-ns3.NS3BuildBaseTestCase::test_13_FetchOptionalComponents(), test-ns3.NS3ConfigureTestCase::test_13_Scratches(), test-ns3.NS3ExpectedUseTestCase::test_14_EnableSudo(), test-ns3.NS3BuildBaseTestCase::test_14_LinkContribModuleToSrcModule(), test-ns3.NS3ConfigureTestCase::test_14_MpiCommandTemplate(), test-ns3.NS3ExpectedUseTestCase::test_15_CommandTemplate(), test-ns3.NS3ConfigureTestCase::test_15_InvalidLibrariesToLink(), test-ns3.NS3ExpectedUseTestCase::test_16_ForwardArgumentsToRunTargets(), test-ns3.NS3ConfigureTestCase::test_16_LibrariesContainingLib(), test-ns3.NS3ConfigureTestCase::test_17_CMakePerformanceTracing(), test-ns3.NS3ExpectedUseTestCase::test_17_RunNoBuildLldb(), test-ns3.NS3ConfigureTestCase::test_18_CheckBuildVersionAndVersionCache(), test-ns3.NS3ExpectedUseTestCase::test_18_CpmAndVcpkgManagers(), test-ns3.NS3ConfigureTestCase::test_19_FilterModuleExamplesAndTests(), test-ns3.NS3ConfigureTestCase::test_20_CheckFastLinkers(), test-ns3.NS3ConfigureTestCase::test_21_ClangTimeTrace(), test-ns3.NS3ConfigureTestCase::test_22_NinjaTrace(), test-ns3.NS3ConfigureTestCase::test_23_PrecompiledHeaders(), test-ns3.NS3ConfigureTestCase::test_24_CheckTestSettings(), python-unit-tests.TestSimulator::testAttributes(), python-unit-tests.TestSimulator::testCommandLine(), python-unit-tests.TestSimulator::testIdentity(), python-unit-tests.TestSimulator::testSchedule(), python-unit-tests.TestSimulator::testScheduleDestroy(), python-unit-tests.TestSimulator::testSubclass(), python-unit-tests.TestSimulator::testTimeComparison(), python-unit-tests.TestSimulator::testTimeNumericOperations(), python-unit-tests.TestSimulator::testTypeId(), and visualizer.core.Node::tooltip_query().
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 104 of file lena-dual-stripe.cc.
References Create().
Referenced by visualizer.ipython_view.ConsoleView::__init__(), show_last_packets.ShowLastPackets.PacketList::__init__(), visualizer.ipython_view.ConsoleView::_write(), test-ns3.NS3BaseTestCase::config_ok(), visualizer.svgitem.SvgItem::do_set_property(), test-ns3.NS3StyleTestCase::setUp(), test-ns3.NS3BaseTestCase::setUp(), test-ns3.NS3ExpectedUseTestCase::setUp(), test-ns3.NS3BuildBaseTestCase::test_01_BuildExistingTargets(), test-ns3.NS3ExpectedUseTestCase::test_01_BuildProject(), test-ns3.NS3StyleTestCase::test_01_CheckCMakeFormat(), test-ns3.NS3QualityControlTestCase::test_01_CheckForDeadLinksInSources(), test-ns3.NS3DependenciesTestCase::test_01_CheckIfIncludedHeadersMatchLinkedModules(), test-ns3.NS3ConfigureBuildProfileTestCase::test_01_Debug(), test-ns3.NS3CommonSettingsTestCase::test_01_NoOption(), test-ns3.NS3UnusedSourcesTestCase::test_01_UnusedExampleSources(), test-ns3.NS3ExpectedUseTestCase::test_02_BuildAndRunExistingExecutableTarget(), test-ns3.NS3BuildBaseTestCase::test_02_BuildNonExistingTargets(), test-ns3.NS3QualityControlTestCase::test_02_MemoryCheckWithSanitizers(), test-ns3.NS3CommonSettingsTestCase::test_02_NoTaskLines(), test-ns3.NS3ConfigureBuildProfileTestCase::test_02_Release(), test-ns3.NS3ConfigureTestCase::test_02_Tests(), test-ns3.NS3UnusedSourcesTestCase::test_02_UnusedModuleSources(), test-ns3.NS3ExpectedUseTestCase::test_03_BuildAndRunExistingLibraryTarget(), test-ns3.NS3BuildBaseTestCase::test_03_BuildProject(), test-ns3.NS3CommonSettingsTestCase::test_03_CheckConfig(), test-ns3.NS3QualityControlTestCase::test_03_CheckImageBrightness(), test-ns3.NS3ConfigureBuildProfileTestCase::test_03_Optimized(), test-ns3.NS3UnusedSourcesTestCase::test_03_UnusedUtilsSources(), test-ns3.NS3ExpectedUseTestCase::test_04_BuildAndRunNonExistingTarget(), test-ns3.NS3BuildBaseTestCase::test_04_BuildProjectNoTaskLines(), test-ns3.NS3QualityControlTestCase::test_04_CheckForBrokenLogs(), test-ns3.NS3CommonSettingsTestCase::test_04_CheckProfile(), test-ns3.NS3ConfigureTestCase::test_04_DisableModules(), test-ns3.NS3ConfigureBuildProfileTestCase::test_04_Typo(), test-ns3.NS3BuildBaseTestCase::test_05_BreakBuild(), test-ns3.NS3CommonSettingsTestCase::test_05_CheckVersion(), test-ns3.NS3ConfigureTestCase::test_05_EnableModulesComma(), test-ns3.NS3ExpectedUseTestCase::test_05_RunNoBuildExistingExecutableTarget(), test-ns3.NS3ConfigureBuildProfileTestCase::test_05_TYPO(), test-ns3.NS3ConfigureTestCase::test_06_DisableModulesComma(), test-ns3.NS3ConfigureBuildProfileTestCase::test_06_OverwriteDefaultSettings(), test-ns3.NS3ExpectedUseTestCase::test_06_RunNoBuildExistingLibraryTarget(), test-ns3.NS3BuildBaseTestCase::test_06_TestVersionFile(), test-ns3.NS3BuildBaseTestCase::test_07_OutputDirectory(), test-ns3.NS3ExpectedUseTestCase::test_07_RunNoBuildNonExistingExecutableTarget(), test-ns3.NS3ConfigureTestCase::test_08_DryRun(), test-ns3.NS3BuildBaseTestCase::test_08_InstallationAndUninstallation(), test-ns3.NS3ExpectedUseTestCase::test_08_RunNoBuildGdb(), test-ns3.NS3ConfigureTestCase::test_09_PropagationOfReturnCode(), test-ns3.NS3ExpectedUseTestCase::test_09_RunNoBuildValgrind(), test-ns3.NS3BuildBaseTestCase::test_09_Scratches(), test-ns3.NS3BuildBaseTestCase::test_10_AmbiguityCheck(), test-ns3.NS3ConfigureTestCase::test_10_CheckConfig(), test-ns3.NS3ExpectedUseTestCase::test_10_DoxygenWithBuild(), test-ns3.NS3ConfigureTestCase::test_11_CheckProfile(), test-ns3.NS3ExpectedUseTestCase::test_11_DoxygenWithoutBuild(), test-ns3.NS3BuildBaseTestCase::test_11_StaticBuilds(), test-ns3.NS3ConfigureTestCase::test_12_CheckVersion(), test-ns3.NS3BuildBaseTestCase::test_12_CppyyBindings(), test-ns3.NS3ExpectedUseTestCase::test_12_SphinxDocumentation(), test-ns3.NS3ExpectedUseTestCase::test_13_Documentation(), test-ns3.NS3BuildBaseTestCase::test_13_FetchOptionalComponents(), test-ns3.NS3ConfigureTestCase::test_13_Scratches(), test-ns3.NS3ExpectedUseTestCase::test_14_EnableSudo(), test-ns3.NS3BuildBaseTestCase::test_14_LinkContribModuleToSrcModule(), test-ns3.NS3ConfigureTestCase::test_14_MpiCommandTemplate(), test-ns3.NS3ExpectedUseTestCase::test_15_CommandTemplate(), test-ns3.NS3ConfigureTestCase::test_15_InvalidLibrariesToLink(), test-ns3.NS3ExpectedUseTestCase::test_16_ForwardArgumentsToRunTargets(), test-ns3.NS3ConfigureTestCase::test_16_LibrariesContainingLib(), test-ns3.NS3ConfigureTestCase::test_17_CMakePerformanceTracing(), test-ns3.NS3ExpectedUseTestCase::test_17_RunNoBuildLldb(), test-ns3.NS3ConfigureTestCase::test_18_CheckBuildVersionAndVersionCache(), test-ns3.NS3ExpectedUseTestCase::test_18_CpmAndVcpkgManagers(), test-ns3.NS3ConfigureTestCase::test_19_FilterModuleExamplesAndTests(), test-ns3.NS3ConfigureTestCase::test_20_CheckFastLinkers(), test-ns3.NS3ConfigureTestCase::test_21_ClangTimeTrace(), test-ns3.NS3ConfigureTestCase::test_22_NinjaTrace(), test-ns3.NS3ConfigureTestCase::test_23_PrecompiledHeaders(), test-ns3.NS3ConfigureTestCase::test_24_CheckTestSettings(), python-unit-tests.TestSimulator::testAttributes(), python-unit-tests.TestSimulator::testCommandLine(), python-unit-tests.TestSimulator::testIdentity(), python-unit-tests.TestSimulator::testSchedule(), python-unit-tests.TestSimulator::testScheduleDestroy(), python-unit-tests.TestSimulator::testSubclass(), python-unit-tests.TestSimulator::testTimeComparison(), python-unit-tests.TestSimulator::testTimeNumericOperations(), python-unit-tests.TestSimulator::testTypeId(), and visualizer.core.Node::tooltip_query().
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 148 of file lena-dual-stripe.cc.
References AreOverlapping(), Create(), 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 78 of file lena-dual-stripe.cc.
|
private |
|
private |
|
private |
previous bocks
Definition at line 81 of file lena-dual-stripe.cc.
Referenced by Create(), and OverlapsWithAnyPrevious().
|
private |
X minimum variance.
Definition at line 84 of file lena-dual-stripe.cc.
Referenced by FemtocellBlockAllocator(), and Create().
|
private |
X size.
Definition at line 82 of file lena-dual-stripe.cc.
Referenced by FemtocellBlockAllocator(), and Create().
|
private |
Y minimum variance.
Definition at line 85 of file lena-dual-stripe.cc.
Referenced by FemtocellBlockAllocator(), and Create().
|
private |
Y size.
Definition at line 83 of file lena-dual-stripe.cc.
Referenced by FemtocellBlockAllocator(), and Create().