|
WSF
|
#include <WsfMoonLOS_SensorComponent.hpp>


Static Public Member Functions | |
| static void | RegisterComponentFactory (WsfScenario &aScenario) |
| Called by WsfScenario::CreateTypeLists on initialization. | |
| static WsfMoonLOS_SensorComponent * | Find (const WsfSensor &aParent) |
| static WsfMoonLOS_SensorComponent * | FindOrCreate (WsfSensor &aParent) |
| static void | AttemptToDetect (WsfSensor &aSensor, double aSimTime, WsfSensorResult &aResult) |
| Convenience method to call AttemptToDetect on all the components. | |
| static bool | PostAttemptToDetect (WsfSensor &aSensor, double aSimTime, WsfPlatform *aTargetPtr, WsfSensorResult &aResult) |
| static WSF_DEPRECATED void | ComputeMeasurementErrors (WsfSensor &aSensor, WsfSensorResult &aResult, double &aAzError, double &aElError, double &aRangeError, double &aRangeRateError) |
| (DEPRECATED) Convenience method to call ComputeMeasurementErrors on all the components. | |
| static void | ComputeSphericalMeasurementErrors (WsfSensor &aSensor, const WsfSensorResult &aResult, wsf::SphericalMeasurementErrors &aErrors) |
| Convenience method to call ComputeSphericalMeasurementErrors on all the components. | |
| static void | PrePerformScheduledDetections (WsfSensor &aSensor, double aSimTime) |
| Convenience method to call PrePerformScheduledDetections on all the components. | |
| static void | PostPerformScheduledDetections (WsfSensor &aSensor, double aSimTime) |
| Convenience method to call PostPerformScheduledDetections on all the components. | |
| static void | UpdateTrack (WsfSensor &aSensor, double aSimTime, WsfTrack *aTrackPtr, WsfPlatform *aTargetPtr, WsfSensorResult &aResult) |
| Convenience method to call UpdateTrack on all the components. | |
Required interface from WsfComponent. | |
| WsfComponent * | CloneComponent () const override |
| Clones the component and returns it in a base class pointer. | |
| WsfStringId | GetComponentName () const override |
| Returns the name of the component. | |
| const int * | GetComponentRoles () const override |
| Returns the roles of the component. | |
| void * | QueryInterface (int aRole) override |
| Returns a pointer to the object if aRole matches it, else returns nullptr. | |
Interface from WsfSensorComponent. | |
| bool | Initialize (double aSimTime) override |
| bool | ProcessModeInput (UtInput &aInput, WsfSensorMode &aSensorMode) override |
| void | PostAttemptToDetect (double aSimTime, WsfPlatform *aTargetPtr, WsfSensorResult &aResult) override |
Additional Inherited Members | |
| Public Types inherited from WsfSensorComponent | |
| using | TrackerSettings = WsfSensorTrackerSettings |
| Public Types inherited from WsfComponentT< WsfSensor > | |
| typedef WsfSensor | ParentType |
| This is needed to support the WsfComponentList template. | |
| WsfSensor * | GetSensor () const |
| WsfPlatform * | GetPlatform () const |
| WsfSimulation * | GetSimulation () const |
| virtual bool | ProcessBeamInput (UtInput &aInput, WsfSensorBeam &aSensorBeam) |
| virtual void | PlatformAdded (double aSimTime, WsfPlatform *aPlatformPtr) |
| virtual void | PlatformDeleted (WsfPlatform *aPlatformPtr) |
| virtual void | SelectMode (double aSimTime, WsfStringId aModeNameId) |
| virtual void | DeselectMode (double aSimTime, WsfStringId aModeNameId) |
| virtual void | TurnOn (double aSimTime) |
| virtual void | TurnOff (double aSimTime) |
| virtual bool | Initialize (double aSimTime) |
| virtual bool | Initialize2 (double aSimTime) |
| virtual bool | PreInitialize (double aSimTime) |
| virtual bool | ProcessInput (UtInput &aInput) |
| virtual void | AttemptToDetect (double aSimTime, WsfSensorResult &aResult) |
| Extends the sensor-model implementation of AttemptToDetect. | |
| virtual void | ComputeSphericalMeasurementErrors (const WsfSensorResult &aResult, wsf::SphericalMeasurementErrors &aErrors) const |
| virtual void | PrePerformScheduledDetections (double aSimTime) |
| virtual void | PostPerformScheduledDetections (double aSimTime) |
| virtual void | UpdateTrack (double aSimTime, WsfTrack *aTrackPtr, WsfPlatform *aTargetPtr, WsfSensorResult &aResult) |
| virtual bool | TrackerAllowTracking (double aSimTime, const TrackerSettings &aSettings, const WsfTrackId &aRequestId, size_t aObjectId, WsfTrack *aTrackPtr, WsfSensorResult &aResult) |
| virtual void | TrackerInitializeTrack (double aSimTime, const TrackerSettings &aSettings, const WsfTrackId &aRequestId, size_t aObjectId, WsfSensorMode *aModePtr, WsfTrack *&aTrackPtr) |
| virtual void | TrackerUpdateTrack (double aSimTime, const TrackerSettings &aSettings, const WsfTrackId &aRequestId, size_t aObjectId, WsfSensorMode *aModePtr, WsfTrack *aTrackPtr, WsfPlatform *aTargetPtr, WsfSensorResult &aResult) |
| virtual void | TrackerDropTrack (double aSimTime, const TrackerSettings &aSettings, const WsfTrackId &aRequestId, size_t aObjectId, WsfSensorMode *aModePtr, WsfTrack *aTrackPtr) |
| Public Member Functions inherited from WsfComponentT< WsfSensor > | |
| WsfComponentT () | |
| 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 void | PreInput () |
Component that checks if the sensor's line-of-sight to the target is blocked by the moon. Created for every sensor, but has no effect unless enable_moon_los_block is specified in the mode.
|
overridevirtual |
Clones the component and returns it in a base class pointer.
Implements WsfComponent.
|
static |
Returns the parent sensor's component, or nullptr if not found
| aParent | The sensor that we are checking for components |
References WsfComponentList::FindByRole(), and WsfSensor::GetComponents().
Referenced by FindOrCreate().
|
static |
Returns the parent sensor's component, or creates one if not found
| aParent | The sensor that we are checking for components |
References WsfComponentListT< COMPONENT_TYPE >::AddComponent(), Find(), and WsfSensor::GetComponents().
|
overridevirtual |
Returns the name of the component.
Implements WsfComponent.
|
overridevirtual |
Returns the roles of the component.
Implements WsfComponent.
References cWSF_COMPONENT_NULL, cWSF_COMPONENT_SENSOR_COMPONENT, and cWSF_COMPONENT_SENSOR_MOON_LOS.
|
overridevirtual |
Perform phase 1 initialization. This is called by WsfPlatform::Initialize() during phase 1 initialization of the platform. The component should complete validation of input data that could not be done by ProcessInput, as well as any other functions to prepare for simulation use (subject to the next paragraph).
The order in which components are initialized is defined by GetComponentInitializationOrder. In general a component implementation of this method should not be dependent on the state of another component, i.e.: it should not assume that the other components Initialize() method has been called. If such a dependency exists one should use Initialize2() if possible, or specify a value GetComponentInitializationOrder to force things to initialize in a particular order.
| aSimTime | The current simulation time. |
Reimplemented from WsfComponent.
References WsfSensorComponent::GetSensor().
|
overridevirtual |
Calculates if the sensor and target LOS is blocked by the moon, and sets aResult respectively.
| aSimTime | The simulation time. |
| aTargetPtr | The platform that detection is attempted on. |
| aResult | The sensor result that holds success/failure details. |
Reimplemented from WsfSensorComponent.
References WsfSensorResult::cMOON_BLOCKED, WsfSensor::GetCurrentMode(), WsfDateTime::GetCurrentTime(), WsfSimulation::GetDateTime(), WsfMode::GetModeIndex(), WsfSensorComponent::GetSensor(), WsfSensorComponent::GetSimulation(), and WsfEM_Interaction::mFailedStatus.
|
overridevirtual |
Enables component and sets exclusion angles if commands are found
| aInput | The input object to read from |
| aSensorMode | The current sensor mode that the input controls |
Reimplemented from WsfSensorComponent.
References WsfMode::GetModeIndex(), WsfSensor::GetModeList(), WsfModeList::GetModeTemplate(), and WsfSensorMode::GetSensor().
|
overridevirtual |
Returns a pointer to the object if aRole matches it, else returns nullptr.
Implements WsfComponent.
References cWSF_COMPONENT_SENSOR_COMPONENT, and cWSF_COMPONENT_SENSOR_MOON_LOS.
|
static |
Called by WsfScenario::CreateTypeLists on initialization.
References WsfScenario::RegisterComponentFactory().