WSF
WsfCoverageZoneBasedGrid.hpp
Go to the documentation of this file.
1// ****************************************************************************
2// CUI
3//
4// The Advanced Framework for Simulation, Integration, and Modeling (AFSIM)
5//
6// Copyright 2020 Infoscitex, a DCS Company. All rights reserved.
7//
8// The use, dissemination or disclosure of data in this file is subject to
9// limitation or restriction. See accompanying README and LICENSE for details.
10// ****************************************************************************
11
12#ifndef WSFCOVERAGEZONEBASEDGRID_HPP
13#define WSFCOVERAGEZONEBASEDGRID_HPP
14
16
17class WsfZone;
18
19#include "wsf_coverage_export.h"
20
21namespace wsf
22{
23namespace coverage
24{
25
27class WSF_COVERAGE_EXPORT ZoneBasedGrid : public LatLonGrid
28{
29public:
30 explicit ZoneBasedGrid(const WsfScenario& aScenario)
31 : LatLonGrid(aScenario)
32 {
33 }
34 ZoneBasedGrid(const ZoneBasedGrid& aOther) = default;
35 ~ZoneBasedGrid() override = default;
36
37 ZoneBasedGrid* Clone() const override { return new ZoneBasedGrid{*this}; }
38
39 bool ProcessInput(UtInput& aInput) override;
40 void PreparePlatforms(WsfSimulation& aSimulation) override;
41 void InvokeOnComponent(GridAction& aAction, std::size_t aComponentIndex) const override;
42
44 const std::string& GetZoneName() const { return mZoneName; }
45
46 constexpr static const char* cTYPE{"WSF_ZONE_BASED_GRID"};
47
48protected:
49 bool InitializeP() override;
50
51private:
52 std::string mZoneName{};
53 std::vector<Point> mCulledPoints{};
54};
55
56} // namespace coverage
57} // namespace wsf
58
59#endif // WSFCOVERAGEZONEBASEDGRID_HPP
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
Definition WsfZone.hpp:63
An object that can be invoked for each point in a grid.
Definition WsfCoverageGridAction.hpp:30
LatLonGrid(const WsfScenario &aScenario)
Definition WsfCoverageLatLonGrid.hpp:37
static constexpr const char * cTYPE
Definition WsfCoverageZoneBasedGrid.hpp:46
ZoneBasedGrid(const WsfScenario &aScenario)
Definition WsfCoverageZoneBasedGrid.hpp:30
ZoneBasedGrid(const ZoneBasedGrid &aOther)=default
ZoneBasedGrid * Clone() const override
Definition WsfCoverageZoneBasedGrid.hpp:37
const std::string & GetZoneName() const
Return the name of the that defines the boundary of this grid.
Definition WsfCoverageZoneBasedGrid.hpp:44
~ZoneBasedGrid() override=default
Definition WsfCoverage.cpp:35
Function definitions for those who need run-time access to the version.
Definition WsfComm.cpp:32
Copyrights Multiple, All Rights Reserved