WSF
WsfPropagatorTargetPoint.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 WSFPROPAGATORTARGETPOINT_HPP
13#define WSFPROPAGATORTARGETPOINT_HPP
14
15#include "wsf_space_export.h"
16
17#include <memory>
18
19#include "UtCloneablePtr.hpp"
20#include "UtOrbitalPropagatorBase.hpp"
21#include "UtOrbitalState.hpp"
23
24namespace wsf
25{
26namespace space
27{
28
30class WSF_SPACE_EXPORT PropagatorTargetPoint : public OrbitalTargetPoint
31{
32public:
33 explicit PropagatorTargetPoint(std::unique_ptr<UtOrbitalPropagatorBase> aPropPtr)
34 : mPropPtr{std::move(aPropPtr)}
35 {
36 }
37
39
41
42 ~PropagatorTargetPoint() override = default;
43
44 PropagatorTargetPoint* Clone() const override { return new PropagatorTargetPoint{*this}; }
45 void Update(const UtCalendar& aEpoch) override;
46 ut::OrbitalStateVector GetOrbitalStateVectorInertial() const override;
47 UtVec3d GetPositionECI() const override;
48 UtVec3d GetVelocityECI() const override;
49 UtCalendar GetEpoch() const override;
50 double GetCharacteristicTime() const override;
51
52private:
53 ut::CloneablePtr<UtOrbitalPropagatorBase> mPropPtr;
54};
55
56} // namespace space
57} // namespace wsf
58
59#endif // WSFPROPAGATORTARGETPOINT_HPP
aObjectPtr Update(simTime)
A target point with kinematics given by a propagator.
Definition WsfPropagatorTargetPoint.hpp:31
PropagatorTargetPoint(std::unique_ptr< UtOrbitalPropagatorBase > aPropPtr)
Definition WsfPropagatorTargetPoint.hpp:33
PropagatorTargetPoint & operator=(const PropagatorTargetPoint &aOther)=delete
~PropagatorTargetPoint() override=default
PropagatorTargetPoint * Clone() const override
Create a copy of this target point.
Definition WsfPropagatorTargetPoint.hpp:44
Template specialization for wsf::comm::Address. Allows usage of Address in std::unordered_map/set.
Definition WsfCommAddress.hpp:185
Definition WsfAtmosphere.cpp:23
Function definitions for those who need run-time access to the version.
Definition WsfComm.cpp:32
Copyrights Multiple, All Rights Reserved