WSF
TrackMessageProxy.hpp
Go to the documentation of this file.
1// ****************************************************************************
2// CUI//REL TO USA ONLY
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#ifndef L16_TRACKMESSAGEPROXY_HPP
12#define L16_TRACKMESSAGEPROXY_HPP
13
14#include <string>
15
16class DisEntityId;
17#include "MessagesPreDef.hpp"
18
19namespace WsfL16
20{
21class Interface;
22
27{
28public:
37
38 virtual ~TrackMessageProxy() {}
39
40 virtual bool GetLocationLLA(double& aLat, double& aLon, double& aAlt) const = 0;
41
42 virtual double GetSpeed() const = 0;
43
44 virtual double GetCourse() const = 0;
45
46 virtual bool GetVelocityWCS(double aWCS[3]) const { return false; }
47
48 virtual int GetTrackNumber() const = 0;
49
50 virtual unsigned GetSourceTrackNumber() const = 0;
51
52 virtual std::string GetStringTrackNumber() const = 0;
53
54 virtual void GetTrackDisEntityId(WsfL16::Interface* aL16_InterfacePtr, DisEntityId& aEntityId) const = 0;
55
56 virtual double GetTrackQuality() const = 0;
57
58 virtual double GetTrackQualityErrorDistance95CEP() const { return 0.0; }
59
60 virtual int GetIdentity() const = 0;
61
62 virtual int GetSpecificType() const = 0;
63
64 virtual void SetLocationLLA(double aLat, double aLon, double aAlt) = 0;
65
67 virtual Environment GetEnvironment() const = 0;
68
69 static TrackMessageProxy* Create(Messages::InitialBase* aMsg);
70 static const TrackMessageProxy* Create(const Messages::InitialBase* aMsg);
71
72private:
73};
74} // namespace WsfL16
75
76#endif
Definition Interface.hpp:116
Definition TrackMessageProxy.hpp:27
virtual Environment GetEnvironment() const =0
Returns the environment – determined by the message type.
virtual std::string GetStringTrackNumber() const =0
virtual int GetTrackNumber() const =0
virtual double GetSpeed() const =0
virtual double GetTrackQuality() const =0
virtual void SetLocationLLA(double aLat, double aLon, double aAlt)=0
virtual bool GetLocationLLA(double &aLat, double &aLon, double &aAlt) const =0
virtual void GetTrackDisEntityId(WsfL16::Interface *aL16_InterfacePtr, DisEntityId &aEntityId) const =0
virtual ~TrackMessageProxy()
Definition TrackMessageProxy.hpp:38
virtual double GetCourse() const =0
static TrackMessageProxy * Create(Messages::InitialBase *aMsg)
Definition TrackMessageProxy.cpp:392
virtual int GetSpecificType() const =0
Environment
Definition TrackMessageProxy.hpp:30
@ cSPACE
Definition TrackMessageProxy.hpp:35
@ cSURFACE
Definition TrackMessageProxy.hpp:32
@ cLAND
Definition TrackMessageProxy.hpp:34
@ cSUBSURFACE
Definition TrackMessageProxy.hpp:33
@ cAIR
Definition TrackMessageProxy.hpp:31
virtual int GetIdentity() const =0
virtual unsigned GetSourceTrackNumber() const =0
virtual bool GetVelocityWCS(double aWCS[3]) const
Definition TrackMessageProxy.hpp:46
virtual double GetTrackQualityErrorDistance95CEP() const
Definition TrackMessageProxy.hpp:58
This file should be included prior to defining a message. Currently there is a limit of 32 fields per...
Definition AllMessages.hpp:55
Copyrights Multiple, All Rights Reserved