|
WSF
|
#include <WsfLaunchHandoffData.hpp>


Public Member Functions | |
| WsfLaunchHandoffData () | |
| WsfLaunchHandoffData (const WsfLaunchHandoffData &aSrc) | |
| ~WsfLaunchHandoffData () override=default | |
| WsfLaunchHandoffData & | operator= (const WsfLaunchHandoffData &)=delete |
| Public Member Functions inherited from WsfSimpleComponentT< WsfPlatformComponent > | |
| WsfSimpleComponentT ()=default | |
| Empty constructor for serialization. | |
| WsfSimpleComponentT (int aRole, WsfStringId aName) | |
| WsfSimpleComponentT (int aRole) | |
| WsfSimpleComponentT (WsfStringId aName) | |
| WsfSimpleComponentT (const WsfSimpleComponentT &aSrc) | |
| WsfSimpleComponentT & | operator= (const WsfSimpleComponentT &aRhs) |
| ~WsfSimpleComponentT () override=default | |
| WsfStringId | GetComponentName () const override |
| const int * | GetComponentRoles () const override |
| Public Member Functions inherited from WsfComponentT< WsfPlatform > | |
| WsfComponentT () | |
| WsfComponentT (const WsfComponentT &) noexcept | |
| WsfComponentT & | operator= (const WsfComponentT &) noexcept |
| ~WsfComponentT () override=default | |
| virtual void | ComponentParentChanged (ParentType *aParentPtr) |
| ParentType * | GetComponentParent () const |
| void | SetComponentParent (ParentType *aParentPtr) |
| Public Member Functions inherited from WsfComponent | |
| virtual | ~WsfComponent ()=default |
| virtual int | GetComponentInitializationOrder () const |
| template<typename T> | |
| bool | QueryInterfaceT (T *&aRolePtr) |
| bool | ComponentHasRole (int aRole) |
| Returns true if the component has the specified role. | |
| virtual bool | PreInitialize (double aSimTime) |
| virtual bool | Initialize (double aSimTime) |
| virtual bool | Initialize2 (double aSimTime) |
| virtual void | PreInput () |
| virtual bool | ProcessInput (UtInput &aInput) |
| Public Member Functions inherited from WsfNamed | |
| WsfNamed () | |
| WsfNamed (WsfStringId aName) | |
| WsfNamed (const WsfNamed &)=default | |
| WsfNamed & | operator= (const WsfNamed &)=default |
| virtual | ~WsfNamed ()=default |
| const std::string & | GetName () const |
| WsfStringId | GetNameId () const |
| void | SetName (WsfStringId aName) |
Static Public Member Functions | |
| static WsfLaunchHandoffData & | FindOrCreate (WsfPlatform &aPlatform) |
| static WsfLaunchHandoffData * | Find (const WsfPlatform &aPlatform) |
Protected Types | |
| 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 } |
Protected Member Functions | |
| bool | ResultIsValidFor (unsigned int aDataMask) const |
Accessors for optional data. | |
The [XXX]IsValid method should be used prior to calling Get[XXX]. | |
| unsigned int | mValidityFlags |
| Validity flags for optional data. | |
| void | SetLoftAngle (double aLoftAngle) |
| void | SetBurnTime (double aBurnTime) |
| void | SetTimeOfFlight (double aTimeOfFlight) |
| void | SetInterceptTime (double aInterceptTime) |
| void | SetInterceptPoint (const WsfGeoPoint &aInterceptPoint) |
| bool | LoftAngleIsValid () const |
| bool | BurnTimeIsValid () const |
| bool | TimeOfFlightIsValid () const |
| bool | InterceptTimeIsValid () const |
| bool | InterceptPointIsValid () const |
| double | GetLoftAngle () const |
| double | GetBurnTime () const |
| double | GetTimeOfFlight () const |
| double | GetInterceptTime () const |
| const WsfGeoPoint & | GetInterceptPoint () const |
Launch platform data. | |
| size_t | mLaunchPlatformIndex |
| Index of the launching platform. | |
| double | mLaunchPlatformLat |
| double | mLaunchPlatformLon |
| double | mLaunchPlatformAlt |
| double | mLaunchPlatformVelNED [3] |
| double | mLaunchPlatformHeading |
| double | mLaunchPlatformPitch |
| double | mLaunchPlatformRoll |
Launch system data (the articulated part). | |
| double | mLaunchSystemLocation [3] |
| double | mLaunchSystemYaw |
| double | mLaunchSystemPitch |
| double | mLaunchSystemRoll |
| double | mLaunchSystemTilt |
Launch computer data (optional data) | |
| double | mLoftAngle |
| double | mBurnTime |
| double | mTimeOfFlight |
| double | mInterceptTime |
| WsfGeoPoint | mInterceptPoint |
Other handoff data (optional data) | |
| double | mLaunchDeltaV [3] |
| double | mEmptyMass |
| double | mFuelMass |
| double | mPayloadMass |
Component infrastructure methods | |
| WsfComponent * | CloneComponent () const override |
| void * | QueryInterface (int aRole) override |
| void | SetLaunchPlatformData (WsfPlatform *aPlatformPtr, WsfArticulatedPart *aPartPtr) |
| void | SetLaunchComputerData (WsfLaunchComputer *aComputerPtr) |
Accessors for information about the launch platform and system. | |
| size_t | GetLaunchPlatformIndex () const |
| double | GetLaunchPlatformLat () const |
| double | GetLaunchPlatformLon () const |
| double | GetLaunchPlatformAlt () const |
| void | GetLaunchPlatformVelNED (double aVelocityNED[3]) const |
| double | GetLaunchPlatformHeading () const |
| double | GetLaunchPlatformPitch () const |
| double | GetLaunchPlatformRoll () const |
| void | GetLaunchSystemLocation (double aLocation[3]) const |
| double | GetLaunchSystemYaw () const |
| double | GetLaunchSystemPitch () const |
| double | GetLaunchSystemRoll () const |
| double | GetLaunchSystemTilt () const |
| void | SetLaunchDeltaV (const double aLaunchDeltaV[3]) |
| void | GetLaunchDeltaV (double aLaunchDeltaV[3]) const |
Additional Inherited Members | |
| Public Types inherited from WsfComponentT< WsfPlatform > | |
| typedef WsfPlatform | ParentType |
| This is needed to support the WsfComponentList template. | |
| int | mRoles [2] |
Handoff data between a launching platform and the platform it launches.
This object contains several types of data that is passed from the launching platform to the launched platform. This primary includes the following, but may include other data:
|
protected |
Validity flags for launch computer data. (Parallels what is in WsfLaunchComputer).
| WsfLaunchHandoffData::WsfLaunchHandoffData | ( | ) |
References cWSF_COMPONENT_LAUNCH_HANDOFF_DATA, mBurnTime, mEmptyMass, mFuelMass, mInterceptPoint, mInterceptTime, mLaunchDeltaV, mLaunchPlatformAlt, mLaunchPlatformHeading, mLaunchPlatformIndex, mLaunchPlatformLat, mLaunchPlatformLon, mLaunchPlatformPitch, mLaunchPlatformRoll, mLaunchPlatformVelNED, mLaunchSystemLocation, mLaunchSystemPitch, mLaunchSystemRoll, mLaunchSystemTilt, mLaunchSystemYaw, mLoftAngle, mPayloadMass, mTimeOfFlight, and mValidityFlags.
Referenced by CloneComponent(), Find(), FindOrCreate(), operator=(), and WsfLaunchHandoffData().
| WsfLaunchHandoffData::WsfLaunchHandoffData | ( | const WsfLaunchHandoffData & | aSrc | ) |
References mBurnTime, mEmptyMass, mFuelMass, mInterceptPoint, mInterceptTime, mLaunchDeltaV, mLaunchPlatformAlt, mLaunchPlatformHeading, mLaunchPlatformIndex, mLaunchPlatformLat, mLaunchPlatformLon, mLaunchPlatformPitch, mLaunchPlatformRoll, mLaunchPlatformVelNED, mLaunchSystemLocation, mLaunchSystemPitch, mLaunchSystemRoll, mLaunchSystemTilt, mLaunchSystemYaw, mLoftAngle, mPayloadMass, mTimeOfFlight, mValidityFlags, and WsfLaunchHandoffData().
|
overridedefault |
|
inline |
References cVF_BURN_TIME, and ResultIsValidFor().
|
inlineoverridevirtual |
Clones a component. May return null if component does not support clone.
Implements WsfComponent.
References WsfLaunchHandoffData().
|
static |
References WsfComponentList::FindByRole(), and WsfLaunchHandoffData().
Referenced by FindOrCreate(), WsfGuidanceComputer::Initialize2(), and WsfGuidedMover::InitiateMotion().
|
static |
References WsfComponentListT< COMPONENT_TYPE >::AddComponent(), Find(), and WsfLaunchHandoffData().
Referenced by WsfExplicitWeapon::SetLaunchState().
|
inline |
References mBurnTime.
|
inline |
References mInterceptPoint.
Referenced by WsfGuidanceComputer::Initialize2().
|
inline |
References mInterceptTime.
|
inline |
References mLaunchDeltaV.
Referenced by WsfGuidedMover::InitiateMotion().
|
inline |
References mLaunchPlatformAlt.
|
inline |
References mLaunchPlatformHeading.
|
inline |
References mLaunchPlatformIndex.
|
inline |
References mLaunchPlatformLat.
|
inline |
References mLaunchPlatformLon.
|
inline |
References mLaunchPlatformPitch.
|
inline |
References mLaunchPlatformRoll.
|
inline |
References mLaunchPlatformVelNED.
|
inline |
References mLaunchSystemLocation.
|
inline |
References mLaunchSystemPitch.
|
inline |
References mLaunchSystemRoll.
|
inline |
References mLaunchSystemTilt.
|
inline |
References mLaunchSystemYaw.
|
inline |
References mLoftAngle.
Referenced by WsfGuidanceComputer::Initialize2().
|
inline |
References mTimeOfFlight.
|
inline |
References cVF_INTERCEPT_POINT, and ResultIsValidFor().
Referenced by WsfGuidanceComputer::Initialize2().
|
inline |
References cVF_INTERCEPT_TIME, and ResultIsValidFor().
|
inline |
References cVF_LOFT_ANGLE, and ResultIsValidFor().
Referenced by WsfGuidanceComputer::Initialize2().
|
delete |
References WsfLaunchHandoffData().
|
overridevirtual |
Requests a component's role interface. A component can support one or more roles.
| aRole | The role whose interface is to be returned. |
Implements WsfComponent.
References cWSF_COMPONENT_LAUNCH_HANDOFF_DATA.
|
inlineprotected |
References mValidityFlags.
Referenced by BurnTimeIsValid(), InterceptPointIsValid(), InterceptTimeIsValid(), LoftAngleIsValid(), and TimeOfFlightIsValid().
|
inlineprotected |
References cVF_BURN_TIME, mBurnTime, and mValidityFlags.
Referenced by SetLaunchComputerData().
|
inlineprotected |
References cVF_INTERCEPT_POINT, mInterceptPoint, and mValidityFlags.
Referenced by SetLaunchComputerData().
|
inlineprotected |
References cVF_INTERCEPT_TIME, mInterceptTime, and mValidityFlags.
Referenced by SetLaunchComputerData().
| void WsfLaunchHandoffData::SetLaunchComputerData | ( | WsfLaunchComputer * | aComputerPtr | ) |
Called at launch time to propagate the launch computer data to the launched object.
| aComputerPtr | Pointer to the launch computer. |
References WsfLaunchComputer::BurnTimeIsValid(), WsfLaunchComputer::GetBurnTime(), WsfLaunchComputer::GetInterceptPoint(), WsfLaunchComputer::GetInterceptTime(), WsfLaunchComputer::GetLoftAngle(), WsfLaunchComputer::GetTimeOfFlight(), WsfLaunchComputer::InterceptPointIsValid(), WsfLaunchComputer::InterceptTimeIsValid(), WsfLaunchComputer::LoftAngleIsValid(), SetBurnTime(), SetInterceptPoint(), SetInterceptTime(), SetLoftAngle(), SetTimeOfFlight(), and WsfLaunchComputer::TimeOfFlightIsValid().
Referenced by WsfExplicitWeapon::SetLaunchState().
|
inline |
References mLaunchDeltaV.
Referenced by WsfExplicitWeapon::SetLaunchState().
| void WsfLaunchHandoffData::SetLaunchPlatformData | ( | WsfPlatform * | aPlatformPtr, |
| WsfArticulatedPart * | aPartPtr ) |
Called at the time of launch to capture the current state of the launcher platform and system.
| aPlatformPtr | Pointer to the launching platform. If this is zero then the platform associated with the launching system (aPartPtr) will be used. |
| aPartPtr | Pointer to the launching system. This can be zero if there is no associated launch system. |
References WsfArticulatedPart::GetPitch(), WsfPlatformPart::GetPlatform(), WsfArticulatedPart::GetRoll(), WsfArticulatedPart::GetTilt(), WsfArticulatedPart::GetYaw(), mEmptyMass, mFuelMass, mLaunchPlatformAlt, mLaunchPlatformHeading, mLaunchPlatformIndex, mLaunchPlatformLat, mLaunchPlatformLon, mLaunchPlatformPitch, mLaunchPlatformRoll, mLaunchPlatformVelNED, mLaunchSystemLocation, mLaunchSystemPitch, mLaunchSystemRoll, mLaunchSystemTilt, mLaunchSystemYaw, mPayloadMass, and platformPtr.
Referenced by WsfExplicitWeapon::SetLaunchState().
|
inlineprotected |
References cVF_LOFT_ANGLE, mLoftAngle, and mValidityFlags.
Referenced by SetLaunchComputerData().
|
inlineprotected |
References cVF_TIME_OF_FLIGHT, mTimeOfFlight, and mValidityFlags.
Referenced by SetLaunchComputerData().
|
inline |
References cVF_TIME_OF_FLIGHT, and ResultIsValidFor().
|
protected |
Referenced by GetBurnTime(), SetBurnTime(), WsfLaunchHandoffData(), and WsfLaunchHandoffData().
|
protected |
Referenced by SetLaunchPlatformData(), WsfLaunchHandoffData(), and WsfLaunchHandoffData().
|
protected |
Referenced by SetLaunchPlatformData(), WsfLaunchHandoffData(), and WsfLaunchHandoffData().
|
protected |
Referenced by GetInterceptPoint(), SetInterceptPoint(), WsfLaunchHandoffData(), and WsfLaunchHandoffData().
|
protected |
Referenced by GetInterceptTime(), SetInterceptTime(), WsfLaunchHandoffData(), and WsfLaunchHandoffData().
|
protected |
Referenced by GetLaunchDeltaV(), SetLaunchDeltaV(), WsfLaunchHandoffData(), and WsfLaunchHandoffData().
|
protected |
Referenced by GetLaunchPlatformAlt(), SetLaunchPlatformData(), WsfLaunchHandoffData(), and WsfLaunchHandoffData().
|
protected |
Referenced by GetLaunchPlatformHeading(), SetLaunchPlatformData(), WsfLaunchHandoffData(), and WsfLaunchHandoffData().
|
protected |
Index of the launching platform.
Referenced by GetLaunchPlatformIndex(), SetLaunchPlatformData(), WsfLaunchHandoffData(), and WsfLaunchHandoffData().
|
protected |
Referenced by GetLaunchPlatformLat(), SetLaunchPlatformData(), WsfLaunchHandoffData(), and WsfLaunchHandoffData().
|
protected |
Referenced by GetLaunchPlatformLon(), SetLaunchPlatformData(), WsfLaunchHandoffData(), and WsfLaunchHandoffData().
|
protected |
Referenced by GetLaunchPlatformPitch(), SetLaunchPlatformData(), WsfLaunchHandoffData(), and WsfLaunchHandoffData().
|
protected |
Referenced by GetLaunchPlatformRoll(), SetLaunchPlatformData(), WsfLaunchHandoffData(), and WsfLaunchHandoffData().
|
protected |
Referenced by GetLaunchPlatformVelNED(), SetLaunchPlatformData(), WsfLaunchHandoffData(), and WsfLaunchHandoffData().
|
protected |
Referenced by GetLaunchSystemLocation(), SetLaunchPlatformData(), WsfLaunchHandoffData(), and WsfLaunchHandoffData().
|
protected |
Referenced by GetLaunchSystemPitch(), SetLaunchPlatformData(), WsfLaunchHandoffData(), and WsfLaunchHandoffData().
|
protected |
Referenced by GetLaunchSystemRoll(), SetLaunchPlatformData(), WsfLaunchHandoffData(), and WsfLaunchHandoffData().
|
protected |
Referenced by GetLaunchSystemTilt(), SetLaunchPlatformData(), WsfLaunchHandoffData(), and WsfLaunchHandoffData().
|
protected |
Referenced by GetLaunchSystemYaw(), SetLaunchPlatformData(), WsfLaunchHandoffData(), and WsfLaunchHandoffData().
|
protected |
Referenced by GetLoftAngle(), SetLoftAngle(), WsfLaunchHandoffData(), and WsfLaunchHandoffData().
|
protected |
Referenced by SetLaunchPlatformData(), WsfLaunchHandoffData(), and WsfLaunchHandoffData().
|
protected |
Referenced by GetTimeOfFlight(), SetTimeOfFlight(), WsfLaunchHandoffData(), and WsfLaunchHandoffData().
|
protected |
Validity flags for optional data.
Referenced by ResultIsValidFor(), SetBurnTime(), SetInterceptPoint(), SetInterceptTime(), SetLoftAngle(), SetTimeOfFlight(), WsfLaunchHandoffData(), and WsfLaunchHandoffData().