12#ifndef WSFCLUSTERCORRELATION_HPP
13#define WSFCLUSTERCORRELATION_HPP
15#include "wsf_mil_export.h"
43 void ClusterRawTracksIntoLocalTracks(
double aSimTime);
47 WsfLocalTrack* GetCorrelatedTrack(std::vector<WsfTrack*>& aCluster);
51 void MakeCorrelated(std::vector<WsfTrack*>& aCluster,
WsfLocalTrack& aLocalTrack);
56 void MakeDecorrelated(std::vector<WsfTrack*>& aCluster);
60 double GetMaxMeasurementError(
double aSimTime,
const WsfTrack& aTrack);
66 std::map<WsfStringId, double> mSensorIdToRangeMap;
67 double mUpdateInterval;
68 double mLastReclusterTime;
70 class ClusterCorrelationEvent :
public WsfEvent
75 , mCorrelatorPtr(aCorrelatorPtr)
78 EventDisposition Execute()
override;
81 WsfClusterCorrelation* mCorrelatorPtr;
WsfTrackListT< WsfLocalTrack > WsfLocalTrackList
Definition WsfTrackList.hpp:89
Definition WsfClusterCorrelation.hpp:30
double GetUpdateInterval() const
Definition WsfClusterCorrelation.hpp:61
double GetLastClusterUpdateTime() const
Definition WsfClusterCorrelation.hpp:62
WsfClusterCorrelation(WsfScenario &aScenario)
Definition WsfClusterCorrelation.cpp:35
WsfCorrelationStrategy * Clone() const override
Create a clone of "this" object.
Definition WsfClusterCorrelation.hpp:39
Definition WsfClusterManager.hpp:136
bool ProcessInput(UtInput &aInput) override
Process input from a common source.
Definition WsfCorrelationStrategy.hpp:59
WsfCorrelationStrategy()
Definition WsfCorrelationStrategy.cpp:21
virtual WsfLocalTrack * CorrelateImpl(double aSimTime, const WsfTrack &aNonLocalTrack, WsfLocalTrackList &aTrackList)=0
virtual bool Initialize(WsfTrackManager *aTrackManagerPtr)
Perform any necessary initialization.
Definition WsfCorrelationStrategy.hpp:62
Definition WsfEvent.hpp:29
Definition WsfLocalTrack.hpp:32
Contains the data required to create a simulation, and acts as the entry point for input file process...
Definition WsfScenario.hpp:111
Definition WsfTrackId.hpp:33
Definition WsfTrackManager.hpp:62
An object that represents an 'track' (perception) of something.
Definition WsfTrack.hpp:120