|
WSF
|
A 'mode' of the sensor. More...
#include <WsfPassiveSensor.hpp>


Classes | |
| class | PassiveErrorModel |
Public Member Functions | |
| PassiveMode () | |
| PassiveMode (const PassiveMode &aSrc) | |
| PassiveMode & | operator= (const PassiveMode &aRhs) |
| ~PassiveMode () override | |
| size_t | GetBeamCount () const override |
| WsfSensorBeam * | GetBeamEntry (size_t aIndex) override |
| WsfMode * | Clone () const override |
| Create an exact duplicate of this mode. | |
| bool | Initialize (double aSimTime) override |
| bool | ProcessInput (UtInput &aInput) override |
| bool | AttemptToDetect (double aSimTime, WsfPlatform *aTargetPtr, Settings &aSettings, WsfSensorResult &aResult) override |
| bool | CanDetect (double aSimTime, WsfEM_Xmtr *aXmtrPtr, WsfSensorResult &aResult, WsfEM_Interaction &aAuxInteraction) |
| void | Deselect (double aSimTime) override |
| void | Select (double aSimTime) override |
| void | UpdateTrack (double aSimTime, WsfTrack *aTrackPtr, WsfPlatform *aTargetPtr, WsfSensorResult &aResult) override |
| void | UpdateTrackReportingFlags (double aSimTime, WsfTrack *aTrackPtr) override |
| bool | AddInteractor (WsfEM_Xmtr *aXmtrPtr, PassiveRcvr *aRcvrPtr) |
| bool | RemoveInteractor (WsfEM_Xmtr *aXmtrPtr, PassiveRcvr *aRcvrPtr) |
| Pass-through from WsfPassiveSensor::PassiveRcvr::RemoveInteractor. | |
| void | EmitterActiveCallback (double aSimTime, WsfEM_Interaction &aResult, PassiveRcvr *aRcvrPtr) |
| Pass-through from WsfPassiveSensor::PassiveRcvr::EmitterActiveCallback. | |
| bool | TuneFrequencyBand (double aSimTime, bool aReset, size_t aBeamNumber, unsigned int aFrequencyBandNumber, double aLowerFreq, double aUpperFreq, double aDwellTime, double aRevisitTime) |
| Public Member Functions inherited from WsfSensorMode | |
| WsfSensorMode () | |
| WsfSensorMode (const WsfSensorMode &aSrc) | |
| WsfSensorMode & | operator= (const WsfSensorMode &aRhs) |
| ~WsfSensorMode () override | |
| WsfPlatform * | GetPlatform () const |
| Return the pointer to the platform to which the associated sensor is attached. | |
| WsfSensor * | GetSensor () const |
| Return the pointer to the sensor with which this mode is associated. | |
| const WsfScenario & | GetScenario () const |
| WsfSimulation * | GetSimulation () const |
| bool | ProcessInput (UtInput &aInput) override |
| size_t | GetOnSuccessModeIndex () const |
| size_t | GetOnFailureModeIndex () const |
| int | GetMessageLength () const |
| Return the logical length (int bits) of report messages that originate from this sensor mode. | |
| int | GetMessagePriority () const |
| Return the priority of report messages that originate from this sensor mode. | |
| void | UpdateTrackPosition (WsfTrack *aTrackPtr, WsfSensorResult &aResult, const double aTgtLocationWCS[3]) |
| WsfSensor::SlewMode | GetCueMode () const |
| virtual double | GetAltFreqSelectDelay () const |
| virtual void | ScheduleAltFreqChange (double aSimTime, int aAltFreqId=-1) |
| virtual bool | IsAltFreqChangeScheduled () const |
| virtual double | GetLastAltFreqSelectTime () const |
| virtual bool | IsFrequencyAgile () const |
| virtual void | ApplyMeasurementErrors (WsfSensorResult &aResult) |
| virtual WSF_DEPRECATED void | ComputeMeasurementErrors (WsfSensorResult &aResult, double &aAzError, double &aElError, double &aRangeError, double &aRangeRateError) final |
| virtual void | InitializeTrack (double aSimTime, WsfTrack *&aTrackPtr) |
| virtual void | UpdateSensorCueingLimits () |
| virtual bool | WithinDetectionRange (double aSimTime, WsfPlatform *aTargetPtr) |
| double | GetMaximumRange () const |
| Return the optimistic maximum range of the sensor mode. | |
| int | GetMaximumRequestCount () const |
| Return the maximum number of cued-search or tracking requests the mode can support. | |
| bool | DisablesSearch () const |
| Does using this mode prevent this or any other mode from searching? | |
| bool | CanSearchWhileTrack () const |
| Can this mode continue to search while it is also performing tracking requests. | |
| double | GetFrameTime () const |
| void | SetFrameTime (double aFrameTime) |
| double | GetRevisitTime () const |
| double | GetDwellTime () const |
| double | GetRequiredPd () const |
| double | EstablishTrackProbability () const |
| double | MaintainTrackProbability () const |
| int | HitsToEstablishTrack () const |
| The number of hits (M) within the window (N) that are required to establish a track. | |
| int | EstablishTrackWindow () const |
| The window size (N) for establishing a track. | |
| int | HitsToMaintainTrack () const |
| The number of hits (M) within the window (N) that are required to maintain a track. | |
| int | MaintainTrackWindow () const |
| The window size (N) for maintaining a track. | |
| unsigned int | EstablishTrackMask () const |
| unsigned int | MaintainTrackMask () const |
| double | GetTrackQuality () const |
| unsigned int | GetReportingFlags () const |
| Accessors for the reporting flags. | |
| bool | ReportsLocation () const |
| bool | ReportsVelocity () const |
| bool | ReportsRange () const |
| bool | ReportsBearing () const |
| bool | ReportsElevation () const |
| bool | ReportsRangeRate () const |
| bool | ReportsSide () const |
| bool | ReportsType () const |
| bool | ReportsIFF_Status () const |
| bool | ReportsSignalToNoise () const |
| bool | ReportsFrequency () const |
| bool | ReportsPulseWidth () const |
| bool | ReportsPulseRepititionInterval () const |
| const wsf::SensorErrorModelBase * | GetErrorModel () const |
| wsf::SensorErrorModelBase * | GetErrorModel () |
| void | SetErrorModel (std::unique_ptr< wsf::SensorErrorModelBase > aErrorModelPtr) |
| virtual WSF_DEPRECATED double | GetAzErrorStdDev () final |
| virtual WSF_DEPRECATED double | GetElErrorStdDev () final |
| virtual WSF_DEPRECATED double | GetRangeErrorStdDev () final |
| virtual WSF_DEPRECATED double | GetRangeRateErrorStdDev () final |
| virtual WSF_DEPRECATED void | SetAzErrorStdDev (double aAzErrorStdDev) final |
| virtual WSF_DEPRECATED void | SetElErrorStdDev (double aElErrorStdDev) final |
| virtual WSF_DEPRECATED void | SetRangeErrorStdDev (double aRangeErrorStdDev) final |
| virtual WSF_DEPRECATED void | SetRangeRateErrorStdDev (double aRangeRateErrorStdDev) final |
| Public Member Functions inherited from WsfMode | |
| WsfMode () | |
| ~WsfMode () override=default | |
| size_t | GetModeIndex () const |
| Return the index of this mode within its associated mode list. | |
| bool | IsSelected () const |
| Returns 'true' if the mode is selected. | |
| 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) |
Public Attributes | |
| double | mUnframedDetectionCoastTime |
| double | mRangingTime |
| double | mRangingTimeTrackQuality |
| bool | mImplicitBeamUsed |
| bool | mExplicitBeamUsed |
| bool | mUnframedDetectionOptimization |
| bool | mPSOS_Enabled |
| std::vector< PassiveBeam > | mBeamList |
| TargetInteractorMap | mTargetInteractorMap |
Protected Member Functions | |
| virtual void | ComputeInterferenceEffect (double aSimTime, WsfEM_Xmtr *aXmtrPtr, WsfEM_Rcvr *aRcvrPtr) |
| virtual bool | UseListenerForInterferer (WsfEM_Xmtr *aXmtrPtr) |
| Returns true if the mode should utilize the 'listener' detection method for an interference transmitter. | |
| bool | InitializeReporting () |
| virtual void | SelectAlternateFrequency (double aSimTime, int aAltFreqId=-1) |
| void | SetCapabilities (unsigned int aFlags) |
| void | SetReportingFlags (unsigned int aFlags) |
Additional Inherited Members | |
| WsfSensor * | mSensorPtr |
| Pointer to the sensor with which the mode is associated. | |
| WsfPlatform * | mPlatformPtr |
| Pointer to the platform with which the sensor is associated. | |
| double | mMaximumRange |
| double | mAzCueRate |
| double | mElCueRate |
| double | mMinAzCue |
| double | mMaxAzCue |
| double | mMinElCue |
| double | mMaxElCue |
| WsfSensor::SlewMode | mCueMode |
| int | mMaximumRequestCount |
| bool | mCanSearchWhileTrack |
| bool | mDisablesSearch |
| double | mFrameTime |
| double | mRevisitTime |
| double | mDwellTime |
| double | mRequiredPd |
| double | mEstablishTrackProbability |
| When the M/N establish track criteria is met, this is the probability that a track will be established. | |
| double | mMaintainTrackProbability |
| int | mHitsToEstablishTrack |
| The number of hits (M) within the window (N) that are required to establish a track. | |
| int | mEstablishTrackWindow |
| The window size (N) for establishing a track. | |
| unsigned int | mEstablishTrackMask |
| int | mHitsToMaintainTrack |
| The number of hits (M) within the window (N) that are required to maintain a track. | |
| int | mMaintainTrackWindow |
| The window size (N) for maintaining a track. | |
| unsigned int | mMaintainTrackMask |
| double | mTrackQuality |
| Base line track quality (0..1]. | |
| double | mAzErrorStdDev |
| double | mElErrorStdDev |
| double | mRangeErrorStdDev |
| double | mRangeRateErrorStdDev |
| Range rate error standard deviation. | |
| ut::CloneablePtr< wsf::SensorErrorModelBase > | mErrorModelPtr {nullptr} |
| The model that calculates and applies errors to sensor detection results. | |
| WsfStringId | mOnSuccessModeName |
| size_t | mOnSuccessModeIndex |
| WsfStringId | mOnFailureModeName |
| size_t | mOnFailureModeIndex |
| int | mMessageLength |
| The length of messages originating from this sensor mode. | |
| int | mMessagePriority |
| The priority of messages originating from this sensor mode. | |
| WsfSpatialDomain | mReportsSpatialDomain |
| ReportingFlags | mReportingFlags |
| ReportingFlags | mCapabilitiesFlags |
| static const unsigned int | cNONE = 0 |
| The following are flags/masks meant to be combined and used in the SetCapabilities method. | |
| static const unsigned int | cLOCATION = 1 |
| static const unsigned int | cVELOCITY = 2 |
| static const unsigned int | cRANGE = 4 |
| static const unsigned int | cBEARING = 8 |
| static const unsigned int | cELEVATION = 16 |
| static const unsigned int | cRANGE_RATE = 32 |
| static const unsigned int | cSIDE = 64 |
| static const unsigned int | cTYPE = 128 |
| static const unsigned int | cIFF_STATUS = 256 |
| static const unsigned int | cSIGNAL_TO_NOISE = 512 |
| static const unsigned int | cFREQUENCY = 1024 |
| static const unsigned int | cPULSEWIDTH = 2048 |
| static const unsigned int | cPULSE_REPITITION_INTERVAL = 4096 |
| static const unsigned int | cSTATE_COVARIANCE = 8192 |
| static const unsigned int | cOTHER = 16384 |
| static const unsigned int | cALL = 0xFFFFFFFF |
| Catch-all for anything other than the above. | |
A 'mode' of the sensor.
| WsfPassiveSensor::PassiveMode::PassiveMode | ( | ) |
References mBeamList, mExplicitBeamUsed, mImplicitBeamUsed, mPSOS_Enabled, mRangingTime, mRangingTimeTrackQuality, mTargetInteractorMap, mUnframedDetectionCoastTime, mUnframedDetectionOptimization, WsfSensorMode::SetErrorModel(), and WsfSensorMode::WsfSensorMode().
Referenced by operator=(), and PassiveMode().
| WsfPassiveSensor::PassiveMode::PassiveMode | ( | const PassiveMode & | aSrc | ) |
|
override |
References mTargetInteractorMap.
| bool WsfPassiveSensor::PassiveMode::AddInteractor | ( | WsfEM_Xmtr * | aXmtrPtr, |
| PassiveRcvr * | aRcvrPtr ) |
Pass-through from WsfPassiveSensor::PassiveRcvr::AddInteractor.
Each target platform has a interactor list, which is just a collection of pairs of transmitters on the target that can be potentially seen by the receiver(s) that are contained in this mode. (Note that most of the time there is only one receiver in the mode, but the 'multi-beam' feature lets one define total separate antennas/receivers, much like the multi-beam radar.)
The pairs in the list are maintained so that all pairs involving a given transmitter are kept together. This is needed by the PassiveMode::AttemptToDetect method.
References WsfEM_Xmtr::AddChangeListener(), WsfEM_Xmtr::AddListener(), WsfEM_Xmtr::cXF_COMM, WsfEM_Xmtr::cXF_INTERFERER, WsfEM_Xmtr::cXF_SENSOR, WsfPlatformPart::DebugEnabled(), wsf::comm::ComponentHW::Find(), WsfEM_Xmtr::GetAlternateFrequencyCount(), WsfEM_XmtrRcvr::GetArticulatedPart(), WsfEM_Xmtr::GetFunction(), WsfPlatform::GetIndex(), WsfEM_XmtrRcvr::GetMode(), WsfEM_Rcvr::GetName(), WsfEM_Xmtr::GetName(), WsfObject::GetName(), WsfEM_XmtrRcvr::GetPlatform(), WsfSensorMode::GetSensor(), WsfSimulation::GetSimTime(), WsfPlatformPart::GetSimulation(), mTargetInteractorMap, targetIndex(), UseListenerForInterferer(), WsfSensor::WsfSensor(), and WsfSensorMode::WsfSensorMode().
|
overridevirtual |
Attempt to detect the specified target.
| aSimTime | [input] The current simulation time. |
| aTargetPtr | [input] The platform that will be attempted to be detected. |
| aSettings | [input] The sensor settings. |
| aResult | [output] The results of the detection attempt. |
Implements WsfSensorMode.
References WsfEM_Interaction::BeginOneWayInteraction(), WsfPassiveSensor::Interactor::cDS_DETECTED, WsfPassiveSensor::Interactor::cDS_NOT_ATTEMPTED, ComputeInterferenceEffect(), WsfEM_Xmtr::cXF_COMM, WsfEM_Xmtr::cXF_INTERFERER, WsfEM_Xmtr::cXF_SENSOR, WsfEM_XmtrRcvr::GetAntenna(), WsfEM_Antenna::GetArticulatedPart(), WsfEM_XmtrRcvr::GetArticulatedPart(), WsfEM_XmtrRcvr::GetBandwidth(), WsfSensorMode::GetFrameTime(), WsfEM_XmtrRcvr::GetFrequency(), WsfEM_Xmtr::GetFunction(), WsfEM_XmtrRcvr::GetIndex(), WsfPlatform::GetIndex(), WsfEM_XmtrRcvr::GetMode(), WsfNamed::GetName(), WsfObject::GetName(), WsfPlatformPart::GetPlatform(), WsfEM_Xmtr::GetPulseRepetitionInterval(), WsfEM_Xmtr::GetPulseWidth(), WsfSensorMode::GetSensor(), WsfEM_Xmtr::GetTransmissionEndTime(), WsfObject::GetTypeId(), WsfUniqueId::GetUniqueId(), WsfSensor::GetZoneAttenuationModifier(), WsfArticulatedPart::IsCued(), WsfSensorResult::mBeamIndex, mBeamList, WsfEM_Interaction::mCheckedStatus, WsfPassiveSensor::Interactor::mDetectStatus, WsfTrack_Signal::mEmitterTruthId, WsfEM_Interaction::mFailedStatus, WsfPassiveSensor::Interactor::mLastAttemptTime, mPSOS_Enabled, WsfTrack_Signal::mPulseRepetitionInterval, WsfTrack_Signal::mPulseWidth, WsfPassiveSensor::Interactor::mRcvrPtr, WsfPassiveSensor::Interactor::mResultPtr, WsfEM_Interaction::mSignalToNoise, mTargetInteractorMap, mUnframedDetectionCoastTime, WsfPassiveSensor::Interactor::mUseListener, WsfPassiveSensor::Interactor::mXmtrPtr, WsfEM_Xmtr::NotifyListeners(), WsfSensorComponent::PostAttemptToDetect(), WsfEM_Interaction::Print(), WsfSensorMode::ReportsFrequency(), WsfSensorMode::ReportsPulseRepititionInterval(), WsfSensorMode::ReportsPulseWidth(), WsfSensorResult::Reset(), WsfEM_Interaction::SetCategory(), WsfEM_Interaction::SetReceiverBeamPosition(), WsfEM_Interaction::SetTransmitterBeamPosition(), WsfEM_XmtrRcvr::UpdatePosition(), and WsfPassiveSensor::WsfPassiveSensor().
| bool WsfPassiveSensor::PassiveMode::CanDetect | ( | double | aSimTime, |
| WsfEM_Xmtr * | aXmtrPtr, | ||
| WsfSensorResult & | aResult, | ||
| WsfEM_Interaction & | aAuxInteraction ) |
This is called from WsfRF_Repeater to determine if the repeater can detect the signal that it is attempting to interfere.
References WsfPlatformPart::DebugEnabled(), WsfEM_XmtrRcvr::GetArticulatedPart(), WsfEM_XmtrRcvr::GetIndex(), WsfEM_XmtrRcvr::GetMode(), WsfSensor::GetModeIndex(), WsfNamed::GetName(), WsfObject::GetName(), WsfEM_XmtrRcvr::GetPlatform(), WsfPlatformPart::GetPlatform(), WsfSensor::GetRequiredPd(), WsfSensorMode::GetSensor(), WsfEM_Interaction::GetTransmitter(), WsfSensor::GetZoneAttenuationModifier(), WsfSensorResult::mBeamIndex, mBeamList, WsfEM_Interaction::mSignalToNoise, WsfEM_Interaction::Print(), WsfSensorResult::Reset(), WsfEM_Interaction::SetCategory(), settings(), and WsfSensorMode::UpdateSensorCueingLimits().
Referenced by WsfRF_Repeater::CheckDetectAndUpdate().
|
overridevirtual |
Create an exact duplicate of this mode.
Implements WsfSensorMode.
References WsfPassiveSensor::PassiveMode, and WsfMode::WsfMode().
|
inlineprotectedvirtual |
Reimplemented in WsfESM_Sensor::ESM_Mode.
Referenced by AttemptToDetect().
|
overridevirtual |
The mode is being deselected. The specific implementation should perform whatever actions are associated with deselecting the mode (e.g.: deactivating transmitters or receivers).
| aSimTime | [input] The current simulation time. |
Implements WsfSensorMode.
References mBeamList.
| void WsfPassiveSensor::PassiveMode::EmitterActiveCallback | ( | double | aSimTime, |
| WsfEM_Interaction & | aResult, | ||
| PassiveRcvr * | aRcvrPtr ) |
Pass-through from WsfPassiveSensor::PassiveRcvr::EmitterActiveCallback.
References WsfSensorMode::ApplyMeasurementErrors(), WsfPassiveSensor::Interactor::cDS_DETECTED, WsfPassiveSensor::Interactor::cDS_FAILED_GEOMETRY, WsfPassiveSensor::Interactor::cDS_FAILED_SIGNAL, WsfEM_Interaction::cRCVR_TERRAIN_MASKING, WsfEM_Interaction::cSIGNAL_LEVEL, WsfPlatformPart::DebugEnabled(), WsfEM_XmtrRcvr::GetArticulatedPart(), WsfEM_XmtrRcvr::GetIndex(), WsfPlatform::GetIndex(), WsfEM_XmtrRcvr::GetMode(), WsfSensor::GetModeIndex(), WsfNamed::GetName(), WsfObject::GetName(), WsfEM_XmtrRcvr::GetPlatform(), WsfPlatformPart::GetPlatform(), WsfSensor::GetRequiredPd(), WsfSensorMode::GetSensor(), WsfEM_Interaction::GetTransmitter(), WsfSensor::GetZoneAttenuationModifier(), WsfSensorResult::mBeamIndex, mBeamList, WsfEM_Interaction::mCheckedStatus, WsfPassiveSensor::Interactor::mDetectStatus, WsfEM_Interaction::mFailedStatus, WsfPassiveSensor::Interactor::mLastAttemptTime, mPSOS_Enabled, WsfPassiveSensor::Interactor::mResultPtr, WsfEM_Interaction::mSignalToNoise, mTargetInteractorMap, mUnframedDetectionOptimization, WsfEM_Interaction::Print(), WsfSensorResult::Reset(), WsfEM_Interaction::SetCategory(), settings(), targetIndex(), and WsfSensorMode::UpdateSensorCueingLimits().
|
inlineoverridevirtual |
Return the number of beams in the mode. Derived classes should return the number of beams that are defined.
Reimplemented from WsfSensorMode.
References mBeamList.
|
inlineoverridevirtual |
Return a pointer to the beam with the specified index. A derived class will return a pointer
| aIndex | The index of the beam to be retrieved. The index is NOT checked for validity. It MUST be in the range [0..GetBeamCount()]. |
Reimplemented from WsfSensorMode.
References mBeamList.
|
overridevirtual |
Initialize the sensor mode.
| aSimTime | The current simulation time. |
Reimplemented from WsfSensorMode.
References WsfSensorMode::GetFrameTime(), WsfEM_Antenna::GetMaximumRange(), WsfPassiveSensor::PassiveBeam::Initialize(), WsfSensorMode::Initialize(), WsfPassiveSensor::PassiveBeam::mAntennaPtr, mBeamList, WsfSensorMode::mMaximumRange, WsfPassiveSensor::PassiveBeam::mRcvrPtr, WsfSensorMode::mSensorPtr, ok, WsfEM_XmtrRcvr::SetIndex(), and WsfEM_XmtrRcvr::SetMode().
| WsfPassiveSensor::PassiveMode & WsfPassiveSensor::PassiveMode::operator= | ( | const PassiveMode & | aRhs | ) |
|
overridevirtual |
Reimplemented from WsfMode.
References mBeamList, mExplicitBeamUsed, WsfPassiveSensor::PassiveRcvr::mFrequencyBands, mImplicitBeamUsed, mRangingTime, mRangingTimeTrackQuality, WsfPassiveSensor::PassiveBeam::mRcvrPtr, mUnframedDetectionCoastTime, mUnframedDetectionOptimization, WsfPassiveSensor::ProcessInput(), WsfSensorMode::ProcessInput(), and WsfSensorBeam::SetBeamIndex().
| bool WsfPassiveSensor::PassiveMode::RemoveInteractor | ( | WsfEM_Xmtr * | aXmtrPtr, |
| PassiveRcvr * | aRcvrPtr ) |
Pass-through from WsfPassiveSensor::PassiveRcvr::RemoveInteractor.
References WsfPlatformPart::DebugEnabled(), WsfEM_XmtrRcvr::GetArticulatedPart(), WsfPlatform::GetIndex(), WsfEM_Rcvr::GetName(), WsfEM_Xmtr::GetName(), WsfObject::GetName(), WsfEM_XmtrRcvr::GetPlatform(), WsfSensorMode::GetSensor(), WsfSimulation::GetSimTime(), WsfPlatformPart::GetSimulation(), WsfSensorMode::mSensorPtr, mTargetInteractorMap, WsfEM_Xmtr::RemoveChangeListener(), WsfEM_Xmtr::RemoveListener(), targetIndex(), and WsfPassiveSensor::WsfPassiveSensor().
|
overridevirtual |
The mode is being activated. The specific implementation should perform whatever actions are associated with selecting the mode (e.g.: activating transmitters or receivers).
| aSimTime | [input] The current simulation time. |
Implements WsfSensorMode.
References WsfSensorMode::GetFrameTime(), WsfSensorMode::GetSensor(), and mBeamList.
| bool WsfPassiveSensor::PassiveMode::TuneFrequencyBand | ( | double | aSimTime, |
| bool | aReset, | ||
| size_t | aBeamNumber, | ||
| unsigned int | aFrequencyBandNumber, | ||
| double | aLowerFreq, | ||
| double | aUpperFreq, | ||
| double | aDwellTime, | ||
| double | aRevisitTime ) |
|
overridevirtual |
Update a track with the results from the current detection.
| aSimTime | The current simulation time. |
| aTrackPtr | A pointer to the track to be updated. |
| aTargetPtr | Pointer to the target. |
| aResult | The results of the current detection attempt |
The overrides the base class method in order to populate the track with the additional data provided by this sensor.
Reimplemented from WsfSensorMode.
References WsfEM_XmtrRcvr::GetArticulatedPart(), WsfSensorMode::GetSensor(), WsfEM_Interaction::GetTransmitter(), WsfObject::GetTypeId(), WsfSensorMode::ReportsFrequency(), WsfSensorMode::ReportsType(), WsfTrack::SetSignalList(), WsfTrack::SetTargetType(), WsfSensorMode::UpdateTrack(), and WsfPassiveSensor::WsfPassiveSensor().
|
overridevirtual |
Update the reported data flags in a track.
This is called by UpdateTrack() prior to applying the sensor detection results to the track. The function of the method is to set the flags in the track that indicate what data is 'valid'. UpdateTrack() uses the flags to decide what data from the sensor detection results is to be pushed into the track.
A base class may override this method to provide the ability to dynamically change the reporting abilities. The default method simply sets the reporting flags from the mode.
| aSimTime | The current simulation time. |
| aTrackPtr | The track whose reporting flags are to be updated. |
The overrides the base class method to set the track validity flags as appropriate.
Reimplemented from WsfSensorMode.
References WsfTrack::GetStartTime(), mRangingTime, mRangingTimeTrackQuality, WsfTrack::SetTrackQuality(), and WsfSensorMode::UpdateTrackReportingFlags().
|
inlineprotectedvirtual |
Returns true if the mode should utilize the 'listener' detection method for an interference transmitter.
Reimplemented in WsfESM_Sensor::ESM_Mode.
Referenced by AddInteractor().
| std::vector<PassiveBeam> WsfPassiveSensor::PassiveMode::mBeamList |
Referenced by AttemptToDetect(), CanDetect(), Deselect(), EmitterActiveCallback(), GetBeamCount(), GetBeamEntry(), WsfPassiveSensor::GetEM_Rcvr(), WsfPassiveSensor::GetEM_RcvrCount(), WsfPassiveSensor::GetNumberofFrequencyBands(), Initialize(), operator=(), PassiveMode(), PassiveMode(), ProcessInput(), Select(), and TuneFrequencyBand().
| bool WsfPassiveSensor::PassiveMode::mExplicitBeamUsed |
Referenced by operator=(), PassiveMode(), PassiveMode(), and ProcessInput().
| bool WsfPassiveSensor::PassiveMode::mImplicitBeamUsed |
Referenced by operator=(), PassiveMode(), PassiveMode(), and ProcessInput().
| bool WsfPassiveSensor::PassiveMode::mPSOS_Enabled |
Is 'Probabilistic Scan-On-Scan' (PSOS) processing enabled? If this is 'true' (the default) it means that SOS processing can occur if the user has defined the proper input data. This will be 'false' if a direct call is made to AttemptToDetect (such as from sensor_plot). In such a case each detection attempt is independent.
Referenced by AttemptToDetect(), EmitterActiveCallback(), operator=(), PassiveMode(), and PassiveMode().
| double WsfPassiveSensor::PassiveMode::mRangingTime |
Referenced by operator=(), PassiveMode(), PassiveMode(), ProcessInput(), and UpdateTrackReportingFlags().
| double WsfPassiveSensor::PassiveMode::mRangingTimeTrackQuality |
Referenced by operator=(), PassiveMode(), PassiveMode(), ProcessInput(), and UpdateTrackReportingFlags().
| TargetInteractorMap WsfPassiveSensor::PassiveMode::mTargetInteractorMap |
Referenced by AddInteractor(), AttemptToDetect(), EmitterActiveCallback(), operator=(), PassiveMode(), PassiveMode(), RemoveInteractor(), and ~PassiveMode().
| double WsfPassiveSensor::PassiveMode::mUnframedDetectionCoastTime |
Referenced by AttemptToDetect(), operator=(), PassiveMode(), PassiveMode(), and ProcessInput().
| bool WsfPassiveSensor::PassiveMode::mUnframedDetectionOptimization |
Referenced by EmitterActiveCallback(), operator=(), PassiveMode(), PassiveMode(), and ProcessInput().