|
| | ~WsfFusionStrategy () override=default |
| WsfFusionStrategy * | Clone () const override=0 |
| | Create a clone of "this" object.
|
| bool | ProcessInput (UtInput &aInput) override |
| | Process input from a common source.
|
| virtual bool | Initialize (WsfTrackManager *aTrackManagerPtr) |
| | Perform any necessary initialization.
|
| virtual bool | Initialize (WsfProcessor *aProcessorPtr) |
| | Perform any necessary initialization.
|
| virtual bool | DebugEnabled () const |
| | Return whether debug is enabled for this instance.
|
| virtual bool | UpdateLocalTrackFromNonLocalTrack (double aSimTime, WsfLocalTrack &aLocalTrack, const WsfTrack &aNonLocalTrack)=0 |
| virtual bool | UpdateLocalResultFromNonLocalResult (double aSimTime, WsfLocalSensorResult &aLocalResult, const WsfSensorResult &aNonLocalResult)=0 |
| virtual bool | InitializeLocalTrackFromNonLocalTrack (double aSimTime, WsfLocalTrack &aLocalTrack, const WsfTrack &aNonLocalTrack) |
| virtual bool | InitializeLocalResultFromNonLocalResult (double aSimTime, WsfLocalSensorResult &aLocalResult, const WsfSensorResult &aNonLocalResult) |
| virtual void | ReviewTrack (WsfLocalTrack &aLocalTrack)=0 |
| virtual bool | UpdateNonKinematicData (double aSimTime, WsfLocalTrack &aLocalTrack, const WsfTrack &aNonLocalTrack) |
| WsfSimulation * | GetSimulation () const |
| double | GetSimTime () |
| WsfPlatform * | GetPlatform () const |
| WsfTrackManager & | GetTrackManager () |
| | Return a reference to the track manager being accessed internally by this object.
|
| const WsfTrackManager & | GetTrackManager () const |
| WsfProcessor & | GetProcessor () |
| | Return a reference to the processor being accessed internally by this object.
|
| | 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) |
|
| | WsfFusionStrategy () |
| | WsfFusionStrategy (const WsfFusionStrategy &aSrc) |
| WsfFusionStrategy & | operator= (const WsfFusionStrategy &)=delete |
| void | SetTrackManager (WsfTrackManager &aTrackManager) |
| | Set the track manager reference.
|
| void | SetProcessor (WsfProcessor &aProcessor) |
| | Set the processor reference.
|
| virtual bool | UpdateIFF_Status (double aSimTime, WsfLocalTrack &aLocalTrack, const WsfTrack &aNonLocalTrack) |
| virtual bool | UpdateSide (double aSimTime, WsfLocalTrack &aLocalTrack, const WsfTrack &aNonLocalTrack) |
| virtual bool | UpdateType (double aSimTime, WsfLocalTrack &aLocalTrack, const WsfTrack &aNonLocalTrack) |
| virtual bool | UpdateSpatialDomain (double aSimTime, WsfLocalTrack &aLocalTrack, const WsfTrack &aNonLocalTrack) |
| virtual bool | UpdateTrackQuality (double aSimTime, WsfLocalTrack &aLocalTrack, const WsfTrack &aNonLocalTrack) |
| virtual bool | UpdateSignalToNoise (double aSimTime, WsfLocalTrack &aLocalTrack, const WsfTrack &aNonLocalTrack) |
| virtual bool | UpdateSignalList (double aSimTime, WsfLocalTrack &aLocalTrack, const WsfTrack &aNonLocalTrack) |
| virtual bool | UpdateAuxData (double aSimTime, WsfLocalTrack &aLocalTrack, const WsfTrack &aNonLocalTrack) |
| | WsfObject (const WsfObject &aSrc) |
| | Copy constructor (for Clone()).
|
|
| static void | FuseEstimates (const UtMatrixd &aEstimate1, const UtMatrixd &aEstimate2, const UtMatrixd &aCovar1, const UtMatrixd &aCovar2, UtMatrixd &aEstimateOut, UtMatrixd &aCovarOut) |
| static void | NormalizeAzRangeEstimate (const UtMatrixd &aEstimate, const UtMatrixd &aCovar, const double &aElevation, UtMatrixd &aNormEstimate, UtMatrixd &aNormCovar) |
| static void | NormalizeElRangeEstimate (const UtMatrixd &aEstimate, const UtMatrixd &aCovar, const double &aAzimuth, UtMatrixd &aNormEstimate, UtMatrixd &aNormCovar) |
This class defines the interface for a fusion strategy. It is to be used and configured by the WsfTrackManager or a specialized WsfProcessor. A factory method called WsfFusionStrategy::Create is provided to return new instances of existing correlation object prototypes.
Currently the only implemented concrete instance is WsfDefaultFusion. In order to create new fusion objects, the implementor should do the following:
- Note
- It is suggested that the developer prefer the use of WsfFusionStrategy::Create over Clone() as the former (factory) method ties in the desired instance of WsfTrackManager.
| bool WsfFusionStrategy::UpdateNonKinematicData |
( |
double | aSimTime, |
|
|
WsfLocalTrack & | aLocalTrack, |
|
|
const WsfTrack & | aNonLocalTrack ) |
|
virtual |
A general-purpose method for updating the "non-kinematic" fields of the track (frequency, side, type, iff, track quality). TODO At some point we may want to break these out as individual, script-able methods, but only for default fusion.
- Parameters
-
| aSimTime | The current simulation time. |
| aLocalTrack | The track to be updated. |
| aNonLocalTrack | The track with information to be extracted to the local track. |
Reimplemented in WsfDefaultFusion.
References UpdateAuxData(), UpdateIFF_Status(), UpdateSide(), UpdateSignalList(), UpdateSignalToNoise(), UpdateSpatialDomain(), UpdateTrackQuality(), and UpdateType().
Referenced by ReviewTrack(), WsfDefaultFusion::UpdateNonKinematicData(), and UpdateNonKinematicData().