WSF
WsfSimpleOrbitalManeuvering.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 2016 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 WSFSIMPLEORBITALMANEUVERING_HPP
13#define WSFSIMPLEORBITALMANEUVERING_HPP
14
15#include "wsf_space_export.h"
16
18
22{
23public:
28
29 bool ProcessInput(UtInput& aInput) override;
30 WsfOrbitalManeuvering* Clone() const override { return new WsfSimpleOrbitalManeuvering(*this); }
31
32 double GetAvailableDeltaV() const override;
33 double GetRequiredDuration(double aDeltaV) const override;
34 double GetRequiredDeltaV(double aDuration) const override;
35 bool ReduceAvailableDeltaV_By(double aDeltaV) override;
36
37private:
38 static constexpr double cDEFAULT_DELTA_V_BUDGET = 1.0e12;
39 double mDeltaV{cDEFAULT_DELTA_V_BUDGET};
40 double mDeltaV_Rate{1000.0};
41};
42
43#endif
virtual bool ReduceAvailableDeltaV_By(double aDeltaV)
Definition WsfOrbitalManeuvering.cpp:91
virtual double GetRequiredDuration(double aDeltaV) const =0
Given a delta-v, return the required time to complete the maneuver.
bool ProcessInput(UtInput &aInput) override
Definition WsfOrbitalManeuvering.cpp:28
virtual double GetAvailableDeltaV() const
Definition WsfOrbitalManeuvering.cpp:78
virtual double GetRequiredDeltaV(double aDuration) const =0
Given a maneuver duration, return the necessary delta-v.
WsfOrbitalManeuvering()=default
WsfSimpleOrbitalManeuvering & operator=(const WsfSimpleOrbitalManeuvering &)=delete
WsfOrbitalManeuvering * Clone() const override
Definition WsfSimpleOrbitalManeuvering.hpp:30
Copyrights Multiple, All Rights Reserved