WSF
WsfOrbitalAttitudeChangeEvent.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 2019 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 WSFORBITALATTITUDECHANGEEVENT_HPP
13#define WSFORBITALATTITUDECHANGEEVENT_HPP
14
15#include "wsf_space_export.h"
16
17#include <memory>
18
19class UtCalendar;
20class UtInput;
21#include "WsfOrbitalEvent.hpp"
23#include "WsfStringId.hpp"
24
27class WSF_SPACE_EXPORT WsfOrbitalAttitudeChangeEvent : public WsfOrbitalEvent
28{
29public:
32 ~WsfOrbitalAttitudeChangeEvent() override = default;
33
34 WsfOrbitalEvent* Clone() const override;
35 bool ProcessInput(UtInput& aInput) override;
36 bool Initialize(const UtCalendar& aEpoch, const wsf::space::OrbitalMissionContext& aContext) override;
37
38 const char* GetScriptClassName() const override { return "WsfChangeAttitude"; }
39 static WsfStringId GetTypeId();
40
41 void SetOrientation(std::unique_ptr<wsf::space::Orientation> aOrientationPtr);
42 wsf::space::Orientation* GetOrientation() const;
43
44 void Accept(WsfOrbitalEventVisitor* aVisitorPtr) override;
45
46 bool ValidateParameterRanges(const std::string& aExecutingPlatformName) const override;
47
48protected:
49 bool ExecuteEvent(const UtCalendar& aEpoch, wsf::space::OrbitalMissionContext& aContext) override;
50
51 std::unique_ptr<wsf::space::Orientation> mOrientationPtr{nullptr};
52};
53
54#endif
UtStringId WsfStringId
WsfStringId – the same thing as UtStringId.
Definition WsfStringId.hpp:23
WsfStringId GetTypeId() const
Get the string ID of the 'type' of the object.
Definition WsfObject.hpp:78
const char * GetScriptClassName() const override
Definition WsfOrbitalAttitudeChangeEvent.hpp:38
std::unique_ptr< wsf::space::Orientation > mOrientationPtr
Definition WsfOrbitalAttitudeChangeEvent.hpp:51
WsfOrbitalAttitudeChangeEvent(const WsfScenario &aScenario)
Definition WsfOrbitalAttitudeChangeEvent.cpp:41
~WsfOrbitalAttitudeChangeEvent() override=default
Definition WsfOrbitalEventVisitor.hpp:41
virtual bool ExecuteEvent(const UtCalendar &aCurrentTime, wsf::space::OrbitalMissionContext &aContext)=0
virtual bool ValidateParameterRanges(const std::string &aExecutingPlatformName) const
Definition WsfOrbitalEvent.cpp:257
virtual void Accept(WsfOrbitalEventVisitor *aVisitorPtr)=0
bool ProcessInput(UtInput &aInput) override
Definition WsfOrbitalEvent.cpp:29
WsfOrbitalEvent(const WsfOrbitalEvent &aSrc)
Definition WsfOrbitalEvent.cpp:361
virtual bool Initialize(const UtCalendar &aEpoch, const wsf::space::OrbitalMissionContext &aContext)
Definition WsfOrbitalEvent.cpp:202
WsfOrbitalEvent * Clone() const override=0
Make a copy of this object.
Contains the data required to create a simulation, and acts as the entry point for input file process...
Definition WsfScenario.hpp:111
Definition WsfSpaceOrbitalMissionContext.hpp:38
Definition WsfSpaceOrientation.hpp:80
Copyrights Multiple, All Rights Reserved