WSF
WsfIntegratingSpaceMover.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 WSFINTEGRATINGSPACEMOVER_HPP
13#define WSFINTEGRATINGSPACEMOVER_HPP
14
15#include "wsf_space_export.h"
16
17#include <memory>
18
19#include "WsfSpaceMoverBase.hpp"
20
24
25class WSF_SPACE_EXPORT WsfIntegratingSpaceMover : public WsfSpaceMoverBase
26{
27public:
28 explicit WsfIntegratingSpaceMover(const WsfScenario& aScenario);
31 ~WsfIntegratingSpaceMover() override = default;
32
35
36 WsfMover* Clone() const override;
37 bool Initialize2(double aSimTime) override;
38
39 const char* GetScriptClassName() const override;
40
41 std::unique_ptr<WsfOrbitalDynamics> GetOrbitalDynamicsClone() const;
42 bool SetOrbitalDynamics(std::unique_ptr<WsfOrbitalDynamics> aDynamicsPtr);
43
44 std::unique_ptr<WsfOrbitalIntegrator> GetOrbitalIntegratorClone() const;
45 bool SetOrbitalIntegrator(std::unique_ptr<WsfOrbitalIntegrator> aIntegratorPtr);
46
47private:
48 WsfIntegratingPropagator& GetIntegratingPropagator();
49};
50
51#endif // WSFINTEGRATINGSPACEMOVER_HPP
Definition WsfIntegratingPropagator.hpp:37
WsfIntegratingSpaceMover(WsfIntegratingSpaceMover &&aOther)=delete
WsfIntegratingSpaceMover & operator=(const WsfIntegratingSpaceMover &&aOther)=delete
WsfIntegratingSpaceMover(const WsfIntegratingSpaceMover &aOther)=default
WsfIntegratingSpaceMover(const WsfScenario &aScenario)
Definition WsfIntegratingSpaceMover.cpp:18
bool SetOrbitalDynamics(std::unique_ptr< WsfOrbitalDynamics > aDynamicsPtr)
Definition WsfIntegratingSpaceMover.cpp:56
std::unique_ptr< WsfOrbitalDynamics > GetOrbitalDynamicsClone() const
Definition WsfIntegratingSpaceMover.cpp:51
~WsfIntegratingSpaceMover() override=default
WsfIntegratingSpaceMover & operator=(const WsfIntegratingSpaceMover &aOther)=delete
bool SetOrbitalIntegrator(std::unique_ptr< WsfOrbitalIntegrator > aIntegratorPtr)
Definition WsfIntegratingSpaceMover.cpp:66
std::unique_ptr< WsfOrbitalIntegrator > GetOrbitalIntegratorClone() const
Definition WsfIntegratingSpaceMover.cpp:61
WsfMover()=delete
Definition WsfOrbitalDynamics.hpp:32
Definition WsfOrbitalIntegrator.hpp:24
Contains the data required to create a simulation, and acts as the entry point for input file process...
Definition WsfScenario.hpp:111
WsfMover * Clone() const override
Definition WsfSpaceMoverBase.cpp:95
WsfSpaceMoverBase()=delete
bool Initialize2(double aSimTime) override
Definition WsfSpaceMoverBase.cpp:225
const char * GetScriptClassName() const override
Definition WsfSpaceMoverBase.cpp:145
Copyrights Multiple, All Rights Reserved