|
WSF
|
A specialization of WsfSensor that implements a simple electro-optical sensor. More...
#include <WsfOpticalSensor.hpp>


Classes | |
| class | OpticalMode |
| A mode of the sensor. More... | |
Public Member Functions | |
| WsfOpticalSensor (WsfScenario &aScenario) | |
| WsfOpticalSensor (const WsfOpticalSensor &aSrc) | |
| WsfOpticalSensor & | operator= (const WsfOpticalSensor &)=delete |
| WsfSensor * | Clone () const override |
| bool | Initialize (double aSimTime) override |
| void | Update (double aSimTime) override |
| size_t | GetEM_RcvrCount () const override |
| WsfEM_Rcvr & | GetEM_Rcvr (size_t aIndex) const override |
| void | PlatformDeleted (WsfPlatform *aPlatformPtr) override |
| virtual | |
| Public Member Functions inherited from WsfSensor | |
| WsfSensor (const WsfScenario &aScenario) | |
| ~WsfSensor () override | |
| ComponentList & | GetComponents () |
| const ComponentList & | GetComponents () const |
| void | SetUpdateInterval (double aUpdateInterval) override |
| unsigned int | GetUpdateEventEpoch () const |
| void | IncrementUpdateEventEpoch () |
| bool | UpdateEventActive () const |
| Is an 'Update' event active? | |
| void | SetUpdateEventActive (bool aUpdateEventActive) |
| Indicate if the 'Update' event is active. | |
| void | AdjustNextUpdateTime (double aNextUpdateTime) |
| double | GetNextUpdateTime () const |
| void | SetNextUpdateTime (double aSimTime, double aNextUpdateTime) |
| void | GetMessageParameters (int &aMessageLength, int &aMessagePriority) const |
| Get the base level message parameters (may get overridden by the mode). | |
| WsfStringId | GetZoneAttenuationModifier () const |
| Get the zone attenuation modifier. | |
| bool | SendDis () |
| Return mSendDis flag. | |
| ut::Random & | GetRandom () |
| Get the sensor's random number generator. | |
| virtual bool | GetFilteredDoppler () const |
| bool | ScriptAllowDetection (double aSimTime, WsfPlatform *aTargetPtr, WsfSensorResult &aResult) |
| If a script exists, allows it to impose further constraints on a sensor detection. | |
| WsfComponent * | CloneComponent () const override |
| const int * | GetComponentRoles () const override |
| void * | QueryInterface (int aRole) override |
| int | GetComponentInitializationOrder () const override |
| bool | AllowDetectionChancesFor (WsfPlatform *aPlatformPtr) |
| void | AddIgnoredCategory (const std::string &aCategory) |
| virtual bool | AttemptToDetect (double aSimTime, WsfPlatform *aTargetPtr, Settings &aSettings, WsfSensorResult &aResult) |
| const char * | GetScriptClassName () const override |
| bool | PreInitialize (double aSimTime) override |
| bool | Initialize (double aSimTime) override |
| bool | Initialize2 (double aSimTime) override |
| void | PlatformAdded (double aSimTime, WsfPlatform *aPlatformPtr) override |
| void | PlatformDeleted (WsfPlatform *aPlatformPtr) override |
| void | PreInput () override |
| bool | ProcessInput (UtInput &aInput) override |
| void | Update (double aSimTime) override |
| void | UpdatePosition (double aSimTime) override |
| virtual void | PerformScheduledDetections (double aSimTime) |
| bool | ThreadSafe () const |
| Returns true if the sensor update is thread safe. | |
| void | SetThreadSafe () |
| void | SetNotThreadSafe () |
| bool | ShowCalibrationData () const |
| Returns true if the sensor calibration should be output. | |
| void | SetShowCalibrationData (bool aShowCalibrationData) |
| void | AttachObserver (WsfSingleSensorObserver *aObserverPtr) |
| void | DetachObserver (WsfSingleSensorObserver *aObserverPtr) |
| void | NotifyDeleted () |
| void | NotifyTrackInitiated (double aSimTime, const WsfTrack &aTrack) |
| void | NotifyTrackUpdated (double aSimTime, const WsfTrack &aTrack) |
| void | NotifyTrackDropped (double aSimTime, const WsfTrack &aTrack) |
| void | NotifyTargetUpdated (double aSimTime, WsfPlatform *aTargetPtr, WsfSensorResult &aResult) |
| void | NotifyTurnedOff (double aSimTime) |
| void | NotifyTurnedOn (double aSimTime) |
| virtual void | NotifySensorDetectionAttempted (double aSimTime, WsfPlatform *aTargetPtr, WsfSensorResult &aResult) |
| int | GetClass () const |
| Returns the sensor class information. | |
| bool | IsClassActive () const |
| Is the sensor an 'active' sensor? | |
| bool | IsClassPassive () const |
| Is the sensor a 'passive' sensor? | |
| bool | IsClassSemiActive () const |
| Is the sensor a 'semi-active' sensor. | |
| bool | IsClassAcoustic () const |
| Is this an 'acoustic' sensor? | |
| bool | IsClassInfrared () const |
| Is this an 'infrared' sensor? | |
| bool | IsClassRadio () const |
| Is this a 'radio frequency' sensor? | |
| bool | IsClassVisual () const |
| Is this a 'visual' sensor? | |
| bool | IsClassImaging () const |
| Does this sensor produce an image? | |
| void | TurnOff (double aSimTime) override |
| void | TurnOn (double aSimTime) override |
| void | SetNonOperational (double aSimTime) override |
| void | SetOperational (double aSimTime) override |
| void | PartBroken (double aSimTime) override |
| double | GetUpdateInterval () const override |
| virtual size_t | GetEM_RcvrCount (size_t aModeIndex) const |
| virtual WsfEM_Rcvr & | GetEM_Rcvr (size_t aModeIndex, size_t aIndex) const |
| virtual size_t | GetEM_XmtrCount () const |
| virtual WsfEM_Xmtr & | GetEM_Xmtr (size_t aIndex) const |
| virtual size_t | GetEM_XmtrCount (size_t aModeIndex) const |
| virtual WsfEM_Xmtr & | GetEM_Xmtr (size_t aModeIndex, size_t aIndex) const |
| virtual bool | WithinFieldOfView (double aSimTime, WsfPlatform *aPlatformPtr) |
| virtual bool | WithinFieldOfView (double aSimTime, WsfTrack *aTrackPtr) |
| virtual WsfStringId | GetCurrentModeName () const |
| Return the string ID of the string associated with the name of the current mode. | |
| virtual WsfSensorMode * | GetCurrentMode () const |
| virtual size_t | GetModeCount () const |
| Get the number of modes associated with the sensor. | |
| virtual WsfSensorMode * | GetModeEntry (size_t aModeIndex) const |
| virtual size_t | GetModeIndex (WsfStringId aModeNameId) const |
| virtual WsfStringId | GetModeName (size_t aModeIndex) const |
| virtual void | DeselectMode (double aSimTime, WsfStringId aModeNameId) |
| virtual void | SelectMode (double aSimTime, WsfStringId aModeNameId) |
| virtual void | ScheduleModeChange (double aSimTime, bool aSelectModeFlag, WsfStringId aModeNameId) |
| virtual bool | IsModeChangeScheduled () const |
| virtual double | GetModeSelectDelay () const |
| WsfSensorModeList * | GetModeList () const |
| virtual int | GetActiveRequestCount () const |
| Get the number of requests being maintained in all modes. | |
| virtual int | GetActiveRequestCount (WsfStringId aModeNameId) const |
| virtual int | GetMaximumRequestCount () const |
| virtual int | GetMaximumRequestCount (WsfStringId aModeNameId) const |
| virtual bool | HaveRequestFor (const WsfTrackId &aTrackId) const |
| Has a tracking request for the specified track ID been submitted. | |
| virtual bool | StartTracking (double aSimTime, const WsfTrack &aTrack, WsfStringId aModeNameId) |
| virtual bool | StopTracking (double aSimTime, const WsfTrackId &aRequestId) |
| Indicate the sensor should no longer track the specified track. | |
| virtual int | GetActiveTrackCount () const |
| Return the number of active tracks the sensor is maintaining. | |
| virtual void | GetActiveTrackList (WsfTrackList &aActiveTrackList) const |
| Return the active tracks the sensor is maintaining. | |
| virtual int | GetMaximumTrackCount () const |
| Return the maximum number of tracks the sensor can maintain. | |
| virtual void | SendTrackCoastMessage (double aSimTime, const WsfTrack *aTrackPtr) |
| virtual void | SendTrackDropMessage (double aSimTime, const WsfTrack *aTrackPtr) |
| virtual void | SendTrackUpdateMessage (double aSimTime, const WsfTrack *aTrackPtr) |
| virtual void | SetMessageParameters (WsfStringId aModeNameId, WsfMessage &aMessage) |
| virtual void | TrackCoasted (double aSimTime, WsfTrack *aTrackPtr) |
| virtual void | TrackDropped (double aSimTime, WsfTrack *aTrackPtr) |
| virtual void | TrackUpdated (double aSimTime, WsfTrack *aTrackPtr) |
| bool | IsSlave () const |
| Get the current 'slave' status of a sensor. | |
| void | SetIsSlave (double aSimTime, bool aIsSlave) |
| WsfSensorScheduler * | GetScheduler () const |
| void | SetScheduler (std::unique_ptr< WsfSensorScheduler > aSchedulerPtr) |
| std::unique_ptr< WsfSensorScheduler > | SwapScheduler (std::unique_ptr< WsfSensorScheduler > aSchedulerPtr) |
| WsfSensorTracker * | GetTracker () const |
| void | SetTracker (std::unique_ptr< WsfSensorTracker > aTrackerPtr) |
| std::unique_ptr< WsfSensorTracker > | SwapTracker (std::unique_ptr< WsfSensorTracker > aTrackerPtr) |
| Public Member Functions inherited from WsfArticulatedPart | |
| WsfArticulatedPart (const WsfScenario &aScenario, int aPartType) | |
| WsfArticulatedPart (const WsfArticulatedPart &aSrc) | |
| ~WsfArticulatedPart () override | |
| void | SetPositionRateECS (const double aDX, const double aDY, const double aDZ) |
| void | GetCurrentPositionRateECS (double &aDX, double &aDY, double &aDZ) const |
| double | GetDX () const |
| double | GetDY () const |
| double | GetDZ () const |
| void | EnableArticulationUpdates (double aSimTime, double aInterval) |
| void | DisableArticulationUpdates (double aSimTime) |
| void | SetArticulationUpdateInterval (double aUpdateInterval) |
| double | GetArticulationUpdateInterval () const |
| unsigned int | GetArticulationUpdateEventEpoch () const |
| void | IncrementArticulationUpdateEventEpoch () |
| bool | ArticulationUpdateEventActive () const |
| Is an 'Update' event active? | |
| void | SetArticulationUpdateEventActive (bool aUpdateEventActive) |
| Indicate if the 'Update' event is active. | |
| virtual double | TimeToCue (double aDesiredAz, double aDesiredEl) const |
| const char * | GetScriptClassName () const override |
| void | OnPlatformUpdated (double, WsfPlatform *) override |
| SlewMode | GetSlewMode () const |
| Get the allowed slewing mode. | |
| double | GetAzSlewRate () const |
| Get the current azimuth slew rate. | |
| double | GetElSlewRate () const |
| Get the current elevation slew rate. | |
| double | GetMaxAzSlewRate () const |
| Get the maximum allowable azimuth slew rate. | |
| double | GetMaxElSlewRate () const |
| Get the maximum allowable elevation slew rate. | |
| double | GetMinAzSlew () const |
| Gets the minimum azimuth slew limit. | |
| double | GetMaxAzSlew () const |
| Gets the maximum azimuth slew limit. | |
| double | GetMinElSlew () const |
| Gets the minimum elevation slew limit. | |
| double | GetMaxElSlew () const |
| Gets the maximum elevation slew limit. | |
| int | GetSlewState () const |
| Get the slew limit state. | |
| void | SetSlewMode (SlewMode aSlewMode) |
| Set the allowed slewing mode. | |
| void | SetSlewRates (double aAzSlewRate, double aElSlewRate) |
| Set the angular slew rates, limited by the maximum slew rates. | |
| void | SetAzSlewLimits (double aMinAzSlew, double aMaxAzSlew) |
| Set the azimuth slew limits. | |
| void | SetElSlewLimits (double aMinElSlew, double aMaxElSlew) |
| Set the elevation slew limits. | |
| void | SetAzimuthSlewDirection (SlewDirection aAzSlewDirection) |
| Set the azimuth slew direction. | |
| bool | IsSlewing () const |
| bool | WithinSlewLimits (double aThisToTgtAz, double aThisToTgtEl) const |
| SlewMode | GetCueMode () const |
| Get the allowed cueing mode. | |
| double | GetAzCueRate () const |
| Get the azimuth cue rate. | |
| double | GetElCueRate () const |
| Get the elevation cue rate. | |
| double | GetMinAzCue () const |
| Gets the minimum azimuth cue limit. | |
| double | GetMaxAzCue () const |
| Gets the maximum azimuth cue limit. | |
| double | GetMinElCue () const |
| Gets the minimum elevation cue limit. | |
| double | GetMaxElCue () const |
| Gets the maximum elevation cue limit. | |
| void | SetCueMode (SlewMode aCueMode) |
| Set the allowed cueing mode. | |
| void | SetCueRates (double aAzCueRate, double aElCueRate) |
| Set the angular cueing rates. | |
| void | SetAzCueLimits (double aMinAzCue, double aMaxAzCue) |
| Set the azimuth cueing limits. | |
| void | SetElCueLimits (double aMinElCue, double aMaxElCue) |
| Set the elevation cueing limits. | |
| double | GetRoll () const |
| void | SetRoll (double aRoll) |
| Set the platform-relative (ECS) roll angle of the articulated part. | |
| double | GetPitch () const |
| void | SetPitch (double aPitch) |
| double | GetYaw () const |
| void | SetYaw (double aYaw) |
| Set the platform-relative (ECS) yaw angle of the articulated part. | |
| double | GetTilt () const |
| void | SetTilt (double aTilt) |
| void | GetCurrentOrientationECS (double &aYaw, double &aPitch, double &aRoll) |
| void | GetLOS_UnitVectorWCS (double aUnitLOS_WCS[3]) |
| Get the current WCS Frame Line-Of-Sight unit vector. | |
| CueType | GetCueType () const |
| bool | IsCued () const |
| Get the cued status. | |
| void | ClearCueing () |
| bool | GetActualCuedOrientation (double &aAzimuth, double &aElevation) const |
| void | GetCurrentCuedOrientation (double &aAzimuth, double &aElevation) const |
| bool | GetCuedLocationWCS (double aCuedLocationWCS[3]) const |
| void | SetCuedLocationWCS (const double aCuedLocationWCS[3]) |
| bool | GetCuedOrientation (double &aAzimuth, double &aElevation) const |
| void | SetCuedOrientation (double aAzimuth, double aElevation) |
| void | GetAbsoluteCuedOrientation (double &aAzimuth, double &aElevation, double aBaseNED[3]) |
| void | ClearTransientCue () |
| bool | TransientCueActive () const |
| bool | GetTransientCuedLocationWCS (double aCuedLocationWCS[3]) const |
| void | SetTransientCuedLocationWCS (const double aCuedLocationWCS[3]) |
| WsfStringId | GetMaskingPatternState () const |
| void | SetMaskingPatternState (WsfStringId aMaskingPatternStateId) |
| double | GetMaskingPatternFactor (double aViewAzPCS, double aViewElPCS, const double aViewVecWCS[3]) |
| void | SetIsPrivate (bool aIsPrivate) |
| bool | IsPrivate () const |
| Public Member Functions inherited from WsfPlatformPart | |
| WsfPlatformPart (const WsfScenario &aScenario, int aPartType) | |
| WsfPlatformPart & | operator= (const WsfPlatformPart &aRhs)=delete |
| ~WsfPlatformPart () override | |
| bool | DebugEnabled () const |
| Returns 'true' if debugging is enabled for this instance. | |
| void | SetDebugEnabled (bool aDebugEnabled) |
| unsigned int | GetDebugMask () |
| bool | IsExternallyControlled () const |
| virtual void | SetExternallyControlled (double aSimTime, bool aIsExternallyControlled) |
| int | GetPartType () const |
| const char * | GetScriptClassName () const override |
| WsfSimulation * | GetSimulation () const |
| const WsfScenario & | GetScenario () const |
| WsfStringId | GetComponentName () const override |
| void | ComponentParentChanged (WsfPlatform *aPlatformPtr) override |
| WsfPlatform * | GetPlatform () const |
| double | GetLastStatusChangeTime () const |
| void | SetLastStatusChangeTime (double aSimTime) |
| Allows a system to set the time at which the device was initialized. | |
| bool | CanBeMadeOperational () const |
| Returns an indication that this system can be made operational. | |
| bool | CanBeMadeNonOperational () const |
| Returns an indication that this system can be made non-operational. | |
| bool | CanBeTurnedOn () const |
| Returns an indication that this system can be turned on. | |
| bool | CanBeTurnedOff () const |
| Returns an indication that this system can be turned off. | |
| bool | IsTurnedOn () const |
| bool | InitiallyTurnedOn () const |
| Is the system to be turned 'on' when added to the simulation? | |
| void | SetInitiallyTurnedOn (bool aInitiallyTurnedOn) |
| Sets if the system is turned on when added to the simulation. | |
| virtual void | Restore (double aSimTime) |
| bool | IsOperational () const |
| bool | SetOperational (double aSimTime, bool aMakeOperational) |
| double | GetDamageFactor () const |
| bool | SetDamageFactor (double aSimTime, double aDamageFactor) |
| bool | IsCritical () const |
| void | SetCritical (bool aValue) |
| virtual void | OnPlatformBrokenEvent (double aSimTime) |
| Owning platform has issued a broken event. | |
| bool | IsBroken () const |
| WsfInternalLinks & | GetInternalLinks () |
| Return the internal links for this part. | |
| virtual bool | HasInternalLinks () const |
| Does this platform part have a communication link to other platform parts? | |
| virtual bool | ProcessMessage (double aSimTime, const WsfMessage &aMessage) |
| virtual bool | ReceiveMessage (double aSimTime, const WsfMessage &aMessage) |
| virtual void | SendMessage (double aSimTime, const WsfMessage &aMessage) |
| virtual void | SendMessageTo (double aSimTime, const WsfMessage &aMessage, WsfStringId aRecipientId) |
| void | SendMessageToProcessor (double aSimTime, const WsfMessage &aMessage, WsfStringId aRecipientId) |
| virtual void | SendQueuedMessages (double aSimTime) |
| const WsfCategoryList & | GetCategories () const |
| Get the categories to which this part belongs. | |
| void | AddCategory (WsfStringId aCategoryId) |
| Adds the provided category to the platform part's category list. | |
| bool | IsCategoryMember (WsfStringId aCategoryId) const |
| const WsfGroupList & | GetGroups () const |
| Get the groups to which this platform part belongs. | |
| void | JoinGroup (WsfGroup *aGroupPtr) |
| Join the given group. | |
| void | LeaveGroup (WsfGroup *aGroupPtr) |
| Leave the given group. | |
| bool | IsGroupMember (WsfStringId aGroupId) |
| unsigned int | GetUpdateEventEpoch () const |
| void | IncrementUpdateEventEpoch () |
| bool | UpdateEventActive () const |
| Is an 'Update' event active? | |
| void | SetUpdateEventActive (bool aUpdateEventActive) |
| Indicate if the 'Update' event is active. | |
| 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) |
| Public Member Functions inherited from WsfComponentT< WsfPlatform > | |
| WsfComponentT () | |
| WsfComponentT (const WsfComponentT &) noexcept | |
| WsfComponentT & | operator= (const WsfComponentT &) noexcept |
| ~WsfComponentT () override=default | |
| ParentType * | GetComponentParent () const |
| void | SetComponentParent (ParentType *aParentPtr) |
| Public Member Functions inherited from WsfComponent | |
| virtual | ~WsfComponent ()=default |
| template<typename T> | |
| bool | QueryInterfaceT (T *&aRolePtr) |
| bool | ComponentHasRole (int aRole) |
| Returns true if the component has the specified role. | |
| Public Member Functions inherited from WsfUniqueId | |
| WsfUniqueId () | |
| Construtor initializes the unique identifier to 0. | |
| WsfUniqueId (const WsfUniqueId &) | |
| Copy constructor initializes the unique identifier to 0. | |
| WsfUniqueId & | operator= (const WsfUniqueId &) |
| unsigned int | GetUniqueId () const |
| Get the unique identifier assigned to this object. | |
| template<typename T> | |
| void | Serialize (T &aBuff) |
| For XIO (de)serialization. | |
| Public Member Functions inherited from WsfAuxDataEnabled | |
| WsfAuxDataEnabled ()=default | |
| WsfAuxDataEnabled (const WsfAuxDataEnabled &aSrc)=default | |
| WsfAuxDataEnabled & | operator= (const WsfAuxDataEnabled &aRhs) |
| WsfAuxDataEnabled (WsfAuxDataEnabled &&)=default | |
| WsfAuxDataEnabled & | operator= (WsfAuxDataEnabled &&)=default |
| virtual | ~WsfAuxDataEnabled () noexcept |
| void | SetAuxData (const WsfAttributeContainer &aAuxData) |
| void | DeleteAuxData () |
| Delete the aux data container from the object. | |
| void | MergeAuxData (const WsfAuxDataEnabled &aSrc) |
| Merge the object's aux data with aux data from an existing object. | |
| void | UpdateAuxData (const WsfAuxDataEnabled &aSrc) |
| Update the object's aux data with aux data from an existing object. | |
| bool | HasAuxData () const |
| Returns true if this object has aux data. | |
| bool | ProcessInput (UtInput &aInput) |
| template<typename T> | |
| void | Serialize (T &aBuff) |
| (De)serialization for XIO | |
| WsfAttributeContainer & | GetAuxData () |
| const WsfAttributeContainer & | GetAuxData () const noexcept |
| const WsfAttributeContainer & | GetAuxDataConst () const noexcept |
| Public Member Functions inherited from WsfSinglePlatformObserver | |
| virtual | ~WsfSinglePlatformObserver () |
| virtual void | OnPlatformDeleting (double aSimTime, WsfPlatform *aPlatformPtr) |
| Called before the platform is actually deleted. | |
| virtual void | OnPlatformDeleted (double aSimTime, WsfPlatform *aPlatformPtr) |
| Called just before the platform is removed from the simulation. | |
Protected Attributes | |
| std::vector< OpticalMode * > | mOpticalModeList |
| The sensor-specific list of modes (not valid until Initialize is called). | |
| bool | mThreadSafe |
| std::unique_ptr< WsfSensorModeList > | mModeListPtr |
| std::unique_ptr< WsfSensorScheduler > | mSchedulerPtr |
| std::unique_ptr< WsfSensorTracker > | mTrackerPtr |
| double | mNextUpdateTime |
| The time when the next call to Update() SHOULD occur. | |
| int | mMessageLength |
| The logical length (in bits) of report messages that originate from this sensor. | |
| int | mMessagePriority |
| The priority of report messages that originate from this sensor. | |
| WsfStringId | mZoneAttenuationModifier |
| If non-zero, the name of ID of the category to be used for zone-based attenuation. | |
| WsfCategoryList | mIgnoredCategories |
| Categories which this sensor should ignore. | |
| std::vector< WsfStringId > | mIgnoredSides |
| The sides (teams) which this sensor should ignore. | |
| unsigned int | mIgnoredDomains |
| A bit mask of ignored domains. | |
| bool | mIgnoreSameSide |
| 'true' if the sensor should not detect platforms on the same side. | |
| WsfMaskingPattern * | mMaskingPatternPtr |
| The masking factor. | |
| WsfStringId | mMaskingPatternName |
| WsfStringId | mMaskingPatternStateId |
| double | mYaw |
| The orientation of the device coordinate system. | |
| double | mPitch |
| double | mRoll |
| double | mDX |
| The velocity of the part. | |
| double | mDY |
| double | mDZ |
| double | mTilt |
| The tilt angle above below the scan plane. | |
| double | mAzSlewRate |
| The slewing rates and limits of the device with respect to the device coordinate system. | |
| double | mElSlewRate |
| double | mMaxAzSlewRate |
| double | mMaxElSlewRate |
| double | mMinAzSlew |
| double | mMaxAzSlew |
| double | mMinElSlew |
| double | mMaxElSlew |
| SlewMode | mSlewMode |
| SlewDirection | mAzSlewDirection |
| int | mSlewState |
| double | mAzCueRate |
| The cueing rates and limits of the device with respect to the device coordinate system. | |
| double | mElCueRate |
| double | mMinAzCue |
| double | mMaxAzCue |
| double | mMinElCue |
| double | mMaxElCue |
| SlewMode | mCueMode |
| The directions (az and/or el) in which cueing can be performed. | |
| CueType | mCueType |
| bool | mTransientCueActive |
| 'true' if the transient cue is defined | |
| double | mCuedLocationWCS [3] |
| The cued location if mCueType is cCUED_TO_LOCATION. | |
| double | mCuedAz |
| The cued azimuth if mCueType == cCUED_TO_ANGLE. | |
| double | mCuedEl |
| The cued elevation if mCueType == cCUED_TO_ANGLE. | |
| double | mTransientCuedLocationWCS [3] |
| The transient cue, if mTransientCueActive is true. | |
| double | mActualCuedAz |
| The actual cued location, subject to the slewing limits. | |
| double | mActualCuedEl |
| double | mCurrentAz |
| double | mCurrentEl |
| double | mLastAzElUpdateTime |
| The time when the current az/el were last updated. | |
| double | mLastUpdateTime |
| The time when the x/y/z position was last updated. | |
| bool | mSlewMethodCoordinated |
| 'true' if slcue rates are dynamically adjusted so the target angles are reached simultaneously. | |
| bool | mIsSlewing |
| 'true' if the part is slewing to satisfy a cueing request. | |
| bool | mIsPrivate |
| 'true' if the part is considered 'private' and not to visible to external simulations. | |
Additional Inherited Members | |
| Public Types inherited from WsfSensor | |
| enum | { cACTIVE = 0x00000001 , cSEMI_ACTIVE = 0x00000002 , cPASSIVE = 0x00000004 , cRADIO = 0x00000010 , cINFRARED = 0x00000020 , cVISUAL = 0x00000040 , cACOUSTIC = 0x00000080 , cIMAGING = 0x00001000 } |
| using | Result = WsfSensorResult |
| using | ComponentList = WsfComponentListT<WsfSensorComponent> |
| Public Types inherited from WsfArticulatedPart | |
| enum | SlewMode { cSLEW_FIXED = 0 , cSLEW_AZ = 1 , cSLEW_EL = 2 , cSLEW_AZ_EL = 3 } |
| enum | SlewDirection { cUNDEFINED = 0 , cPOSITIVE = 1 , cNEGATIVE = 2 } |
| enum | { cNOT_CUED = 0x0000 , cMIN_AZ = 0x0001 , cMAX_AZ = 0x0002 , cMIN_EL = 0x0004 , cMAX_EL = 0x0008 , cAT_LIMIT_AZ_MASK = 0x0003 , cAT_LIMIT_EL_MASK = 0x000B , cAT_LIMIT_MASK = 0x000F , cCUED_AZ = 0x0010 , cCUED_EL = 0x0020 , cCUED_AZ_EL = 0x0030 , cCUED_MASK = 0x0030 } |
| enum | CueType { cCUED_TO_NOTHING , cCUED_TO_LOCATION , cCUED_TO_ANGLE } |
| Public Types inherited from WsfPlatformPart | |
| enum | { cLEVEL_ONE_DEBUG = 0x00000001 , cLEVEL_TWO_DEBUG = 0x00000002 } |
| using | InternalMessageQueue = std::queue<WsfMessage*> |
| using | RecipientMessageQueue = std::queue<std::pair<WsfPlatformPart*, WsfMessage*>> |
| Public Types inherited from WsfObject | |
| typedef std::vector< WsfStringId > | TypeList |
| The list of types returned by GetTypeList. | |
| Public Types inherited from WsfComponentT< WsfPlatform > | |
| typedef WsfPlatform | ParentType |
| This is needed to support the WsfComponentList template. | |
| static double | GetRequiredPd (const WsfSensorMode *aModePtr) |
| UtCallbackListN< void(double)> | SlewComplete |
| Static Public Attributes inherited from WsfArticulatedPart | |
| static constexpr double | cINFINITE_SLEW_RATE = 1.0E+12 * UtMath::cRAD_PER_DEG |
| static constexpr double | cALMOST_FULL_CIRCLE = 359.999 * UtMath::cRAD_PER_DEG |
| Static Public Attributes inherited from WsfAuxDataEnabled | |
| static UtCallbackListN< void(const WsfAuxDataEnabled *)> | AuxDataAccessed |
| static UtCallbackListN< void(const WsfAuxDataEnabled *)> | AuxDataDestroyed |
| WsfSensor (const WsfSensor &aSrc) | |
| Copy constructor (for Clone()). | |
| WsfSensor & | operator= (const WsfSensor &aSrc)=delete |
| void | SetClass (int aClass) |
| Set the 'classification' of the sensor. | |
| void | SetModeList (std::unique_ptr< WsfSensorModeList > aModeListPtr) |
| UtScriptContext * | GetScriptAccessibleContext () const override |
| Return the context from the script. | |
| void | SetPlatform (WsfPlatform *aPlatformPtr) override |
| bool | FullCircle () const |
| virtual double | GetAzimuthRotationRate () const |
| virtual double | GetElevationRotationRate () const |
| void | SlewToOrientation (double aSimTime, double aDesiredAz, double aDesiredEl) |
| virtual void | TimeToRotate (double &aDeltaAz, double &aDeltaEl, double &aAzRate, double &aElRate, double &aTimeToAz, double &aTimeToEl) const |
| void | UpdateCuedOrientation (double aSimTime) |
| bool | UpdateOrientation (double aSimTime) |
| WsfPlatformPart (const WsfPlatformPart &aSrc) | |
| Copy constructor (for Clone()). | |
| WsfObject (const WsfObject &aSrc) | |
| Copy constructor (for Clone()). | |
| Protected Member Functions inherited from WsfUniqueId | |
| void | AssignUniqueId (WsfSimulation *aSimulationPtr) |
A specialization of WsfSensor that implements a simple electro-optical sensor.
| WsfOpticalSensor::WsfOpticalSensor | ( | WsfScenario & | aScenario | ) |
References WsfSensor::cPASSIVE, WsfSensor::cVISUAL, mOpticalModeList, WsfSensor::SetClass(), WsfSensor::SetModeList(), WsfSensor::SetScheduler(), WsfSensor::SetTracker(), and WsfSensor::WsfSensor().
Referenced by Clone(), operator=(), and WsfOpticalSensor().
| WsfOpticalSensor::WsfOpticalSensor | ( | const WsfOpticalSensor & | aSrc | ) |
References mOpticalModeList, WsfOpticalSensor(), and WsfSensor::WsfSensor().
|
overridevirtual |
Clone this object.
Implements WsfSensor.
References WsfOpticalSensor(), and WsfSensor::WsfSensor().
|
overridevirtual |
Get the attributes for the receiver with a specified index.
| aIndex | The index of the receiver whose attributes are being requested. This must be in the range [0, GetEM_RcvrCount() - 1]. |
Reimplemented from WsfSensor.
References WsfSensor::mModeListPtr, and mOpticalModeList.
|
overridevirtual |
Return the number of receivers associated with the sensor.
Reimplemented from WsfSensor.
References mOpticalModeList.
|
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 WsfArticulatedPart.
References WsfSensor::Initialize(), WsfSensor::mModeListPtr, mOpticalModeList, and ok.
|
delete |
References WsfOpticalSensor(), and WsfSensor::WsfSensor().
|
overridevirtual |
virtual
Reimplemented from WsfPlatformPart.
References mOpticalModeList, and WsfSensor::PlatformDeleted().
|
overridevirtual |
Update the state of an platform part. Updates the platform part to reflect the state at the specified simulation time.
| aSimTime | The current simulation time. |
Reimplemented from WsfPlatformPart.
References WsfSensor::mNextUpdateTime, WsfSensor::PerformScheduledDetections(), and WsfSensor::Update().
|
protected |
The sensor-specific list of modes (not valid until Initialize is called).
Referenced by GetEM_Rcvr(), GetEM_RcvrCount(), Initialize(), PlatformDeleted(), WsfOpticalSensor(), and WsfOpticalSensor().