|
WSF
|
#include <WsfBallisticLaunchComputer.hpp>


Public Member Functions | |
| WsfBallisticLaunchComputer () | |
| WsfBallisticLaunchComputer (const WsfBallisticLaunchComputer &aSrc)=default | |
| WsfBallisticLaunchComputer & | operator= (const WsfBallisticLaunchComputer &)=delete |
| ~WsfBallisticLaunchComputer () override=default | |
| WsfLaunchComputer * | Clone () const override |
| bool | Initialize (double aSimTime, WsfWeapon *aWeaponPtr) override |
| bool | ProcessInput (UtInput &aInput) override |
| double | EstimatedTimeToIntercept (double aSimTime, const WsfTrack &aTrack, double aLaunchDelayTime) override |
| void | GetBombFlight (double aLnchAlt, double aLnchSpeed, double aTgtAlt, double &aTOF, double &aDownRange) |
| Public Member Functions inherited from WsfLaunchComputer | |
| WsfLaunchComputer () | |
| WsfLaunchComputer (const WsfLaunchComputer &aSrc) | |
| Copy constructor. | |
| ~WsfLaunchComputer () override=default | |
| WsfLaunchComputer & | operator= (const WsfLaunchComputer &)=delete |
| WsfLaunchComputer * | Clone () const override |
| const char * | GetScriptClassName () const override |
| bool | ProcessInput (UtInput &aInput) override |
| virtual void | Update (double aSimTime) |
| WsfWeapon * | GetWeapon () const |
| Return the weapon with which this launch computer is associated. | |
| WsfPlatform * | GetPlatform () const |
| Return the platform with which this launch computer is associated. | |
| WsfSimulation * | GetSimulation () const |
| void | SetMaximumDeltaAltitude (double aMaxDeltaAltitude) |
| void | SetMinimumDeltaAltitude (double aMinDeltaAltitude) |
| void | SetMaximumClosingSpeed (double aMaxClosingSpeed) |
| void | SetMaximumOpeningSpeed (double aMaxOpeningSpeed) |
| void | SetMinimumClosingSpeed (double aMinClosingSpeed) |
| void | SetMinimumOpeningSpeed (double aMinOpeningSpeed) |
| void | SetMaximumSlantRange (double aMaxRange) |
| void | SetMinimumSlantRange (double aMinRange) |
| void | SetMaximumOffBoresight (double aMaxAngle) |
| void | SetMaximumTimeOfFlight (double aMaxTOF) |
| void | SetThrustDuration (double aThrustTime) |
| void | SetCoastDuration (double aCoastTime) |
| void | SetBurnoutSpeed (double aBurnoutSpeed) |
| void | SetMinTerminalSpeed (double aMinTerminalSpeed) |
| bool | ComputerGenerationMode () const |
| void | SetComputerGenerationMode (bool aComputerGenerationMode) |
| void | CopyResultsToTrack (WsfTrack &aTrack) |
| bool | HaveResultsFor (const WsfTrackId &aTrackId) const |
| bool | HaveResultsFor (double aSimTime, const WsfTrackId &aTrackId, double &aTimeToIntercept) const |
| bool | LaunchTimeIsValid () const |
| bool | LauncherBearingIsValid () const |
| bool | LauncherElevationIsValid () const |
| bool | LoftAngleIsValid () const |
| bool | BurnTimeIsValid () const |
| bool | TimeOfFlightIsValid () const |
| bool | InterceptTimeIsValid () const |
| bool | InterceptPointIsValid () const |
| bool | TargetImpactTimeIsValid () const |
| bool | TargetImpactPointIsValid () const |
| bool | EndTimeIsValid () const |
| bool | EndPointIsValid () const |
| double | GetLaunchTime () const |
| double | GetLauncherBearing () const |
| double | GetLauncherElevation () const |
| double | GetLoftAngle () const |
| double | GetBurnTime () const |
| double | GetTimeOfFlight () const |
| double | GetInterceptTime () const |
| const WsfGeoPoint & | GetInterceptPoint () const |
| double | GetTargetImpactTime () const |
| const WsfGeoPoint & | GetTargetImpactPoint () const |
| double | GetEndTime () const |
| const WsfGeoPoint & | GetEndPoint () const |
| void | SetInterceptTime (double aInterceptTime) |
| void | SetInterceptPoint (const WsfGeoPoint &aInterceptPoint) |
| void | SetInterceptPointWCS (const double aLocationWCS[]) |
| void | SetLaunchTime (double aLaunchTime) |
| void | SetTimeOfFlight (double aTimeOfFlight) |
| void | SetTargetImpactTime (double aImpactTime) |
| void | SetLoftAngle (double aLoftAngle) |
| void | SetBurnTime (double aBurnTime) |
| void | SetLauncherBearing (double aBearing) |
| void | SetLauncherElevation (double aElevation) |
| void | SetTargetImpactPoint (const WsfGeoPoint &aImpactPoint) |
| void | SetTargetImpactPointWCS (const double aLocationWCS[]) |
| void | SetEndTime (double aEndTime) |
| void | SetEndPoint (const WsfGeoPoint &aLocation) |
| void | SetEndPointWCS (const double aLocationWCS[]) |
| void | ClearCommandedValues () |
| void | SetCommandedLauncherBearing (double aBearing) |
| void | SetCommandedLauncherElevation (double aElevation) |
| void | SetCommandedLoftAngle (double aLoftAngle) |
| void | SetCommandedBurnTime (double aBurnTime) |
| void | SetCommandedInterceptPoint (const WsfGeoPoint &aPoint) |
| bool | DebugEnabled () const |
| void | SetDebugEnabled (bool aDebugEnabled) |
| bool | ShowResults () const |
| Public Member Functions inherited from WsfObject | |
| WsfObject () | |
| This is the constructor for the WsfObject class. | |
| ~WsfObject () override | |
| This is the destructor for the WsfObject class. | |
| const char * | GetScriptClassName () const override |
| const std::string & | GetType () const |
| WsfStringId | GetTypeId () const |
| Get the string ID of the 'type' of the object. | |
| void | SetType (WsfStringId aType) |
| const std::string & | GetBaseType () const |
| WsfStringId | GetBaseTypeId () const |
| const TypeList & | GetTypeList () const |
| bool | IsA_TypeOf (WsfStringId aType) const |
| WsfObject & | operator= (const WsfObject &aRhs) |
| Assignment operator. | |
| template<typename T> | |
| void | Serialize (T &aBuff) |
| For XIO (de)serialization. | |
| const std::string & | GetName () const |
| WsfStringId | GetNameId () const |
| void | SetName (WsfStringId aName) |
Static Public Member Functions | |
| static std::string | BaseTypeName () |
| The basic type name (needed by weapon_tools and launch computer processor). | |
| Static Public Member Functions inherited from WsfLaunchComputer | |
| static std::string | BaseTypeName () |
| static bool | LoadInstance (UtInput &aInput, WsfLaunchComputer *&aLCPtr) |
| static bool | GetLauncherBearing (const WsfTrack &aTrack, double &aBearing) |
| static bool | GetLauncherElevation (const WsfTrack &aTrack, double &aElevation) |
| static bool | GetLoftAngle (const WsfTrack &aTrack, double &aLoftAngle) |
| static bool | GetBurnTime (const WsfTrack &aTrack, double &aBurnTime) |
| static bool | GetInterceptTime (const WsfTrack &aTrack, double &aInterceptTime) |
| static bool | GetInterceptPoint (const WsfTrack &aTrack, WsfGeoPoint &aPoint) |
Protected Member Functions | |
| bool | NewSizeSpecified () const |
| bool | SizeFullySpecified () const |
| bool | SizedProperly () const |
| void | LoadIndepValues () |
| bool | InitializeTTIData () override |
| bool | WithinConstraintsAt (double aSimTime, double aFutureInterceptTime, const WsfTrack &aTrack) override |
| Protected Member Functions inherited from WsfLaunchComputer | |
| bool | ResultIsValidFor (unsigned int aDataMask) const |
| void | InitializeResults (double aSimTime, const WsfTrack &aTrack) |
| void | UpdateResults (double aSimTime, double aTimeToIntercept, const WsfTrack &aTrack) |
| void | ClearConstraints () |
| void | CopyConstraints (const bool aSrc[]) |
| double | ExpectedFlightDistance () const |
| double | CurrentOpeningSpeed () const |
| bool | DeltaAltitudeCheck (double aDeltaAltitude) const |
| bool | SlantRangeCheck (double aSlantRange) const |
| bool | BoresightAngleCheck (WsfPlatform *aPlatPtr, double aLocWCS[3]) const |
| WsfObject (const WsfObject &aSrc) | |
| Copy constructor (for Clone()). | |
A launch computer for a ballistic (unguided) gravity weapon. This class contains a lookup table for the time and downrange distance required for an iron bomb to fall from a given launch platform altitude and speed, down to a given target altitude. Since this logic can have no control over the flight path of the vehicle, the lateral impact point cannot be guaranteed. To account for this, an acceptable_cross_range_error value may be specified. If the ballistic impact point will be within <specified lateral distance> of the target, a value of time-of-flight is returned. If not, the time-of-flight returned is cFOREVER.
| WsfBallisticLaunchComputer::WsfBallisticLaunchComputer | ( | ) |
References WsfLaunchComputer::WsfLaunchComputer().
Referenced by Clone(), operator=(), and WsfBallisticLaunchComputer().
|
default |
References WsfBallisticLaunchComputer().
|
overridedefault |
References GetBombFlight(), and WsfLaunchComputer::WsfLaunchComputer().
|
inlinestatic |
The basic type name (needed by weapon_tools and launch computer processor).
Referenced by BallisticLaunchComputerGenerator::WriteOutputFile(), and WsfLaunchComputerTypes::WsfLaunchComputerTypes().
|
overridevirtual |
Return a copy of this object. Must be implemented by all derived types. If cloning is impossible, a WsfUncloneableException should be thrown.
Implements WsfObject.
References WsfBallisticLaunchComputer(), and WsfLaunchComputer::WsfLaunchComputer().
|
overridevirtual |
Determine the estimated time for the weapon to intercept a target.
| aSimTime | The current simulation time. |
| aTrack | The track that represents the target. |
| aLaunchDelayTime | The time it takes until the weapon will be launched. |
Reimplemented from WsfLaunchComputer.
References WsfLaunchComputer::cFOREVER, WsfLaunchComputer::InitializeResults(), and WsfLaunchComputer::UpdateResults().
| void WsfBallisticLaunchComputer::GetBombFlight | ( | double | aLnchAlt, |
| double | aLnchSpeed, | ||
| double | aTgtAlt, | ||
| double & | aTOF, | ||
| double & | aDownRange ) |
Referenced by ~WsfBallisticLaunchComputer().
|
overridevirtual |
Initialize the object.
| aSimTime | The current simulation time. |
| aWeaponPtr | The reference platform to use with default launch calculations. |
Reimplemented from WsfLaunchComputer.
References WsfLaunchComputer::Initialize().
|
overrideprotectedvirtual |
Initialize Time To Intercept data for the object. If no TTI data is needed, then override method and simply return true.
Reimplemented from WsfLaunchComputer.
|
protected |
References SizeFullySpecified().
Referenced by ProcessInput().
|
inlineprotected |
Referenced by SizedProperly().
|
delete |
References WsfBallisticLaunchComputer().
|
overridevirtual |
Process input from a generic source.
Examine the current input command. If it is NOT one of the commands recognized by this class then it simply returns 'false'. If it is one of the commands recognized by this class then it processes the command and returns 'true'.
| aInput | a reference to a UtInput object. |
| UtInput::ExceptionBase | (or an object derived from it) if the command was recognized but contains some sort of error. |
Reimplemented from WsfObject.
References LoadIndepValues(), WsfLaunchComputer::ProcessInput(), SizedProperly(), and SizeFullySpecified().
|
inlineprotected |
References NewSizeSpecified().
Referenced by ProcessInput().
|
inlineprotected |
Referenced by LoadIndepValues(), and ProcessInput().
|
overrideprotectedvirtual |
Evaluate whether the supplied WsfTrack currently passes the supplied constraints.
| aSimTime | Current time |
| aFutureInterceptTime | Predicted future time of intercept (aSimTime plus predicted time of flight of the weapon). |
| aTrack | Track to be extrapolated for intercept |
Reimplemented from WsfLaunchComputer.