12#ifndef WSFTOWEDMOVER_HPP
13#define WSFTOWEDMOVER_HPP
15#include "wsf_mil_export.h"
48 void Update(
double aSimTime)
override;
83 void SetReelInTime(
double aStartReelInTime) { mStartReelInTime = aStartReelInTime; }
123 void GetLeadStateHistory(
double aTime, LeadState& aState);
126 void CleanUpStowedAsset(
double aSimTime);
128 void ComputeTowDistance(
double aSimTime);
131 void UpdateVelocity();
148 double mStartReelInTime;
152 double mRelativeReelInTimeAfterDeployed;
156 double mStartReelInDistance;
160 double mCurrentRange;
164 std::deque<LeadState> mLeadPlatformStateQueue;
168 DeploymentState mState;
173 bool mRestoreQuantity;
178 bool mFollowLeadTrajectory;
184 double mAzimuthRelativeToLead;
189 double mElevationRelativeToLead;
const char * GetScriptClassName() const override
Definition WsfMover.cpp:616
bool ProcessInput(UtInput &aInput) override
Definition WsfOffsetMover.cpp:181
bool Initialize(double aSimTime) override
Definition WsfOffsetMover.cpp:102
WsfMover * Clone() const override
Definition WsfOffsetMover.cpp:86
void OnPlatformUpdated(double aSimTime, WsfPlatform *aPlatformPtr) override
Definition WsfOffsetMover.cpp:292
void Update(double aSimTime) override
Definition WsfOffsetMover.cpp:303
Contains the data required to create a simulation, and acts as the entry point for input file process...
Definition WsfScenario.hpp:111
A specialized mover that will cause an object to be towed behind a platform, for example a decoy.
Definition WsfTowedMover.hpp:23
DeploymentState
Definition WsfTowedMover.hpp:26
@ cSTOWED
Definition WsfTowedMover.hpp:27
@ cDEPLOYED
Definition WsfTowedMover.hpp:29
@ cREELING_IN
Definition WsfTowedMover.hpp:30
@ cREELING_OUT
Definition WsfTowedMover.hpp:28
void SetTowLength(double aLength)
Definition WsfTowedMover.hpp:117
void SetReelInRate(double aRate)
Definition WsfTowedMover.hpp:103
double GetReelInTimeAbsolute()
Retrieve the time a towed asset is to be reeled in, absolute simulation time.
Definition WsfTowedMover.hpp:91
~WsfTowedMover() override=default
double GetReelInRate()
Retrieve the rate at which to reel in the towed asset.
Definition WsfTowedMover.hpp:113
void SetReelOutRate(double aReelOutRate)
Definition WsfTowedMover.hpp:107
WsfTowedMover & operator=(const WsfTowedMover &)=delete
double GetReelInTimeAfterDeployment()
Retrieve the time after the towed asset is to be reeled in. Time is relative to time at initial deplo...
Definition WsfTowedMover.hpp:94
void SetReelInTimeAfterDeployment(double aStartReelInTime)
Definition WsfTowedMover.hpp:88
double GetDistanceMeters()
Definition WsfTowedMover.hpp:68
double GetReelOutRate()
Retrieve the rate at which to reel out the towed asset.
Definition WsfTowedMover.hpp:110
DeploymentState GetState()
Definition WsfTowedMover.hpp:70
void SetReelInTime(double aStartReelInTime)
Definition WsfTowedMover.hpp:83
WsfTowedMover(const WsfTowedMover &aSrc)=default
WsfTowedMover(WsfScenario &aScenario)
Definition WsfTowedMover.cpp:29
Stores the state of the lead platform with a timestamp.
Definition WsfTowedMover.hpp:55
double mLocationWCS[3]
Definition WsfTowedMover.hpp:61
bool operator<(double aTime)
Definition WsfTowedMover.hpp:59
double mAccelerationWCS[3]
Definition WsfTowedMover.hpp:63
double mTimeUpdated
Definition WsfTowedMover.hpp:65
double mOrientationNED[3]
Definition WsfTowedMover.hpp:64
double mVelocityWCS[3]
Definition WsfTowedMover.hpp:62
void LoadFromPlatform(double aSimTime, WsfPlatform &aPlatform)
Definition WsfTowedMover.cpp:257