WSF
FiresTables.hpp
Go to the documentation of this file.
1// ****************************************************************************
2// CUI//REL TO USA ONLY
3//
4// The Advanced Framework for Simulation, Integration, and Modeling (AFSIM)
5//
6// Copyright 2003-2015 The Boeing 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 FIRES_TABLES_HPP
13#define FIRES_TABLES_HPP
14
15#include "wsf_fires_export.h"
16
17#include <map>
18#include <set>
19
20#include "FiresObserver.hpp"
21
22class WsfScenario;
24
26namespace Fires
27{
28class FiresTable;
29
30class WSF_FIRES_EXPORT FiresTables : public WsfScenarioExtension
31{
32public:
33 static FiresTables* Find(const WsfScenario& aScenario);
34
36 ~FiresTables() override;
37
38 void AddedToScenario() override;
39 bool ProcessInput(UtInput& aInput) override;
40
41 virtual void AddType(const std::string& aTypeName);
42 virtual bool IsType(const std::string& aType);
43
44 std::map<WsfStringId, WsfStringId>& AeroMap() { return mAeroMap; }
45 std::map<WsfStringId, double>& MassMap() { return mMassMap; }
46 std::map<WsfStringId, FiresTable*>& FireTables() { return mTables; }
47
48 FiresTable* GetTable(const std::string& aType) const;
49
51 bool UsesMaxOrd(const std::string& aType);
52 bool GetMaxOrdAndTOF(const std::string& aType, double aRange, double& aMaxOrd, double& aTOF);
53
54 bool GetElevationAngleAndTOF(const std::string& aType, double aRange, double& aElevationAngle, double& aTOF);
55
56protected:
59
60 std::map<WsfStringId, WsfStringId> mAeroMap;
61 std::map<WsfStringId, double> mMassMap;
62 std::map<WsfStringId, FiresTable*> mTables;
63 std::set<WsfStringId> mTypes;
64};
65} // namespace Fires
66#endif
Definition FiresTable.hpp:29
std::map< WsfStringId, double > mMassMap
Definition FiresTables.hpp:61
virtual bool IsType(const std::string &aType)
Return whether the given type matches one of the types provided in a "ballistic_types" input block.
Definition FiresTables.cpp:172
bool mUseFiresMoverExtrapolation
Definition FiresTables.hpp:57
bool mTestEnabled
Definition FiresTables.hpp:58
bool ProcessInput(UtInput &aInput) override
Definition FiresTables.cpp:79
std::map< WsfStringId, double > & MassMap()
Definition FiresTables.hpp:45
virtual void AddType(const std::string &aTypeName)
Definition FiresTables.cpp:162
std::map< WsfStringId, FiresTable * > mTables
Definition FiresTables.hpp:62
static FiresTables * Find(const WsfScenario &aScenario)
Definition FiresTables.cpp:44
std::set< WsfStringId > mTypes
Definition FiresTables.hpp:63
bool UseFiresMoverExtrapolation()
Definition FiresTables.hpp:50
void AddedToScenario() override
Definition FiresTables.cpp:58
std::map< WsfStringId, WsfStringId > mAeroMap
Definition FiresTables.hpp:60
std::map< WsfStringId, FiresTable * > & FireTables()
Definition FiresTables.hpp:46
FiresTables()
Definition FiresTables.cpp:52
std::map< WsfStringId, WsfStringId > & AeroMap()
Definition FiresTables.hpp:44
WsfScenarioExtension()
Definition WsfScenarioExtension.cpp:21
friend class WsfScenario
Definition WsfScenarioExtension.hpp:39
Contains the data required to create a simulation, and acts as the entry point for input file process...
Definition WsfScenario.hpp:111
Provide a top-level interface for including the fires library's types.
Definition BallisticPath.cpp:34
Copyrights Multiple, All Rights Reserved