WSF
WsfTruthCorrelation.hpp
Go to the documentation of this file.
1// ****************************************************************************
2// CUI
3//
4// The Advanced Framework for Simulation, Integration, and Modeling (AFSIM)
5//
6// Copyright 2003-2015 The Boeing Company. All rights reserved.
7//
8// The use, dissemination or disclosure of data in this file is subject to
9// limitation or restriction. See accompanying README and LICENSE for details.
10// ****************************************************************************
11
12#ifndef WSFTRUTHCORRELATION_HPP
13#define WSFTRUTHCORRELATION_HPP
14
15#include "wsf_export.h"
16
17#include <map>
18
19#include "UtCallbackHolder.hpp"
20class UtInput;
22class WsfPlatform;
23#include "WsfTrackId.hpp"
24
29{
30public:
32 ~WsfTruthCorrelation() override;
33
34 WsfCorrelationStrategy* Clone() const override { return new WsfTruthCorrelation(*this); }
35
36 bool ProcessInput(UtInput& aInput) override;
37
38 bool Initialize(WsfTrackManager* aTrackManagerPtr) override;
39
40 WsfLocalTrack* CorrelateImpl(double aSimTime, const WsfTrack& aNonLocalTrack, WsfLocalTrackList& aTrackList) override;
41
42private:
43 void LocalTrackCorrelation(double aSimTime, const WsfLocalTrack* aLocalTrackPtr, const WsfTrackId& aNonLocalTrackId);
44
45 WsfPlatform* FindClosestPlatform(double aSimTime, const WsfTrack& aNonLocalTrack);
46
47 std::map<WsfTrackId, double> mChangeMap;
48 std::map<WsfTrackId, size_t> mTruthMap;
49
50 double mChangeTime;
51 double mMaxDistanceForCorrelation;
52 bool mIgnoreTrackTarget;
53 bool mIgnoreSameSide;
54 UtCallbackHolder mCallbacks;
55};
56
57#endif
WsfTrackListT< WsfLocalTrack > WsfLocalTrackList
Definition WsfTrackList.hpp:89
#define WSF_EXPORT
Definition WsfXIO_Export.hpp:35
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 WsfLocalTrack.hpp:32
Platforms represent a entity within the simulation.
Definition WsfPlatform.hpp:115
Definition WsfTrackId.hpp:33
Definition WsfTrackManager.hpp:62
An object that represents an 'track' (perception) of something.
Definition WsfTrack.hpp:120
WsfTruthCorrelation()
Definition WsfTruthCorrelation.cpp:24
WsfCorrelationStrategy * Clone() const override
Create a clone of "this" object.
Definition WsfTruthCorrelation.hpp:34
Copyrights Multiple, All Rights Reserved