WSF
WsfPM_Mover.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 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// Updated by Infoscitex, a DCS Company.
13// ****************************************************************************
14
15#ifndef WSFPM_MOVER_HPP
16#define WSFPM_MOVER_HPP
17
18#include "wsf_parser_export.h"
19
20#include "WsfPM_ObjectMap.hpp"
22#include "WsfPM_Route.hpp"
23
24class WSF_PARSER_EXPORT WsfPM_Mover : public WsfPM_PlatformPart
25{
26public:
27 static bool IsWaypointMover(const WsfPProxyNode& aNode) noexcept;
28
30 WsfPM_Mover(const WsfPProxyNode& aNode);
31
33 std::string UsingRoute() const;
35 std::string StartAt() const { return GetValue().GetAttr("startAt").ValueToString(); }
39 wsf::proxy::AltitudeReferenceEnum DefaultAltitudeReference() const noexcept;
40};
41
42class WSF_PARSER_EXPORT WsfPM_WaypointMover : public WsfPM_Mover
43{
44public:
46 : WsfPM_Mover()
47 {
48 }
50 : WsfPM_Mover(aNode)
51 {
52 assert(IsWaypointMover(aNode));
53 }
54
55 WsfProxy::Acceleration MaximumRadialAcceleration() const;
56 WsfProxy::Acceleration MaximumLinearAcceleration() const;
57 WsfProxy::Speed MaximumClimbRate() const;
58 WsfProxy::Speed DefaultClimbRate() const;
59 WsfProxy::Acceleration DefaultLinearAcceleration() const;
60 WsfProxy::Acceleration TurnG_Limit() const;
61 WsfProxy::Acceleration BodyG_Limit() const;
62 WsfProxy::AngularRate TurnRateLimit() const;
63 WsfProxy::AngularRate RollRateLimit() const;
64 WsfProxy::AngularRate MaximumTurnRate() const;
65 WsfProxy::Angle BankAngleLimit() const;
66 WsfProxy::Angle MaximumFlightPathAngle() const;
67 WsfProxy::Length MinimumAltitude() const;
68 WsfProxy::Length MaximumAltitude() const;
69 WsfProxy::Speed MinimumSpeed() const;
70 WsfProxy::Speed MaximumSpeed() const;
71 WsfProxy::Bool SwitchOnPassing() const;
72 WsfProxy::Double HeadingPursuitGain() const;
73 WsfProxy::Bool IsOnGround() const;
74 WsfPM_Waypoint::EndOfPathOption EndOfPath() const;
75};
76
78
79#endif
WsfPM_ObjectMapT< WsfPM_Mover > WsfPM_MoverMap
Definition WsfPM_Mover.hpp:77
static bool IsWaypointMover(const WsfPProxyNode &aNode) noexcept
Definition WsfPM_Mover.cpp:19
WsfPM_Route DefaultRoute() const
Definition WsfPM_Mover.cpp:31
std::string UsingRoute() const
Definition WsfPM_Mover.cpp:36
WsfPM_Mover()
Definition WsfPM_Mover.cpp:24
std::string StartAt() const
Definition WsfPM_Mover.hpp:35
WsfPM_Route InitialRoute() const
Definition WsfPM_Mover.cpp:41
Definition WsfPM_ObjectMap.hpp:88
WsfPM_PlatformPart()
Definition WsfPM_PlatformPart.cpp:17
Definition WsfPM_Route.hpp:25
WsfPM_WaypointMover(const WsfPProxyNode &aNode)
Definition WsfPM_Mover.hpp:49
WsfPM_WaypointMover()
Definition WsfPM_Mover.hpp:45
EndOfPathOption
Definition WsfPM_Waypoint.hpp:37
WsfPProxyValue GetValue() const
Definition WsfPProxyNode.cpp:79
WsfPProxyNode()
Definition WsfPProxyNode.cpp:24
std::string ValueToString() const
Definition WsfPProxyValue.cpp:243
WsfPProxyValue GetAttr(const WsfPProxyKey &aEntry) const
Definition WsfPProxyValue.hpp:62
Definition WsfPProxyBasicValues.hpp:211
NumericUnitaryValueT< UtLengthValue, WsfProxy::cLENGTH_VALUE > Length
Definition WsfPProxyBasicValues.hpp:413
NumericUnitaryValueT< UtSpeedValue, WsfProxy::cSPEED_VALUE > Speed
Definition WsfPProxyBasicValues.hpp:417
NumericUnitaryValueT< UtAngleValue, WsfProxy::cANGLE_VALUE > Angle
Definition WsfPProxyBasicValues.hpp:445
NumericUnitaryValueT< UtAccelerationValue, WsfProxy::cACCELERATION_VALUE > Acceleration
Definition WsfPProxyBasicValues.hpp:441
NumericUnitaryValueT< UtAngularRateValue, WsfProxy::cANGULARRATE_VALUE > AngularRate
Definition WsfPProxyBasicValues.hpp:447
NumericValueT< double, WsfProxy::cDOUBLE_VALUE > Double
Definition WsfPProxyBasicValues.hpp:405
AltitudeReferenceEnum
Denotes altitude reference.
Definition WsfPProxyBasicValues.hpp:553
Copyrights Multiple, All Rights Reserved