|
WSF
|
#include <FiresLaunchComputer.hpp>


Public Member Functions | |
| FiresLaunchComputer (WsfScenario *aScenarioPtr) | |
| FiresLaunchComputer (const FiresLaunchComputer &aSrc)=default | |
| FiresLaunchComputer & | operator= (const FiresLaunchComputer &aSrc)=delete |
| ~FiresLaunchComputer () override=default | |
| WsfLaunchComputer * | Clone () const override |
| bool | ProcessInput (UtInput &aInput) override |
| double | EstimatedTimeToIntercept (double aSimTime, const WsfTrack &aTrack, double aLaunchDelayTime) override |
| 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 bool | Initialize (double aSimTime, WsfWeapon *aWeaponPtr) |
| 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) |
Protected Member Functions | |
| bool | InitializeTTIData () 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 |
| virtual bool | WithinConstraintsAt (double aSimTime, double aFutureInterceptTime, const WsfTrack &aTrack) |
| 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()). | |
Additional Inherited Members | |
| Public Types inherited from WsfLaunchComputer | |
| enum | Constraints { cMAX_DELTA_ALTITUDE , cMIN_DELTA_ALTITUDE , cMIN_OPENING_SPEED , cMAX_OPENING_SPEED , cMAX_SLANT_RANGE , cMIN_SLANT_RANGE , cMAX_BORESIGHT_ANGLE , cNUMBER_OF_CONSTRAINTS } |
| Public Types inherited from WsfObject | |
| typedef std::vector< WsfStringId > | TypeList |
| The list of types returned by GetTypeList. | |
| 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) |
| Static Public Attributes inherited from WsfLaunchComputer | |
| static const double | cFOREVER = 1.0E8 |
| Constant indicating a large amount of time, or "will never get there". | |
| static const double | cOUT_OF_REACH = 1.0E+30 |
| Constant indicating an unattainable distance, or "a long way away". | |
| static const double | cUNDEFINED_DOUBLE = 1.0E+30 |
| A constant indicating a value is undefined. | |
| Protected Types inherited from WsfLaunchComputer | |
| enum | { cVF_LAUNCH_TIME = 0X0001 , cVF_LAUNCHER_BEARING = 0X0002 , cVF_LAUNCHER_ELEVATION = 0X0004 , cVF_LOFT_ANGLE = 0X0008 , cVF_BURN_TIME = 0X0010 , cVF_TIME_OF_FLIGHT = 0X0020 , cVF_INTERCEPT_TIME = 0X0040 , cVF_INTERCEPT_POINT = 0X0080 , cVF_TARGET_IMPACT_TIME = 0X0100 , cVF_TARGET_IMPACT_POINT = 0X0200 , cVF_END_TIME = 0X0400 , cVF_END_POINT = 0X0800 } |
| static bool | GetDataValue (const WsfTrack &aTrack, const std::string &aName, double &aValue, double aMultiplier) |
| WsfWeapon * | mWeaponPtr |
| bool | mDebugEnabled |
| bool | mShowResults |
| bool | mComputerGenerationMode |
| bool | mConstraintEnabled [cNUMBER_OF_CONSTRAINTS] |
| double | mPredictionLockinTime |
| double | mMaxDeltaAltitude |
| double | mMinDeltaAltitude |
| double | mMinOpeningSpeed |
| double | mMaxOpeningSpeed |
| double | mMaxSlantRange |
| double | mMinSlantRange |
| double | mCosineMaxBoresight |
| double | mMaximumTOF |
| double | mAvgThrustingAccel |
| double | mBurnoutSpeed |
| double | mBurnDuration |
| double | mCoastTime |
| double | mAvgCoastingAccel |
| double | mMinTerminalSpeed |
| double | mLastPredictionTime |
| WsfTrackId | mLastPredictionTrackId |
| unsigned int | mValidityFlags |
| double | mLaunchTime |
| double | mLauncherBearing |
| double | mLauncherElevation |
| double | mLoftAngle |
| double | mBurnTime |
| double | mTimeOfFlight |
| double | mInterceptTime |
| WsfGeoPoint | mInterceptPoint |
| double | mTargetImpactTime |
| WsfGeoPoint | mTargetImpactPoint |
| double | mEndTime |
| WsfGeoPoint | mEndPoint |
| double | mCommandedLauncherBearing |
| double | mCommandedLauncherElevation |
| double | mCommandedLoftAngle |
| double | mCommandedBurnTime |
| WsfGeoPoint | mCommandedInterceptPoint |
A launch computer for use with weapons employing the WSF_FIRES_MOVER type. This class stores the fires tables of range, max. ord. (max. height), and time of flight, for classes of Systems + Munitions. If a weapon uses this launch computer, the fired munition will automatically call "GetMaxOrdAndTOF" to initialize itself.
|
explicit |
References WsfLaunchComputer::WsfLaunchComputer().
Referenced by Clone(), FiresLaunchComputer(), and operator=().
|
default |
References FiresLaunchComputer().
|
overridedefault |
|
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 FiresLaunchComputer(), and WsfLaunchComputer::WsfLaunchComputer().
Referenced by ~FiresLaunchComputer().
|
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::GetPlatform(), ok, WsfLaunchComputer::SetInterceptTime(), WsfLaunchComputer::SetTargetImpactPointWCS(), WsfLaunchComputer::SetTimeOfFlight(), and WsfLaunchComputer::UpdateResults().
Referenced by ~FiresLaunchComputer().
|
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.
References WsfWeapon::GetLaunchedPlatformType(), Fires::FiresTable::GetMaximumRange(), Fires::FiresTable::GetMinimumRange(), WsfLaunchComputer::GetWeapon(), and ok.
Referenced by ~FiresLaunchComputer().
|
delete |
References FiresLaunchComputer().
|
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 Fires::FiresTables::Find(), Fires::FiresTables::FireTables(), WsfScenario::FromInput(), Fires::FiresTable::GetName(), WsfLaunchComputer::ProcessInput(), and Fires::FiresTableLoader::ProcessTable().
Referenced by ~FiresLaunchComputer().