12#ifndef WSFCOVERAGEGRID_HPP
13#define WSFCOVERAGEGRID_HPP
17#include "UtCentralBody.hpp"
18#include "UtCloneablePtr.hpp"
26#include "wsf_coverage_export.h"
161 virtual std::pair<std::size_t, std::size_t> GetComponentSizes(std::size_t aComponentIndex)
const;
174 virtual std::pair<std::size_t, std::size_t> GetPointIndices(
PointId aPointId)
const;
180 bool IsUsed()
const {
return mUsedFlag; }
183 void CategorizeAssets(
const WsfSimulation& aSimulation,
const std::string& aCategory)
const;
191 void SetCentralBody(
const ut::CentralBody& aCentralBody);
204 bool WriteGridDataFile()
const;
223 virtual void WriteLineExtension(TextOutputWriter& aWriter, PointId aPointId)
const {}
226 ut::CloneablePtr<ut::CentralBody> mCentralBodyPtr;
227 std::string mGridDataFileName{};
229 bool mInitialized{
false};
230 bool mSuppressGridPlatforms{
true};
231 bool mUsedFlag{
false};
const std::string & GetName() const
Definition WsfObject.cpp:235
WsfObject()
This is the constructor for the WsfObject class.
Definition WsfObject.cpp:88
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
An object that can be invoked for each point in a grid.
Definition WsfCoverageGridAction.hpp:30
Definition WsfCoverageAsset.hpp:37
bool GetSuppressGridPlatforms() const
Return if this grid is suppressing grid platforms.
Definition WsfCoverageGrid.hpp:197
virtual void PreparePlatforms(WsfSimulation &aSimulation)=0
virtual GridAsset GetAsset(PointId aPointId) const =0
virtual void HasNullDevice(bool &aAnyNull, bool &aAllNull) const =0
bool ProcessInput(UtInput &aInput) override
Definition WsfCoverageGrid.cpp:37
Grid * Clone() const override=0
PointId GetNextAvailableId()
Definition WsfCoverageGrid.cpp:234
const ut::CentralBody & GetCentralBody() const
Return the central body to which this grid's point locations refer.
Definition WsfCoverageGrid.hpp:189
bool IsUsed() const
Definition WsfCoverageGrid.hpp:180
bool IsInitialized() const
Return if this Grid has been initialized.
Definition WsfCoverageGrid.hpp:186
void SetUsedFlag()
Definition WsfCoverageGrid.hpp:179
virtual GridAsset GetAsset(const std::string &aPlatformName) const =0
virtual const Point * GetPoint(PointId aPointId) const =0
virtual bool CreatesNewPlatforms() const =0
Grid(const WsfScenario &aScenario)
Definition WsfCoverageGrid.cpp:31
const std::string & GetGridDataFileName() const
Return the configured grid data file name.
Definition WsfCoverageGrid.hpp:194
virtual void InvokeOnComponent(GridAction &aAction, std::size_t aComponentIndex) const
Invoke the given aAction on the points of the specified grid component.
Definition WsfCoverageGrid.hpp:177
virtual std::size_t GetNumComponents() const
Definition WsfCoverageGrid.hpp:145
virtual bool InitializeP()=0
Grid(const Grid &aOther)=default
virtual void Invoke(GridAction &aAction) const =0
virtual std::size_t GetSize() const =0
virtual bool IsStructured() const
Definition WsfCoverageGrid.hpp:136
void SetSuppressGridPlatforms(bool aSuppress)
Set if this grid suppresses grid platforms.
Definition WsfCoverageGrid.hpp:200
const WsfScenario & GetScenario() const
Definition WsfCoverageGrid.hpp:218
virtual std::string GetComponentName(std::size_t aComponentIndex) const
Return the name of the specified grid component.
Definition WsfCoverageGrid.hpp:148
A point in a coverage grid.
Definition WsfCoverageGridPoint.hpp:40
Definition WsfCoverageTextOutputWriter.hpp:34
Definition WsfCoverage.cpp:35
std::uint64_t PointId
Definition WsfCoverageGridPoint.hpp:33
constexpr PointId cINVALID_POINT_ID
Zero is used everywhere to indicate an invalid point Id.
Definition WsfCoverageGridPoint.hpp:36
Function definitions for those who need run-time access to the version.
Definition WsfComm.cpp:32