12#ifndef WSFCOVERAGECOMPOSITEGRID_HPP
13#define WSFCOVERAGECOMPOSITEGRID_HPP
15#include "wsf_coverage_export.h"
21#include "UtCloneablePtr.hpp"
46 bool ProcessInput(UtInput& aInput)
override;
49 std::size_t
GetSize()
const override {
return mPoints.size(); }
50 void Invoke(
GridAction& aAction)
const override;
52 GridAsset GetAsset(
const std::string& aPlatformName)
const override;
53 void HasNullDevice(
bool& aAnyNull,
bool& aAllNull)
const override;
55 bool IsStructured()
const override;
56 std::size_t GetNumComponents()
const override;
57 std::string GetComponentName(std::size_t aComponentIndex)
const override;
58 std::pair<std::size_t, std::size_t> GetComponentSizes(std::size_t aComponentIndex)
const override;
59 std::pair<std::size_t, std::size_t> GetPointIndices(
PointId aPointId)
const override;
71 void InvokeOnComponent(
GridAction& aAction, std::size_t aComponentIndex)
const override;
73 constexpr static const char*
cTYPE{
"WSF_COMPOSITE_GRID"};
76 bool InitializeP()
override;
80 std::vector<ut::CloneablePtr<Grid>> mSubGrids{};
83 std::map<PointId, GridAsset> mAssets{};
86 std::map<PointId, Point> mPoints{};
89 std::map<std::string, PointId> mNameToId{};
92 std::map<PointId, std::size_t> mIdToComponent{};
95 std::map<PointId, PointId> mParentToChild{};
99 std::vector<std::map<PointId, PointId>> mChildToParent{};
Contains the data required to create a simulation, and acts as the entry point for input file process...
Definition WsfScenario.hpp:111
The main controller for a simulation.
Definition WsfSimulation.hpp:109
CompositeGrid * Clone() const override
Definition WsfCoverageCompositeGrid.hpp:44
~CompositeGrid() override=default
std::size_t GetSize() const override
Definition WsfCoverageCompositeGrid.hpp:49
CompositeGrid(const WsfScenario &aScenario)
Definition WsfCoverageCompositeGrid.hpp:37
static constexpr const char * cTYPE
Definition WsfCoverageCompositeGrid.hpp:73
CompositeGrid(const CompositeGrid &aOther)=default
bool CreatesNewPlatforms() const override
Definition WsfCoverageCompositeGrid.hpp:54
An object that can be invoked for each point in a grid.
Definition WsfCoverageGridAction.hpp:30
Definition WsfCoverageAsset.hpp:37
Grid(const WsfScenario &aScenario)
Definition WsfCoverageGrid.cpp:31
A point in a coverage grid.
Definition WsfCoverageGridPoint.hpp:40
Definition WsfCoverage.cpp:35
std::uint64_t PointId
Definition WsfCoverageGridPoint.hpp:33
Function definitions for those who need run-time access to the version.
Definition WsfComm.cpp:32