|
WSF
|
#include <WsfTargetPointOptions.hpp>
Public Types | |
| enum class | Type { cPLATFORM , cTRACK , cLIBRATION_POINT , cPROVIDED_TARGET , cKINEMATIC_STATE } |
Public Member Functions | |
| TargetPointOptions (const WsfTrackId &aLocalTrackId) | |
| TargetPointOptions (LibrationPoint::System aSystem, LibrationPoint::Point aPoint) | |
| TargetPointOptions (const UtVec3d &aPosition, const UtVec3d &aVelocity) | |
| TargetPointOptions (const TargetPointOptions &aOther)=default | |
| ~TargetPointOptions ()=default | |
| bool | ProcessInput (UtInput &aInput) |
| Process commands in the input stream for this object. | |
| std::unique_ptr< OrbitalTargetPoint > | InstantiatePoint (const UtCalendar &aEpoch) const |
| bool | HasPlatformTarget () const |
| Return if this object is configured with a platform target. | |
| bool | HasTrackTarget () const |
| Return if this object is configured with a track-based target. | |
| bool | HasLibrationPointTarget () const |
| Return if this object is configured with a libration point target. | |
| bool | HasProvidedTarget () const |
| Return if this object is configured with a provided target point. | |
| bool | HasKinematicStateTarget () const |
| Return if this object is configured with a certain kinematic state as the target. | |
| bool | IsValid () const |
| Return if this objectis configured with a valid target. | |
| bool | HasPositionOffset () const |
| Return if this object is configured with a position offset. | |
| bool | HasVelocityOffset () const |
| Return if this object is configured with a velocity offset. | |
| bool | HasKinematicOffset () const |
| Return if this object is configured with a position or velocity offset. | |
| const UtVec3d & | GetPositionOffset () const |
| Return the position offset in meters with which this object is configured. | |
| const UtVec3d & | GetVelocityOffset () const |
| Return the velocity offset in meters per second with which this object is configured. | |
| const std::string & | GetPositionOffsetUnits () const |
| Return a string giving the units with which this object's position offset was configured. | |
| const std::string & | GetVelocityOffsetUnits () const |
| Return a string giving the units with which this object's velocity offset was configured. | |
| wsf::space::OrbitalReferenceFrame | GetPositionOffsetFrame () const |
| Return the frame in which this object's position offset is specified. | |
| wsf::space::OrbitalReferenceFrame | GetVelocityOffsetFrame () const |
| Return the frame in which this object's velocity offset is specified. | |
| UtVec3d | GetPositionOffsetInUnits () const |
| Return the position offset in the units this object was configured with. | |
| UtVec3d | GetVelocityOffsetInUnits () const |
| Return the velocity offset in the units this object was configured with. | |
| const std::string & | GetPlatformName () const |
| Return the name of the platform being targeted. Valid only when HasPlatformTarget returns true. | |
| const WsfTrackId & | GetLocalTrackId () const |
| Return the track id of the track being targeted. Valid only when HasTrackTarget returns true. | |
| wsf::space::LibrationPoint::System | GetLP_System () const |
| Return the libration point system being targeted. Valid only when HasLibrationPointTarget returns true. | |
| wsf::space::LibrationPoint::Point | GetLP_Point () const |
| Return the libration point being targeted. Valid only when HasLibrationPointTarget returns true. | |
| const UtVec3d & | GetKinematicStatePosition () const |
| Return the position in meters of the kinematic state being targeted. Valid only when HasKinematicStateTarget returns true. | |
| UtVec3d | GetKinematicStatePositionInUnits () const |
| const std::string & | GetKinematicStatePositionUnits () const |
| const UtVec3d & | GetKinematicStateVelocity () const |
| UtVec3d | GetKinematicStateVelocityInUnits () const |
| const std::string & | GetKinematicStateVelocityUnits () const |
| const UtOrbitalPropagatorBase * | GetTargetPropagator () const |
| Return the target propagator defined on this object. | |
| void | SetPositionOffset (const UtVec3d &aOffset, const std::string &aOffsetUnits, wsf::space::OrbitalReferenceFrame aOffsetFrame) |
| void | SetVelocityOffset (const UtVec3d &aOffset, const std::string &aOffsetUnits, wsf::space::OrbitalReferenceFrame aOffsetFrame) |
| void | ClearPositionOffset () |
| Clear the position offset from this object's configuration. | |
| void | ClearVelocityOffset () |
| Clear the velocity offset from this object's configuration. | |
| bool | HasOffsetTime () const |
| Return if this object has an offset time configured. | |
| const UtTimeValue & | GetOffsetTime () const |
| void | SetOffsetTime (const UtTimeValue &aTimeOffset) |
| Set the offset time configured for this object. | |
| void | ClearOffsetTime () |
| Clear the offset time from this object's configuration. | |
| bool | HasLagTime () const |
| Return if this object has a lag time configured. | |
| const UtTimeValue & | GetLagTime () const |
| void | SetLagTime (const UtTimeValue &aLagTime) |
| Set the lag time configured for this object. | |
| void | ClearLagTime () |
| Clear the lag time from this object's configuration. | |
| void | SetPlatformName (const std::string &aPlatformName) |
| Set a platform with the given name as the target. | |
| void | SetLocalTrackId (const WsfTrackId &aTrackId) |
| Set a track with the given ID as the target. | |
| void | SetLibrationPoint (wsf::space::LibrationPoint::System aSystem, wsf::space::LibrationPoint::Point aPoint) |
| Set the given libration point as the target. | |
| void | SetTargetPoint (std::unique_ptr< wsf::space::OrbitalTargetPoint > aTargetPoint) |
| Set the given target point as the base target. | |
| void | SetKinematicState (const UtVec3d &aPositionInertial, const std::string &aPositionUnits, const UtVec3d &aVelocityInertial, const std::string &aVelocityUnits) |
| Set the given position and velocity as the base target. | |
| bool | RequiresTargetPropagator () const |
| Return if these options imply a need for a targeting propagator to successfully instantiate the target point. | |
| void | SetTargetPropagator (std::unique_ptr< UtOrbitalPropagatorBase > aTargetPropagatorPtr) |
| Set the target propagator. | |
| bool | RequiresManeuveringPropagator () const |
| Return if these options imply a need for a maneuvering propagator to successfully instantiate the target point. | |
| void | SetManeuveringPropagator (std::unique_ptr< UtOrbitalPropagatorBase > aManeuveringPropagatorPtr) |
| Set the maneuvering propagator. | |
| bool | ValidateParameterRanges (const std::string &aExecutingPlatformName, const std::string &aManeuverType) const |
| Validate that the configuration has parameters in the allowed range. | |
Static Public Member Functions | |
| static bool | ValidOffsetFrame (wsf::space::OrbitalReferenceFrame aFrame) |
| Returns if this object supports the given frame for offsets. | |
This class reads in the options for targets for a targeting-class maneuver.
The set of targets that are possible to target with a targeting-class maneuver (Target, Intercept, Rendezvous) can be configured with this object. This object will read in from input the target specification, and can create the appropriate wsf::space::OrbitalTargetPoint to represent that target. Targets are specified as both a base target (such as a target platform) and an optional offset from that target.
|
strong |
|
explicit |
Referenced by TargetPointOptions().
| wsf::space::TargetPointOptions::TargetPointOptions | ( | LibrationPoint::System | aSystem, |
| LibrationPoint::Point | aPoint ) |
References SetLibrationPoint().
| wsf::space::TargetPointOptions::TargetPointOptions | ( | const UtVec3d & | aPosition, |
| const UtVec3d & | aVelocity ) |
References SetKinematicState().
|
default |
References TargetPointOptions().
|
default |
| void wsf::space::TargetPointOptions::ClearLagTime | ( | ) |
Clear the lag time from this object's configuration.
| void wsf::space::TargetPointOptions::ClearOffsetTime | ( | ) |
Clear the offset time from this object's configuration.
| void wsf::space::TargetPointOptions::ClearPositionOffset | ( | ) |
Clear the position offset from this object's configuration.
References wsf::space::cUNKNOWN.
| void wsf::space::TargetPointOptions::ClearVelocityOffset | ( | ) |
Clear the velocity offset from this object's configuration.
References wsf::space::cUNKNOWN.
|
inline |
Return the position in meters of the kinematic state being targeted. Valid only when HasKinematicStateTarget returns true.
| UtVec3d wsf::space::TargetPointOptions::GetKinematicStatePositionInUnits | ( | ) | const |
Return the position of the kinematic state being targeted, in the units with which this object was configured. Valid only when HasKinematicStateTarget returns true.
|
inline |
Return a string giving the units with which this object's kinematic state target position was configured. Valid only when HasKinematicStateTarget returns true.
|
inline |
Return the velocity in meters per second of the kinematic state being targeted. Valid only when HasKinematicStateTarget returns true.
| UtVec3d wsf::space::TargetPointOptions::GetKinematicStateVelocityInUnits | ( | ) | const |
Return the velocity of the kinematic state being targeted, in the units with which this object was configured. Valid only when HasKinematicStateTarget returns true.
|
inline |
Return a string giving the units with which this object's kinematic state target velocity was configured. Valid only when HasKinematicStateTarget returns true.
|
inline |
Get the lag time configured for this object. The result is only valid if HasLagTime returns true.
|
inline |
Return the track id of the track being targeted. Valid only when HasTrackTarget returns true.
Referenced by IsValid().
|
inline |
Return the libration point being targeted. Valid only when HasLibrationPointTarget returns true.
Referenced by IsValid().
|
inline |
Return the libration point system being targeted. Valid only when HasLibrationPointTarget returns true.
Referenced by IsValid().
|
inline |
Get the offset time configured for this object. The result is only valid if HasOffsetTime returns true.
|
inline |
Return the name of the platform being targeted. Valid only when HasPlatformTarget returns true.
Referenced by IsValid().
|
inline |
Return the position offset in meters with which this object is configured.
|
inline |
Return the frame in which this object's position offset is specified.
| UtVec3d wsf::space::TargetPointOptions::GetPositionOffsetInUnits | ( | ) | const |
Return the position offset in the units this object was configured with.
|
inline |
Return a string giving the units with which this object's position offset was configured.
|
inline |
Return the target propagator defined on this object.
|
inline |
Return the velocity offset in meters per second with which this object is configured.
|
inline |
Return the frame in which this object's velocity offset is specified.
| UtVec3d wsf::space::TargetPointOptions::GetVelocityOffsetInUnits | ( | ) | const |
Return the velocity offset in the units this object was configured with.
|
inline |
Return a string giving the units with which this object's velocity offset was configured.
|
inline |
Return if this object is configured with a position or velocity offset.
References HasPositionOffset(), and HasVelocityOffset().
|
inline |
Return if this object is configured with a certain kinematic state as the target.
References cKINEMATIC_STATE.
Referenced by ValidateParameterRanges().
|
inline |
Return if this object has a lag time configured.
Referenced by RequiresManeuveringPropagator().
|
inline |
Return if this object is configured with a libration point target.
References cLIBRATION_POINT.
Referenced by ValidateParameterRanges().
|
inline |
Return if this object has an offset time configured.
Referenced by RequiresManeuveringPropagator().
|
inline |
Return if this object is configured with a platform target.
References cPLATFORM.
Referenced by ValidateParameterRanges().
|
inline |
Return if this object is configured with a position offset.
Referenced by HasKinematicOffset(), and ValidateParameterRanges().
|
inline |
Return if this object is configured with a provided target point.
References cPROVIDED_TARGET.
Referenced by ValidateParameterRanges().
|
inline |
Return if this object is configured with a track-based target.
References cTRACK.
Referenced by ValidateParameterRanges().
|
inline |
Return if this object is configured with a velocity offset.
Referenced by HasKinematicOffset(), and ValidateParameterRanges().
| std::unique_ptr< OrbitalTargetPoint > wsf::space::TargetPointOptions::InstantiatePoint | ( | const UtCalendar & | aEpoch | ) | const |
| bool wsf::space::TargetPointOptions::IsValid | ( | ) | const |
Return if this objectis configured with a valid target.
References cKINEMATIC_STATE, cLIBRATION_POINT, cPLATFORM, cPROVIDED_TARGET, cTRACK, GetLocalTrackId(), GetLP_Point(), GetLP_System(), GetPlatformName(), WsfTrackId::IsNull(), and wsf::space::LibrationPoint::ValidLibrationPoint().
| bool wsf::space::TargetPointOptions::ProcessInput | ( | UtInput & | aInput | ) |
Process commands in the input stream for this object.
References wsf::space::LibrationPoint::cUNKNOWN, wsf::space::cUNKNOWN, wsf::space::LibrationPoint::GetPointFromIdentifier(), wsf::space::LibrationPoint::GetSystemFromIdentifier(), wsf::space::OrbitalReferenceFrameFromIdentifier(), SetKinematicState(), SetLibrationPoint(), SetPlatformName(), SetPositionOffset(), SetVelocityOffset(), and ValidOffsetFrame().
|
inline |
Return if these options imply a need for a maneuvering propagator to successfully instantiate the target point.
References HasLagTime(), and HasOffsetTime().
|
inline |
| void wsf::space::TargetPointOptions::SetKinematicState | ( | const UtVec3d & | aPositionInertial, |
| const std::string & | aPositionUnits, | ||
| const UtVec3d & | aVelocityInertial, | ||
| const std::string & | aVelocityUnits ) |
Set the given position and velocity as the base target.
References cKINEMATIC_STATE.
Referenced by ProcessInput(), and TargetPointOptions().
| void wsf::space::TargetPointOptions::SetLagTime | ( | const UtTimeValue & | aLagTime | ) |
Set the lag time configured for this object.
| void wsf::space::TargetPointOptions::SetLibrationPoint | ( | wsf::space::LibrationPoint::System | aSystem, |
| wsf::space::LibrationPoint::Point | aPoint ) |
Set the given libration point as the target.
References cLIBRATION_POINT, and wsf::space::LibrationPoint::ValidLibrationPoint().
Referenced by ProcessInput(), and TargetPointOptions().
| void wsf::space::TargetPointOptions::SetLocalTrackId | ( | const WsfTrackId & | aTrackId | ) |
Set a track with the given ID as the target.
References cTRACK.
|
inline |
Set the maneuvering propagator.
| void wsf::space::TargetPointOptions::SetOffsetTime | ( | const UtTimeValue & | aTimeOffset | ) |
Set the offset time configured for this object.
| void wsf::space::TargetPointOptions::SetPlatformName | ( | const std::string & | aPlatformName | ) |
Set a platform with the given name as the target.
References cPLATFORM.
Referenced by ProcessInput().
| void wsf::space::TargetPointOptions::SetPositionOffset | ( | const UtVec3d & | aOffset, |
| const std::string & | aOffsetUnits, | ||
| wsf::space::OrbitalReferenceFrame | aOffsetFrame ) |
Set the position offset.
Set the offset to be the given aOffset which is provided with the given aOffsetUnits and in the given aOffsetFrame.
| aOffset | - The vector of components of the offset. |
| aOffsetUnits | - The units with which the given aOffset are expressed. |
| aOffsetFrame | - The frame in which the given aOffset are given. |
References ValidOffsetFrame().
Referenced by ProcessInput().
| void wsf::space::TargetPointOptions::SetTargetPoint | ( | std::unique_ptr< wsf::space::OrbitalTargetPoint > | aTargetPoint | ) |
Set the given target point as the base target.
References cPROVIDED_TARGET.
|
inline |
Set the target propagator.
| void wsf::space::TargetPointOptions::SetVelocityOffset | ( | const UtVec3d & | aOffset, |
| const std::string & | aOffsetUnits, | ||
| wsf::space::OrbitalReferenceFrame | aOffsetFrame ) |
Set the velocity offset.
Set the offset to be the given aOffset which is provided with the given aOffsetUnits and in the given aOffsetFrame.
| aOffset | - The vector of components of the offset. |
| aOffsetUnits | - The units with which the given aOffset are expressed. |
| aOffsetFrame | - The frame in which the given aOffset are given. |
References ValidOffsetFrame().
Referenced by ProcessInput().
| bool wsf::space::TargetPointOptions::ValidateParameterRanges | ( | const std::string & | aExecutingPlatformName, |
| const std::string & | aManeuverType ) const |
Validate that the configuration has parameters in the allowed range.
References HasKinematicStateTarget(), HasLibrationPointTarget(), HasPlatformTarget(), HasPositionOffset(), HasProvidedTarget(), HasTrackTarget(), HasVelocityOffset(), wsf::space::OrbitalReferenceFrameToIdentifier(), wsf::space::LibrationPoint::ValidLibrationPoint(), and ValidOffsetFrame().
|
static |
Returns if this object supports the given frame for offsets.
References wsf::space::cNTW, and wsf::space::cRIC.
Referenced by ProcessInput(), SetPositionOffset(), SetVelocityOffset(), and ValidateParameterRanges().