WSF
WsfSpaceMover.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#ifndef WSFSPACEMOVER_HPP
13#define WSFSPACEMOVER_HPP
14
15#include "wsf_space_export.h"
16
17#include <memory>
18
19#include "UtCloneablePtr.hpp"
20class UtInput;
21#include "UtOrbitalState.hpp"
22class UtTwoLineElement;
24class WsfDateTime;
25class WsfMover;
26class WsfScenario;
27#include "WsfSpaceMoverBase.hpp"
28#include "WsfWaypoint.hpp"
29
45class WSF_SPACE_EXPORT WsfSpaceMover : public WsfSpaceMoverBase
46{
47public:
48 explicit WsfSpaceMover(const WsfScenario& aScenario);
49 WsfSpaceMover(const WsfSpaceMover& aSrc) = default;
51 ~WsfSpaceMover() override = default;
52
53 bool SetInitialPoint(double lat, double lon, double alt, double speed, double heading) override;
54
55 bool Initialize(double aSimTime) override;
56
57 WsfMover* Clone() const override { return new WsfSpaceMover(*this); }
58
59 bool ProcessInput(UtInput& aInput) override;
60
61 const WsfDateTime& GetDateTime() const;
62
63protected:
64 void ShowStatus(double aSimTime);
65
66private:
67 void InitializeFromWaypoint(const UtCalendar& aEpoch);
68
69 bool mDebugShowStatus;
70
71 // Initial conditions to be converted to orbital elements
72 ut::CloneablePtr<WsfWaypoint> mInitialPointPtr;
73};
74
75#endif
A class to setup a satellite so that it will suffer a conjunction at a given time with a given target...
Definition WsfConjunctionInput.hpp:30
A singleton object used to maintain the start date and time of the simulation.
Definition WsfDateTime.hpp:34
Definition WsfMover.hpp:37
WsfMover()=delete
Contains the data required to create a simulation, and acts as the entry point for input file process...
Definition WsfScenario.hpp:111
bool Initialize(double aSimTime) override
Definition WsfSpaceMoverBase.cpp:151
WsfSpaceMoverBase()=delete
virtual bool SetInitialPoint(double aLat, double aLon, double aAlt, double aSpeed, double aHeading)
Definition WsfSpaceMoverBase.cpp:456
bool ProcessInput(UtInput &aInput) override
Definition WsfSpaceMoverBase.cpp:273
WsfSpaceMover & operator=(const WsfSpaceMover &)=delete
WsfSpaceMover(const WsfScenario &aScenario)
Definition WsfSpaceMover.cpp:36
WsfMover * Clone() const override
Definition WsfSpaceMover.hpp:57
WsfSpaceMover(const WsfSpaceMover &aSrc)=default
~WsfSpaceMover() override=default
Copyrights Multiple, All Rights Reserved